summaryrefslogtreecommitdiff
path: root/net-im
diff options
context:
space:
mode:
authorPetr Vaněk <arkamar@gentoo.org>2025-01-31 11:17:36 +0100
committerPetr Vaněk <arkamar@gentoo.org>2025-01-31 15:13:08 +0100
commit5875147e5e761119d6774b1bf2582745b7be99e6 (patch)
tree5730d6ec44cee2ce1a1a16620d3bade381c9eaf8 /net-im
parentnet-im/synapse: drop 1.120.2 (diff)
downloadgentoo-5875147e5e761119d6774b1bf2582745b7be99e6.tar.gz
gentoo-5875147e5e761119d6774b1bf2582745b7be99e6.tar.bz2
gentoo-5875147e5e761119d6774b1bf2582745b7be99e6.zip
net-im/synapse: add 1.123.0
This version bump contains a patch, which skips recovery test for Twisted >= 24.10.0. That change allows us to lift restriction and use more recent twisted dependency than 24.7.0. It seems to be safe to just skip the test. Signed-off-by: Petr Vaněk <arkamar@gentoo.org>
Diffstat (limited to 'net-im')
-rw-r--r--net-im/synapse/Manifest8
-rw-r--r--net-im/synapse/files/synapse-1.123.0-skip-recovery-test.patch50
-rw-r--r--net-im/synapse/synapse-1.123.0.ebuild229
3 files changed, 287 insertions, 0 deletions
diff --git a/net-im/synapse/Manifest b/net-im/synapse/Manifest
index e3458e71ccd9..5f28356f03f6 100644
--- a/net-im/synapse/Manifest
+++ b/net-im/synapse/Manifest
@@ -37,15 +37,20 @@ DIST ppv-lite86-0.2.17.crate 22242 BLAKE2B 48c4a31a3b555fa37072c4de083580bb76974
DIST proc-macro2-1.0.89.crate 49446 BLAKE2B 844c021394e7a2551bc179592a6769d672360150abf92debcb9ac60a94a2e426c48c408f06aeb2128686f5f04d66dc12973714670c21a5063ee6b9f3bae4e671 SHA512 488ab38a04df1d0330309382a7e4f667238cbc9b4d513da6a8f5718f8a762f76cc122af67fefe8f4b021a286b3d23e3ec83d781fe6ac823042a6daf14d147e2f
DIST pyo3-0.23.2.crate 1073639 BLAKE2B 01ddd26a4e347f3b6d7fee215a1894e779167730710373d59712f2119332fcf287d9c0e75d3d28baff8cf5000afb9d0e577947a26bdd8828428d33aa0f8be537 SHA512 b2b40809e1f26978c140b7ca4ecebb661a47fc01cd03fcd5c486076576c9b229de04f15ed55661db4e26545cb29110f1034a185abb623e4bf7fbb69188db335c
DIST pyo3-0.23.3.crate 1073838 BLAKE2B 5e1ce6a5c5232ebf0399b1b969e737cca12f978f445efec9408ea80b8bc6ac1047125dbefa36149c8a904882d6a64dd24a9bd50f1e8de7afe3a3271e1a0f2d6f SHA512 c80377e8673de8b8e51e2423d102dbcc46605a783c13127215916d69fc600efd67ba5f9cca420cb6859124165ec97fde40eb0a0566d8b4b60708e20b8e6e9b6d
+DIST pyo3-0.23.4.crate 1087676 BLAKE2B 2c7d3530460ff687e8f60dcff0fb01465b2a4642043ebdfc927fc3824b9fbce9c4b304250808a85405d21df12d17a1d1ada7bdf8f3563710692f22223e2732f1 SHA512 0015aa75163ad0ec026d185e15c26f59aaad0eb3cc3044b146e5d703bb375fcd838df2044febbd52e6e129dfba81c8249329fc3e4805695274dac7a69eee0651
DIST pyo3-build-config-0.23.2.crate 32197 BLAKE2B 393c76b1dcb625145673736272d4cb9d96a02df87ddcc385316652f0ff1b5595a34ebe5d789f61888c2fd82de05476c85f781d21018bd99cb630fa634afee203 SHA512 29678272073e896cb0b65efb0eaba40c82977b18efd389597aef8902e32daff51f2609c6be93ecfe0336260446c3186951f770ff449823cdde5a0518a1585c81
DIST pyo3-build-config-0.23.3.crate 32509 BLAKE2B 9e77701712589dec4ad74b3d0e66ae82c7a01b6f29ed36231d999aaf909f80def59d17916e1900bfff10b1d36a0a48ed4bf9757c817eb6c6269549f3d04bd6d4 SHA512 db8b0aa86e96eeb30a8ab36a8a1ba917b7b9e6918c2193d7466841ef38e689908f7719a5390d35fb9a156aa6bd84348fa99ea8d5a784faf5c5cc4635d9a3fac9
+DIST pyo3-build-config-0.23.4.crate 33885 BLAKE2B 7f95a8a9e08d413899ff1fa64af5a52783bad4a7b4db92835464f12bd8565f152497aaeb45d25cc91eed73950abeea30ca4c7495e3b15423ae588b97038beb18 SHA512 b11442609f43d9baab79daf083caf0366987f6ae182239814ad6df6fe4ad31b95132d74f1162fa9428d229bd8c18ef9b696a4c3329b3960fd705d1705fc5e973
DIST pyo3-ffi-0.23.2.crate 74052 BLAKE2B 085c66bae61e6059331813be77a1e4f850c4b8b12ac60b03188f2a009c9f58e062dc3ea2b9e470a480956bb8cbef645f95e53fae2638d59ebf5039aa5d41d504 SHA512 e228e473da98ce0fe4f15cf840ba1f51f66bb6fd103a7c0bb76b3218980c93b45ecf691f712333f4a27a9efc76517a85f6e13d5e9650b774eadebf59a647e493
DIST pyo3-ffi-0.23.3.crate 74064 BLAKE2B ec3cc59e047f780041a05e2bf9fac9d65a6f8ccfb5a3e1c35d7c7918da6ded7e65676888a743d3b4d0fe7b0996e441b722c159eed67360c1e3c5b598160a46cc SHA512 fe4678d4cfe81f065554f0d454345f5f8fde927af1afec9212bb49a67be5080dcc9be84e088612208b7732d2283c2c9168a31b0b6fbd32496520d500e372e161
+DIST pyo3-ffi-0.23.4.crate 74806 BLAKE2B 650784d46347c00f09c010c39e9762f778efc510ad0b99b5ddf30cab18edaba552207339ad44ed4ae6d87ddfcc56fa540a17e3a4cb331905a0988d5ba2dc682a SHA512 c12097292b4620f4fd98d61fde4a0f0c7d423a94d518fa5b1cf759089b066fede6d83e20171acc2aa7bf268de5700c9b59da32131216734626b0fa5cd5651801
DIST pyo3-log-0.12.0.crate 14630 BLAKE2B 0c22aff53a88b99bc3dca14c20ed7ee8f90bb0f955ff70e2c709dbd5947160a364a8c6f1e6cdd417f81cf58f8285b85d632c5b07c9497388f41f372f356ca934 SHA512 12a39a0ea2f85b5d8db8d325f913428364ec6e2a02cae83aaacbe013d3a70cac137ab8e916e1892badb7784c72b5d0aaa2634c7c8ac6f34f5fe778cd2e169c45
DIST pyo3-macros-0.23.2.crate 8056 BLAKE2B a87c4b8aab972eaf5e9b941db34e18be411bed8b5753d3e2d3f65e4a18723a72e70858bb34e8db949f0c6b748e122fed41e9c78f6c20150077fcc3c4eb0026ba SHA512 dba0b5bd212b6a5f38d6fc93183c8ab80bb53bfa5f03d471897014f2d3d1959804e5fdbc817845c1cef797f314b924d58eff95cfcb848eb98b283e104d24637c
DIST pyo3-macros-0.23.3.crate 8085 BLAKE2B bf9ea45a8afe7c663da4f3f5c09c23039bbcf9a9ae350eac2b6581a227864d259b1e5c5ea36f9d6f302c26cd957bb4564562b98785eac49233515d7d54453fdf SHA512 23bfcff285db1276f2dcca9895f7672ec6e5aec118039e2cef3cabca0a85eb97f138391cea4da26eb887dff09c65947b165ca83392edcc8640cb283df2929901
+DIST pyo3-macros-0.23.4.crate 8852 BLAKE2B ba5722fd52e47aa4dc2e89bacd69326bd98943a1670ebeab08a2e9e8070a0975ebbe928a0bce8b53a700b65294fee2b00d2a1e6623a0c48ac15902cdbfcb7a97 SHA512 c36c9005db5a4b48b5fda881130f4e7da8eef46e2c363c395ccca3fe476e0204d98c2a832cd03c787fb37a2664fadd42bf8f47de71eb44d055754ab5766af934
DIST pyo3-macros-backend-0.23.2.crate 70067 BLAKE2B 905c0e6e5ca0c0a91af8386a632cc81f4a9b08a51a22a260188078abf9ee70d60f77e2fc0df09483d8dc6b37cd455a23b7f70f41ee74a2ad9dd0dbef39cc22c2 SHA512 dc3f8780c09c63c0e0d4f26c29a9a4e29e4fc9f14254ac8a942235e480a3f4bfa3bf073d3011e043b6c22e1999d1f68bf7b0fdf212e9edb4bfb2396a97ab0ee1
DIST pyo3-macros-backend-0.23.3.crate 70098 BLAKE2B f8ee9c39f743960fc8093bfd53c043fca03b973192e1ab24b48066634e57ea7e74b3ba825ae72380e10569855eec9cb4f0d54f5f8c88dc60e67793257bef8d43 SHA512 9b22e975480f9afc2037587ba85889868a1b543069c2280c65f4cf98e5537708d098bb4885e881c1c9427740c8259988d82176b974900551a4e51097cefb8708
+DIST pyo3-macros-backend-0.23.4.crate 70912 BLAKE2B a428c732f0b17d9a8f620d0e8d58469f2cba339c8a8307393ce252a7860808e5d50e6bbf711cafd0635c844f4b1d48e57db4dd99ef7b5e3d97d6f760164278e9 SHA512 2fe670fbf35724f489cc82f38d3f7c1e6aa15b087a2674b7a68b562572f9bb00cbb7746cccfcb62d0861a18f6d24c5739273c8302d1662a161142f4a6b532b6f
DIST pythonize-0.23.0.crate 16177 BLAKE2B 96c27ee7819b5aa27a493c11fbfde4174baf8c081634543f211a1270874a239973bf16788641837efafe0b09f85df6edf82da36818bfb37005fdbac5fbb1edc8 SHA512 25d395bbbfaad4c2d57599144e92c289eb96cd1e2c5306b8ec17048a406df3147b93b56785a03bec6aba6ea31789a21ec0cc519ed40177fb263a98757349fa63
DIST quote-1.0.36.crate 28507 BLAKE2B b93495163ed205e33543ed45f084870240d479071d643704b6e348fb9ada6e1d8401893c13348b9964f4b6b17ddb96cb5458eec540f0d761655fcb96a4cd9129 SHA512 f1f002a912692f7ffd4912ca980ec57ff4aca3a7d9e2e42e9e3409e2105c9f59d86c05719f6af309bccaef2f8843b0848a6e3afda3356e045d8e7cc5956ae685
DIST rand-0.8.5.crate 87113 BLAKE2B 516f26bb2a969d0d79e957818133f35d2c0b4d9f1b401098ea23c5b80d27599e842b9298c0c5e46e2a6cb6953857bf8a9fb71ec9366c5ce6708cf17df14f179c SHA512 8b33a8988906ba5e2057a9a84bdd11f867a5536c22f5056eec59ed4ec4e3a6da2fd773da4c0510d343762e5a4ea0f007db4c4a7cef87a47f90e36c1a84d86fb2
@@ -61,15 +66,18 @@ DIST serde_derive-1.0.215.crate 57092 BLAKE2B f28bb66017599afdcd8d45c514b8e07854
DIST serde_derive-1.0.217.crate 57749 BLAKE2B 63b4930122d80d64492ba2718630513012202e42bbaa74510729ee66a0e72b8a1ad123784b479697ba562db43868f4bddfdf5e94bb3d744cd68a547471ba40aa SHA512 31020f4533d04b31ae125580a3c5093fad36438d324e2d9b063923aa8c125c654102ae7fbc3b3df892bb41db6b321962a23e0a37950e080055d715d15b18af76
DIST serde_json-1.0.133.crate 150739 BLAKE2B 7891eb5b8edcc7fd09ab1e15d3881ffdcb629aa39f2bd758c0505700a5f2dfabd85b1b66c3b094268bc1627b346e204c792f4ca61efa76c54ab9cd5744fb0ee2 SHA512 20e65ec87bff319897a141960d13deb5cadcf821209c1ee8799f1dc7f458ce432bc62c16df5bdada1c8d3cc01ff23b8125e8fa0a03545d4614f32efd687dc69f
DIST serde_json-1.0.134.crate 154351 BLAKE2B 546f8ffe9373444e8c9e81910476da281dcef10498dceabc8bec9f9063c55f4a9033b83586a09b0f410369515882c37712a2bd75ff1fff05815d904f37386124 SHA512 ab6323799bf19da8ec6e6c428370d37cd230192b45ef54d2c65c7d83907b2dde71d51650e44f1fcca1084e75e0e195e97b28437f53a331bf48effed3d59b58a5
+DIST serde_json-1.0.135.crate 154499 BLAKE2B deeb22932145715d6a443b36b9b984b6ace1e254199db9586c48dcfdd270a3208ef127584431e19a826947df705de78f07e58d9126ee1c5ccd2bc73d1e779bd8 SHA512 e19c583aa4a55f1c3b9a4e49b8b5c6b66e91c893db06e52f33e87608be1ff0aa27996065157f45dd4d2c59b752259ae747b2d353fe7cd1d466f56cd8a97fe71d
DIST sha1-0.10.6.crate 13517 BLAKE2B 85ad8dcd237125945f6f9c2d7a48bc9802dfe8398a2bac86ddb96763486092fa18e80a2e69f89cfd6e95599d34d60ced33b26a68cbbe39bf158238a79433584b SHA512 fd37be7e3f1d4b6addd313a36b55215fb70abd21be7831b71de28bd3eb03b7352817d8a7b1a166df002c3a23eadc8224e49edd4a37556c0e5357565305d4128f
DIST sha2-0.10.8.crate 26357 BLAKE2B 1d01b381223a931dc631ad3a1191f5378b1d2f3f9f20474c5f020e366624c73b08330ce8dc4bdd3e63b15f647276f533de655b545b77f70fbedc1a1846f44f0a SHA512 3be73133a6b7690e14acaead47914dc92395dca4191fb657a2ea186fefd0ccd94d12a1121d63a26027d9a9c62b775c53202473edc461587b9dcd75472af77785
DIST subtle-2.5.0.crate 13909 BLAKE2B 660c3a472ca54c9843ce3feea74b802e27fd7f62dd37a30e2a4ba82e4b3a71df63562e8865d5fc675d31d0900998a8730503f91a61450884446a3bdd6af0041b SHA512 f150b1e2037554f8cd3213a54ddbc258f8f670cc4f39e7084cdea4b47538dbc58b834bc93b443d58a4b9087224efc003234042aaf366687dbd32b1e7174082a0
DIST syn-2.0.85.crate 275231 BLAKE2B e7679e81bcef87920bc0ed707c997563844ffa1e9d470675ae6ec11d1e045e04ee2ad5744d423b8bc16def1c197ebecd874f468c1e12244838d1b4f34f9c1a30 SHA512 14b1402d2cd91456eb32dcffd494592eb3bd848ae22571f7ef0686493f91b82d23ba41428f9d31686fd24ea6ebca4b239b6c5099302a32014dffbc4ff9afeec1
DIST synapse-1.121.1.gh.tar.gz 8830079 BLAKE2B 1e249bdc3cc098417dbb1f707cc5ae2ca795ac9745fb664a4a51ed4b3788b808766808be913b08b7a7535fa7dd1535ece9cc67af4e1460be63cbd4750cf273ea SHA512 b3b0a5f7dbfa492a66ffb4b90a48ac0bc507e28be1a55889b966332acb59049dc58bab8798183216932f753b2736d285bf711b7179c4c412881ea4ac0df1fa9a
DIST synapse-1.122.0.gh.tar.gz 8838124 BLAKE2B f954472c45efb6649318378b39779e491469d8294ee40b6de53423673e48f919e882555209c8c47a2794c58a0226b44426f0330578992324a48e21ae5eb815f7 SHA512 cab6f2f3dd43299b82ec582444cd29a430f4a0c87f15240a93a9d72ef690f91c4ed20ec68fe3e822f404ba43208dafa67d883a1911f7808616bdfa378a0276e7
+DIST synapse-1.123.0.gh.tar.gz 8846158 BLAKE2B e7bfefe98f615617eba7a04f66555ed496368f2a4b9d28ce50b5a5f2ab13e8c08f16a0d3a025d9c29e075995fac7734ebb74d398f86f1db55bf0d3ca354c7558 SHA512 c22e3ddc4fc3157b0c9fb8d510523a9195907a8def4f69e7825f83eb6c809eb9402ae736a2785fe34d34160ac27bf1972f823ce3c8162f80c036133fc2886d43
DIST target-lexicon-0.12.14.crate 25508 BLAKE2B 5ebb6b49e5c3b0057959557651287d4bf5ffe5b499340019ff64d5fc3b64e780e344982e358c94b1b25a20bf0f526a584aeecc704695b50a55cc268dd65edb97 SHA512 3410ecc0faf854f49c41c99f83972960e67065b1e0e78557a7c4996d996109bfd167d2121a019f5256f996c896cd45af032038ab7918fdcc6ee6311693ce951a
DIST typenum-1.17.0.crate 42849 BLAKE2B a6d1162050679e2c4ab2467f3a77d301f6861882eb7c9749f31d047f383dd5bd2ed5846ad63eed99ccc04d6ac36cc697a305861e1d65880b4d2ef04ee0a79b94 SHA512 99773d5d9f850c0602db4bb67dd062b0ade6f086e155216f1bb2fb6569461ba7e1b7c2f2af81ea8833bc3bfcf3fe5033edecb7c438adae63f59d3e30cf63a508
DIST ulid-1.1.3.crate 11596 BLAKE2B a079fc34f5af9de89469d1edd5a53c1bc1a0f9bff8ce731c185345fe4067432a121efc6a04ac6cf377fd03c89558067e7d5d52c4b9dfd23e7055ce5af89e84b3 SHA512 a8f6ab3601417e7a46a763bb28722c3770fb0c2dea340c02a8e96d2e3597a304589745c65278c90bbc64f5153501a2a85321386669fda71ad7252ec67dd749df
+DIST ulid-1.1.4.crate 11367 BLAKE2B f8dabe988f5a65cd2ffa66196bc3540601cc47e45f56d41542d4edd02232bda632eb5a0fff833ebadacba8e537d496f04806a9297bee9161bbf1abf25a6a3e23 SHA512 6221a1f8616678e63ea7875830cef8d7759f56f40b97c83706aae74a678abc771dc5a382dcfb05e0a40637178814e3352d724ba72e4eb18d7da8244ade7a5280
DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920
DIST unindent-0.2.3.crate 7306 BLAKE2B a57407b117e99c230750c7d4a2a0899586c8271e4ba88ecb409c976905c014f42885372c234a75fbfbedf71dbed779f95f735975d150adacdcb61152a49db4c2 SHA512 2f1eb420ea3653b00d3e5fa0c2c105da8fd8a37cb3e699373c168604b799fccd5f0faf0cddce4212d119c2afb0c86b41efc3a50752b83ff7beda2bd84d360505
DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
diff --git a/net-im/synapse/files/synapse-1.123.0-skip-recovery-test.patch b/net-im/synapse/files/synapse-1.123.0-skip-recovery-test.patch
new file mode 100644
index 000000000000..5fa9a47d3e03
--- /dev/null
+++ b/net-im/synapse/files/synapse-1.123.0-skip-recovery-test.patch
@@ -0,0 +1,50 @@
+From 095c8d95f9df7380de9bc0b8aef6f06bfe86ff63 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20Van=C4=9Bk?= <arkamar@gentoo.org>
+Date: Wed, 15 Jan 2025 09:29:39 +0100
+Subject: [PATCH] Skip test_recovery test for Twisted >= 24.10.0
+
+The test fails starting with Twisted 24.10.0 due to internal changes of
+Failures handling introduced in PR [1]. The issue is triggered since
+commit [2], as it was bisected in [3].
+
+The changes simplify how Failure objects are managed but no longer clear
+Failure instances in the same way, causing this test to fail. It seems
+to be safe to just skip this test, which will allow us to lift twisted
+dependency restriction.
+
+[1] https://github.com/twisted/twisted/pull/12292
+[2] https://github.com/twisted/twisted/commit/ece4381ecd4f9ed06264af03d21d26ed933bf341
+[3] https://github.com/element-hq/synapse/pull/17878#issuecomment-2503116192
+---
+ tests/storage/databases/main/test_events_worker.py | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/tests/storage/databases/main/test_events_worker.py b/tests/storage/databases/main/test_events_worker.py
+index 104d141a7..975bdefe4 100644
+--- a/tests/storage/databases/main/test_events_worker.py
++++ b/tests/storage/databases/main/test_events_worker.py
+@@ -20,9 +20,11 @@
+ #
+ import json
+ from contextlib import contextmanager
++from incremental import Version
+ from typing import Generator, List, Set, Tuple
+ from unittest import mock
+
++import twisted
+ from twisted.enterprise.adbapi import ConnectionPool
+ from twisted.internet.defer import CancelledError, Deferred, ensureDeferred
+ from twisted.test.proto_helpers import MemoryReactor
+@@ -447,6 +449,9 @@ class DatabaseOutageTestCase(unittest.HomeserverTestCase):
+ )
+ self.assertEqual(str(failure.value), "Could not connect to the database.")
+
++ @unittest.skip_unless(twisted.version < Version("Twisted", 24, 10, 0),
++ """fails since twisted-24.10 due to internal failure workflow changes,
++ see https://github.com/element-hq/synapse/pull/17878#issuecomment-2503116192""")
+ def test_recovery(self) -> None:
+ """Test that event fetchers recover after a database outage."""
+ with self._outage():
+--
+2.45.2
+
diff --git a/net-im/synapse/synapse-1.123.0.ebuild b/net-im/synapse/synapse-1.123.0.ebuild
new file mode 100644
index 000000000000..cb829fb751ca
--- /dev/null
+++ b/net-im/synapse/synapse-1.123.0.ebuild
@@ -0,0 +1,229 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{10..13} )
+
+CRATES="
+ aho-corasick@1.1.3
+ anyhow@1.0.95
+ arc-swap@1.7.1
+ autocfg@1.3.0
+ base64@0.21.7
+ blake2@0.10.6
+ block-buffer@0.10.4
+ bumpalo@3.16.0
+ bytes@1.9.0
+ cfg-if@1.0.0
+ cpufeatures@0.2.12
+ crypto-common@0.1.6
+ digest@0.10.7
+ fnv@1.0.7
+ generic-array@0.14.7
+ getrandom@0.2.15
+ headers-core@0.3.0
+ headers@0.4.0
+ heck@0.5.0
+ hex@0.4.3
+ http@1.2.0
+ httpdate@1.0.3
+ indoc@2.0.5
+ itoa@1.0.11
+ js-sys@0.3.69
+ lazy_static@1.5.0
+ libc@0.2.154
+ log@0.4.22
+ memchr@2.7.2
+ memoffset@0.9.1
+ mime@0.3.17
+ once_cell@1.19.0
+ portable-atomic@1.6.0
+ ppv-lite86@0.2.17
+ proc-macro2@1.0.89
+ pyo3-build-config@0.23.4
+ pyo3-ffi@0.23.4
+ pyo3-log@0.12.0
+ pyo3-macros-backend@0.23.4
+ pyo3-macros@0.23.4
+ pyo3@0.23.4
+ pythonize@0.23.0
+ quote@1.0.36
+ rand@0.8.5
+ rand_chacha@0.3.1
+ rand_core@0.6.4
+ regex-automata@0.4.8
+ regex-syntax@0.8.5
+ regex@1.11.1
+ ryu@1.0.18
+ serde@1.0.217
+ serde_derive@1.0.217
+ serde_json@1.0.135
+ sha1@0.10.6
+ sha2@0.10.8
+ subtle@2.5.0
+ syn@2.0.85
+ target-lexicon@0.12.14
+ typenum@1.17.0
+ ulid@1.1.4
+ unicode-ident@1.0.12
+ unindent@0.2.3
+ version_check@0.9.4
+ wasi@0.11.0+wasi-snapshot-preview1
+ wasm-bindgen-backend@0.2.92
+ wasm-bindgen-macro-support@0.2.92
+ wasm-bindgen-macro@0.2.92
+ wasm-bindgen-shared@0.2.92
+ wasm-bindgen@0.2.92
+ web-time@1.1.0
+"
+
+inherit cargo distutils-r1 multiprocessing optfeature systemd
+
+DESCRIPTION="Reference implementation of Matrix homeserver"
+HOMEPAGE="
+ https://matrix.org/
+ https://github.com/element-hq/synapse
+"
+SRC_URI="
+ https://github.com/element-hq/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="AGPL-3+"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0-with-LLVM-exceptions BSD MIT Unicode-DFS-2016
+ || ( Apache-2.0 Boost-1.0 )
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64"
+IUSE="postgres systemd test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ acct-user/synapse
+ acct-group/synapse
+ dev-python/attrs[${PYTHON_USEDEP}]
+ dev-python/bcrypt[${PYTHON_USEDEP}]
+ dev-python/bleach[${PYTHON_USEDEP}]
+ >=dev-python/canonicaljson-2[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/ijson[${PYTHON_USEDEP}]
+ dev-python/immutabledict[${PYTHON_USEDEP}]
+ >=dev-python/jinja2-3.0[${PYTHON_USEDEP}]
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ >=dev-python/matrix-common-1.3.0[${PYTHON_USEDEP}]
+ dev-python/msgpack[${PYTHON_USEDEP}]
+ dev-python/netaddr[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/phonenumbers[${PYTHON_USEDEP}]
+ >=dev-python/pillow-10.0.1[${PYTHON_USEDEP},webp]
+ dev-python/prometheus-client[${PYTHON_USEDEP}]
+ dev-python/pyasn1-modules[${PYTHON_USEDEP}]
+ dev-python/pyasn1[${PYTHON_USEDEP}]
+ dev-python/pydantic[${PYTHON_USEDEP}]
+ dev-python/pymacaroons[${PYTHON_USEDEP}]
+ dev-python/pyopenssl[${PYTHON_USEDEP}]
+ >=dev-python/python-multipart-0.0.12-r100[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/service-identity[${PYTHON_USEDEP}]
+ dev-python/signedjson[${PYTHON_USEDEP}]
+ dev-python/sortedcontainers[${PYTHON_USEDEP}]
+ dev-python/treq[${PYTHON_USEDEP}]
+ dev-python/twisted[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ dev-python/unpaddedbase64[${PYTHON_USEDEP}]
+ postgres? ( dev-python/psycopg:2[${PYTHON_USEDEP}] )
+ systemd? ( dev-python/python-systemd[${PYTHON_USEDEP}] )
+"
+BDEPEND="
+ acct-user/synapse
+ acct-group/synapse
+ dev-python/setuptools-rust[${PYTHON_USEDEP}]
+ test? (
+ ${RDEPEND}
+ dev-python/hiredis[${PYTHON_USEDEP}]
+ dev-python/idna[${PYTHON_USEDEP}]
+ dev-python/parameterized[${PYTHON_USEDEP}]
+ dev-python/pyicu[${PYTHON_USEDEP}]
+ dev-python/txredisapi[${PYTHON_USEDEP}]
+ postgres? ( dev-db/postgresql[server] )
+ )
+"
+
+# Rust extension
+QA_FLAGS_IGNORED="usr/lib/python3.*/site-packages/synapse/synapse_rust.abi3.so"
+
+PATCHES=(
+ "${FILESDIR}/${P}-skip-recovery-test.patch"
+)
+
+src_test() {
+ if use postgres; then
+ einfo "Preparing postgres test instance"
+ initdb --pgdata="${T}/pgsql" || die
+ pg_ctl --wait --pgdata="${T}/pgsql" start \
+ --options="-h '' -k '${T}'" || die
+ createdb --host="${T}" synapse_test || die
+
+ # See https://matrix-org.github.io/synapse/latest/development/contributing_guide.html#running-tests-under-postgresql
+ local -x SYNAPSE_POSTGRES=1
+ local -x SYNAPSE_POSTGRES_HOST="${T}"
+ fi
+
+ # This remove is necessary otherwise python is not able to locate
+ # synapse_rust.abi3.so.
+ rm -rf synapse || die
+
+ nonfatal distutils-r1_src_test
+ local ret=${?}
+
+ if use postgres; then
+ einfo "Stopping postgres test instance"
+ pg_ctl --wait --pgdata="${T}/pgsql" stop || die
+ fi
+
+ [[ ${ret} -ne 0 ]] && die
+}
+
+python_test() {
+ "${EPYTHON}" -m twisted.trial -j "$(makeopts_jobs)" tests
+}
+
+src_install() {
+ distutils-r1_src_install
+ keepdir /var/{lib,log}/synapse /etc/synapse
+ fowners synapse:synapse /var/{lib,log}/synapse /etc/synapse
+ fperms 0750 /var/{lib,log}/synapse /etc/synapse
+ newinitd "${FILESDIR}/${PN}.initd-r1" "${PN}"
+ systemd_dounit "${FILESDIR}/synapse.service"
+}
+
+pkg_postinst() {
+ optfeature "Improve user search for international display names" dev-python/pyicu
+ optfeature "Redis support" dev-python/txredisapi
+ optfeature "VoIP relaying on your homeserver with turn" net-im/coturn
+
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ einfo
+ elog "In order to generate initial configuration run:"
+ elog "sudo -u synapse synapse_homeserver \\"
+ elog " --server-name matrix.domain.tld \\"
+ elog " --config-path /etc/synapse/homeserver.yaml \\"
+ elog " --generate-config \\"
+ elog " --data-directory /var/lib/synapse \\"
+ elog " --report-stats=no"
+ einfo
+ else
+ einfo
+ elog "Please refer to upgrade notes if any special steps are required"
+ elog "to upgrade from the version you currently have installed:"
+ elog
+ elog " https://github.com/element-hq/synapse/blob/develop/docs/upgrade.md"
+ einfo
+ fi
+}