commit:     deb3689424bc22476692dda6b7b733f4802aebf8
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sun Jun 26 21:05:00 2022 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sun Jun 26 21:05:00 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=deb36894

Revert "dev-vcs/mercurial: drop 5.8, 5.8.1"

Broke depgraph for dev-vcs/tortoisehg.

Reverts: 9b11ef791a238e11f8b456c29f5e1018a3f1b9e6
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 dev-vcs/mercurial/Manifest                         |  18 ++
 .../files/mercurial-5.8.1-testing-timeout.patch    |  12 +
 dev-vcs/mercurial/mercurial-5.8.1.ebuild           | 319 +++++++++++++++++++++
 dev-vcs/mercurial/mercurial-5.8.ebuild             | 312 ++++++++++++++++++++
 4 files changed, 661 insertions(+)

diff --git a/dev-vcs/mercurial/Manifest b/dev-vcs/mercurial/Manifest
index f0f7214be6cb..6bf6f5662c03 100644
--- a/dev-vcs/mercurial/Manifest
+++ b/dev-vcs/mercurial/Manifest
@@ -9,6 +9,7 @@ DIST bitflags-1.2.1.crate 16745 BLAKE2B 
0fa6d3ce44aad7616d5cd02aad8c1d0b0fed4022
 DIST bitmaps-2.1.0.crate 16717 BLAKE2B 
817045077c198a84d114f68474b14515309bf56abde29398fcb47d7593d41c3fac069825d8a2aa1a598dea5b4865b94a21e83d03dc8d069672e1b835bc1ad551
 SHA512 
a423ea009bf61629e6dd7cb954f2781dd3c578d2216cd843957e0db05abc8f8c5971d2cca1915929b2b3c7b712450c817bb1de8d08715a1ca2641ace015a1dc7
 DIST block-buffer-0.9.0.crate 7108 BLAKE2B 
42e99ec46c6e43d5f85e8d6d0a8fcef7175c97828758c93e55505c0e18e2646ae77bf264076041bf682532e28268a4978dd9c822c0475347ee3d29c5df2601fb
 SHA512 
2d0f8908f59d4b1cccd1fbca0c1fa3cc4b224f09549669b28a16af5acfd4369b66851e9be8d65e1df71be998fbc42fc130ad32b71e035d6055724e8fa31fbf98
 DIST byteorder-1.3.4.crate 21943 BLAKE2B 
278b24e036e920f84683f883991a967d997883bc80edefc5b69f52551794a37e5051786a1ac1b7a30bf2f5cad7318d781f189a7b2e496e2743df01262d5c33d6
 SHA512 
0618ce2cd6f3f6c586201d9aee8c8aaa08f99c9f9f215cf448b3cb6af1ac741845f5279953544caaec7fcf0beec1474bb991bee1ad0c0dac0c3f1d3ddd99e2d9
+DIST bytes-cast-0.1.0.crate 9869 BLAKE2B 
658d66fc50faf4e3b9c2182c50cb38e14a6b38d42e2be5bdb5052cff98593fabc14d9d296f28f5231f49a197a9744dad67669732f8dd76c16d711c0f44dc4bc2
 SHA512 
7f23243a3cb3d6451ba4914c186a42896d071a304d95442cd230a5b1e48622809c5a20c33a8f5d4aa99a4f1636e7256648623c6fcbad8fa96a62ec0e0b8854c9
 DIST bytes-cast-0.2.0.crate 10006 BLAKE2B 
8f6f8ddfea01e84de29b626682643e0c00baa6852ad6a869c1963ef8f2d60141adfaaf1f1d8e440c318f4ac1226fedee06d82a3df73ada5a02be19fff0de2d32
 SHA512 
70de77e9e8f33efe58d6883541b8762c0cbdfe6e401ed738104184fccc49cf2ec1d924f68123edaccc2b29c618eea245cdaad646498a41010044ebbec15bc186
 DIST bytes-cast-derive-0.1.0.crate 6477 BLAKE2B 
1f5192d4ba994c483686c8b35dfa9b8d59936be48bd9478404361b0a3a405f9204d80ced4495ca1366c050e43267ff3fefe57428b974a79b3b2a75b30236abef
 SHA512 
360ca8c763cb5486d4cccb19a1a8546858671aac145ff4b21261bc9e075b57f830ea00ca0c48c7de89de9ab757b06320c86e7621620eb83bc1d2e08c25b65065
 DIST cc-1.0.66.crate 53454 BLAKE2B 
fe34309ae50a3b022c36270a1dc819713f9d70e9ade2f421c33c542e865dc861e3b5191e8949de253515aef6878f786a6abe048391a819d09bf57f33054a90ce
 SHA512 
b07a70f88fa0588fb0f6bc7376e985834672cc9914a0713afe01740af6bcf01821d15720d831e8b7ea8b42f5866dbd011a245997f35bf8febc3b13d66089723e
@@ -18,6 +19,7 @@ DIST chrono-0.4.19.crate 155663 BLAKE2B 
c92c273fb6475bbb2546dfb75eaa23321bc8f9a5
 DIST clap-2.33.3.crate 201925 BLAKE2B 
bec9c866481c5b3fddeb314f68af9bce38fc421e42816182de3209e8ea3447b72cf033e6251eea27fe974eff8085b7d98cdd2911b5cc0ec6b4bf4c750deb8a25
 SHA512 
3eb0fd648e2e3f9e5ff69a5e6cf0d867304fe18523accd036f28a86de368e4774088a6936c108ccc045092c539fe7f7494ea96420ebf6b4bec16880cea84bedf
 DIST const_fn-0.4.4.crate 16138 BLAKE2B 
80885ad10a5649876d37635dc6eb8b426e68f23d7bfdac234ae32816e7fae6d246ff0657d904a3b18dc5ab93fcaa3d4ff28984a1144fa3557d082c1c4d064fd1
 SHA512 
d79f07982c8ead364f314672ed471d41c6f31431cf511eff5e4c42ebdde324842110ffb8238394d9e8ba2ac19d884fa5f359ba04cef83acb1ca9431e14acb030
 DIST cpufeatures-0.1.4.crate 10129 BLAKE2B 
a497cb23661b52c8627ec7a794a6ded37277ecc6aa3a405258e712cca4194811645947368ac5db4e22360f52a98205d9420de2288879635e5269e3de3aa684ea
 SHA512 
8d6fbdf934359f4fa5f65df30801fef2ef1d011107884060b542a8f521c86ad3ce808f39bd78e971794a888d53df8dc045efc00e208df8c26ccaa9d951e5570c
+DIST cpython-0.5.2.crate 118024 BLAKE2B 
f50bfbc15b280cda22a7c7c47ec5453139fb8591b66c78de7897937296bb3805d7fd356ab09233293cedb5fe131699cf4517fcbf9b1ef61bb7ebb99d1c21e84a
 SHA512 
9b2406afa2e309f9c748e42ac8d7d875b125e5cd40b8dc515c45ec87d1610bce50ab1ba2d95d7bec584de98e171377f08cb8a3ce0a0268383f030ed8631b728e
 DIST cpython-0.7.0.crate 125875 BLAKE2B 
7965a16c7f25423703eb041c02f9b31ddfbed7290bcbac57ba09496021fb1effe934bb0a0ca597ecbef2221f916964e71bad307c02b69e65e017757f5e1dfcd0
 SHA512 
74508ee2a58bf20ed374c92c8ee67fb850f807c84a6b53c01007db87541c4ede8690c376fe9958903f716b2d0024c3f8562377b63abf630dd6c8964c7946d40f
 DIST crc32fast-1.2.1.crate 38172 BLAKE2B 
80801a345f4c5ed8a5fd335bbf672eac1733a1c2b333dc8a8e0254338148ce7b34402201a8d2d7434dd1b057f33d99d3a8f02610ea50b54115d80bb8da28b2b0
 SHA512 
