commit 0af8a33acd4ecbf1b7e430a8a700ee359ae0c9155f46eb3eb1ea8f3d76db3a12 Author: Markéta Machová Date: Mon Aug 4 10:14:12 2025 +0000 - Update to 1.3.16 * This release provides binary wheels that are fully compatible with lxml v6.0.0. The compatibility is ensured by using the same underlying libxml2 version in both python-xmlsec and lxml. OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-xmlsec?expand=0&rev=35 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/fix-lxml-incompat.patch b/fix-lxml-incompat.patch new file mode 100644 index 0000000..cf248be --- /dev/null +++ b/fix-lxml-incompat.patch @@ -0,0 +1,24 @@ +From 67cd4ac73e4fceac4b4eb6a320067cad33f79213 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= +Date: Wed, 19 Jun 2024 17:43:07 +0200 +Subject: [PATCH] Explicitly cast the pointer type in + PyXmlSec_ClearReplacedNodes + +Fixes https://github.com/xmlsec/python-xmlsec/issues/323 +--- + src/enc.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/enc.c b/src/enc.c +index 5453ef9..c2bc94b 100644 +--- a/src/enc.c ++++ b/src/enc.c +@@ -204,7 +204,7 @@ static void PyXmlSec_ClearReplacedNodes(xmlSecEncCtxPtr ctx, PyXmlSec_LxmlDocume + PYXMLSEC_DEBUGF("clear replaced node %p", n); + nn = n->next; + // if n has references, it will not be deleted +- elem = PyXmlSec_elementFactory(doc, n); ++ elem = (PyXmlSec_LxmlElementPtr*)PyXmlSec_elementFactory(doc, n); + if (NULL == elem) + xmlFreeNode(n); + else diff --git a/python-xmlsec.changes b/python-xmlsec.changes new file mode 100644 index 0000000..73c73b9 --- /dev/null +++ b/python-xmlsec.changes @@ -0,0 +1,129 @@ +------------------------------------------------------------------- +Mon Aug 4 09:57:31 UTC 2025 - John Paul Adrian Glaubitz + +- Update to 1.3.16 + * This release provides binary wheels that are fully compatible + with lxml v6.0.0. The compatibility is ensured by using the + same underlying libxml2 version in both python-xmlsec and lxml. + +------------------------------------------------------------------- +Tue Mar 18 11:49:45 UTC 2025 - John Paul Adrian Glaubitz + +- Update to 1.3.15 + * Explicitly cast the pointer type in PyXmlSec_ClearReplacedNodes + * Fix sdist CI workflow + * Build wheels for Python 3.13 + * Fix linuxbrew workflow + * Fix macosx CI workflow + * Fix type mismatch in PyXmlSec_ClearReplacedNodes + for Python 3.13 compatibility +- Drop fix-lxml-incompat.patch, merged upstream + +------------------------------------------------------------------- +Thu Aug 29 04:40:55 UTC 2024 - Steve Kowalik + +- Add patch fix-lxml-incompat.patch: + * Cast to avoid an incompatibility with lxml. + +------------------------------------------------------------------- +Mon Jun 10 08:20:00 UTC 2024 - Dirk Müller + +- update to 1.3.14: + * XMLSec 1.3.x compliance + * Make DES/3DES/KW-3DES support conditional on DES availability + in XMLSec + * PKCS11 support + * Improved libxml2 version check + * Several test improvements + +------------------------------------------------------------------- +Thu Nov 2 08:36:18 UTC 2023 - Andreas Schneider + +- Use sle15_python_module_pythons + +------------------------------------------------------------------- +Mon Dec 19 11:33:28 UTC 2022 - Daniel Garcia + +- Run tests with -n1 to avoid race condition in tests + gh#xmlsec/python-xmlsec#210 + +------------------------------------------------------------------- +Tue Oct 18 13:13:45 UTC 2022 - Markéta Machová + +- Update to 1.13.13 + * Add CI for Python 3.10, manylinux2 SOABI, musllinux1 SOABI and OpenSUSE Tumbleweed + * Introduce linting with pre-commit + * Rewrite PEP 484 stubs + * xmlsec workaround for gh##84 + * Resolve key loading issue on big-endian systems. + * Fix building wheel when using PYXMLSEC_STATIC_DEPS=true + * setup.py: Fix typo in PYXMLSEC_LIBXSLT_VERSION + * Switch on modern headers lxml + * use build to build wheels + * remove pkgconfig as it's only a build-system requirement + * exclude lxml 4.7 because the wheels are missing the lxml includes +- Drop merged avoid_lxml_tests_failing.patch +- Normalize the tests call + +------------------------------------------------------------------- +Wed May 11 12:39:21 UTC 2022 - Matej Cepl + +- Update to 1.3.12: + - Added support for registering custom xmlsec IO callbacks + - Added support for building without MD5 transforms + - Added support for PEP 539 for Python 3.7 and newer + - Using lxml-stubs package instead of custom LXML stubs +- Add avoid_lxml_tests_failing.patch (help working + around the lxml issue lp#1880251 and lp#1887848, from + gh#mehcode/python-xmlsec#84). +- Switch off building on Python 3.10 and %ix86 + (gh#mehcode/python-xmlsec#204). + +------------------------------------------------------------------- +Thu Jun 10 09:15:51 UTC 2021 - Matej Cepl + +- Upgrade to 1.3.11: + - Removed Python 2 compatibility code. + - Fixed bug with unused custom error callback. + - Added support for building with XMLSEC_NO_XSLT macro. + - Switched docs theme to furo. + - Fixed libxmlsec1 version checks + - More tests added to increase test coverage + - Various small fixes for segfaults found + - Added xmlsec.base64_default_line_size() function to set the + default maximum columns size for base64 encoding + - Added AES-GCM transform constants + - Added Python 3.9 support + +------------------------------------------------------------------- +Tue Jun 2 06:38:20 UTC 2020 - Steve Kowalik + +- Update to 1.3.8: + * No upstream changelog. +- Drop reproducible.patch, included upstream. +- Switch to PyPI tarball due to use of setuptools_scm. +- Update BuildRequires. + +------------------------------------------------------------------- +Mon Jun 24 04:32:51 UTC 2019 - Bernhard Wiedemann + +- Add reproducible.patch to sort dir entries (boo#1041090) + +------------------------------------------------------------------- +Fri Dec 7 12:07:04 UTC 2018 - Tomáš Chvátal + +- Version update to 1.3.6: + * Various installation issue fxes +- Make sure the tests are really run and skipped for now +- Make sure to pick up at least one xmlsec backend + +------------------------------------------------------------------- +Wed Nov 21 08:06:32 UTC 2018 - Tomáš Chvátal + +- Format with spec-cleaner + +------------------------------------------------------------------- +Mon Nov 19 19:04:47 UTC 2018 - John Paul Adrian Glaubitz + +- Initial build + + Version 1.3.3 diff --git a/python-xmlsec.spec b/python-xmlsec.spec new file mode 100644 index 0000000..1f1869f --- /dev/null +++ b/python-xmlsec.spec @@ -0,0 +1,81 @@ +# +# spec file for package python-xmlsec +# +# Copyright (c) 2025 SUSE LLC and contributors +# Copyright (c) 2025 SUSE LLC and contributors +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%{?sle15_python_module_pythons} +Name: python-xmlsec +Version: 1.3.16 +Release: 0 +Summary: Python bindings for the XML Security Library +License: MIT +URL: https://github.com/mehcode/python-xmlsec +Source: https://files.pythonhosted.org/packages/source/x/xmlsec/xmlsec-%{version}.tar.gz +BuildRequires: %{python_module devel} +BuildRequires: %{python_module hypothesis} +BuildRequires: %{python_module lxml >= 3.8.0} +BuildRequires: %{python_module lxml-devel} +BuildRequires: %{python_module pip} +BuildRequires: %{python_module pkgconfig} +BuildRequires: %{python_module pytest-xdist} +BuildRequires: %{python_module pytest} +BuildRequires: %{python_module setuptools_scm} +BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module toml} +BuildRequires: %{python_module wheel} +BuildRequires: fdupes +BuildRequires: libtool +BuildRequires: pkgconfig +BuildRequires: python-rpm-macros +# we need at least one backend +BuildRequires: libxmlsec1-openssl1 +BuildRequires: pkgconfig(xmlsec1) +# we need at least one xmlsec backend on runtime +Recommends: libxmlsec1-openssl1 +Requires: python-lxml >= 3.8.0 +%python_subpackages + +%description +Python bindings for the XML Security Library + +%prep +%autosetup -p1 -n xmlsec-%{version} + +%build +export CFLAGS="%{optflags}" +%pyproject_wheel + +%install +%pyproject_install +%python_expand %fdupes %{buildroot}%{$python_sitearch} + +%check +# gh#xmlsec/python-xmlsec#244 +donttest="test_sign_case5" + +# Run tests with -n 1 to avoid race condition in tests +# gh#xmlsec/python-xmlsec#210 +%pytest_arch -n 1 -k "not (${donttest})" tests/ + +%files %{python_files} +%doc README.rst +%license LICENSE +%{python_sitearch}/xmlsec +%{python_sitearch}/xmlsec-%{version}.dist-info +%{python_sitearch}/xmlsec*.so + +%changelog diff --git a/xmlsec-1.3.14.tar.gz b/xmlsec-1.3.14.tar.gz new file mode 100644 index 0000000..96c6f34 --- /dev/null +++ b/xmlsec-1.3.14.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:934f804f2f895bcdb86f1eaee236b661013560ee69ec108d29cdd6e5f292a2d9 +size 68854 diff --git a/xmlsec-1.3.15.tar.gz b/xmlsec-1.3.15.tar.gz new file mode 100644 index 0000000..beced8f --- /dev/null +++ b/xmlsec-1.3.15.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:baa856b83d0012e278e6f6cbec96ac8128de667ca9fa9a2eeb02c752e816f6d8 +size 114117 diff --git a/xmlsec-1.3.16.tar.gz b/xmlsec-1.3.16.tar.gz new file mode 100644 index 0000000..913f1d0 --- /dev/null +++ b/xmlsec-1.3.16.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b6c70544c6d1d4ca006aaa314958e0ef3514dc81fffde1b23f2ec41a5791f9d +size 114202