From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 61C2115808A for ; Mon, 04 Aug 2025 11:08:21 +0000 (UTC) Received: from lists.gentoo.org (bobolink.gentoo.org [140.211.166.189]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519) (No client certificate requested) (Authenticated sender: relay-lists.gentoo.org@gentoo.org) by smtp.gentoo.org (Postfix) with ESMTPSA id 4A52D340CBB for ; Mon, 04 Aug 2025 11:08:21 +0000 (UTC) Received: from bobolink.gentoo.org (localhost [127.0.0.1]) by bobolink.gentoo.org (Postfix) with ESMTP id B315811036D; Mon, 04 Aug 2025 11:08:19 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by bobolink.gentoo.org (Postfix) with ESMTPS id A790A11036D for ; Mon, 04 Aug 2025 11:08:19 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 50419340CB6 for ; Mon, 04 Aug 2025 11:08:19 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id B47BB2889 for ; Mon, 04 Aug 2025 11:08:17 +0000 (UTC) From: "Petr Vaněk" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Petr Vaněk" Message-ID: <1754305638.8b21d0bdcf2b48c86ab47e1accff51b6a7a5ff6a.arkamar@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: net-im/synapse/ X-VCS-Repository: repo/gentoo X-VCS-Files: net-im/synapse/Manifest net-im/synapse/synapse-1.135.0.ebuild X-VCS-Directories: net-im/synapse/ X-VCS-Committer: arkamar X-VCS-Committer-Name: Petr Vaněk X-VCS-Revision: 8b21d0bdcf2b48c86ab47e1accff51b6a7a5ff6a X-VCS-Branch: master Date: Mon, 04 Aug 2025 11:08:17 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 783e55f3-7f0d-49b1-b275-bdfa1fc0d232 X-Archives-Hash: 4f128fc43ec6d54e6602c116c2109f6e commit: 8b21d0bdcf2b48c86ab47e1accff51b6a7a5ff6a Author: Petr Vaněk gentoo org> AuthorDate: Mon Aug 4 08:54:06 2025 +0000 Commit: Petr Vaněk gentoo org> CommitDate: Mon Aug 4 11:07:18 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8b21d0bd net-im/synapse: add 1.135.0 Signed-off-by: Petr Vaněk gentoo.org> net-im/synapse/Manifest | 3 + net-im/synapse/synapse-1.135.0.ebuild | 370 ++++++++++++++++++++++++++++++++++ 2 files changed, 373 insertions(+) diff --git a/net-im/synapse/Manifest b/net-im/synapse/Manifest index 6abd9255169d..94c6c1a165cb 100644 --- a/net-im/synapse/Manifest +++ b/net-im/synapse/Manifest @@ -96,6 +96,7 @@ DIST miniz_oxide-0.8.8.crate 67065 BLAKE2B 8cffe475d689a07246c00f979db6ea37d7e2e DIST mio-1.0.3.crate 103703 BLAKE2B 0d2360e4ef45f37104208a31e9aa467d6db041dfeb97403a010a36e1e1427f51d97f8408948c75c0084e6c118f058267bfe87d36e7911cb37366f2b1ac6eb693 SHA512 2142edc7e9378fc3437110c85ba2cee9c9683e87034cd44275d2c389645979db53fbbc29fec304f1d8c8f0464ae17d2a5db1aa9215d696fa0282f5069700b1e2 DIST object-0.36.7.crate 329938 BLAKE2B 0b02cf2f44e99002909b38125edada1a259feae59fd0e5ef52001755b6878cac710c87c60fbafdbe405281e039f68572ea3d8093d16128899090fd70df7f2fa8 SHA512 dd69172349ecf51fd2351d32cc4453760ca1d15e854a1cf5ed99112032901a54b4645b24163b946deed11f81d3e3035e1a5afd8bff20f335dbd05eceab073478 DIST once_cell-1.19.0.crate 33046 BLAKE2B c14b374eaf4ac0f60acc2e02f7bba270a0e8e0a6978d749cd3cb0ab3eb26907e4fbea70dd5132982f90290381ed18ff8a87fd530f1415fabffac864f157ea380 SHA512 4154876afd34a699ee650d1a8a1c5ee5a25f0ebd9388b8bef2564e33629fae68f113d7507488c68abbe7ea1acf9bbc41813cbbf3ef3e464e3f3b9cc7a51d870c +DIST once_cell-1.21.3.crate 34534 BLAKE2B 3578aaef305cad2fdffdc40c392775a3540bfab3f3aeafd22466d9507bf8346b9fcc200929d48525b051070c0aaa423ecbcaa12868b34dca007991effb224166 SHA512 32a87506c6f4598f3ca2c88556014ef2093d5db9a08602335e847caa537a866492fa74c894e7e1da2e4289a1d3dbffcb90a9e37a4a1453203832f434b8206990 DIST openssl-probe-0.1.6.crate 8128 BLAKE2B 912371bbd0e105e7281eaa1462d68c6674ae11226f72a9e5c2808be12e975e39a257b5424cafdc527fac9d2313ed928f34ecf407cddbfb179283137e0817631d SHA512 6c2f02a9d42caf578fbd2a40277ad346bef32d191f27564d04a83477d62d6ad1f44945f40234e9425503e3f701a9e0ec8735ade52641170ff57fa6732666ac69 DIST percent-encoding-2.3.1.crate 10235 BLAKE2B cf8e2fd7b359a05b7bdaf731f9ae84c7fe6f468a53482eb2db7f93dfdaab64ac812b3664899db260055a93449462e6d219c695942fc5b030517b197b4df9b95f SHA512 5951ea8315e52cf3acfbaa023cb9e13a136b114c54a7da0bd44619ae24cd2159d4a96469d7572a2fdabd94e19513a033387117d7ca81d0eb409fb383e4acda44 DIST pin-project-lite-0.2.16.crate 30504 BLAKE2B efd0b426fcc6ea8852bce499fac61f9755a11c6a2999cbec514f093ba7b3f94b1f2d437ee9abb243e31f3838ac1c74491a212851d7798eb249e209b35e015332 SHA512 971adfe54cfed304647fd944c1c915e78b37eaf0de3a582fb984a5e91f1b7d4db2cf0f53a9a64b64427062d4b41c0a36baddef782411a76ae3be0f8ca45f0718 @@ -148,6 +149,7 @@ DIST security-framework-sys-2.14.0.crate 20537 BLAKE2B 50a04eda370788fb769600b0d DIST serde-1.0.219.crate 78983 BLAKE2B 7e9542a04c7f1aeff95b821245034368ff1721d98d7138bb1e0a99cdd6436dc37d69606308834fd33daaea3a1792409b3b2305b802433fa1d155816c55ca2a7d SHA512 0d3fe9a47af027d0d79499e60d940661dba6e29e8f0ce47d0db2ab722030d255aff637248af6f893a9c4224239733db09ffcdc6e1923a7177bfae55c98ebe769 DIST serde_derive-1.0.219.crate 57798 BLAKE2B 071f02019f829a2753769ce915d11df8f0d202ca67314fe83b42e1f1f3d07bc91b7e7c38fe498a0513714f80d3a3dbf2b447b1f85762de06dd021119801afa89 SHA512 1676bbf09e11273705a35c540d52d35d1bba7cdf1f347d40a364d7ae9269167f9f0f62ff4fa384aaa613c83e432a8eb3c016587ea643bb11434c00664a5c116b DIST serde_json-1.0.140.crate 154852 BLAKE2B 733aecfb88fc37de37b60fdd33a45fecc2bf0ac2165b81bdb12665de7e26633836160e927be5d538eb2056a799e85ca4a1008cbd30af23b72a594643c6015f22 SHA512 bafa26fd43ba30cbf73572b8203292b1f275995636e9dfc3d47954939453fe4ecf0c60f25d2af1ec16c7cb0e7ce3b96cc07507d1b53b7db566fe7cb2624f0e12 +DIST serde_json-1.0.141.crate 155322 BLAKE2B efa3f32412d8aca8a1a49c186fe12b3f531d90f00a50e974dcd6abae9cc9b0ab595b31d5de57092eefa80aab66d8a61d41453df049076a9d0a7d3ed957710b28 SHA512 0d1d28bb79e3deca01e3e72f431395c8db7c86b9a175979c297d379f1ce3d60014c9cc1cbb688ddee673907717e2690d79178e776a5c2b247c062d1c4e0c4f6b DIST serde_urlencoded-0.7.1.crate 12822 BLAKE2B 38c74ea862f041828467dfa586bad9b8e1d1d64a9f82fb7f98727e3965377d00e59f2dbf20955a9dce976b6911c0a619d2a6e4cc9dfc73cf0f6c449d873fd072 SHA512 b209ad01b6565e95c1d5b431a3f4f8a0df3d11c2a06a44123048bfa4b34ebb6807eec593f0c1c89de3a06ac3786a14747df9c70b4f4d5e4b72b4feb53084eb60 DIST sha1-0.10.6.crate 13517 BLAKE2B 85ad8dcd237125945f6f9c2d7a48bc9802dfe8398a2bac86ddb96763486092fa18e80a2e69f89cfd6e95599d34d60ced33b26a68cbbe39bf158238a79433584b SHA512 fd37be7e3f1d4b6addd313a36b55215fb70abd21be7831b71de28bd3eb03b7352817d8a7b1a166df002c3a23eadc8224e49edd4a37556c0e5357565305d4128f DIST sha2-0.10.9.crate 29271 BLAKE2B 1d614e0efe085cdb40e05726578a9b4ca6bce93f6d3324f5dc0444cb37054912cdaf5d28d468eac2c0046030d920fced2ccd006953b80865ce8a2d43ef3daa81 SHA512 963adeeb4ed8b0e7fc19085e8721ea13e9b3aea5d115ca1b3dbca495ad14810c6450991dd3753807c293c415aaeb1054b8b4124c72e7090cd9e86f09fcbb4f80 @@ -162,6 +164,7 @@ DIST synapse-1.131.0.gh.tar.gz 8925636 BLAKE2B 350cf5e1fe1bdbfc0ce0380299f77c3d4 DIST synapse-1.132.0.gh.tar.gz 8998203 BLAKE2B 8163f5cdca748603d3e49e106a1fa3087321e573f82b8733dc2ccffffb36825d9fab72bad3df878ca6e170c96c627c6e790fe472b13ed2a4a061e24af83dc084 SHA512 df2e32d472738ad049b29f3f46aef697d38caae88f9a2d701ac8eb5761de88611cc92708a304b8809a74394f7aa78b9e7f02650cfec54e44ae2f0f97d84b5eb7 DIST synapse-1.133.0.gh.tar.gz 9015618 BLAKE2B d27c9e1f8835117775175677de626068c538e8b69c2fa8f9dbbab95e26d040f1f81b5b433b1593fa32eedc94c9e2c1194076727815f4e239523b7b8451fc387e SHA512 cb7bb6b5554458b94068af6013f312e2847c9fcfc55c913df719f79e97984de4c308bb14310b6815d5c3f3480e09b2aa64eb75cc9273d614fb0b452c82c46c1e DIST synapse-1.134.0.gh.tar.gz 9019732 BLAKE2B ee898e95009dcfa8e58f128048a0a8f712e6d8afe9b6940ce7b3cd62c87f06c62d4dc77d4743b561685c2b01e36aacff1342e4d3e4f15dda5b28bd571105fb27 SHA512 2dd0a1e8fc6466159c829dc8368d91c18c7b5b289385b3ea999513eb944f0ee61de3b92d9e56bde0ce432ae2e4d9131763949a59962d3b58ac71373512be710e +DIST synapse-1.135.0.gh.tar.gz 9056065 BLAKE2B 92b7232814e1eb1abdd16a2b8b4f05c0fa935ec37dadd19293944de115997c4dc002e4e8ab7b7c9e96fdfa793d9a4170638b029ddb58891801b922d32c43a26b SHA512 7751ce9544f57bf234cef7ed9eaa5083a2a5d8ae2f42cc9fcb6a21783abd5af2f3325d7bf9e0a794bf01ec32339215ab1ddccd8af5dd86a52bbfe71e3a17570b DIST sync_wrapper-1.0.2.crate 6958 BLAKE2B b2e162f982ea827229dcff468bcf31c6286c57ea3491a909784cdb50b0ba36c3a1a6fbdc7b34fc2aa9a7df1d174393d61ea9dc7ab3439a5e1a1884e2473a70f8 SHA512 aa314a6ab3ba028d2a169ea55a50eecf3b73b475a81c91330430ece9f1734296562627a8c32fad51b5a26796931f364e2803b3a13075ccd9a0aa614d5220903c DIST synstructure-0.13.2.crate 18950 BLAKE2B c475f370d901a371262f466dd98e3914dd6f36aa473a33362866c0f781d27b1813233f96b02208f3463a825e8012cab0f8872eed848d9aa0eac88b581a0d261e SHA512 2698f4e80b93f7cf1d8ae97c4c42a7f61e7b7081f7f1bbb94d7f48ab7ae813a666d73c49ba3812cda9155e0138b55cc246fb96e5858e411a8d32bafb3e2b2afb DIST target-lexicon-0.13.2.crate 27923 BLAKE2B 0761f0ffdc23b9c9df86b384d59611c7b8b5e29ff068f03367ad2fe84cfb6d11e1af149b9338236978e9566fedc51387db9f239d2a602db41045ac3db907faec SHA512 d25e3cc3d679cb6b6f24c03e0c24db9d6ca31b8ed42ac9531bd7637557fbba225a6c8ac4f68a8eaf3569195814d599e668a968afbc73b940a77cbc27552cc90a diff --git a/net-im/synapse/synapse-1.135.0.ebuild b/net-im/synapse/synapse-1.135.0.ebuild new file mode 100644 index 000000000000..2b72b94d0e8a --- /dev/null +++ b/net-im/synapse/synapse-1.135.0.ebuild @@ -0,0 +1,370 @@ +# 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_{11..13} ) + +CRATES=" + addr2line@0.24.2 + adler2@2.0.0 + aho-corasick@1.1.3 + anyhow@1.0.98 + arc-swap@1.7.1 + atomic-waker@1.1.2 + autocfg@1.3.0 + backtrace@0.3.74 + base64@0.22.1 + bitflags@2.8.0 + blake2@0.10.6 + block-buffer@0.10.4 + bumpalo@3.16.0 + bytes@1.10.1 + cc@1.2.19 + cfg-if@1.0.0 + cfg_aliases@0.2.1 + core-foundation-sys@0.8.7 + core-foundation@0.10.0 + core_maths@0.1.1 + cpufeatures@0.2.12 + crypto-common@0.1.6 + digest@0.10.7 + displaydoc@0.2.5 + equivalent@1.0.2 + fnv@1.0.7 + form_urlencoded@1.2.1 + futures-channel@0.3.31 + futures-core@0.3.31 + futures-executor@0.3.31 + futures-io@0.3.31 + futures-macro@0.3.31 + futures-sink@0.3.31 + futures-task@0.3.31 + futures-util@0.3.31 + futures@0.3.31 + generic-array@0.14.7 + getrandom@0.2.15 + getrandom@0.3.1 + gimli@0.31.1 + h2@0.4.9 + hashbrown@0.15.2 + headers-core@0.3.0 + headers@0.4.1 + heck@0.5.0 + hex@0.4.3 + http-body-util@0.1.3 + http-body@1.0.1 + http@1.3.1 + httparse@1.10.1 + httpdate@1.0.3 + hyper-rustls@0.27.5 + hyper-util@0.1.14 + hyper@1.6.0 + icu_collections@1.5.0 + icu_collections@2.0.0 + icu_locale@2.0.0 + icu_locale_core@2.0.0 + icu_locale_data@2.0.0 + icu_locid@1.5.0 + icu_locid_transform@1.5.0 + icu_locid_transform_data@1.5.1 + icu_normalizer@1.5.0 + icu_normalizer_data@1.5.1 + icu_properties@1.5.1 + icu_properties_data@1.5.1 + icu_provider@1.5.0 + icu_provider@2.0.0 + icu_provider_macros@1.5.0 + icu_segmenter@2.0.0 + icu_segmenter_data@2.0.0 + idna@1.0.3 + idna_adapter@1.2.0 + indexmap@2.9.0 + indoc@2.0.5 + io-uring@0.7.8 + ipnet@2.11.0 + iri-string@0.7.8 + itoa@1.0.11 + js-sys@0.3.77 + lazy_static@1.5.0 + libc@0.2.172 + libm@0.2.15 + litemap@0.7.5 + litemap@0.8.0 + log@0.4.27 + memchr@2.7.2 + memoffset@0.9.1 + mime@0.3.17 + miniz_oxide@0.8.8 + mio@1.0.3 + object@0.36.7 + once_cell@1.21.3 + openssl-probe@0.1.6 + percent-encoding@2.3.1 + pin-project-lite@0.2.16 + pin-utils@0.1.0 + portable-atomic@1.6.0 + potential_utf@0.1.2 + ppv-lite86@0.2.17 + proc-macro2@1.0.89 + pyo3-build-config@0.25.1 + pyo3-ffi@0.25.1 + pyo3-log@0.12.4 + pyo3-macros-backend@0.25.1 + pyo3-macros@0.25.1 + pyo3@0.25.1 + pythonize@0.25.0 + quinn-proto@0.11.8 + quinn-udp@0.5.11 + quinn@0.11.5 + quote@1.0.36 + rand@0.8.5 + rand@0.9.0 + rand_chacha@0.3.1 + rand_chacha@0.9.0 + rand_core@0.6.4 + rand_core@0.9.0 + regex-automata@0.4.8 + regex-syntax@0.8.5 + regex@1.11.1 + reqwest@0.12.22 + ring@0.17.14 + rustc-demangle@0.1.24 + rustc-hash@2.1.1 + rustls-native-certs@0.8.1 + rustls-pki-types@1.11.0 + rustls-webpki@0.103.1 + rustls@0.23.26 + rustversion@1.0.20 + ryu@1.0.18 + schannel@0.1.27 + security-framework-sys@2.14.0 + security-framework@3.2.0 + serde@1.0.219 + serde_derive@1.0.219 + serde_json@1.0.141 + serde_urlencoded@0.7.1 + sha1@0.10.6 + sha2@0.10.9 + shlex@1.3.0 + slab@0.4.9 + smallvec@1.15.0 + socket2@0.5.9 + stable_deref_trait@1.2.0 + subtle@2.5.0 + syn@2.0.85 + sync_wrapper@1.0.2 + synstructure@0.13.2 + target-lexicon@0.13.2 + thiserror-impl@1.0.65 + thiserror@1.0.65 + tinystr@0.7.6 + tinystr@0.8.1 + tinyvec@1.9.0 + tinyvec_macros@0.1.1 + tokio-rustls@0.26.2 + tokio-util@0.7.15 + tokio@1.46.1 + tower-http@0.6.6 + tower-layer@0.3.3 + tower-service@0.3.3 + tower@0.5.2 + tracing-core@0.1.34 + tracing@0.1.41 + try-lock@0.2.5 + typenum@1.17.0 + ulid@1.2.1 + unicode-ident@1.0.12 + unindent@0.2.3 + untrusted@0.9.0 + url@2.5.4 + utf16_iter@1.0.5 + utf8_iter@1.0.4 + version_check@0.9.4 + want@0.3.1 + wasi@0.11.0+wasi-snapshot-preview1 + wasi@0.13.3+wasi-0.2.2 + wasm-bindgen-backend@0.2.100 + wasm-bindgen-futures@0.4.50 + wasm-bindgen-macro-support@0.2.100 + wasm-bindgen-macro@0.2.100 + wasm-bindgen-shared@0.2.100 + wasm-bindgen@0.2.100 + wasm-streams@0.4.2 + web-sys@0.3.77 + web-time@1.1.0 + windows-sys@0.52.0 + windows-sys@0.59.0 + windows-targets@0.52.6 + windows_aarch64_gnullvm@0.52.6 + windows_aarch64_msvc@0.52.6 + windows_i686_gnu@0.52.6 + windows_i686_gnullvm@0.52.6 + windows_i686_msvc@0.52.6 + windows_x86_64_gnu@0.52.6 + windows_x86_64_gnullvm@0.52.6 + windows_x86_64_msvc@0.52.6 + wit-bindgen-rt@0.33.0 + write16@1.0.0 + writeable@0.5.5 + writeable@0.6.1 + yoke-derive@0.7.5 + yoke-derive@0.8.0 + yoke@0.7.5 + yoke@0.8.0 + zerocopy-derive@0.8.17 + zerocopy@0.8.17 + zerofrom-derive@0.1.6 + zerofrom@0.1.6 + zeroize@1.8.1 + zerotrie@0.2.2 + zerovec-derive@0.10.3 + zerovec-derive@0.11.1 + zerovec@0.10.4 + zerovec@0.11.2 +" + +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 Apache-2.0-with-LLVM-exceptions BSD ISC MIT Unicode-3.0 + Unicode-DFS-2016 +" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc64" +IUSE="postgres selinux 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}] ) + selinux? ( sec-policy/selinux-matrixd ) + 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/txredisapi[${PYTHON_USEDEP}] + postgres? ( dev-db/postgresql[server] ) + ) +" + +# Rust extension +QA_FLAGS_IGNORED="usr/lib/python3.*/site-packages/synapse/synapse_rust.abi3.so" + +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 "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 +}