4c04236bb15a5c63b712c62652777917e947823abb20a0d0b372c850ec1c8695faa414e8de73904f1f1a296d7b00a6206cde8da404cf4cdaa2e8408e64b62b5e
 DIST crossbeam-channel-0.4.4.crate 86868 BLAKE2B 
88629c72c0be41bb3a0d7dc92f6908d46cb397223449da5b2c990b7660e09dfd3e3f3fb708d13586f5dbf199d62f781f1f7e0b73d279de0ef810f7bcf25b3f27
 SHA512 
2933721d6af3126f492f112f3d662fc40fb49139a84c72d33b6c2b0aa94fe964acb302fe726e999be4292a1410d3ee896169a0434dccfbf44d166008719846d3
@@ -37,6 +39,8 @@ DIST format-bytes-0.2.2.crate 6532 BLAKE2B 
81d77323851ca2c2d722709846a53d15a4031
 DIST format-bytes-0.3.0.crate 6475 BLAKE2B 
cb4cee9bad6a315245b606deae9a923ab3d2627c329c4f45c2e0fd64256b9c2e61c889a801d7122da58c01d1d77c6198c2209c49bb07c74a42768d34b5fac0ab
 SHA512 
e128da40c9bff56e3fd92174407faa5161d46cbcbff5ab62b5222239b3b174ca92009285db13c85816d5fd61640a89d56232e9a9310da43778ed0cd75df3d613
 DIST format-bytes-macros-0.3.0.crate 3434 BLAKE2B 
24a11e9ebd57ea6a645e13d5190b269fd4a1a5174e77aed519097e677520488331bf84904370452870f96aabd77be901b57eb6a096ce56ae259bfc816be34f59
 SHA512 
e775b156ed51b81850d949952f8ee02fb7cfd9c1f98ce6d92462b589646cf60482ff8bc442006d27c031729cd7b3082238da5829bada5e1aabdd163bedf45962
 DIST format-bytes-macros-0.4.0.crate 3399 BLAKE2B 
73c4b8787cbb1378db45238ecc18e9138c02cc6383a35485fe5cad18b09d13588f139f29cad9c8d6dd0dd1c8e60d09ee1b1b0b41a2958cb87320302a8cee1846
 SHA512 
5f95fc8c7589e8edacea8244742afbcf34a15c7f397d33c127ca02eb08e88599d66d1ecf7e5aef429dec44836233897d3cbe7cf56debf5f9867b179bc657efec
+DIST fuchsia-cprng-0.1.1.crate 2950 BLAKE2B 
8519407ab5d1f04d03cc946a07050db4dd7bc70e03894e35b9e66910a3be11224084a86ba45103fdec845e94b7ba4defbd7c5217b035a0796c0c4a94b9562cd7
 SHA512 
ea9f5beb0dfcb023c22cfc2b37ce52dfcf3a2cbbed0f79ffffc332878858386805c65dce8469a431002367562d857a6c064e075688540c27fcb4056a110059d2
+DIST gcc-0.3.55.crate 37262 BLAKE2B 
3341dc7136c14fa822a67fdeb72f7ea50b1264823e695e189d69604b8b8cce898ee2d40d8a536d0f520f5e190576afde16afa5d9cbe0a2c4b8600cf50bbd1447
 SHA512 
b045b60cf65c1deae44e4f40d0f511dab05c82be5065390dfbdaf5b51ee2d0653c3a6d8d1e7606e4bb6d234adfd22a8c68bde724406f3edb4bb6366617d46a86
 DIST generic-array-0.14.4.crate 28916 BLAKE2B 
41adcb738bb316d17967e029a829dcf7377427977309b010c2f2e365f16306b44991eb5f65698782497f614b129b14cad11bfeba2ae19b45efd117114492517e
 SHA512 
34ac71fee2cd50ff786d39b4abacd9e090a8598baf4dc36ba5fecfb7171cd8e4f58e5360cbb0baf02a87eea26b7dca85b35555b82bbefe06635d2fd38f7b8b40
 DIST getrandom-0.1.15.crate 24786 BLAKE2B 
868817d62ee44fa5bbf54f9af0bd71a29503f92bc93e190a834f4ebdb8eb73dd29e175c661f9964298987949c0b82a53e99080cbe4090fc9c5453daea4b05595
 SHA512 
b26d9558554058f8a54b03f56f488db5ebad2d5cc84f737e489f8f532f8464ef9038d104173eb30acca61caa1f99e1ce267bc493c01ba1611b829e0a090cc87f
 DIST getrandom-0.2.4.crate 26800 BLAKE2B 
68836e848f1f87f5db77e64314b027bf47517746ddfa7677191ab518c9fb77d9a554cf4d1f9490bce1d8aa22a35c1952b088e200374dfd5c5d84555ed082510f
 SHA512 
a7e63985824dcc8459736e44b1c0c4798a212955c89e5d3a3b852a3f80643d0231c4825f6cd416e87724aab80c19097210b06bccd2006e56115ae94920241716
@@ -56,8 +60,11 @@ DIST libz-sys-1.1.2.crate 1339299 BLAKE2B 
c055fdcdeaff5d44cc95f6cef190094317644e
 DIST log-0.4.11.crate 36276 BLAKE2B 
728647c829e96cb4fc795682facceebec887508e1ca14f13c0e7984db8ac39b3045885d1daa2f335de3e8f25c5cf1b519a1e7c8c6f4160a716bb8e39d085009f
 SHA512 
e216fcb3c9635d8c4b67b05c1ada1e5de4e99dce89ab4c8f8033ddce6ac488605d8af09f93c42d25ebf8844feea22c93b71682e77a368ee01c686a15133fdeec
 DIST maybe-uninit-2.0.0.crate 11809 BLAKE2B 
5e517b8c59f9ae4f1a4f86b48679ea64d62450ec2519c8caaa914479ce9e5b3aff24707e2e37272ba74bb60499afdc602fff17756337b0c50a9184edbd8b8805
 SHA512 
3006fc009c7c743d9147a4122e677cdeb2546f7bb46963b2f266839614eb906f9d763c161044fd0bf3f7b54124ac0734ac9ae7f7151b1a7a5f45cbc739976434
 DIST memchr-2.3.4.crate 23077 BLAKE2B 
5ddcc5fba109030040dd0c394344860ac0cb96679948b364c3333eddd29992c335c2a46a6f496c2fe085981ecb6e5386f7d44c1d489cabba180c037f1a872013
 SHA512 
24cde03e6f7cbee1c1d12dcc691190c7e3dc72f468cf41e2397560961d62685976fe47de51119c04c473cccf75b38311bd887fd9db93e92563aebac8f9184df6
+DIST memmap-0.7.0.crate 15214 BLAKE2B 
44a5bde9b85b2c378fd4c6ebfaa322ef8d0076472d6c7322f7aa95b8aba3514fd5212b4429eb369d30d0327377e36c626de474ea5e1f764bd4fae595680a04f8
 SHA512 
3a7c7f963111c2afeaa0381aaa6a57f0f57600392693ee1807d54771bc058ea0f86ac6e8afbe858e45f9f17b685430bf256dba1126b8074ace3aafc07bc14bfa
 DIST memmap2-0.4.0.crate 19851 BLAKE2B 
6bf418db7ad4af69121cc525be4ecb834c6ace06a0ab011e536f52d7b7f02659747891f26aaccefc9805865b7e336386a36d7d747c30e4fd50eb9962c2adf2e9
 SHA512 
80a688941af4fa7a6d78909bed0cb08652bba0a045b7808449fec011771428154eb0199d74891247532c9a679076c6b662cfaa9b8510a8cd06a4865ade20dd32
 DIST memoffset-0.6.1.crate 7706 BLAKE2B 
