Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-flask-jwt-extended for
openSUSE:Factory checked in at 2024-01-21 23:09:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-flask-jwt-extended (Old)
and /work/SRC/openSUSE:Factory/.python-flask-jwt-extended.new.16006 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-flask-jwt-extended"
Sun Jan 21 23:09:08 2024 rev:4 rq:1140113 version:4.6.0
Changes:
--------
---
/work/SRC/openSUSE:Factory/python-flask-jwt-extended/python-flask-jwt-extended.changes
2023-06-19 22:50:44.341624213 +0200
+++
/work/SRC/openSUSE:Factory/.python-flask-jwt-extended.new.16006/python-flask-jwt-extended.changes
2024-01-21 23:09:22.407730124 +0100
@@ -1,0 +2,13 @@
+Sat Jan 20 13:08:27 UTC 2024 - Dirk Müller <[email protected]>
+
+- update to 4.6.0:
+ * Bump cryptography from 41.0.4 to 41.0.6
+ * Do not check JWT_TOKEN_LOCATION when testing if
+ cookie_csrf_protect is enabled
+- update to 4.5.3:
+ * Replace "defining" with "define"
+ * Fix documentation syntax error
+ * remove duplicate comments
+ * Support python 3.12 and add support for flask 3.0
+
+-------------------------------------------------------------------
Old:
----
Flask-JWT-Extended-4.5.2.tar.gz
New:
----
Flask-JWT-Extended-4.6.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-flask-jwt-extended.spec ++++++
--- /var/tmp/diff_new_pack.E3FweH/_old 2024-01-21 23:09:23.563772264 +0100
+++ /var/tmp/diff_new_pack.E3FweH/_new 2024-01-21 23:09:23.567772410 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-flask-jwt-extended
#
-# 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
@@ -16,9 +16,9 @@
#
-%define skip_python2 1
+%{?sle15_python_module_pythons}
Name: python-flask-jwt-extended
-Version: 4.5.2
+Version: 4.6.0
Release: 0
Summary: A Flask extension that provides JWT support
License: MIT
@@ -27,7 +27,7 @@
BuildRequires: %{python_module Flask >= 1.0}
BuildRequires: %{python_module PyJWT >= 2.0}
BuildRequires: %{python_module Werkzeug >= 0.14}
-BuildRequires: %{python_module cryptography >= 3.0}
+BuildRequires: %{python_module cryptography >= 41.0.6}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module python-dateutil}
@@ -38,7 +38,7 @@
Requires: python-Flask >= 1.0
Requires: python-PyJWT >= 2.0
Requires: python-Werkzeug >= 0.14
-Suggests: python-cryptography >= 3.0
+Suggests: python-cryptography >= 41.0.6
BuildArch: noarch
%python_subpackages
++++++ Flask-JWT-Extended-4.5.2.tar.gz -> Flask-JWT-Extended-4.6.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/Flask-JWT-Extended-4.5.2/Flask_JWT_Extended.egg-info/PKG-INFO
new/Flask-JWT-Extended-4.6.0/Flask_JWT_Extended.egg-info/PKG-INFO
--- old/Flask-JWT-Extended-4.5.2/Flask_JWT_Extended.egg-info/PKG-INFO
2023-05-26 21:16:32.000000000 +0200
+++ new/Flask-JWT-Extended-4.6.0/Flask_JWT_Extended.egg-info/PKG-INFO
2023-12-13 06:29:35.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: Flask-JWT-Extended
-Version: 4.5.2
+Version: 4.6.0
Summary: Extended JWT integration with Flask
Home-page: https://github.com/vimalloc/flask-jwt-extended
Author: Lily Acadia Gilbert
@@ -23,13 +23,19 @@
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.7,<4
Description-Content-Type: text/markdown
-Provides-Extra: asymmetric_crypto
License-File: LICENSE
+Requires-Dist: Werkzeug>=0.14
+Requires-Dist: Flask<4.0,>=2.0
+Requires-Dist: PyJWT<3.0,>=2.0
+Requires-Dist: typing_extensions>=3.7.4; python_version < "3.8"
+Provides-Extra: asymmetric-crypto
+Requires-Dist: cryptography>=3.3.1; extra == "asymmetric-crypto"
# Flask-JWT-Extended
@@ -85,7 +91,7 @@
A subset of checks can also be ran by adding an argument to tox. The available
arguments are:
-- py37, py38, py39, py310, pypy3
+- py37, py38, py39, py310, py311, py312, pypy3
- Run unit tests on the given python version
- mypy
- Run mypy type checking
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/Flask-JWT-Extended-4.5.2/Flask_JWT_Extended.egg-info/requires.txt
new/Flask-JWT-Extended-4.6.0/Flask_JWT_Extended.egg-info/requires.txt
--- old/Flask-JWT-Extended-4.5.2/Flask_JWT_Extended.egg-info/requires.txt
2023-05-26 21:16:32.000000000 +0200
+++ new/Flask-JWT-Extended-4.6.0/Flask_JWT_Extended.egg-info/requires.txt
2023-12-13 06:29:35.000000000 +0100
@@ -1,5 +1,5 @@
Werkzeug>=0.14
-Flask<3.0,>=2.0
+Flask<4.0,>=2.0
PyJWT<3.0,>=2.0
[:python_version < "3.8"]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Flask-JWT-Extended-4.5.2/PKG-INFO
new/Flask-JWT-Extended-4.6.0/PKG-INFO
--- old/Flask-JWT-Extended-4.5.2/PKG-INFO 2023-05-26 21:16:32.357577800
+0200
+++ new/Flask-JWT-Extended-4.6.0/PKG-INFO 2023-12-13 06:29:35.098530000
+0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: Flask-JWT-Extended
-Version: 4.5.2
+Version: 4.6.0
Summary: Extended JWT integration with Flask
Home-page: https://github.com/vimalloc/flask-jwt-extended
Author: Lily Acadia Gilbert
@@ -23,13 +23,19 @@
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.7,<4
Description-Content-Type: text/markdown
-Provides-Extra: asymmetric_crypto
License-File: LICENSE
+Requires-Dist: Werkzeug>=0.14
+Requires-Dist: Flask<4.0,>=2.0
+Requires-Dist: PyJWT<3.0,>=2.0
+Requires-Dist: typing_extensions>=3.7.4; python_version < "3.8"
+Provides-Extra: asymmetric-crypto
+Requires-Dist: cryptography>=3.3.1; extra == "asymmetric-crypto"
# Flask-JWT-Extended
@@ -85,7 +91,7 @@
A subset of checks can also be ran by adding an argument to tox. The available
arguments are:
-- py37, py38, py39, py310, pypy3
+- py37, py38, py39, py310, py311, py312, pypy3
- Run unit tests on the given python version
- mypy
- Run mypy type checking
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Flask-JWT-Extended-4.5.2/README.md
new/Flask-JWT-Extended-4.6.0/README.md
--- old/Flask-JWT-Extended-4.5.2/README.md 2023-05-26 21:16:17.000000000
+0200
+++ new/Flask-JWT-Extended-4.6.0/README.md 2023-12-13 06:29:27.000000000
+0100
@@ -52,7 +52,7 @@
A subset of checks can also be ran by adding an argument to tox. The available
arguments are:
-- py37, py38, py39, py310, pypy3
+- py37, py38, py39, py310, py311, py312, pypy3
- Run unit tests on the given python version
- mypy
- Run mypy type checking
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/Flask-JWT-Extended-4.5.2/flask_jwt_extended/__init__.py
new/Flask-JWT-Extended-4.6.0/flask_jwt_extended/__init__.py
--- old/Flask-JWT-Extended-4.5.2/flask_jwt_extended/__init__.py 2023-05-26
21:16:17.000000000 +0200
+++ new/Flask-JWT-Extended-4.6.0/flask_jwt_extended/__init__.py 2023-12-13
06:29:27.000000000 +0100
@@ -19,4 +19,4 @@
from .view_decorators import jwt_required as jwt_required
from .view_decorators import verify_jwt_in_request as verify_jwt_in_request
-__version__ = "4.5.2"
+__version__ = "4.6.0"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/Flask-JWT-Extended-4.5.2/flask_jwt_extended/config.py
new/Flask-JWT-Extended-4.6.0/flask_jwt_extended/config.py
--- old/Flask-JWT-Extended-4.5.2/flask_jwt_extended/config.py 2023-05-26
21:16:17.000000000 +0200
+++ new/Flask-JWT-Extended-4.6.0/flask_jwt_extended/config.py 2023-12-13
06:29:27.000000000 +0100
@@ -135,8 +135,8 @@
return current_app.config["JWT_REFRESH_JSON_KEY"]
@property
- def csrf_protect(self) -> bool:
- return self.jwt_in_cookies and
current_app.config["JWT_COOKIE_CSRF_PROTECT"]
+ def cookie_csrf_protect(self) -> bool:
+ return current_app.config["JWT_COOKIE_CSRF_PROTECT"]
@property
def csrf_request_methods(self) -> Iterable[str]:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/Flask-JWT-Extended-4.5.2/flask_jwt_extended/jwt_manager.py
new/Flask-JWT-Extended-4.6.0/flask_jwt_extended/jwt_manager.py
--- old/Flask-JWT-Extended-4.5.2/flask_jwt_extended/jwt_manager.py
2023-05-26 21:16:17.000000000 +0200
+++ new/Flask-JWT-Extended-4.6.0/flask_jwt_extended/jwt_manager.py
2023-12-13 06:29:27.000000000 +0100
@@ -516,7 +516,7 @@
algorithm=config.algorithm,
audience=config.encode_audience,
claim_overrides=claim_overrides,
- csrf=config.csrf_protect,
+ csrf=config.cookie_csrf_protect,
expires_delta=expires_delta,
fresh=fresh,
header_overrides=header_overrides,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Flask-JWT-Extended-4.5.2/flask_jwt_extended/utils.py
new/Flask-JWT-Extended-4.6.0/flask_jwt_extended/utils.py
--- old/Flask-JWT-Extended-4.5.2/flask_jwt_extended/utils.py 2023-05-26
21:16:17.000000000 +0200
+++ new/Flask-JWT-Extended-4.6.0/flask_jwt_extended/utils.py 2023-12-13
06:29:27.000000000 +0100
@@ -160,13 +160,13 @@
Optional. A hash of claims to include in the access token. These
claims are
merged into the default claims (exp, iat, etc) and claims returned
from the
:meth:`~flask_jwt_extended.JWTManager.additional_claims_loader`
callback.
- On conflict, these claims take presidence.
+ On conflict, these claims take precedence.
:param headers:
Optional. A hash of headers to include in the access token. These
headers
are merged into the default headers (alg, typ) and headers returned
from
the :meth:`~flask_jwt_extended.JWTManager.additional_headers_loader`
- callback. On conflict, these headers take presidence.
+ callback. On conflict, these headers take precedence.
:return:
An encoded access token
@@ -206,13 +206,13 @@
Optional. A hash of claims to include in the refresh token. These
claims are
merged into the default claims (exp, iat, etc) and claims returned
from the
:meth:`~flask_jwt_extended.JWTManager.additional_claims_loader`
callback.
- On conflict, these claims take presidence.
+ On conflict, these claims take precedence.
:param headers:
Optional. A hash of headers to include in the refresh token. These
headers
are merged into the default headers (alg, typ) and headers returned
from the
:meth:`~flask_jwt_extended.JWTManager.additional_headers_loader`
callback.
- On conflict, these headers take presidence.
+ On conflict, these headers take precedence.
:return:
An encoded refresh token
@@ -305,7 +305,7 @@
samesite=config.cookie_samesite,
)
- if config.csrf_protect and config.csrf_in_cookies:
+ if config.cookie_csrf_protect and config.csrf_in_cookies:
response.set_cookie(
config.access_csrf_cookie_name,
value=get_csrf_token(encoded_access_token),
@@ -358,7 +358,7 @@
samesite=config.cookie_samesite,
)
- if config.csrf_protect and config.csrf_in_cookies:
+ if config.cookie_csrf_protect and config.csrf_in_cookies:
response.set_cookie(
config.refresh_csrf_cookie_name,
value=get_csrf_token(encoded_refresh_token),
@@ -408,7 +408,7 @@
samesite=config.cookie_samesite,
)
- if config.csrf_protect and config.csrf_in_cookies:
+ if config.cookie_csrf_protect and config.csrf_in_cookies:
response.set_cookie(
config.access_csrf_cookie_name,
value="",
@@ -446,7 +446,7 @@
samesite=config.cookie_samesite,
)
- if config.csrf_protect and config.csrf_in_cookies:
+ if config.cookie_csrf_protect and config.csrf_in_cookies:
response.set_cookie(
config.refresh_csrf_cookie_name,
value="",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/Flask-JWT-Extended-4.5.2/flask_jwt_extended/view_decorators.py
new/Flask-JWT-Extended-4.6.0/flask_jwt_extended/view_decorators.py
--- old/Flask-JWT-Extended-4.5.2/flask_jwt_extended/view_decorators.py
2023-05-26 21:16:17.000000000 +0200
+++ new/Flask-JWT-Extended-4.6.0/flask_jwt_extended/view_decorators.py
2023-12-13 06:29:27.000000000 +0100
@@ -81,10 +81,6 @@
If ``True``, revocation status of the token will be *not* checked. If
``False``,
revocation status of the token will be checked.
- :param skip_revocation_check:
- If ``True``, revocation status of the token will be *not* checked. If
``False``,
- revocation status of the token will be checked.
-
:return:
A tuple containing the jwt_header and the jwt_data if a valid JWT is
present in the request. If ``optional=True`` and no JWT is in the
request,
@@ -248,7 +244,7 @@
if not encoded_token:
raise NoAuthorizationError('Missing cookie "{}"'.format(cookie_key))
- if config.csrf_protect and request.method in config.csrf_request_methods:
+ if config.cookie_csrf_protect and request.method in
config.csrf_request_methods:
csrf_value = request.headers.get(csrf_header_key, None)
if not csrf_value and config.csrf_check_form:
csrf_value = request.form.get(csrf_field_key, None)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Flask-JWT-Extended-4.5.2/requirements.txt
new/Flask-JWT-Extended-4.6.0/requirements.txt
--- old/Flask-JWT-Extended-4.5.2/requirements.txt 2023-05-26
21:16:17.000000000 +0200
+++ new/Flask-JWT-Extended-4.6.0/requirements.txt 2023-12-13
06:29:27.000000000 +0100
@@ -1,6 +1,6 @@
black==21.12b0
-cryptography==39.0.1
-Flask==2.3.2
+cryptography==41.0.6
+Flask==3.0.0
pre-commit==2.18.1
PyJWT==2.7.0
tox==3.25.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Flask-JWT-Extended-4.5.2/setup.py
new/Flask-JWT-Extended-4.6.0/setup.py
--- old/Flask-JWT-Extended-4.5.2/setup.py 2023-05-26 21:16:17.000000000
+0200
+++ new/Flask-JWT-Extended-4.6.0/setup.py 2023-12-13 06:29:27.000000000
+0100
@@ -30,7 +30,7 @@
platforms="any",
install_requires=[
"Werkzeug>=0.14", # Needed for SameSite cookie functionality
- "Flask>=2.0,<3.0",
+ "Flask>=2.0,<4.0",
"PyJWT>=2.0,<3.0",
"typing_extensions>=3.7.4; python_version<'3.8'", # typing.Literal
],
@@ -52,6 +52,7 @@
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
+ "Programming Language :: Python :: 3.12",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
"Topic :: Software Development :: Libraries :: Python Modules",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Flask-JWT-Extended-4.5.2/tests/test_config.py
new/Flask-JWT-Extended-4.6.0/tests/test_config.py
--- old/Flask-JWT-Extended-4.5.2/tests/test_config.py 2023-05-26
21:16:17.000000000 +0200
+++ new/Flask-JWT-Extended-4.6.0/tests/test_config.py 2023-12-13
06:29:27.000000000 +0100
@@ -51,7 +51,7 @@
assert config.json_key == "access_token"
assert config.refresh_json_key == "refresh_token"
- assert config.csrf_protect is False
+ assert config.cookie_csrf_protect is True
assert config.csrf_request_methods == ["POST", "PUT", "PATCH",
"DELETE"]
assert config.csrf_in_cookies is True
assert config.access_csrf_cookie_name == "csrf_access_token"
@@ -142,7 +142,7 @@
assert config.session_cookie is False
assert config.cookie_samesite == "Strict"
- assert config.csrf_protect is True
+ assert config.cookie_csrf_protect is True
assert config.csrf_request_methods == ["GET"]
assert config.csrf_in_cookies is False
assert config.access_csrf_cookie_name == "access_csrf_cookie"
@@ -333,17 +333,11 @@
def test_csrf_protect_config(app):
with app.test_request_context():
- app.config["JWT_TOKEN_LOCATION"] = ["headers"]
app.config["JWT_COOKIE_CSRF_PROTECT"] = True
- assert config.csrf_protect is False
+ assert config.cookie_csrf_protect is True
- app.config["JWT_TOKEN_LOCATION"] = ["cookies"]
- app.config["JWT_COOKIE_CSRF_PROTECT"] = True
- assert config.csrf_protect is True
-
- app.config["JWT_TOKEN_LOCATION"] = ["cookies"]
app.config["JWT_COOKIE_CSRF_PROTECT"] = False
- assert config.csrf_protect is False
+ assert config.cookie_csrf_protect is False
def test_missing_algorithm_in_decode_algorithms(app):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Flask-JWT-Extended-4.5.2/tox.ini
new/Flask-JWT-Extended-4.6.0/tox.ini
--- old/Flask-JWT-Extended-4.5.2/tox.ini 2023-05-26 21:16:17.000000000
+0200
+++ new/Flask-JWT-Extended-4.6.0/tox.ini 2023-12-13 06:29:27.000000000
+0100
@@ -4,7 +4,7 @@
# and then run "tox" from this directory.
[tox]
-envlist = py37,py38,py39,py310,py311,pypy3.9,flask21,mypy,coverage,style,docs
+envlist =
py37,py38,py39,py310,py311,py312,pypy3.9,flask21,flask2x,mypy,coverage,style,docs
[testenv]
commands =
@@ -14,6 +14,9 @@
cryptography
python-dateutil
flask21: Flask>=2.1,<2.2
+ flask21: Werkzeug>=2,<3
+ flask2x: Flask<3.0
+ flask2x: Werkzeug>=2,<3
[testenv:mypy]
commands =
@@ -44,9 +47,6 @@
# This gets color output working when run through tox
passenv=TERM
deps = -rdocs/requirements.txt
-#deps =
-# Sphinx
-# Pallets-Sphinx-Themes
changedir = docs
allowlist_externals = make
commands =