commit:     152d8868270229f82d6ddc6be897b528cf571f1a
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 18 13:25:01 2024 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Oct 19 08:53:02 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=152d8868

net-im/synapse: Update for renamed dev-python/python-multipart

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 net-im/synapse/synapse-1.116.0-r2.ebuild | 253 +++++++++++++++++++++++++++++++
 1 file changed, 253 insertions(+)

diff --git a/net-im/synapse/synapse-1.116.0-r2.ebuild 
b/net-im/synapse/synapse-1.116.0-r2.ebuild
new file mode 100644
index 000000000000..4506c4e74f1d
--- /dev/null
+++ b/net-im/synapse/synapse-1.116.0-r2.ebuild
@@ -0,0 +1,253 @@
+# Copyright 2022-2024 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="
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]+wasi-snapshot-preview1
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+"
+
+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 )"
+
+DEPEND="
+       acct-user/synapse
+       acct-group/synapse
+"
+# The dev-python/twisted-24.3.0_p20240628 snapshot available in our tree
+# introduces some breaking changes for synapse,
+# see https://github.com/element-hq/synapse/issues/17075
+RDEPEND="
+       ${DEPEND}
+       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/jinja-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="
+       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"
+
+src_prepare() {
+       distutils-r1_src_prepare
+
+       # python-multipart package renamed in Gentoo to python_multipart
+       sed -e 's:import multipart:import python_multipart as multipart:' \
+               -i synapse/http/client.py || die
+}
+
+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
+}

Reply via email to