351e6ff24a61b1016e7749571e1e66dae370c58746baf00b4688bb1e2d8c88621aa6f135468593bcd8ba30acf2c097d06a0dd7243eb06b9825e3fc1ffd31ea52
 SHA512 
74d081af00b7e442198b786d79e4ef35c243d2e78347ab9cb50e127569aed3fd77b47b95df6f361a716abce27c8cc6cb1dfa12c92b0b2208b21f9eb9527b61be
+DIST mercurial-5.8.1.tar.gz 7988000 BLAKE2B 
7805a7141a503f8533a25d0cfd3c58c421c966cb9ec83503c855e02aeb8a7fff98bf529f4807bf6fc5f606ae110c4a0571e0e249441bd4be6b5eefb07284958e
 SHA512 
d17c809fc48c55d646b677ad23b5cf4a1755f5a81790988109cd50ac259acc230edad7bf5ccc7a6384a490aeba4a7492327bb9878a541d5fa7207e2c378be966
+DIST mercurial-5.8.tar.gz 7985326 BLAKE2B 
3b64343b692c389368b9c61baf367fe739bb79a7b555308fcd4f09069472b393343f57608954017038c849d6812cd6fe5e1e20bbc6a95974d827d7e402c60bd7
 SHA512 
79eec3a468a1826d4910d140797f26f281ff5e5fb9a0e09656d458577e05cf11ac6032c0d282aeec2996edbd7af954652c97097ea4485b211dad7424c4d20979
 DIST mercurial-6.0.2.tar.gz 8089180 BLAKE2B 
3141e20e844c451717c93c347bc30843d11b3f66fbea3808199ea3a18a992be0fdb8f8dabe0010e1f038cf797b6148b224e7d7cfb067c184bcfd4ca2060d9980
 SHA512 
1591618840a3e4b862f0eb9e560d511b59eb34815de2e6e6cc1179d32f88a1e9a6f14abf3e02d76e17dbab1ffe384e52d97721e39da252ac5ba98a2233853c9a
 DIST mercurial-6.1.4.tar.gz 8070694 BLAKE2B 
e37fa67c22a153c3a939d5c20b7b601ef520378a1999ddb49b00937807edbc2ed67bb7819aadf4c9aebef0a812d8be2a99e4f96058a09ca3844a2f969e1d5420
 SHA512 
b43221c078efd4978fd47414d9442f423a97660e1f4c10d704a8d3403051778d2a25a0b4be6315d0a2126d01c14910ccbe9a5be6242b561a2bea0c522f54b731
 DIST micro-timer-0.3.1.crate 3357 BLAKE2B 
13c518d2b3de6fa683078b9906b719498da2e2be5a23e7a2511f3d1d69730769031ed6b488927bec845c0405782f55cfe5af8610d56d92e716ff5d9056650f5a
 SHA512 
197beadbdf35dd0892f6e0c1a09b6b57472166ecaec3e10be12c436e1381540100092c9e717684db44b53375390cf2c245fdc6fdb376117fdf5b4405ade73cf7
@@ -70,7 +77,9 @@ DIST opaque-debug-0.3.0.crate 5767 BLAKE2B 
fb5d32c876a271b41582563f5d6978d75bc1c
 DIST ouroboros-0.15.0.crate 6177 BLAKE2B 
70989f764e3b83cf3f3ed598290540370a305a9b5e22f76954117a19c9bb0ccd4723892c0cbccd361a13e4961c49b3383a3f216b368d70de9d4908da87db1f72
 SHA512 
20e1dd42bd5789d3822c7f7d862f69c11695c19475cd943ce049b33184e231dac32d89745cf57a2db822f5f2967ee84b29320f40708612610e336aedb0c08be8
 DIST ouroboros_macro-0.15.0.crate 16239 BLAKE2B 
6e40a0bd4f04dfe5f1b93f2ff0f9d169792e8f5c9c57089061f488b4d0907d0b45c63d0ccfe2ee7e0989c7009d96760bb4c873afa688e1359db09c1ee8ce0a68
 SHA512 
78003e89f1a062957d66261474392b32d67a75ab1933b2dadf9c6a8c8ecd29d184ef4a1f25cadd7e1afb23aa58dacf69ca6969c327405be5dc97b8fbc09568ae
 DIST output_vt100-0.1.2.crate 4062 BLAKE2B 
eed08c0a1800560d4f623f451d818e3c7f0dcd72fa99f4e5e6dd4934e50a9649011ec955e06728fd017d58bb9f36cecbeb9b4aa8c13c040225c24019f774e63a
 SHA512 
b8eb00a541bebef2e0bb44975c4547fadfd4ab88a14aa8e31945f3c73531a550cf5729f1f3d18fae5cf36286b82d1a54fb08b28720f1592ab6cfe0814c8d3036
+DIST paste-0.1.18.crate 12259 BLAKE2B 
ed72b93a27166b0989743c2528d4a41f4b87ffdd0c588557d11a5f37f85d5b8f03ced86150af6209f9fa8d0f6efee705769b26a2f4dc3363f35cc3ac12c0e6ad
 SHA512 
a4d9c75f6f358d6c86eb0a66cdf22eedec180db37358ca2870a992e215d5b389b7991837d8f2769742ac1b093674cb4352ef9d6754a249253472fbcb3a81c001
 DIST paste-1.0.5.crate 17669 BLAKE2B 
fa8eafd98dec09e488cb7ce0600c18554887249f1f1dd4c4cf3d1902b7ace184324a4b9afe16a7f16bbbac0d7b15885649bcf8a33473413e37fcfe3fa1b57c4a
 SHA512 
c363e56e1b9bc2e401827c292625951cf577ede568033cee53da2ec2383c4ca17082b52b82477c48d65881a8c76f535a66768022d1eae2cd5f55218dbfb9be22
+DIST paste-impl-0.1.18.crate 9451 BLAKE2B 
e465c4c7eef44d02eb1b61b5290090513607b452f4adc11487947b7047ddc44905d7a02df827feb2142f0e74583afdd9648c1c66086f10e1bd861b663200bf8c
 SHA512 
c635efee46cb251b76ee9427432f81a0d944cdf1d0a95693d824c6085e7dea7e1e3f48c692ae27946f69e4e78d8080220058acf98e5c8a78482007349f8a7a4b
 DIST pkg-config-0.3.19.crate 15451 BLAKE2B 
dc23b5ef12719b4b3d2fc5c93c087399ba954a5e127be91b26619466d5d7422e71684d02905304dca65273d69b66338d94c0642e3810a14df845ef507ddc0bfb
 SHA512 
42bc13c4e39c8f71690db527d815884acdfd2ccf5fbfea700c6ed60257e852cdcb1c443e7774409e51da53612b0ff0aa165554b99fd0cba973f94a8df52982d9
 DIST ppv-lite86-0.2.10.crate 20915 BLAKE2B 
83a075381c24b2b89f5266929f5672ce051c3781c1a199252738dadbf471618c8b87452ce84e1cd87a9eac11b44107002894f544091210cc7e77bf52c045288e
 SHA512 
c9941052e504b9b310024064026e4b1d540dd877705ef450a833d9ff6dee70ba874cdad68c46381a71d5b54482cd80b3dbb8e0c225758fd339069031a55195f1
 DIST pretty_assertions-0.6.1.crate 61551 BLAKE2B 
1e92be2282e42720c9e1d1d26f9e67515cf8aa528479e14bae9c79193652c435e9513e85b7958016c105ed581fcbae19ceaa742fac6b07374a2e6f7b57a689b2
 SHA512 
10010c6e6b02098def38a8e6cbfe34fd052fe5773628d57a8141c7933f868906870158b4d4b1948b752d2c5f7b2981806d5f835e125aa2447d408415ba764f71
@@ -78,14 +87,20 @@ DIST proc-macro-error-1.0.4.crate 25293 BLAKE2B 
ef918c5efaf2545ab38787c8d0c07315
 DIST proc-macro-error-attr-1.0.4.crate 7971 BLAKE2B 
