From d1fabd98a40d377859359801265b90db9d3549852a3c9e1b7763803fa6c5042f Mon Sep 17 00:00:00 2001 From: Matej Cepl Date: Thu, 8 Feb 2024 12:49:41 +0000 Subject: [PATCH] Accepting request 1145159 from home:pgajdos:python - update to 7.4.2: * Add support for xmlsec1 1.3.x * Use the set crypto_backend when creating the entity metadata * ## 7.4.1 (2023-02-24) * Fix subject-id requirements processing * ## 7.4.0 (2023-02-14) * Ensure the ID of each Signature element is unique when signing an encrypted assertion * Bump Python to 3.9 * dev: Add mypy configuration and type stubs * tests: move tox.ini config into pyproject.toml * docs: Update release instructions * ## 7.3.0 (2023-02-14) * During metadata generation, render extensions both for EntityDescriptor and IdPSSODescriptor * Fix compatibility with certain SAML implementation that inflate messasges on the POST binding * Update the SWAMID entity category requirements * Fix check for NameID when it originates from an encrypted asssertion * Add support for pymongo `>=3.5` and `<5` * Update README with supported specifications * Remove dependency on the six package * Cleanup unused imports and pythonisms for Python versions older than 3.6 * Convert README to markdown * Introduce flake8 to check for issues * Use black and isort to manage formatting and imports * Use poetry to manage the project dependencies, packaging and versions OBS-URL: https://build.opensuse.org/request/show/1145159 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pysaml2?expand=0&rev=73 --- pymongo-4-support.patch | 37 ------------------------------------- python-pysaml2.changes | 41 +++++++++++++++++++++++++++++++++++++++++ python-pysaml2.spec | 37 ++++++++++++++++++------------------- v7.2.1.tar.gz | 3 --- v7.4.2.tar.gz | 3 +++ 5 files changed, 62 insertions(+), 59 deletions(-) delete mode 100644 pymongo-4-support.patch delete mode 100644 v7.2.1.tar.gz create mode 100644 v7.4.2.tar.gz diff --git a/pymongo-4-support.patch b/pymongo-4-support.patch deleted file mode 100644 index 00d5001..0000000 --- a/pymongo-4-support.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 32a3c24ae1292ad04065aaaee6324ab9441fad8e Mon Sep 17 00:00:00 2001 -From: Johan Lundberg -Date: Wed, 8 Dec 2021 15:10:27 +0100 -Subject: [PATCH] MongoReplicaSetClient removed in pymongo>=4 - -from pymongo docs: -Since PyMongo 3.0, MongoReplicaSetClient has been identical to -pymongo.mongo_client.MongoClient. Applications can simply replace -MongoReplicaSetClient with pymongo.mongo_client.MongoClient and get the -same behavior. ---- - src/saml2/mongo_store.py | 5 +---- - 1 file changed, 1 insertion(+), 4 deletions(-) - -diff --git a/src/saml2/mongo_store.py b/src/saml2/mongo_store.py -index 7df1b5655..d7f834d1b 100644 ---- a/src/saml2/mongo_store.py -+++ b/src/saml2/mongo_store.py -@@ -2,8 +2,7 @@ - from hashlib import sha1 - import logging - --from pymongo import MongoClient --from pymongo.mongo_replica_set_client import MongoReplicaSetClient -+from pymongo.mongo_client import MongoClient - import pymongo.uri_parser - import pymongo.errors - from saml2.saml import NAMEID_FORMAT_PERSISTENT -@@ -288,8 +287,6 @@ def _mdb_get_database(uri, **kwargs): - _conn = MongoClient() - pass - else: -- if "replicaset" in _parsed_uri["options"]: -- connection_factory = MongoReplicaSetClient - db_name = _parsed_uri.get("database", "pysaml2") - _conn = connection_factory(uri, **kwargs) - diff --git a/python-pysaml2.changes b/python-pysaml2.changes index cf6b074..c8bd55d 100644 --- a/python-pysaml2.changes +++ b/python-pysaml2.changes @@ -1,3 +1,44 @@ +------------------------------------------------------------------- +Mon Jan 29 13:54:33 UTC 2024 - Petr Gajdos + +- update to 7.4.2: + * Add support for xmlsec1 1.3.x + * Use the set crypto_backend when creating the entity metadata + * ## 7.4.1 (2023-02-24) + * Fix subject-id requirements processing + * ## 7.4.0 (2023-02-14) + * Ensure the ID of each Signature element is unique when + signing an encrypted assertion + * Bump Python to 3.9 + * dev: Add mypy configuration and type stubs + * tests: move tox.ini config into pyproject.toml + * docs: Update release instructions + * ## 7.3.0 (2023-02-14) + * During metadata generation, render extensions both for + EntityDescriptor and IdPSSODescriptor + * Fix compatibility with certain SAML implementation that + inflate messasges on the POST binding + * Update the SWAMID entity category requirements + * Fix check for NameID when it originates from an encrypted + asssertion + * Add support for pymongo `>=3.5` and `<5` + * Update README with supported specifications + * Remove dependency on the six package + * Cleanup unused imports and pythonisms for Python versions + older than 3.6 + * Convert README to markdown + * Introduce flake8 to check for issues + * Use black and isort to manage formatting and imports + * Use poetry to manage the project dependencies, packaging and + versions + * Fix whitespace typos on the eIDAS schemas + * Try different logout bindings on the saml2.client level + * Add the mailLocalAddress attribute as part of the saml and + shib uri name format bundles + * Add the isMemberOf attribute as part of the basic attribute + format bundle +- drop upstreamed pymongo-4-support.patch + ------------------------------------------------------------------- Sun Jun 11 13:23:30 UTC 2023 - ecsos diff --git a/python-pysaml2.spec b/python-pysaml2.spec index c795ced..31faad8 100644 --- a/python-pysaml2.spec +++ b/python-pysaml2.spec @@ -1,7 +1,7 @@ # # spec file for package python-pysaml2 # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2024 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,22 +19,21 @@ %global modname pysaml2 %{?sle15_python_module_pythons} Name: python-pysaml2 -Version: 7.2.1 +Version: 7.4.2 Release: 0 Summary: Python implementation of SAML Version 2 to be used in a WSGI environment License: Apache-2.0 URL: https://github.com/IdentityPython/pysaml2 Source: https://github.com/IdentityPython/pysaml2/archive/v%{version}.tar.gz -# PATCH-FIX-UPSTREAM closed PR, but provides context: -# gh#IdentityPython/pysaml2#843 -Patch0: pymongo-4-support.patch BuildRequires: %{python_module Paste} BuildRequires: %{python_module cryptography >= 3.1} BuildRequires: %{python_module dbm} BuildRequires: %{python_module defusedxml} BuildRequires: %{python_module importlib-resources} +BuildRequires: %{python_module pip} +BuildRequires: %{python_module poetry-core} BuildRequires: %{python_module pyOpenSSL} -BuildRequires: %{python_module pymongo} +BuildRequires: %{python_module pymongo >= 3.5} BuildRequires: %{python_module pytest} BuildRequires: %{python_module python-dateutil} BuildRequires: %{python_module pytz} @@ -42,7 +41,6 @@ BuildRequires: %{python_module repoze.who} BuildRequires: %{python_module requests >= 1.0.0} BuildRequires: %{python_module responses} BuildRequires: %{python_module setuptools} -BuildRequires: %{python_module six} BuildRequires: %{python_module xmlschema >= 1.2.1} BuildRequires: %{python_module zope.interface} BuildRequires: fdupes @@ -57,15 +55,15 @@ Requires: python-cryptography >= 3.1 Requires: python-defusedxml Requires: python-importlib-resources Requires: python-pyOpenSSL +Requires: python-pymongo >= 3.5 Requires: python-python-dateutil Requires: python-pytz Requires: python-repoze.who Requires: python-requests >= 1.0.0 -Requires: python-six Requires: python-xmlschema >= 1.2.1 Requires: python-zope.interface Requires(post): update-alternatives -Requires(postun):update-alternatives +Requires(postun): update-alternatives # We need to have arch build to make ifarch condition below working # BuildArch: noarch %python_subpackages @@ -84,13 +82,14 @@ find src/ -name '*.py' -print0 | xargs -0 sed -i '1s/#!.*$//' rm -f tests/test_30_mdstore*.py %build -%python_build +%pyproject_wheel %install -%python_install -for exec in make_metadata.py parse_xsd2.py mdexport.py merge_metadata.py ; do +%pyproject_install +for exec in make_metadata parse_xsd2 mdexport merge_metadata ; do %python_clone -a %{buildroot}%{_bindir}/$exec done +%python_expand rm -r %{buildroot}%{$python_sitelib}/{saml2test,utility} %python_expand %fdupes %{buildroot}%{$python_sitelib} %check @@ -105,18 +104,18 @@ sed -i 's:mock.mock:unittest.mock:' tests/test_52_default_sign_alg.py %endif %post -%python_install_alternative make_metadata.py parse_xsd2.py mdexport.py merge_metadata.py +%python_install_alternative make_metadata parse_xsd2 mdexport merge_metadata %postun -%python_uninstall_alternative make_metadata.py parse_xsd2.py mdexport.py merge_metadata.py +%python_uninstall_alternative make_metadata parse_xsd2 mdexport merge_metadata %files %{python_files} %license LICENSE -%doc README.rst CHANGELOG.md -%python_alternative %{_bindir}/make_metadata.py -%python_alternative %{_bindir}/parse_xsd2.py -%python_alternative %{_bindir}/mdexport.py -%python_alternative %{_bindir}/merge_metadata.py +%doc README.md CHANGELOG.md +%python_alternative %{_bindir}/make_metadata +%python_alternative %{_bindir}/parse_xsd2 +%python_alternative %{_bindir}/mdexport +%python_alternative %{_bindir}/merge_metadata %{python_sitelib}/saml2 %{python_sitelib}/pysaml2-%{version}*-info diff --git a/v7.2.1.tar.gz b/v7.2.1.tar.gz deleted file mode 100644 index 570d19b..0000000 --- a/v7.2.1.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c6f5e36c0df040ebeccc0acc0be65960a2f12aaba1d77bbdae29cc3c475b0cdc -size 6026305 diff --git a/v7.4.2.tar.gz b/v7.4.2.tar.gz new file mode 100644 index 0000000..de20456 --- /dev/null +++ b/v7.4.2.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dfeaa53854467cdcdae1b0fb2c76a3610f8b179dca8176757d245db7fa7ad806 +size 6059879