commit 788dbbc577172553456fdefb027cfe8d8d5e2ea697cd45096060a9a725a90508 Author: Adrian Schröter Date: Fri May 3 22:35:59 2024 +0200 Sync from SUSE:SLFO:Main python-python-jose revision be78c190e7c576d38c0b4c288f514c06 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/_multibuild b/_multibuild new file mode 100644 index 0000000..94ac94f --- /dev/null +++ b/_multibuild @@ -0,0 +1,4 @@ + + test-backend-cryptography + test-backend-native + diff --git a/python-jose-3.3.0.tar.gz b/python-jose-3.3.0.tar.gz new file mode 100644 index 0000000..8459b6e --- /dev/null +++ b/python-jose-3.3.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55779b5e6ad599c6336191246e95eb2293a9ddebd555f796a65f838f07e5d78a +size 129068 diff --git a/python-python-jose.changes b/python-python-jose.changes new file mode 100644 index 0000000..81e178a --- /dev/null +++ b/python-python-jose.changes @@ -0,0 +1,61 @@ +------------------------------------------------------------------- +Sun May 29 19:45:02 UTC 2022 - Ben Greiner + +- Update to 3.3.0 + * Remove support for python 2.7 & 3.5 + * Add support for Python 3.9 + * Remove PyCrypto backend + * Fix deprecation warning from cryptography backend +- Add rpm subpackages for the extra backend selection. The missing + requires were only discovered because other packages started to + fail. + * setup.py and README still mention pycrypto and pycryptodome, but + it was removed from the code. + * Test in flavors +- Refresh unpin-deps.patch + +------------------------------------------------------------------- +Wed Aug 5 12:58:25 UTC 2020 - Marketa Calabkova + +- Update to 3.2.0 + * This will be the last release supporting Python 2.7, 3.5, and the PyCrypto + backend. + * Use hmac.compare_digest instead of our own constant_time_string_compare #163 + * Fix `to_dict` output, which should always be JSON encodeable. #139 and #165 + (fixes #127 and #137) + * Require setuptools >= 39.2.0 #167 (fixes #161) + * Emit a warning when verifying with a private key #168 (fixes #53 and #142) + * Avoid loading python-ecdsa when using the cryptography backend, and pinned + python-ecdsa dependency to <0.15 #178 +- Rebase patch unpin-deps.patch + +------------------------------------------------------------------- +Tue Mar 10 09:47:42 UTC 2020 - Tomáš Chvátal + +- Update to 3.1.0: + * Improve JWT.decode() #76 (fixes #75) + * ort headers when serializing to allow for headless JWT #136 (fixes #80) + * djust dependency handling + * se PyCryptodome instead of PyCrypto #83 + * pdate package dependencies #124 (fixes #158) + * void using deprecated methods #85 + * upport X509 certificates #107 + * solate and flesh out cryptographic backends to enable independent operation #129 (fixes #114) + * emove pyca/cryptography backend's dependency on python-ecdsa #117 + * Remove pycrypto/dome backends' dependency on python-rsa #121 + * Make pyca/cryptography backend the preferred backend if multiple backends are present #122 +- Rebase patch unpin-deps.patch + +------------------------------------------------------------------- +Thu Apr 11 05:11:28 UTC 2019 - John Vandenberg + +- Activate test suite, using GitHub archive +- Add unpin-deps.patch to fix broken installed egg-info, + and remove unused dependency on python-future +- Remove undesirable < comparator in build and runtime dependencies, + and remove duplicated dependencies + +------------------------------------------------------------------- +Thu Nov 15 00:12:07 UTC 2018 - Todd R + +- Initial version diff --git a/python-python-jose.spec b/python-python-jose.spec new file mode 100644 index 0000000..adb6db9 --- /dev/null +++ b/python-python-jose.spec @@ -0,0 +1,119 @@ +# +# spec file +# +# Copyright (c) 2022 SUSE LLC +# +# 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/ +# + + +%global flavor @BUILD_FLAVOR@%{nil} +%if "%{flavor}" == "test-backend-cryptography" +%define psuffix -%{flavor} +%bcond_without test +%bcond_without testcryptography +%bcond_with testnative +%endif +%if "%{flavor}" == "test-backend-native" +%define psuffix -%{flavor} +%bcond_without test +%bcond_with testcryptography +%bcond_without testnative +%endif +%if "%{flavor}" == "" +%define psuffix %{nil} +%bcond_with test +%bcond_with testcryptography +%bcond_with testnative +%endif + +%{?!python_module:%define python_module() python3-%{**}} +%define skip_python2 1 +Name: python-python-jose%{psuffix} +Version: 3.3.0 +Release: 0 +Summary: JOSE implementation in Python +License: MIT +URL: https://github.com/mpdavis/python-jose +Source: https://files.pythonhosted.org/packages/source/p/python-jose/python-jose-%{version}.tar.gz +Patch0: unpin-deps.patch +BuildRequires: %{python_module setuptools >= 39.2.0} +BuildRequires: fdupes +BuildRequires: python-rpm-macros +Requires: python-ecdsa >= 0.16 +Requires: python-pyasn1 +Requires: python-rsa +BuildArch: noarch +%if %{with test} +BuildRequires: %{python_module pytest} +%if %{with testcryptography} +BuildRequires: %{python_module python-jose-cryptography = %{version}} +%endif +%if %{with testnative} +BuildRequires: %{python_module python-jose = %{version}} +%endif +%endif +# /SECTION +%python_subpackages + +%description +A JavaScript Object Signing and Encryption (JOSE) technologies +implementation in Python. + +python-jose implements different cryptographic backends. +Consuming python packages must select the backend as an extra +when installing python-jose. RPM packages must select the +corresponding rpm subpackage. If no backend is selected, the +main package uses the native-python backend. + +%package cryptography +Summary: JOSE implementation in Python, cryptography extra +Requires: %{name} = %{version}-%{release} +Requires: python-cryptography >= 3.4.0 + +%description cryptography +A JavaScript Object Signing and Encryption (JOSE) technologies +implementation in Python. + +python-jose implements three different cryptographic backends. +This package provides the python-jose[cryptography] extra. + +%prep +%autosetup -p1 -n python-jose-%{version} + +%if ! %{with test} +%build +%python_build + +%install +%python_install +%python_expand %fdupes %{buildroot}%{$python_sitelib} +%endif + +%if %{with test} +%check +%pytest -rsEf +%endif + +%if ! %{with test} +%files %{python_files} +%doc README.rst +%license LICENSE +%{python_sitelib}/python_jose-%{version}*-info +%{python_sitelib}/jose + +%files %{python_files cryptography} +%doc README.rst +%license LICENSE +%endif + +%changelog diff --git a/unpin-deps.patch b/unpin-deps.patch new file mode 100644 index 0000000..dfdd82d --- /dev/null +++ b/unpin-deps.patch @@ -0,0 +1,32 @@ +Index: python-jose-3.3.0/setup.py +=================================================================== +--- python-jose-3.3.0.orig/setup.py ++++ python-jose-3.3.0/setup.py +@@ -23,11 +23,9 @@ def get_packages(package): + pyasn1 = ["pyasn1"] + extras_require = { + "cryptography": ["cryptography>=3.4.0"], +- "pycrypto": ["pycrypto >=2.6.0, <2.7.0"] + pyasn1, +- "pycryptodome": ["pycryptodome >=3.3.1, <4.0.0"] + pyasn1, + } + # TODO: work this into the extras selection instead. +-install_requires = ["ecdsa != 0.15", "rsa"] + pyasn1 ++install_requires = ["ecdsa >= 0.16", "rsa"] + pyasn1 + + + setup( +@@ -63,14 +61,11 @@ setup( + ], + extras_require=extras_require, + setup_requires=[ +- "pytest-runner", + "setuptools>=39.2.0", + ], + tests_require=[ + "ecdsa != 0.15", + "pytest", +- "pytest-cov", +- "pytest-runner", + ], + install_requires=install_requires, + )