98e2925881c2be186e22c2c439697e91d43f807eb61a5d13e3b0b4321ed50a74f3d699942c04b89b6fea0f156bb5d19ebcf22f9cd4b98a7e6917c437600ed823
 SHA512 
2606afa9ec78d7dad4500c98d3a5ecbd02c6b53ab829c742bed7f57b322a95238ab4e01cf268746815f1424fd9b02eddfa30e72f98c66106f57765f3d3116495
 DIST proc-macro-hack-0.5.19.crate 15556 BLAKE2B 
98c22fc3e5f5fa8b6f44d15de42b6ffcc82ba3f98a07ffa48bcbc5d3abcfca6af136c5d0d8c7f1ca34261ed8f8c9c17a394231f97a4c342c81aa7f8b9e74b203
 SHA512 
9e4cbec41056438287f5b23086264c86e2f0cdc193064006556736377b2954229de13a585149b9995002c9aee3334ee2a80ae4afdcc96cabe7ed2bf718476952
 DIST proc-macro2-1.0.24.crate 37716 BLAKE2B 
e2bdbc7cc9ea254529e322f6a2eb44002b4994fc4a00df32012f66740e8e73ae70820dd40b7fcfcf024f3c7784ab9add5cc1db37f4c72d5af5c8f00164ebc145
 SHA512 
c3d23a5136c55d734084ce1d76d54f237fc1003074af102c2ad96d851ac496ffc7513ddc505a68af4051c9d6de09725a0ecb6e76ebcdd77a1c056f8f9242c9be
+DIST python27-sys-0.5.2.crate 37459 BLAKE2B 
a122bf29fbb16b46876c885811219e08376f666e385055ddc4976a0ba9a7d90954143a55a68033113d1e52375bdba68519fbade2cc8bba56174ada9e89448790
 SHA512 
670087e6edf55084fbe005f33baddd7936900f18753181288d9fb06deec56bc09cb78cd2ec2c94529be5ae603b95de364ea7f92e5d4cd2aad727672fe96754ec
 DIST python27-sys-0.7.0.crate 37506 BLAKE2B 
739d2094fa5d7ead7508acf54073692a0e5e40989034fb91edd5e3a23fc1470a71e7a9e0294daa0e4715d4205f4cc8c04bc775faec8000b7d2a3a4464615955f
 SHA512 
5748e7db36a97ba1b9d44096aab5dec9e18b1eb8723f301921f430edfee7f9bde54b205c6f8816eb1c0f1aa9d8e9a1da1fe046bf381da6a56548eeb058db3ea2
+DIST python3-sys-0.5.2.crate 44605 BLAKE2B 
72e68e32334e709bb291ef609b1da2f123cb0f080f6bc517bedc9eb46ae68fe37b6fe4655aca9b478a65726f03097ef6400c351b7a301885e019fa45328161d2
 SHA512 
abcc7624b5c8b018f553c5971414a33974e759056b50a20883c98168e790b26b94287f111fa1e00c6c78841cc5cc1a7462262462e6a9e72e5991140b729d4046
 DIST python3-sys-0.7.0.crate 46268 BLAKE2B 
0c79cd30c69c10ec3dc30f574e7cbefd465e7d8f13c8495e8090cfd8a69ae6d6095eace734bff5b4ff0b8b7de76425aa1b61aadf798ac3e5a2633397fe762b2c
 SHA512 
f2debc89c6f415a5e5eb00699e2d40e30b9f2bf5b82f3ffcc62695e45a9345a8c30f39a823e01fb13ce8a22624b09d6a4f40729614b826964203c3787f99951f
 DIST quick-error-1.2.3.crate 15066 BLAKE2B 
1c61525d383f3588c1c5017f016f60b484bbf2035e7f63c553bd9a49b638ab0c6106ac3676a41072b24da4e13dde78706e0f99fd1ec9ee329d5be81d45a85866
 SHA512 
f8aaf9024d20ccd42b706c756eed8320aee339f8776392b47a41cc82ca06b03df1a5b1f00854cea96689c5af261b4d8c5d2b1a242d10f2755e7e33dc41be35b9
 DIST quote-1.0.7.crate 25170 BLAKE2B 
9597c94ac365bb6e9d632738a88ece2da7818cb9f3fa0e755324e693eb513c76347032737025375a486319caad13c22ae13bcb257703eacdf2fdc755cbac0de2
 SHA512 
b7cb576c07419854f71072a88e4216f50d78196703d3d8a1068dfd0f2ccb1e417c3a865ec3be613b46e74e46654f64378f527800701f74d50352cb766a885953
+DIST rand-0.3.23.crate 11318 BLAKE2B 
5ad9b187fcdfc515c606a73bd1e9aa3215e367659c35a013c9d4d0f80f9832331dfb971ca370a627c0a2afe2b8860514740e00b1d7572e221a557b5570cff6ff
 SHA512 
a4f46fb7dfe39677dfc112eeb56fb3c28cec4cdaaf95f336f2a494f0b2b30fdf22ceb9ea956f90e13c7ffe711a68aef9fc1a80d9a911d93221ae263c243fb2c3
+DIST rand-0.4.6.crate 76401 BLAKE2B 
5593ad2d7fb8214d917e2eb734f5eee548f48fd699c9fccc0de9c0c6ee49803a426492a25fda2ffcf844169e2bca00709d4dcd9ceede72a4667ec431f5502fda
 SHA512 
a91c6da7188b426bf9cb832892ee2af87c4cd65fad505c34e9c63343da71efe8c0c67b75c405dca5345317b7940d1d0fc0b20be85afd6b3089203e5698d86f0a
 DIST rand-0.7.3.crate 112246 BLAKE2B 
ecc7c1bd70ac874c03bd8b7faa3016bb2d5ee5c19603280a12a45a81598f706e445971ee081e6ca410ab6f0f5f7a06d9315848cd556a2d8522a82024f6ff91e4
 SHA512 
f9b68ef9446f1ca2c8092c50990f15c1b4cb5529eeeac4df8d69755e0b7253c663c587775e7cb0a7298c31edb444975dda34926759306541f6d43d0d3cf57b7e
 DIST rand-0.8.4.crate 87406 BLAKE2B 
c09358416d2425a8243b623346fe71bf6f03fddab1a23fc752f4303ba7c241b3606629e4edf0ea720785bda0bca534acd675c2de079b78eac3df24a1ad6ba654
 SHA512 
77ae0e988e31e12f7d3f2c40814f930eecbc94c4aced827c337be78eeeabf39fde2dc5c4fda059afdc01285ff4afe30393c32694377de004feff16207606558e
 DIST rand_chacha-0.2.2.crate 13267 BLAKE2B 
7908867ceac98243ade22e1b38f1903fe0249324484d91c948a5058a1e099e5213f325c5ba3400898c8319158ed69f4ed064164f235470856a8191bd990d5a10
 SHA512 
1e2117442e4ffdd834dcbf0ea1829e73202c0ff9041d5969d81a59330242145f2753f2a56de2fdbff65f26cf0d227c7d08b2094ab2f946b764aef88106a6ac84
 DIST rand_chacha-0.3.1.crate 15251 BLAKE2B 
645771b2c3e274f085e0837a20306b1d59f6e9032fba8eb38a6d1b30180d15e2f89ffa2a162bf6358da41e030098242d81e71dab4321980d0a4f6ddfc2974ce3
 SHA512 
8198c580b1b9b0429758ffa49cd8138fa3ce724f0dcf73c767ea7e55611d6a2e4c7cad9950896510def500ce4062b594386c947ac3d89425b4e5c9b04d0b8075
+DIST rand_core-0.3.1.crate 15483 BLAKE2B 
2e09b3b3306514c29bd7588498e79be7353de656d8cdeeb4dfc6a1ad092f15a861c2ac20591ff71f7f60d986de9a09c860de4a9f06799f04e736b31bc70a5fbe
 SHA512 
