Mercurial-7.2.4

Introdução ao "Mercurial"

Mercurial é uma ferramenta de gerenciamento distribuído de controle de fonte semelhante ao Git e ao Bazaar. Mercurial é escrita em Python e é usada por projetos como "Mozilla" para "Firefox" e "Thunderbird".

[Nota]

Nota

Esse pacote é conhecido por construir e funcionar adequadamente usando-se uma plataforma LFS 13.1.

Informação do Pacote

  • Transferência (HTTP): https://www.mercurial-scm.org/release/mercurial-7.2.4.tar.gz

  • Transferência (FTP):

  • Soma de verificação MD5 da transferência: 625110ea71d1b872f1e3c59227842db5

  • Tamanho da transferência: 8,9 MB

  • Espaço em disco estimado exigido: 125 MB (com documentos e testes)

  • Tempo de construção estimado: 0,3 UPC (com documentos; adicionar 24 UPC para testes; ambos usando paralelismo=4)

Dependências do "Mercurial"

Exigidas

setuptools_scm-10.1.2

Opcionais

build-1.5.1, docutils-0.23 (exigido para construir a documentação), git-2.55.0, OpenSSH-10.5p1 (tempo de execução, para acessar repositórios ssh://... ), Pygments-2.20.0, rustc-1.97.1 (veja-se rust/README.rst e rust/rhg/README.md), Subversion-1.14.5 (com ligações Python), uv_build-0.11.24 (para um método alternativo de construir), Which-2.25 (usado em um teste), CVS, pyflakes e re2

Instalação do "Mercurial"

Primeiro, remova alguns comandos que conflitam com openssl4:

sed -i "15,23 s/^/#/" setup.py

Mercurial é construído e instalado em um comando como o(a) usante root:

make PREFIX=/usr install

A documentação é construída pelo comando acima (nos formatos man e html), mas somente as páginas de manual são instaladas. Se você desejar instalar a documentação html, emita como o(a) usuário(a) root:

mkdir /usr/share/doc/mercurial-7.2.4 &&
cp -R doc/html /usr/share/doc/mercurial-7.2.4

Para a finalidade de executar os testes, assegure-se de que todos os arquivos sejam titularizados por um(a) usante desprivilegiado(a). Isso corrige um problema com permissões no diretório de construção, já que o comando install acima criou arquivos titularizados pelo(a) root. Para remediar isso, emita, como o(a) usante root:

chown -Rv <username> .

Onde <username> deveria ser substituído pelo nome de usante da pessoa que executa os testes.

A suíte de teste tenta executar alguns testes que são incompatíveis com rustc-1.97.1. Remova-os com:

sed -i "177,181 s/^/#/" Makefile

Agora, execute a suíte de teste com:

TESTFLAGS="-j<N> --with-hg /usr/bin/hg" make check

onde <N> é um inteiro entre um e o número de (processador X camadas), inclusive (o padrão é o número total de processadores conforme retornado por nproc). Os testes possivelmente falhem porque algumas mensagens de erro mudaram no Python ou alguns avisos de descontinuação são impressos que não estavam presentes quando o teste foi projetado. Também, alguns testes usam um monte de memória e possivelmente sejam mortos pelo núcleo se o sistema estiver executando com pouca memória.

Para a finalidade de investigar quaisquer testes aparentemente falhos, você pode usar o conjunto de comandos sequenciais run-tests.py no diretório tests. Para ver as quase quarenta chaves, algumas delas muito úteis, emita tests/run-tests.py --help. Executando os seguintes comandos, você executará somente os testes que falharam antes:

pushd tests  &&
  ./run-tests.py --with-hg /usr/bin/hg --retest
popd

Uma chave interessante é --time, que gerará uma tabela de todos os testes executados e respectivos tempos de início, fim, usuário(a), sistema e real assim que os testes estiverem completos. Observe que essas chaves possivelmente sejam usadas com make check incluindo-as na variável de ambiente TESTFLAGS.

Depois da instalação, dois testes muito rápidos e simples deveriam executar corretamente. O primeiro precisa de alguma configuração:

cat >> ~/.hgrc << "EOF"
[ui]
username = <nome_usuário(a)> <usuário(a)@correio>
EOF

onde você precisa substituir <nome_usuário(a)> e <usuário(a)@correio-eletrônico> (o correio é opcional e pode ser omitido, porém se o mantiver, você deveria manter também as aspas angulares “<>”). Com a identidade do(a) usuário(a) definida, execute hg debuginstall e várias linhas serão exibidas, a última dizendo "no problems detected". Outro teste rápido e simples é apenas hg, que deveria gerar comandos básicos que conseguem ser usados com hg.

Configurando o "Mercurial"

Arquivos de Configuração

/etc/mercurial/hgrc e ~/.hgrc

A maioria das extensões está desabilitada por padrão. Execute hg help extensions se precisar habilitar alguma, por exemplo. ao investigar falhas de teste. Isso exibirá uma lista de extensões habilitadas e desabilitadas, bem como mais informações, tais como habilitar ou desabilitar extensões usando arquivos de configuração.

Se você tiver instalado o make-ca-1.16.1 e deseja que o Mercurial use os certificados, [então] como o(a) usuário(a) root, emita:

install -v -d -m755 /etc/mercurial &&
cat > /etc/mercurial/hgrc << "EOF"
[web]
cacerts = /etc/pki/tls/certs/ca-bundle.crt
EOF

Conteúdo

Aplicativos Instalados: hg
Bibliotecas Instaladas: numerosos módulos internos sob /usr/lib/python3.14/site-packages/mercurial
Diretórios Instalados: /etc/mercurial, /usr/lib/python3.14/site-packages/hgdemandimport, /usr/lib/python3.14/site-packages/hgext, /usr/lib/python3.14/site-packages/hgext3rd, /usr/lib/python3.14/site-packages/mercurial, /usr/lib/python3.14/site-packages/mercurial-7.2.4.dist-info e /usr/share/doc/mercurial-7.2.4

Descrições Curtas

hg

é o sistema de controle de versão "mercurial"