diff --git a/net-im/py-slixmpp/Makefile b/net-im/py-slixmpp/Makefile index bec436279656..1edcb41d7ff0 100644 --- a/net-im/py-slixmpp/Makefile +++ b/net-im/py-slixmpp/Makefile @@ -1,31 +1,49 @@ PORTNAME= slixmpp -DISTVERSION= 1.8.5 -PORTREVISION= 1 +DISTVERSION= 1.17.0 CATEGORIES= net-im python MASTER_SITES= PYPI +DISTFILES= ${DISTNAME}${EXTRACT_SUFX} PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} -MAINTAINER= ports@FreeBSD.org -COMMENT= Elegant Python library for XMPP (aka Jabber, Google Talk, etc.) -WWW= https://lab.louiz.org/poezio/slixmpp +MAINTAINER= lazeraman@gmail.com +COMMENT= Elegant Python library for XMPP (aka Jabber) +WWW= https://slixmpp.readthedocs.io LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -BUILD_DEPENDS= ${LOCALBASE}/lib/libidn.so:dns/libidn -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pyasn1>=0:devel/py-pyasn1@${PY_FLAVOR} \ +BUILD_DEPENDS= ${PY_SETUPTOOLS} \ + ${PYTHON_PKGNAMEPREFIX}setuptools-rust>=0:devel/py-setuptools-rust@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=0:devel/py-setuptools-scm@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}aiodns>=0:dns/py-aiodns@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pyasn1-modules>=0:devel/py-pyasn1-modules@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}aiodns>=1.0:dns/py-aiodns@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}aiohttp>=0:www/py-aiohttp@${PY_FLAVOR} -TEST_DEPENDS= gpg:security/gnupg + ${PYTHON_PKGNAMEPREFIX}pyasn1>=0:devel/py-pyasn1@${PY_FLAVOR} +TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}aiohttp>=0:www/py-aiohttp@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}cryptography>=0:security/py-cryptography@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}emoji>=0:misc/py-emoji@${PY_FLAVOR} \ + gpg:security/gnupg -USES= cpe pkgconfig python +USES= cargo cpe python CPE_VENDOR= ${PORTNAME}_project -USE_PYTHON= distutils autoplist cython +USE_PYTHON= autoplist concurrent pep517 -NO_ARCH= yes +CARGO_BUILD= no +CARGO_INSTALL= no +CARGO_TEST= no + +OPTIONS_DEFINE= EMOJI HTTP OMEMO SAFEXML +EMOJI_DESC= Enables emoji support (xep-0444) +HTTP_DESC= Enables HTTP file upload support (xep-0363) +OMEMO_DESC= Enables OMEMO media sharing support (xep-0454) +SAFEXML_DESC= Enables Safer XML Parsing + +HTTP_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}aiohttp>=0:www/py-aiohttp@${PY_FLAVOR} +EMOJI_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}emoji>=0:misc/py-emoji@${PY_FLAVOR} +OMEMO_USE= PYTHON=cryptography +SAFEXML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}defusedxml>=0:devel/py-defusedxml@${PY_FLAVOR} do-test: - cd ${WRKSRC} && ${PYTHON_CMD} ${PYDISTUTILS_SETUP} test + cd ${TEST_WRKSRC} && ${SETENV} ${TEST_ENV} ${PYTHON_CMD} run_tests.py .include diff --git a/net-im/py-slixmpp/Makefile.crates b/net-im/py-slixmpp/Makefile.crates new file mode 100644 index 000000000000..f1e139795d91 --- /dev/null +++ b/net-im/py-slixmpp/Makefile.crates @@ -0,0 +1,47 @@ +CARGO_CRATES= displaydoc-0.2.7 \ + heck-0.5.0 \ + icu_collections-2.3.0 \ + icu_locale_core-2.3.0 \ + icu_normalizer-2.3.0 \ + icu_normalizer_data-2.3.0 \ + icu_properties-2.3.0 \ + icu_properties_data-2.3.0 \ + icu_provider-2.3.1 \ + idna-1.1.0 \ + idna_adapter-1.2.2 \ + jid-0.12.3 \ + libc-0.2.189 \ + litemap-0.8.3 \ + memchr-2.8.3 \ + once_cell-1.21.4 \ + portable-atomic-1.15.0 \ + potential_utf-0.1.6 \ + proc-macro2-1.0.107 \ + pyo3-0.29.2 \ + pyo3-build-config-0.29.2 \ + pyo3-ffi-0.29.2 \ + pyo3-macros-0.29.2 \ + pyo3-macros-backend-0.29.2 \ + quote-1.0.47 \ + smallvec-1.16.1 \ + stable_deref_trait-1.2.1 \ + stringprep-0.1.5 \ + syn-2.0.119 \ + syn-3.0.6 \ + synstructure-0.14.0 \ + target-lexicon-0.13.5 \ + tinystr-0.8.4 \ + tinyvec-1.13.3 \ + unicode-bidi-0.3.18 \ + unicode-ident-1.0.26 \ + unicode-normalization-0.1.25 \ + unicode-properties-0.1.4 \ + utf8_iter-1.0.4 \ + writeable-0.6.4 \ + yoke-0.8.3 \ + yoke-derive-0.8.3 \ + zerofrom-0.1.8 \ + zerofrom-derive-0.1.8 \ + zerotrie-0.2.5 \ + zerovec-0.11.8 \ + zerovec-derive-0.11.6 diff --git a/net-im/py-slixmpp/distinfo b/net-im/py-slixmpp/distinfo index a47f3b6ccb05..cea46a35903d 100644 --- a/net-im/py-slixmpp/distinfo +++ b/net-im/py-slixmpp/distinfo @@ -1,3 +1,97 @@ -TIMESTAMP = 1727711249 -SHA256 (slixmpp-1.8.5.tar.gz) = 75e3f0ad48555f7f5c9228e7066c1d4358b33d640b4fbe773ec34b03b7fae9a3 -SIZE (slixmpp-1.8.5.tar.gz) = 574560 +TIMESTAMP = 1789784826 +SHA256 (slixmpp-1.17.0.tar.gz) = 05257ee0f2aecb42d6479f6071c89ad3c734fda0ee753eb4625ecdc6114d90b1 +SIZE (slixmpp-1.17.0.tar.gz) = 34 +SHA256 (rust/crates/displaydoc-0.2.7.crate) = c6232dd377dcc64799954cbd3a9bb882e9cdc1308ccd87b1c098f1fb2eaf82a8 +SIZE (rust/crates/displaydoc-0.2.7.crate) = 21343 +SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea +SIZE (rust/crates/heck-0.5.0.crate) = 11517 +SHA256 (rust/crates/icu_collections-2.3.0.crate) = fa68d21081c4a05d5a901a1c62add574c77048b6a1c67be3b50ce0b60d4ca513 +SIZE (rust/crates/icu_collections-2.3.0.crate) = 87970 +SHA256 (rust/crates/icu_locale_core-2.3.0.crate) = d56e28588da92eee5c3201a6eff33fabdd49b62269c8938d4ff050ce4d900deb +SIZE (rust/crates/icu_locale_core-2.3.0.crate) = 80250 +SHA256 (rust/crates/icu_normalizer-2.3.0.crate) = 12f9cf5f235641ed274641dd81c3f28d870e276763d0797aeeab72317b1c646f +SIZE (rust/crates/icu_normalizer-2.3.0.crate) = 530595 +SHA256 (rust/crates/icu_normalizer_data-2.3.0.crate) = 1563da1ed3e0b3bf3d74c9b85917ac9c56464d2f57242270c09c9e752f8021a0 +SIZE (rust/crates/icu_normalizer_data-2.3.0.crate) = 67215 +SHA256 (rust/crates/icu_properties-2.3.0.crate) = 7e7ca276ad3145661a65914e6daf131ca5120cd3dcee8f8f3214b8875184a148 +SIZE (rust/crates/icu_properties-2.3.0.crate) = 102637 +SHA256 (rust/crates/icu_properties_data-2.3.0.crate) = e590f038c1464a96894fd6d10127e90a8be4509f56ff7ecef851b15cee0b7caa +SIZE (rust/crates/icu_properties_data-2.3.0.crate) = 169152 +SHA256 (rust/crates/icu_provider-2.3.1.crate) = d27bbb9d3abbefac45d55f647c9de1d44aafcd1186eb91879afef17c396c3e73 +SIZE (rust/crates/icu_provider-2.3.1.crate) = 52447 +SHA256 (rust/crates/idna-1.1.0.crate) = 3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de +SIZE (rust/crates/idna-1.1.0.crate) = 148747 +SHA256 (rust/crates/idna_adapter-1.2.2.crate) = cb68373c0d6620ef8105e855e7745e18b0d00d3bdb07fb532e434244cdb9a714 +SIZE (rust/crates/idna_adapter-1.2.2.crate) = 10444 +SHA256 (rust/crates/jid-0.12.3.crate) = 01200283c7e9307b1afee820eea16008048b6712ef768617e18f36aadb1ed272 +SIZE (rust/crates/jid-0.12.3.crate) = 25250 +SHA256 (rust/crates/libc-0.2.189.crate) = 3eaf3ede3fee6db1a4c2ee091bf8a8b4dccdc6d17f656fb07896ee72867612f2 +SIZE (rust/crates/libc-0.2.189.crate) = 851502 +SHA256 (rust/crates/litemap-0.8.3.crate) = 47d9d19d1d6efa0109d2f65ff4c85cddd50bd572e5a00127ab10987290bcefae +SIZE (rust/crates/litemap-0.8.3.crate) = 35045 +SHA256 (rust/crates/memchr-2.8.3.crate) = cf8baf1c55e62ffcace7a9f06f4bd9cd3f0c4beb022d3b367256b91b87513d98 +SIZE (rust/crates/memchr-2.8.3.crate) = 99165 +SHA256 (rust/crates/once_cell-1.21.4.crate) = 9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50 +SIZE (rust/crates/once_cell-1.21.4.crate) = 35010 +SHA256 (rust/crates/portable-atomic-1.15.0.crate) = 05c8b63e8d9609db387f0324918f81d68fe27748f084ef092fb35954d0539a85 +SIZE (rust/crates/portable-atomic-1.15.0.crate) = 202705 +SHA256 (rust/crates/potential_utf-0.1.6.crate) = d83eb9bc6d8e5cf568e7a1101d60ee05e81ed50ea106026f3d18deeb046d7661 +SIZE (rust/crates/potential_utf-0.1.6.crate) = 10420 +SHA256 (rust/crates/proc-macro2-1.0.107.crate) = 985e7ec9bb745e6ce6535b544d84d6cd6f7ad8bd711c398938ae983b91a766d9 +SIZE (rust/crates/proc-macro2-1.0.107.crate) = 59588 +SHA256 (rust/crates/pyo3-0.29.2.crate) = 4688ddedf473e32662b9b067670129a8afb8c18e351482c70d62ba4a88171e8b +SIZE (rust/crates/pyo3-0.29.2.crate) = 1255741 +SHA256 (rust/crates/pyo3-build-config-0.29.2.crate) = f41027e41b4bd03f6e60f9f417fe24a6341a6bb744edd62b6f709f2a52ea30e9 +SIZE (rust/crates/pyo3-build-config-0.29.2.crate) = 41104 +SHA256 (rust/crates/pyo3-ffi-0.29.2.crate) = e591a95526fead067432c3b3a33fc74770b87b1e04e73671090d9c2055a2b327 +SIZE (rust/crates/pyo3-ffi-0.29.2.crate) = 90029 +SHA256 (rust/crates/pyo3-macros-0.29.2.crate) = 73225868fc1cd84eef2c3c230ddb91273bf1de46aeb8a4248da76d32a0924a1c +SIZE (rust/crates/pyo3-macros-0.29.2.crate) = 9044 +SHA256 (rust/crates/pyo3-macros-backend-0.29.2.crate) = 571575aa3749fa6216757dd47d2a3e7ef360f329a40f0666a9fbd14889024952 +SIZE (rust/crates/pyo3-macros-backend-0.29.2.crate) = 93749 +SHA256 (rust/crates/quote-1.0.47.crate) = 1fbf4db142a473a8d80c26bbf18454ed458bf8d26c8219c331daecfdbd079001 +SIZE (rust/crates/quote-1.0.47.crate) = 31622 +SHA256 (rust/crates/smallvec-1.16.1.crate) = ba467056f1b547ed52077911161fc86985becbc60e8e1857c8a144dab0def891 +SIZE (rust/crates/smallvec-1.16.1.crate) = 32694 +SHA256 (rust/crates/stable_deref_trait-1.2.1.crate) = 6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596 +SIZE (rust/crates/stable_deref_trait-1.2.1.crate) = 8186 +SHA256 (rust/crates/stringprep-0.1.5.crate) = 7b4df3d392d81bd458a8a621b8bffbd2302a12ffe288a9d931670948749463b1 +SIZE (rust/crates/stringprep-0.1.5.crate) = 23573 +SHA256 (rust/crates/syn-2.0.119.crate) = 872831b642d1a07999a962a351ed35b955ea2cfc8f3862091e2a240a84f17297 +SIZE (rust/crates/syn-2.0.119.crate) = 307407 +SHA256 (rust/crates/syn-3.0.6.crate) = 8593e8e72159ed2257d083c7a454a85cbf854f37a0966d8d483aff8c8a3ebcee +SIZE (rust/crates/syn-3.0.6.crate) = 313821 +SHA256 (rust/crates/synstructure-0.14.0.crate) = 901704edd0dfe137f1987838ee4f259e4e063c31371bdb423f7ae38ec6f77f02 +SIZE (rust/crates/synstructure-0.14.0.crate) = 19010 +SHA256 (rust/crates/target-lexicon-0.13.5.crate) = adb6935a6f5c20170eeceb1a3835a49e12e19d792f6dd344ccc76a985ca5a6ca +SIZE (rust/crates/target-lexicon-0.13.5.crate) = 26928 +SHA256 (rust/crates/tinystr-0.8.4.crate) = b1e27c91459209c2986af3dcf603a5a74a4368754ce37414f59acc971167f643 +SIZE (rust/crates/tinystr-0.8.4.crate) = 25003 +SHA256 (rust/crates/tinyvec-1.13.3.crate) = fd3ca314f692efd6c868f8408f53fe444634a845f96c028b97d35f6a1f79f0ee +SIZE (rust/crates/tinyvec-1.13.3.crate) = 60306 +SHA256 (rust/crates/unicode-bidi-0.3.18.crate) = 5c1cb5db39152898a79168971543b1cb5020dff7fe43c8dc468b0885f5e29df5 +SIZE (rust/crates/unicode-bidi-0.3.18.crate) = 58300 +SHA256 (rust/crates/unicode-ident-1.0.26.crate) = d245f478577f809a851594d02313b640fb437e0bb33866753cff937863096954 +SIZE (rust/crates/unicode-ident-1.0.26.crate) = 48425 +SHA256 (rust/crates/unicode-normalization-0.1.25.crate) = 5fd4f6878c9cb28d874b009da9e8d183b5abc80117c40bbd187a1fde336be6e8 +SIZE (rust/crates/unicode-normalization-0.1.25.crate) = 128462 +SHA256 (rust/crates/unicode-properties-0.1.4.crate) = 7df058c713841ad818f1dc5d3fd88063241cc61f49f5fbea4b951e8cf5a8d71d +SIZE (rust/crates/unicode-properties-0.1.4.crate) = 42752 +SHA256 (rust/crates/utf8_iter-1.0.4.crate) = b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be +SIZE (rust/crates/utf8_iter-1.0.4.crate) = 10437 +SHA256 (rust/crates/writeable-0.6.4.crate) = 3ad82d2a33cdc9674dc7465672f271e096168fcdbe0f799d9e6db8c5892679dc +SIZE (rust/crates/writeable-0.6.4.crate) = 31222 +SHA256 (rust/crates/yoke-0.8.3.crate) = 709fe23a0424b6a435d82152b1bd3fdfb0833487d5fa90d05d42762a9891fef5 +SIZE (rust/crates/yoke-0.8.3.crate) = 33132 +SHA256 (rust/crates/yoke-derive-0.8.3.crate) = 33811428bee40dbceb6d545e95754741d17a6aef9a4849f0fd62e2ba4f412a78 +SIZE (rust/crates/yoke-derive-0.8.3.crate) = 15106 +SHA256 (rust/crates/zerofrom-0.1.8.crate) = 0ec05a11813ea801ff6d75110ad09cd0824ddba17dfe17128ea0d5f68e6c5272 +SIZE (rust/crates/zerofrom-0.1.8.crate) = 6156 +SHA256 (rust/crates/zerofrom-derive-0.1.8.crate) = f75b4683f6c7f45248d4d64056a24298c6281e0993356d7d1b4a1a962ef10d4a +SIZE (rust/crates/zerofrom-derive-0.1.8.crate) = 8834 +SHA256 (rust/crates/zerotrie-0.2.5.crate) = 4ea269c3bd32f0a32c321907a2ae912ba6f4649bb0fc764a15627e99a7095a3f +SIZE (rust/crates/zerotrie-0.2.5.crate) = 84204 +SHA256 (rust/crates/zerovec-0.11.8.crate) = bb0464e17806c1d976d5cba29399c7f08e516e279e2ba493f63123b5fca67dd8 +SIZE (rust/crates/zerovec-0.11.8.crate) = 130820 +SHA256 (rust/crates/zerovec-derive-0.11.6.crate) = 34df6fc39dbd26ddc9c10e6a2984476e13acce22e64e4487636ef494369225da +SIZE (rust/crates/zerovec-derive-0.11.6.crate) = 23102 diff --git a/net-im/py-slixmpp/files/patch-pyproject.toml b/net-im/py-slixmpp/files/patch-pyproject.toml new file mode 100644 index 000000000000..9d399d7b92ee --- /dev/null +++ b/net-im/py-slixmpp/files/patch-pyproject.toml @@ -0,0 +1,11 @@ +--- pyproject.toml.orig 2026-09-19 01:54:28 UTC ++++ pyproject.toml +@@ -3,7 +3,7 @@ readme = "README.rst" + dynamic = ["version"] + description = "Slixmpp is an elegant Python library for XMPP (aka Jabber)." + readme = "README.rst" +-license = "MIT" ++license = { text = "MIT" } + authors = [ + { name = "Florent Le Coz", email = "louiz@louiz.org" }, + { name = "Mathieu Pasquet (mathieui)", email = "mathieui@mathieui.net" }, diff --git a/net-im/py-slixmpp/pkg-descr b/net-im/py-slixmpp/pkg-descr index 182d0ee6ccd2..1463007ce65b 100644 --- a/net-im/py-slixmpp/pkg-descr +++ b/net-im/py-slixmpp/pkg-descr @@ -1,6 +1,6 @@ -Slixmpp is an MIT licensed XMPP library for Python 3.5+. It is a fork of +Slixmpp is an MIT licensed XMPP library for Python 3.11+. It is a fork of SleekXMPP. Slixmpp's goals is to only rewrite the core of the library (the low level socket handling, the timers, the events dispatching) in order to remove all threads.