5a7ae601124502bede760fd3179c2b28059ebc3b5983bfcb6b8fa62fb58df95cedc1aeb2734e792d894dfa4620801c13c29702f9cbee64243121575d4b6b9114
+DIST rand_core-0.4.2.crate 20243 BLAKE2B 
22fee5e44127eee047ad8abcd9dd828befd0feee77ee9a0bcd4dd42174b1e650f2a19f1f3b39fde937e58c17afaabf7231e2aabf214c2eb22edf3f85b73f6eec
 SHA512 
f7ae3b690e2cc1fbf2707ee04b752bc5472433f737ab581f9872f7c5660966bc6be45f0c5d2cd8771105df6d4a9d206c55f5cc6ffc1693b46e1ae03a2883b028
 DIST rand_core-0.5.1.crate 21116 BLAKE2B 
e74791f941a79971f2741172d489d546373c9abcb0dfbffcb7b97b858ec800b2e0c97df4ac636f3aa1b8dd6c14685edf317336d577f31b5c6cb7d89a157e547a
 SHA512 
4f7500b35e165e6c817fdd67a50745d5497d24e554bb554705097e37258751e8755c4d6b8a69fcb5e1977708ba78620bc35d640e4e018fcd4e88d9dbdbebdcbf
 DIST rand_core-0.6.3.crate 21938 BLAKE2B 
7c73e2da6d423c68dbbca31f6528bdb3f42fa39b30d0951ca7058e05ce16ef09ef5e047697b33ec17720314f934512c0907aeb892df93d63abd8b63eda2b50a7
 SHA512 
0fc31f96ca8ebba8c179367de01458e909265e1d627ec0c5620be7c8e83d2f9570471d6ec2cb2bc4bc531505b02fc31f1165708cc1357906791c87123b06ee87
 DIST rand_distr-0.2.2.crate 40805 BLAKE2B 
9c4ff7770da3e04798c5de17a43e7943cffbc3adce334e7bd8ed3720787ad029c5127523bc3128b54736e4071d2ccf7b699bbf00d9ff9c1d39d47a988e5b22b4
 SHA512 
15c710f3ec4e06fb4c356ef1016431c8b7e6fd6d7f03f2fe56b7ffd34cfffd728d3b3a9c92ddca36fb4920154f92589dc9c91b1735bb32d5b61eaedb24d702cc
@@ -97,10 +112,13 @@ DIST rand_pcg-0.3.1.crate 11983 BLAKE2B 
87c2a9d0f6fd71076280a0f6447ef2a8c9efb815
 DIST rand_xoshiro-0.4.0.crate 17029 BLAKE2B 
efee418e99b15aba76385a4320da667554effdde4f5d19dd55d16c1069d7915851f64526d4b4c9ed1cb6e5827572c0c96484f13669ff233baca124377ccbd48b
 SHA512 
e889eb75ef40ad52eaf32692b3a405e01eacfeb20e0dc171de8f1b2ce05723ba448e293a2ee91eb3bec3cb5a2667bd05c11433b50470eea9219586afa73f519e
 DIST rayon-1.5.0.crate 158037 BLAKE2B 
6cb7f696e9c04d3aa6c3bf9c95690c2e259267024ac9701da5cd85c7d39b900a7e9e423e5b7602e108587a34c2519642ce1456dfd82fb13328ed3aba7516b569
 SHA512 
be15cbc7ad0fadb55e5640c78aa2eeac282872be88c5402338caad0a7ea604d2b8477648dcf7e453e22fbcdfefa915aa4bdbfa75e3d4f7a993fd8d85ed68395a
 DIST rayon-core-1.9.0.crate 63787 BLAKE2B 
bc5f930b1ce8e9fde03c01df7a53eeb3318ae24ac1c6b22e401a0b2359f4b9d6e419fcd41c7db33881c4ec29fbb844a44e2cff747d7dde2133668e733f8b6966
 SHA512 
d05b4c1e7bcb1c4e9238ab08bde39f08f069a08593084f041720694bae8bd524d1761766beb93e97784d7d541bde3e290446344fe129b0e10491405c1577366f
+DIST rdrand-0.4.0.crate 6456 BLAKE2B 
330ee64d998a0358f95a3dce50b3e1bbda531a3b613db7e5ba4038a1cf7191b60be3a0f33416e05380c41040704ce52727928915e9d2f4565d39984d1c86fcd6
 SHA512 
6476275d124bee28747191471e8d8f321a3b1c148c1f2a7ece4175f5244a7de90afe5f99d2eba5244d886b92e38232398864bf90e6d434b09494533942c8d894
 DIST redox_syscall-0.1.57.crate 17087 BLAKE2B 
88e3ffcfd752e757f8fadfd4edca367f9185f09e609c329bb36f179183cf103dc182aae701c14afb717d2b4c3d72ba307b49fc671cc97aa7c9d03df1a7a1835f
 SHA512 
c6e187087060084b7173ed0d9d0e982e4259d4f76522112268c02ff20751382e3bc8e119da6153170f5c54bd5b9cb028910f2f85c1c842099205dccd44659184
 DIST regex-1.4.2.crate 236931 BLAKE2B 
f316b777df1c97aef2994745e1fbd9ca676b0da6bf4ffad4e54aa11014d39aed343884ede3648b5fd676dcec5e4840e9d84f4a4faaeefaf5a2d772e2c5b9ebf6
 SHA512 
a9bc8061b7563b8494b21f35bf3c2af5f58dcc1b0df4e25ab8d3f99ba66527d5163e2c04b229b688fcb7934961f718fab72f22d66fef53562c5d96a2fb3887de
 DIST regex-syntax-0.6.21.crate 293572 BLAKE2B 
49c499ba1c03447fe7c90f27147dc5d96daf815e330a4073fe293d3be594fab1d798d35a5e49f6af43c71befd47528927246c4ebb24b6a6a141135484bbecd31
 SHA512 
56507f4432804ea30820984f6cff03c3514988bc3e406b3ba3a89c36c9c5d75951e4acd000ba85b95bb83d253898ce7d7d282ed930e811e12bb644c4a5ec84fa
 DIST remove_dir_all-0.5.3.crate 9184 BLAKE2B 
ab7ef94e0230ddc9b363f038254a180881bbc20eb04a254f97e6f71ed491c99ba1c88f5e85632d450243882a4a0df63f3b8b183bc1fbca9caf30ec23d577b1d7
 SHA512 
50417d6d8a33912193a1ed37eb72b47431b12ae65d2780cdb7080c3d141e63819da13751c3fb737685cea322f70b36d413389c3dc01aa12b4dce615aefed0e2c
+DIST rust-crypto-0.2.36.crate 857879 BLAKE2B 
c486a2e43eb9ac9d2558bb39a249dcd689e86eef51d9a7613a3964baa633cebec824d5a490254dc06eca7a5faa471126de92452d62c522a3dbf494b9940a13e1
 SHA512 
0fac026d8799ecde523f20e7b34b9486343e48b95e79cd76bb6c8bfaeaebed550e45d59d85d8a3a58595f10c02a4a5e55691da15c203a4336a9bdb5480cd2e90
+DIST rustc-serialize-0.3.24.crate 45926 BLAKE2B 
11dee8dac7eb007067ee0eb19d122bf45d912e6cefa95fd5ae3db7a4585a3f37e66b123c8c7bb761cc451b402cb9191dd5c974618331bb9aa9efbe9215115abc
 SHA512 
60b40a0b41678287627cf5898e0ff6ac5668865f1ce5a482190ecd7539b59a955a73c675fedac76e68a5126efb92ff0cf1d1b4f24359a932463434bb76d9e884
 DIST same-file-1.0.6.crate 10183 BLAKE2B 
