Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-djangorestframework-simplejwt
for openSUSE:Factory checked in at 2026-05-25 21:55:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-djangorestframework-simplejwt (Old)
and
/work/SRC/openSUSE:Factory/.python-djangorestframework-simplejwt.new.2084 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-djangorestframework-simplejwt"
Mon May 25 21:55:05 2026 rev:10 rq:1355001 version:5.5.1
Changes:
--------
---
/work/SRC/openSUSE:Factory/python-djangorestframework-simplejwt/python-djangorestframework-simplejwt.changes
2025-11-03 18:56:34.985269352 +0100
+++
/work/SRC/openSUSE:Factory/.python-djangorestframework-simplejwt.new.2084/python-djangorestframework-simplejwt.changes
2026-05-25 21:58:51.542037982 +0200
@@ -1,0 +2,8 @@
+Mon May 25 03:44:02 UTC 2026 - Steve Kowalik <[email protected]>
+
+- Add patch use-curve-matching-keys.patch:
+ * Support new PyJWT, since it now enforces EC curve/algorithm
+ compatibility. (bsc#1266046)
+- Add missing Requires on Django.
+
+-------------------------------------------------------------------
New:
----
use-curve-matching-keys.patch
----------(New B)----------
New:
- Add patch use-curve-matching-keys.patch:
* Support new PyJWT, since it now enforces EC curve/algorithm
----------(New E)----------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-djangorestframework-simplejwt.spec ++++++
--- /var/tmp/diff_new_pack.oE4JXx/_old 2026-05-25 21:58:52.106061184 +0200
+++ /var/tmp/diff_new_pack.oE4JXx/_new 2026-05-25 21:58:52.106061184 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-djangorestframework-simplejwt
#
-# Copyright (c) 2025 SUSE LLC and contributors
+# Copyright (c) 2026 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
@@ -24,6 +24,8 @@
License: MIT
URL: https://github.com/davesque/django-rest-framework-simplejwt
Source:
https://files.pythonhosted.org/packages/source/d/djangorestframework-simplejwt/djangorestframework_simplejwt-%{version}.tar.gz
+# PATCH-FIX-UPSTREAM
https://github.com/jazzband/djangorestframework-simplejwt/pull/963
+Patch0: use-curve-matching-keys.patch
BuildRequires: %{python_module Django}
BuildRequires: %{python_module PyJWT}
BuildRequires: %{python_module cryptography}
@@ -36,6 +38,7 @@
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
+Requires: python-Django
Requires: python-PyJWT
Requires: python-djangorestframework
Recommends: python-cryptography
++++++ use-curve-matching-keys.patch ++++++
>From 832d80956e56b20a7f4abdf6c1432152fad2b9af Mon Sep 17 00:00:00 2001
From: Vjeran Grozdanic <[email protected]>
Date: Mon, 9 Feb 2026 21:26:33 +0100
Subject: [PATCH 1/3] fix: use curve-matching EC keys for ES384/ES512 backend
tests
---
tests/keys.py | 36 ++++++++++++++++++++++++++++++++++++
tests/test_backends.py | 8 ++++++--
2 files changed, 42 insertions(+), 2 deletions(-)
diff --git a/tests/keys.py b/tests/keys.py
index aa93d7d95..931452c2e 100644
--- a/tests/keys.py
+++ b/tests/keys.py
@@ -125,3 +125,39 @@
tmjhpC+XqK88q5NfIS1cBYYtzhHUS4vGpazNqbW8HA3ZIvJRmx4L96O6/w==
-----END PUBLIC KEY-----
"""
+
+ES384_PRIVATE_KEY = """
+-----BEGIN EC PRIVATE KEY-----
+MIGkAgEBBDBeJEPZHK/TlHqgPGudxVPaecJu1viqQ47CfF2fpm5pOZRbxn44fPTv
+NAhZSgq4q9ugBwYFK4EEACKhZANiAATU7YcLn4WVTaF7OsDmhMunXEDm8kBQTqLN
+1OP3BDZb8VDPRAroXrSDFvfqvsX038fy+1esrOhESnpUL3xjeZEZ1Gclz9ps8gAa
+4ioH1wHtDgY1eXnykFfgAYZou0SHF50=
+-----END EC PRIVATE KEY-----
+"""
+
+ES384_PUBLIC_KEY = """
+-----BEGIN PUBLIC KEY-----
+MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE1O2HC5+FlU2hezrA5oTLp1xA5vJAUE6i
+zdTj9wQ2W/FQz0QK6F60gxb36r7F9N/H8vtXrKzoREp6VC98Y3mRGdRnJc/abPIA
+GuIqB9cB7Q4GNXl58pBX4AGGaLtEhxed
+-----END PUBLIC KEY-----
+"""
+
+ES512_PRIVATE_KEY = """
+-----BEGIN EC PRIVATE KEY-----
+MIHcAgEBBEIAFFmbLI1wN6jnleaZDTQ8nrmhHxgkGd7phlZE38iMFbu1VwONhBQS
+gueyKbKt12zLxm0cS+5+RcTP6YNybqfCBvqgBwYFK4EEACOhgYkDgYYABACYqb5E
+k0j5mumqUxmBOR9aVGftNR7qJW3ZacLPatoqOKmu1yivzjRkfOJF56ZcPakpx4bQ
+uZAqfDoyl3KfOvZXhgD+44AKUZgyJ8UASBcWzZEmDVBRy8+HOaJUNXYJWUoloOdT
+dkppw79RCcDd5T4MILf1WhRnFIAEGdrAiWIJJnSQTw==
+-----END EC PRIVATE KEY-----
+"""
+
+ES512_PUBLIC_KEY = """
+-----BEGIN PUBLIC KEY-----
+MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAmKm+RJNI+ZrpqlMZgTkfWlRn7TUe
+6iVt2WnCz2raKjiprtcor840ZHziReemXD2pKceG0LmQKnw6Mpdynzr2V4YA/uOA
+ClGYMifFAEgXFs2RJg1QUcvPhzmiVDV2CVlKJaDnU3ZKacO/UQnA3eU+DCC39VoU
+ZxSABBnawIliCSZ0kE8=
+-----END PUBLIC KEY-----
+"""
diff --git a/tests/test_backends.py b/tests/test_backends.py
index 0d7cce944..d6526e5d4 100644
--- a/tests/test_backends.py
+++ b/tests/test_backends.py
@@ -21,6 +21,10 @@
from tests.keys import (
ES256_PRIVATE_KEY,
ES256_PUBLIC_KEY,
+ ES384_PRIVATE_KEY,
+ ES384_PUBLIC_KEY,
+ ES512_PRIVATE_KEY,
+ ES512_PUBLIC_KEY,
PRIVATE_KEY,
PRIVATE_KEY_2,
PUBLIC_KEY,
@@ -61,8 +65,8 @@ def setUp(self):
self.hmac_token_backend,
self.rsa_token_backend,
TokenBackend("ES256", ES256_PRIVATE_KEY, ES256_PUBLIC_KEY),
- TokenBackend("ES384", ES256_PRIVATE_KEY, ES256_PUBLIC_KEY),
- TokenBackend("ES512", ES256_PRIVATE_KEY, ES256_PUBLIC_KEY),
+ TokenBackend("ES384", ES384_PRIVATE_KEY, ES384_PUBLIC_KEY),
+ TokenBackend("ES512", ES512_PRIVATE_KEY, ES512_PUBLIC_KEY),
)
def test_init(self):
>From 689619193c35e35c24bb2ea11fbce73996c703f7 Mon Sep 17 00:00:00 2001
From: Vjeran Grozdanic <[email protected]>
Date: Mon, 9 Feb 2026 21:36:52 +0100
Subject: [PATCH 2/3] use well known vectors
---
tests/keys.py | 39 +++++++--------------------------------
tests/test_backends.py | 12 ++++++------
2 files changed, 13 insertions(+), 38 deletions(-)
diff --git a/tests/keys.py b/tests/keys.py
index 931452c2e..0b33a9739 100644
--- a/tests/keys.py
+++ b/tests/keys.py
@@ -126,38 +126,13 @@
-----END PUBLIC KEY-----
"""
-ES384_PRIVATE_KEY = """
------BEGIN EC PRIVATE KEY-----
-MIGkAgEBBDBeJEPZHK/TlHqgPGudxVPaecJu1viqQ47CfF2fpm5pOZRbxn44fPTv
-NAhZSgq4q9ugBwYFK4EEACKhZANiAATU7YcLn4WVTaF7OsDmhMunXEDm8kBQTqLN
-1OP3BDZb8VDPRAroXrSDFvfqvsX038fy+1esrOhESnpUL3xjeZEZ1Gclz9ps8gAa
-4ioH1wHtDgY1eXnykFfgAYZou0SHF50=
------END EC PRIVATE KEY-----
-"""
-
-ES384_PUBLIC_KEY = """
------BEGIN PUBLIC KEY-----
-MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE1O2HC5+FlU2hezrA5oTLp1xA5vJAUE6i
-zdTj9wQ2W/FQz0QK6F60gxb36r7F9N/H8vtXrKzoREp6VC98Y3mRGdRnJc/abPIA
-GuIqB9cB7Q4GNXl58pBX4AGGaLtEhxed
------END PUBLIC KEY-----
+# Public upstream fixtures:
+# -
https://raw.githubusercontent.com/jpadilla/pyjwt/master/tests/keys/jwk_ec_key_P-384.json
+# -
https://raw.githubusercontent.com/jpadilla/pyjwt/master/tests/keys/jwk_ec_key_P-521.json
+ES384_JWK = """
+{"kty":"EC","kid":"[email protected]","crv":"P-384","x":"IDC-5s6FERlbC4Nc_4JhKW8sd51AhixtMdNUtPxhRFP323QY6cwWeIA3leyZhz-J","y":"eovmN9ocANS8IJxDAGSuC1FehTq5ZFLJU7XSPg36zHpv4H2byKGEcCBiwT4sFJsy","d":"xKPj5IXjiHpQpLOgyMGo6lg_DUp738SuXkiugCFMxbGNKTyTprYPfJz42wTOXbtd"}
"""
-ES512_PRIVATE_KEY = """
------BEGIN EC PRIVATE KEY-----
-MIHcAgEBBEIAFFmbLI1wN6jnleaZDTQ8nrmhHxgkGd7phlZE38iMFbu1VwONhBQS
-gueyKbKt12zLxm0cS+5+RcTP6YNybqfCBvqgBwYFK4EEACOhgYkDgYYABACYqb5E
-k0j5mumqUxmBOR9aVGftNR7qJW3ZacLPatoqOKmu1yivzjRkfOJF56ZcPakpx4bQ
-uZAqfDoyl3KfOvZXhgD+44AKUZgyJ8UASBcWzZEmDVBRy8+HOaJUNXYJWUoloOdT
-dkppw79RCcDd5T4MILf1WhRnFIAEGdrAiWIJJnSQTw==
------END EC PRIVATE KEY-----
-"""
-
-ES512_PUBLIC_KEY = """
------BEGIN PUBLIC KEY-----
-MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAmKm+RJNI+ZrpqlMZgTkfWlRn7TUe
-6iVt2WnCz2raKjiprtcor840ZHziReemXD2pKceG0LmQKnw6Mpdynzr2V4YA/uOA
-ClGYMifFAEgXFs2RJg1QUcvPhzmiVDV2CVlKJaDnU3ZKacO/UQnA3eU+DCC39VoU
-ZxSABBnawIliCSZ0kE8=
------END PUBLIC KEY-----
+ES512_JWK = """
+{"kty":"EC","kid":"[email protected]","crv":"P-521","x":"AHKZLLOsCOzz5cY97ewNUajB957y-C-U88c3v13nmGZx6sYl_oJXu9A5RkTKqjqvjyekWF-7ytDyRXYgCF5cj0Kt","y":"AdymlHvOiLxXkEhayXQnNCvDX4h9htZaCJN34kfmC6pV5OhQHiraVySsUdaQkAgDPrwQrJmbnX9cwlGfP-HqHZR1","d":"AAhRON2r9cqXX1hg-RoI6R1tX5p2rUAYdmpHZoC1XNM56KtscrX6zbKipQrCW9CGZH3T4ubpnoTKLDYJ_fF3_rJt"}
"""
diff --git a/tests/test_backends.py b/tests/test_backends.py
index d6526e5d4..60755281a 100644
--- a/tests/test_backends.py
+++ b/tests/test_backends.py
@@ -21,10 +21,8 @@
from tests.keys import (
ES256_PRIVATE_KEY,
ES256_PUBLIC_KEY,
- ES384_PRIVATE_KEY,
- ES384_PUBLIC_KEY,
- ES512_PRIVATE_KEY,
- ES512_PUBLIC_KEY,
+ ES384_JWK,
+ ES512_JWK,
PRIVATE_KEY,
PRIVATE_KEY_2,
PUBLIC_KEY,
@@ -61,12 +59,14 @@ def setUp(self):
"RS256", PRIVATE_KEY, PUBLIC_KEY, AUDIENCE, ISSUER
)
self.payload = {"foo": "bar"}
+ es384_private_key = algorithms.ECAlgorithm.from_jwk(ES384_JWK)
+ es512_private_key = algorithms.ECAlgorithm.from_jwk(ES512_JWK)
self.backends = (
self.hmac_token_backend,
self.rsa_token_backend,
TokenBackend("ES256", ES256_PRIVATE_KEY, ES256_PUBLIC_KEY),
- TokenBackend("ES384", ES384_PRIVATE_KEY, ES384_PUBLIC_KEY),
- TokenBackend("ES512", ES512_PRIVATE_KEY, ES512_PUBLIC_KEY),
+ TokenBackend("ES384", es384_private_key,
es384_private_key.public_key()),
+ TokenBackend("ES512", es512_private_key,
es512_private_key.public_key()),
)
def test_init(self):
>From d3ed61da4a308d034b058af62e02b41917d38508 Mon Sep 17 00:00:00 2001
From: Vjeran Grozdanic <[email protected]>
Date: Mon, 9 Feb 2026 22:03:25 +0100
Subject: [PATCH 3/3] Revert "use well known vectors"
This reverts commit 689619193c35e35c24bb2ea11fbce73996c703f7.
---
tests/keys.py | 39 ++++++++++++++++++++++++++++++++-------
tests/test_backends.py | 12 ++++++------
2 files changed, 38 insertions(+), 13 deletions(-)
diff --git a/tests/keys.py b/tests/keys.py
index 0b33a9739..931452c2e 100644
--- a/tests/keys.py
+++ b/tests/keys.py
@@ -126,13 +126,38 @@
-----END PUBLIC KEY-----
"""
-# Public upstream fixtures:
-# -
https://raw.githubusercontent.com/jpadilla/pyjwt/master/tests/keys/jwk_ec_key_P-384.json
-# -
https://raw.githubusercontent.com/jpadilla/pyjwt/master/tests/keys/jwk_ec_key_P-521.json
-ES384_JWK = """
-{"kty":"EC","kid":"[email protected]","crv":"P-384","x":"IDC-5s6FERlbC4Nc_4JhKW8sd51AhixtMdNUtPxhRFP323QY6cwWeIA3leyZhz-J","y":"eovmN9ocANS8IJxDAGSuC1FehTq5ZFLJU7XSPg36zHpv4H2byKGEcCBiwT4sFJsy","d":"xKPj5IXjiHpQpLOgyMGo6lg_DUp738SuXkiugCFMxbGNKTyTprYPfJz42wTOXbtd"}
+ES384_PRIVATE_KEY = """
+-----BEGIN EC PRIVATE KEY-----
+MIGkAgEBBDBeJEPZHK/TlHqgPGudxVPaecJu1viqQ47CfF2fpm5pOZRbxn44fPTv
+NAhZSgq4q9ugBwYFK4EEACKhZANiAATU7YcLn4WVTaF7OsDmhMunXEDm8kBQTqLN
+1OP3BDZb8VDPRAroXrSDFvfqvsX038fy+1esrOhESnpUL3xjeZEZ1Gclz9ps8gAa
+4ioH1wHtDgY1eXnykFfgAYZou0SHF50=
+-----END EC PRIVATE KEY-----
+"""
+
+ES384_PUBLIC_KEY = """
+-----BEGIN PUBLIC KEY-----
+MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE1O2HC5+FlU2hezrA5oTLp1xA5vJAUE6i
+zdTj9wQ2W/FQz0QK6F60gxb36r7F9N/H8vtXrKzoREp6VC98Y3mRGdRnJc/abPIA
+GuIqB9cB7Q4GNXl58pBX4AGGaLtEhxed
+-----END PUBLIC KEY-----
"""
-ES512_JWK = """
-{"kty":"EC","kid":"[email protected]","crv":"P-521","x":"AHKZLLOsCOzz5cY97ewNUajB957y-C-U88c3v13nmGZx6sYl_oJXu9A5RkTKqjqvjyekWF-7ytDyRXYgCF5cj0Kt","y":"AdymlHvOiLxXkEhayXQnNCvDX4h9htZaCJN34kfmC6pV5OhQHiraVySsUdaQkAgDPrwQrJmbnX9cwlGfP-HqHZR1","d":"AAhRON2r9cqXX1hg-RoI6R1tX5p2rUAYdmpHZoC1XNM56KtscrX6zbKipQrCW9CGZH3T4ubpnoTKLDYJ_fF3_rJt"}
+ES512_PRIVATE_KEY = """
+-----BEGIN EC PRIVATE KEY-----
+MIHcAgEBBEIAFFmbLI1wN6jnleaZDTQ8nrmhHxgkGd7phlZE38iMFbu1VwONhBQS
+gueyKbKt12zLxm0cS+5+RcTP6YNybqfCBvqgBwYFK4EEACOhgYkDgYYABACYqb5E
+k0j5mumqUxmBOR9aVGftNR7qJW3ZacLPatoqOKmu1yivzjRkfOJF56ZcPakpx4bQ
+uZAqfDoyl3KfOvZXhgD+44AKUZgyJ8UASBcWzZEmDVBRy8+HOaJUNXYJWUoloOdT
+dkppw79RCcDd5T4MILf1WhRnFIAEGdrAiWIJJnSQTw==
+-----END EC PRIVATE KEY-----
+"""
+
+ES512_PUBLIC_KEY = """
+-----BEGIN PUBLIC KEY-----
+MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAmKm+RJNI+ZrpqlMZgTkfWlRn7TUe
+6iVt2WnCz2raKjiprtcor840ZHziReemXD2pKceG0LmQKnw6Mpdynzr2V4YA/uOA
+ClGYMifFAEgXFs2RJg1QUcvPhzmiVDV2CVlKJaDnU3ZKacO/UQnA3eU+DCC39VoU
+ZxSABBnawIliCSZ0kE8=
+-----END PUBLIC KEY-----
"""
diff --git a/tests/test_backends.py b/tests/test_backends.py
index 60755281a..d6526e5d4 100644
--- a/tests/test_backends.py
+++ b/tests/test_backends.py
@@ -21,8 +21,10 @@
from tests.keys import (
ES256_PRIVATE_KEY,
ES256_PUBLIC_KEY,
- ES384_JWK,
- ES512_JWK,
+ ES384_PRIVATE_KEY,
+ ES384_PUBLIC_KEY,
+ ES512_PRIVATE_KEY,
+ ES512_PUBLIC_KEY,
PRIVATE_KEY,
PRIVATE_KEY_2,
PUBLIC_KEY,
@@ -59,14 +61,12 @@ def setUp(self):
"RS256", PRIVATE_KEY, PUBLIC_KEY, AUDIENCE, ISSUER
)
self.payload = {"foo": "bar"}
- es384_private_key = algorithms.ECAlgorithm.from_jwk(ES384_JWK)
- es512_private_key = algorithms.ECAlgorithm.from_jwk(ES512_JWK)
self.backends = (
self.hmac_token_backend,
self.rsa_token_backend,
TokenBackend("ES256", ES256_PRIVATE_KEY, ES256_PUBLIC_KEY),
- TokenBackend("ES384", es384_private_key,
es384_private_key.public_key()),
- TokenBackend("ES512", es512_private_key,
es512_private_key.public_key()),
+ TokenBackend("ES384", ES384_PRIVATE_KEY, ES384_PUBLIC_KEY),
+ TokenBackend("ES512", ES512_PRIVATE_KEY, ES512_PUBLIC_KEY),
)
def test_init(self):