Mercurial est un outil de gestion de contrôle des sources distribuée similaire à Git et Bazaar. Mercurial est écrit en Python et il est utilisé par des projets tels que Mozilla pour Firefox et Thunderbird.
Ce paquet est connu pour pouvoir être construit et fonctionner correctement avec une plateform 12.4.
Téléchargement (HTTP) : https://www.mercurial-scm.org/release/mercurial-7.1.tar.gz
Somme de contrôle MD5 du téléchargement : 885a2a5ff89e78f066ec80b1ede5b314
Taille du téléchargement : 8,6 Mo
Estimation de l'espace disque requis : 125 Mo (avec la doc, plus 32 Mo pour les tests)
Estimation du temps de construction : 0,3 SBU (avec la doc, plus 23 SBU pour les tests, les deux avec parallélisme = 4)
build-1.3.0, docutils-0.21.2 (requis pour construire la
documentation), git-2.50.1, OpenSSH-10.0p1
(exécution, pour accéder aux dépôts ssh://...), Pygments-2.19.2, rustc-1.89.0 (voir
rust/README.rst
et rust/rhg/README.md
), Subversion-1.14.5
(avec les liaisons Python), CVS, pyflakes et re2
Mercurial est construit et
installé en une seule commande en tant qu'utilisateur root
:
make PREFIX=/usr install
La documentation est construite par la commande ci-dessus (aux
formats man et html), mais seules les pages de manuel sont
installées. Si vous souhaitez installer la documentation html,
exécutez en tant qu'utilisateur root
:
mkdir /usr/share/doc/mercurial-7.1 && cp -R doc/html /usr/share/doc/mercurial-7.1
Si vous souhaitez exécuter les tests, les tests rust doivent être supprimés car ils sont actuellement cassé à cause de problèmes de syntaxe. Pour cela, exécutez :
sed -i '151,154d' Makefile
Pour lancer la suite de tests, exécutez :
TESTFLAGS="-j<N>
--with-hg /usr/bin/hg" make check
où <N>
est un
nombre entier entre un et le nombre de (processeurs × threads)
inclus (la valeur par défaut est le nombre total de processeurs
renvoyé par nproc).
Plusieurs tests peuvent échouer si certains messages d'erreur ont
changé dans Python, ou que certains avertissements d'obsolescence
sont affichés, qui n'étaient pas présents au moment où le test a
été conçu.
Afin de pouvoir investiguer un test qui a l'air d'échouer, vous
pouvez utiliser le script run-tests.py dans le répertoire
tests
. Pour voir les presque quarante
options, dont certaines très utiles, lancez tests/run-tests.py --help. Avec
la commande suivante, vous exécuterez seulement les tests
précédemment échoués :
pushd tests &&
rm -rf tmp &&
./run-tests.py --with-hg /usr/bin/hg test-import.t
popd
Une option intéressante est --time
, qui
génère un tableau avec tous les tests exécutés et leur temps
respectifs de début, fin, utilisateur, système et réel à la fin de
l'exécution de la suite de tests. Remarquez que ces options peuvent
être utilisés avec make
check, en les ajoutant à la variable
d'environnement TESTFLAGS
.
Après l'installation, vous devriez pouvoir correctement lancer deux tests très rapides et simples. Le premier demande un peu de configuration :
cat >> ~/.hgrc << "EOF"
[ui]
username = <user_name> <user@mail>
EOF
où vous devez remplacer <user_name> et <your@mail> (mail est facultatif et peut être omis). Une fois l'identité de l'utilisateur définie, lancez hg debuginstall et quelques lignes seront affichées, la dernière affichant « no problems detected ». Un autre test rapide et simple est juste hg, qui doit afficher les commandes basiques qui peuvent être utilisée avec hg.
/etc/mercurial/hgrc
et ~/.hgrc
La grande majorité des extensions est désactivée par défaut. Lancez hg help extensions si vous souhaitez en activer une, par exemple lorsque vous investiguez des tests échoués. Vous obtiendrez la liste des extensions activées et désactivées, et plus d'information, comme comment les activer ou les désactiver avec les fichiers de configuration.
Si vous avez installé les make-ca-1.16.1 et que vous souhaitez que
Mercurial les utilise, lancez,
en tant qu'utilisateur root
:
install -v -d -m755 /etc/mercurial &&
cat > /etc/mercurial/hgrc << "EOF"
[web]
cacerts = /etc/pki/tls/certs/ca-bundle.crt
EOF