a320c8343e0b38078ba81c4f0159d886bf47764c74efe0d7cd2b3218426e8341b51e523c00a9e5fbc2ee1057618296bd70b576c68751bd55d6ddb352defaca15
 SHA512 
3ba35309742c8db63210d9ea78bff4ecd80471d69e6238eb96c7bf0673814f221e2d838fe6311bfc5a0e71b4a7ccba33e07859c0b9cff2171969ff08a4214a7c
 DIST scopeguard-1.1.0.crate 11470 BLAKE2B 
f774eb90b7d3ffb2efba47518e9d1dead4017ab4b38a4bd74914daa84a5af4bf9eb63da0496e3924499d79cd0439c37447aeda4a21226f95645bddcd6becfabe
 SHA512 
368fa5726df8f42b599993681579a9ffd0196480ee3cd0f9f671e8493f3bedd1e1779bdf2beb329e77e0005fa09b816e3385f309490c0f2781568db275d4d17d
 DIST sha-1-0.9.6.crate 13758 BLAKE2B 
8199c2cbdab2954edd44aae6bee8fdbaa883f27993722845179aa2117849c5ea86df08ef58da514d0bb78612381977f9d101928a764a62b8b14ac04e86e83d6b
 SHA512 
10a37e30b0c65cdb64a49e14185faf7d0bb776910f87c5dff128674762b4375aa1f9f2bf90b38ef37c521ad365d3a2f02c0e33157593fac15fecf9b33a5fa9fc

diff --git a/dev-vcs/mercurial/files/mercurial-5.8.1-testing-timeout.patch 
b/dev-vcs/mercurial/files/mercurial-5.8.1-testing-timeout.patch
new file mode 100644
index 000000000000..5c68835ccf75
--- /dev/null
+++ b/dev-vcs/mercurial/files/mercurial-5.8.1-testing-timeout.patch
@@ -0,0 +1,12 @@
+diff --git a/mercurial/testing/__init__.py b/mercurial/testing/__init__.py
+--- a/mercurial/testing/__init__.py
++++ b/mercurial/testing/__init__.py
+@@ -25,7 +25,7 @@ def wait_file(path, timeout=10):
+     timeout *= _timeout_factor()
+     start = time.time()
+     while not os.path.exists(path):
+-        if time.time() - start > timeout:
++        if timeout and time.time() - start > timeout:
+             raise RuntimeError(b"timed out waiting for file: %s" % path)
+         time.sleep(0.01)
+ 

