The test suite of mercurial fails the tests test-revset.t. The error (if the test does not timeout see #608720) is # Running sh "/var/tmp/portage/dev-vcs/mercurial-4.3/temp/test/child1/test-revset.t.sh" --- /var/tmp/portage/dev-vcs/mercurial-4.3/work/mercurial-4.3/tests/test-revset.t +++ /var/tmp/portage/dev-vcs/mercurial-4.3/work/mercurial-4.3/tests/test-revset.t.err @@ -4453,7 +4453,8 @@ > EOF $ hg --config revsetalias.P=1 log -r . -T '\n' - P=[1] + abort: unknown revision 'mercurial'! + [255] $ P=3 hg --config revsetalias.P=2 log -r . -T '\n' P=[3] ERROR: test-revset.t output changed I've tracked the error down. The problem is that the environment variable P exists (set by the ebuild to 'mercurial') but the test expects it to not be defined. As a workaround putting a $ unset P before calling "$ hg --config revsetalias.P=1 log -r . -T '\n'" solves the problem but there might also be other fixes (e.g. unset P inside the ebuild in src_test()).
I'd might add that the same happens for dev-vcs/mercurial-4.4.1.
Still present in mercurial-4.9. What prevents you from fixing this? Either by patching in an "$ unset P" into b/tests/test-revset2.t or by putting an "unset P" into src_test() in the ebuild. (Note that the test moved in the meanwhile from test-revset.t to test-revset2.t)
Created attachment 570344 [details, diff] Unset environment variable P in test revtest2.t Patch which inserts "$ unset P" into the mercurial test test-revset2.t
Test are now restricted due to too many failures...