diff --git a/dev-vcs/mercurial/mercurial-5.8.1.ebuild 
b/dev-vcs/mercurial/mercurial-5.8.1.ebuild
new file mode 100644
index 000000000000..2cbe5612e12b
--- /dev/null
+++ b/dev-vcs/mercurial/mercurial-5.8.1.ebuild
@@ -0,0 +1,319 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..10} )
+PYTHON_REQ_USE="threads(+)"
+DISTUTILS_USE_SETUPTOOLS=no
+CARGO_OPTIONAL=1
+
+CRATES="
+adler-0.2.3
+aho-corasick-0.7.15
+ansi_term-0.11.0
+atty-0.2.14
+autocfg-1.0.1
+bitflags-1.2.1
+bitmaps-2.1.0
+byteorder-1.3.4
+bytes-cast-0.1.0
+bytes-cast-derive-0.1.0
+cc-1.0.66
+cfg-if-0.1.10
+cfg-if-1.0.0
+chrono-0.4.19
+clap-2.33.3
+const_fn-0.4.4
+cpython-0.5.2
+crc32fast-1.2.1
+crossbeam-channel-0.4.4
+crossbeam-channel-0.5.0
+crossbeam-deque-0.8.0
+crossbeam-epoch-0.9.1
+crossbeam-utils-0.7.2
+crossbeam-utils-0.8.1
+ctor-0.1.16
+derive_more-0.99.11
+difference-2.0.0
+either-1.6.1
+env_logger-0.7.1
+flate2-1.0.19
+format-bytes-0.2.2
+format-bytes-macros-0.3.0
+fuchsia-cprng-0.1.1
+gcc-0.3.55
+getrandom-0.1.15
+glob-0.3.0
+hermit-abi-0.1.17
+home-0.5.3
+humantime-1.3.0
+im-rc-15.0.0
+itertools-0.9.0
+jobserver-0.1.21
+lazy_static-1.4.0
+libc-0.2.81
+libz-sys-1.1.2
+log-0.4.11
+maybe-uninit-2.0.0
+memchr-2.3.4
+memmap-0.7.0
+memoffset-0.6.1
+micro-timer-0.3.1
+micro-timer-macros-0.3.1
+miniz_oxide-0.4.3
+num-integer-0.1.44
+num-traits-0.2.14
+num_cpus-1.13.0
+output_vt100-0.1.2
+paste-0.1.18
+paste-impl-0.1.18
+pkg-config-0.3.19
+ppv-lite86-0.2.10
+pretty_assertions-0.6.1
+proc-macro-hack-0.5.19
+proc-macro2-1.0.24
+python27-sys-0.5.2
+python3-sys-0.5.2
+quick-error-1.2.3
+quote-1.0.7
+rand-0.3.23
+rand-0.4.6
+rand-0.7.3
+rand_chacha-0.2.2
+rand_core-0.3.1
+rand_core-0.4.2
+rand_core-0.5.1
+rand_distr-0.2.2
+rand_hc-0.2.0
+rand_pcg-0.2.1
+rand_xoshiro-0.4.0
+rayon-1.5.0
+rayon-core-1.9.0
+rdrand-0.4.0
+redox_syscall-0.1.57
+regex-1.4.2
+regex-syntax-0.6.21
+remove_dir_all-0.5.3
+rust-crypto-0.2.36
+rustc-serialize-0.3.24
+same-file-1.0.6
+scopeguard-1.1.0
+sized-chunks-0.6.2
+static_assertions-1.1.0
+strsim-0.8.0
+syn-1.0.54
+tempfile-3.1.0
+termcolor-1.1.2
+textwrap-0.11.0
+thread_local-1.0.1
+time-0.1.44
+twox-hash-1.6.0
+typenum-1.12.0
+unicode-width-0.1.8
+unicode-xid-0.2.1
+users-0.11.0
+vcpkg-0.2.11
+vec_map-0.8.2
+version_check-0.9.2
+wasi-0.10.0+wasi-snapshot-preview1
+wasi-0.9.0+wasi-snapshot-preview1
+winapi-0.3.9
+winapi-i686-pc-windows-gnu-0.4.0
+winapi-util-0.1.5
+winapi-x86_64-pc-windows-gnu-0.4.0
+zstd-0.5.3+zstd.1.4.5
+zstd-safe-2.0.5+zstd.1.4.5
+zstd-sys-1.4.17+zstd.1.4.5
+"
+
+inherit bash-completion-r1 cargo elisp-common distutils-r1 flag-o-matic 
multiprocessing toolchain-funcs
+
+DESCRIPTION="Scalable distributed SCM"
+HOMEPAGE="https://www.mercurial-scm.org/";
+SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz
+       rust? ( $(cargo_crate_uris ${CRATES}) )"
+
+LICENSE="GPL-2+
+       rust? ( BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 ISC MIT 
PSF-2 Unlicense )"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv 
x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris 
~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="+chg emacs gpg test tk rust"
+
+BDEPEND="rust? ( ${RUST_DEPEND} )"
+RDEPEND="
+       app-misc/ca-certificates
+       gpg? ( app-crypt/gnupg )
+       tk? ( dev-lang/tk )"
+
+DEPEND="emacs? ( >=app-editors/emacs-23.1:* )
+       test? (
+               app-arch/unzip
+               dev-python/pygments[${PYTHON_USEDEP}]
+               )"
+
+PATCHES=(
+       "${FILESDIR}"/${P}-testing-timeout.patch
+)
+
+SITEFILE="70${PN}-gentoo.el"
+
+RESTRICT="!test? ( test )"
+
+src_unpack() {
+       default_src_unpack
+       if use rust; then
+               local S="${S}/rust/hg-cpython"
+               cargo_src_unpack
+       fi
+}
+
+python_prepare_all() {
+       # fix up logic that won't work in Gentoo Prefix (also won't outside in
+       # certain cases), bug #362891
+       sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die
+       sed -i -e 's/__APPLE__/__NO_APPLE__/g' mercurial/cext/osutil.c || die
+
+       distutils-r1_python_prepare_all
+}
+
+src_compile() {
+       if use rust; then
+               pushd rust/hg-cpython || die
+               cargo_src_compile --no-default-features --features python3 
--jobs $(makeopts_jobs)
+               popd
+       fi
+       distutils-r1_src_compile
+}
+
+python_compile() {
+       filter-flags -ftracer -ftree-vectorize
+       if use rust; then
+               local -x HGWITHRUSTEXT="cpython"
+       fi
+       distutils-r1_python_compile build_ext
+}
+
+python_compile_all() {
+       rm -r contrib/win32 || die
+       if use chg; then
+               emake -C contrib/chg
+       fi
+       if use emacs; then
+               cd contrib || die
+               elisp-compile mercurial.el || die "elisp-compile failed!"
+       fi
+}
+
+src_install() {
+       distutils-r1_src_install
+}
+
+python_install() {
+       if use rust; then
+               local -x HGWITHRUSTEXT="cpython"
+       fi
+       distutils-r1_python_install build_ext
+}
+
+python_install_all() {
+       distutils-r1_python_install_all
+
+       newbashcomp contrib/bash_completion hg
+
+       insinto /usr/share/zsh/site-functions
+       newins contrib/zsh_completion _hg
+
+       dobin hgeditor
+       if use tk; then
+               dobin contrib/hgk
+       fi
+       python_foreach_impl python_doscript contrib/hg-ssh
+
+       if use emacs; then
+               elisp-install ${PN} contrib/mercurial.el* || die "elisp-install 
failed!"
+               elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+       fi
+
+       local RM_CONTRIB=( hgk hg-ssh bash_completion zsh_completion plan9 *.el 
)
+
+       if use chg; then
+               dobin contrib/chg/chg
+               doman contrib/chg/chg.1
+               RM_CONTRIB+=( chg )
+       fi
+
+       for f in ${RM_CONTRIB[@]}; do
+               rm -rf contrib/${f} || die
+       done
+
+       dodoc -r contrib
+       docompress -x /usr/share/doc/${PF}/contrib
+       doman doc/*.?
+       dodoc CONTRIBUTORS hgweb.cgi
+
+       insinto /etc/mercurial/hgrc.d
+       doins "${FILESDIR}/cacerts.rc"
+}
+
+src_test() {
+       pushd tests &>/dev/null || die
+       rm -rf *svn*                    # Subversion tests fail with 1.5
+       rm -f test-archive*             # Fails due to verbose tar output 
changes
+       rm -f test-convert-baz*         # GNU Arch baz
+       rm -f test-convert-cvs*         # CVS
+       rm -f test-convert-darcs*       # Darcs
+       rm -f test-convert-git*         # git
+       rm -f test-convert-mtn*         # monotone
+       rm -f test-convert-tla*         # GNU Arch tla
+       rm -f test-largefiles*          # tends to time out
+       rm -f test-https*                       # requires to support tls1.0
+       if [[ $(tc-endian) == "big" ]]; then
+               # tests no working on big-endian
+               # https://bz.mercurial-scm.org/show_bug.cgi?id=6607
+               rm -f test-clone-uncompressed.t
+               rm -f test-generaldelta.t
+               rm -f test-persistent-nodemap.t
+       fi
+       if [[ ${EUID} -eq 0 ]]; then
+               einfo "Removing tests which require user privileges to succeed"
+               rm -f test-convert*
+               rm -f test-lock-badness*
+               rm -f test-permissions*
+               rm -f test-pull-permission*
+               rm -f test-journal-exists*
+               rm -f test-repair-strip*
+       fi
+
+       popd &>/dev/null || die
+       distutils-r1_src_test
+}
+
+python_test() {
+       if [[ ${EPYTHON} == python3.10 ]]; then
+               einfo "Skipping tests for unsupported Python 3.10"
+               return
+       fi
+       distutils_install_for_testing
+       cd tests || die
+       PYTHONWARNINGS=ignore "${PYTHON}" run-tests.py \
+               --jobs $(makeopts_jobs) \
+               --timeout 0 \
+               || die "Tests fail with ${EPYTHON}"
+}
+
+pkg_postinst() {
+       use emacs && elisp-site-regen
+
+       elog "If you want to convert repositories from other tools using 
convert"
+       elog "extension please install correct tool:"
+       elog "  dev-vcs/cvs"
+       elog "  dev-vcs/darcs"
+       elog "  dev-vcs/git"
+       elog "  dev-vcs/monotone"
+       elog "  dev-vcs/subversion"
+}
+
+pkg_postrm() {
+       use emacs && elisp-site-regen
+}

diff --git a/dev-vcs/mercurial/mercurial-5.8.ebuild 
b/dev-vcs/mercurial/mercurial-5.8.ebuild
new file mode 100644
index 000000000000..0da9a6dd131a
--- /dev/null
+++ b/dev-vcs/mercurial/mercurial-5.8.ebuild
@@ -0,0 +1,312 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..10} )
+PYTHON_REQ_USE="threads(+)"
+DISTUTILS_USE_SETUPTOOLS=no
+CARGO_OPTIONAL=1
+
+CRATES="
+adler-0.2.3
+aho-corasick-0.7.15
+ansi_term-0.11.0
+atty-0.2.14
+autocfg-1.0.1
+bitflags-1.2.1
+bitmaps-2.1.0
+byteorder-1.3.4
+bytes-cast-0.1.0
+bytes-cast-derive-0.1.0
+cc-1.0.66
+cfg-if-0.1.10
+cfg-if-1.0.0
+chrono-0.4.19
+clap-2.33.3
+const_fn-0.4.4
+cpython-0.5.2
+crc32fast-1.2.1
+crossbeam-channel-0.4.4
+crossbeam-channel-0.5.0
+crossbeam-deque-0.8.0
+crossbeam-epoch-0.9.1
+crossbeam-utils-0.7.2
+crossbeam-utils-0.8.1
+ctor-0.1.16
+derive_more-0.99.11
+difference-2.0.0
+either-1.6.1
+env_logger-0.7.1
+flate2-1.0.19
+format-bytes-0.2.2
+format-bytes-macros-0.3.0
+fuchsia-cprng-0.1.1
+gcc-0.3.55
+getrandom-0.1.15
+glob-0.3.0
+hermit-abi-0.1.17
+home-0.5.3
+humantime-1.3.0
+im-rc-15.0.0
+itertools-0.9.0
+jobserver-0.1.21
+lazy_static-1.4.0
+libc-0.2.81
+libz-sys-1.1.2
+log-0.4.11
+maybe-uninit-2.0.0
+memchr-2.3.4
+memmap-0.7.0
+memoffset-0.6.1
+micro-timer-0.3.1
+micro-timer-macros-0.3.1
+miniz_oxide-0.4.3
+num-integer-0.1.44
+num-traits-0.2.14
+num_cpus-1.13.0
+output_vt100-0.1.2
+paste-0.1.18
+paste-impl-0.1.18
+pkg-config-0.3.19
+ppv-lite86-0.2.10
+pretty_assertions-0.6.1
+proc-macro-hack-0.5.19
+proc-macro2-1.0.24
+python27-sys-0.5.2
+python3-sys-0.5.2
+quick-error-1.2.3
+quote-1.0.7
+rand-0.3.23
+rand-0.4.6
+rand-0.7.3
+rand_chacha-0.2.2
+rand_core-0.3.1
+rand_core-0.4.2
+rand_core-0.5.1
+rand_distr-0.2.2
+rand_hc-0.2.0
+rand_pcg-0.2.1
+rand_xoshiro-0.4.0
+rayon-1.5.0
+rayon-core-1.9.0
+rdrand-0.4.0
+redox_syscall-0.1.57
+regex-1.4.2
+regex-syntax-0.6.21
+remove_dir_all-0.5.3
+rust-crypto-0.2.36
+rustc-serialize-0.3.24
+same-file-1.0.6
+scopeguard-1.1.0
+sized-chunks-0.6.2
+static_assertions-1.1.0
+strsim-0.8.0
+syn-1.0.54
+tempfile-3.1.0
+termcolor-1.1.2
+textwrap-0.11.0
+thread_local-1.0.1
+time-0.1.44
+twox-hash-1.6.0
+typenum-1.12.0
+unicode-width-0.1.8
+unicode-xid-0.2.1
+users-0.11.0
+vcpkg-0.2.11
+vec_map-0.8.2
+version_check-0.9.2
+wasi-0.10.0+wasi-snapshot-preview1
+wasi-0.9.0+wasi-snapshot-preview1
+winapi-0.3.9
+winapi-i686-pc-windows-gnu-0.4.0
+winapi-util-0.1.5
+winapi-x86_64-pc-windows-gnu-0.4.0
+zstd-0.5.3+zstd.1.4.5
+zstd-safe-2.0.5+zstd.1.4.5
+zstd-sys-1.4.17+zstd.1.4.5
+"
+
+inherit bash-completion-r1 cargo elisp-common distutils-r1 flag-o-matic
+
+DESCRIPTION="Scalable distributed SCM"
+HOMEPAGE="https://www.mercurial-scm.org/";
+SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz
+       rust? ( $(cargo_crate_uris ${CRATES}) )"
+
+LICENSE="GPL-2+
+       rust? ( BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 ISC MIT 
PSF-2 Unlicense )"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv x86 
~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris 
~x64-solaris ~x86-solaris"
+IUSE="+chg emacs gpg test tk rust"
+
+BDEPEND="rust? ( ${RUST_DEPEND} )"
+RDEPEND="
+       app-misc/ca-certificates
+       dev-python/zstandard[${PYTHON_USEDEP}]
+       gpg? ( app-crypt/gnupg )
+       tk? ( dev-lang/tk )"
+
+DEPEND="emacs? ( >=app-editors/emacs-23.1:* )
+       test? (
+               app-arch/unzip
+               dev-python/pygments[${PYTHON_USEDEP}]
+               )"
+
+SITEFILE="70${PN}-gentoo.el"
+
+# Too many tests fail #608720
+RESTRICT="test"
+
+src_unpack() {
+       default_src_unpack
+       if use rust; then
+               local S="${S}/rust/hg-cpython"
+               cargo_src_unpack
+       fi
+}
+
+python_prepare_all() {
+       # fix up logic that won't work in Gentoo Prefix (also won't outside in
+       # certain cases), bug #362891
+       sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die
+       sed -i -e 's/__APPLE__/__NO_APPLE__/g' mercurial/cext/osutil.c || die
+       # Use absolute import for zstd
+       sed -i -e 's/from \.* import zstd/import zstandard as zstd/' \
+               mercurial/utils/compression.py \
+               mercurial/wireprotoframing.py || die
+
+       distutils-r1_python_prepare_all
+}
+
+src_compile() {
+       if use rust; then
+               pushd rust/hg-cpython || die
+               cargo_src_compile --no-default-features --features python3
+               popd
+       fi
+       distutils-r1_src_compile
+}
+
+python_compile() {
+       filter-flags -ftracer -ftree-vectorize
+       if use rust; then
+               local -x HGWITHRUSTEXT="cpython"
+       fi
+       distutils-r1_python_compile build_ext --no-zstd
+}
+
+python_compile_all() {
+       rm -r contrib/win32 || die
+       if use chg; then
+               emake -C contrib/chg
+       fi
+       if use emacs; then
+               cd contrib || die
+               elisp-compile mercurial.el || die "elisp-compile failed!"
+       fi
+}
+
+src_install() {
+       distutils-r1_src_install
+}
+
+python_install() {
+       if use rust; then
+               local -x HGWITHRUSTEXT="cpython"
+       fi
+       distutils-r1_python_install build_ext --no-zstd
+}
+
+python_install_all() {
+       distutils-r1_python_install_all
+
+       newbashcomp contrib/bash_completion hg
+
+       insinto /usr/share/zsh/site-functions
+       newins contrib/zsh_completion _hg
+
+       dobin hgeditor
+       if use tk; then
+               dobin contrib/hgk
+       fi
+       python_foreach_impl python_doscript contrib/hg-ssh
+
+       if use emacs; then
+               elisp-install ${PN} contrib/mercurial.el* || die "elisp-install 
failed!"
+               elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+       fi
+
+       local RM_CONTRIB=( hgk hg-ssh bash_completion zsh_completion plan9 *.el 
)
+
+       if use chg; then
+               dobin contrib/chg/chg
+               doman contrib/chg/chg.1
+               RM_CONTRIB+=( chg )
+       fi
+
+       for f in ${RM_CONTRIB[@]}; do
+               rm -rf contrib/${f} || die
+       done
+
+       dodoc -r contrib
+       docompress -x /usr/share/doc/${PF}/contrib
+       doman doc/*.?
+       dodoc CONTRIBUTORS hgweb.cgi
+
+       insinto /etc/mercurial/hgrc.d
+       doins "${FILESDIR}/cacerts.rc"
+}
+
+src_test() {
+       pushd tests &>/dev/null || die
+       rm -rf *svn*                    # Subversion tests fail with 1.5
+       rm -f test-archive*             # Fails due to verbose tar output 
changes
+       rm -f test-convert-baz*         # GNU Arch baz
+       rm -f test-convert-cvs*         # CVS
+       rm -f test-convert-darcs*       # Darcs
+       rm -f test-convert-git*         # git
+       rm -f test-convert-mtn*         # monotone
+       rm -f test-convert-tla*         # GNU Arch tla
+       rm -f test-largefiles*          # tends to time out
+       if [[ ${EUID} -eq 0 ]]; then
+               einfo "Removing tests which require user privileges to succeed"
+               rm -f test-convert*
+               rm -f test-lock-badness*
+               rm -f test-permissions*
+               rm -f test-pull-permission*
+               rm -f test-journal-exists*
+               rm -f test-repair-strip*
+       fi
+
+       popd &>/dev/null || die
+       distutils-r1_src_test
+}
+
+python_test() {
+       local TEST_DIR
+
+       rm -rf "${TMPDIR}"/test
+       distutils_install_for_testing
+       cd tests || die
+       PYTHONWARNINGS=ignore "${PYTHON}" run-tests.py --verbose \
+               --tmpdir="${TMPDIR}"/test \
+               --with-hg="${TEST_DIR}"/scripts/hg \
+               || die "Tests fail with ${EPYTHON}"
+}
+
+pkg_postinst() {
+       use emacs && elisp-site-regen
+
+       elog "If you want to convert repositories from other tools using 
convert"
+       elog "extension please install correct tool:"
+       elog "  dev-vcs/cvs"
+       elog "  dev-vcs/darcs"
+       elog "  dev-vcs/git"
+       elog "  dev-vcs/monotone"
+       elog "  dev-vcs/subversion"
+}
+
+pkg_postrm() {
+       use emacs && elisp-site-regen
+}

Reply via email to