Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove the JWTTokenUserAuthentication from the Experimental Features #546 #547

Conversation

byrpatrick
Copy link
Contributor

Fixes #546

It removes the JWTTokenUserAuthentication from the experimental features and renames it as JWTStatelessUserAuthentication.

Copy link
Member

@Andrew-Chen-Wang Andrew-Chen-Wang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks so much!

@Andrew-Chen-Wang Andrew-Chen-Wang merged commit 3fc9110 into jazzband:master Mar 18, 2022
eadwinCode added a commit to eadwinCode/django-ninja-jwt that referenced this pull request Jul 18, 2022
* Fix ES locale translation error (jazzband#499)

* chore: test on Django 4.0 (jazzband#495)

* chore: test on Django 4.0

* Remove Django 3.1 support from trove

* Remove Django 3.1 from tox

* Remove 3.1 reference in tox.ini

Co-authored-by: Andrew Chen Wang <[email protected]>

* Stop deleting blacklist on user delete (jazzband#516)

* OutstandingToken user on_delete should be null

* Add test to verify that deleting a User doesn't remove tokens from the blacklist

This is a rather unexpected default behavior. Deleting a User means that
their blacklisted tokens become live again.

* Add migration for cascading User deletion to SET_NULL instead of DELETE

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

Co-authored-by: Andrew Chen Wang <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* [pre-commit.ci] pre-commit autoupdate (jazzband#498)

updates:
- [github.com/pre-commit/pre-commit-hooks: v4.0.1 → v4.1.0](pre-commit/pre-commit-hooks@v4.0.1...v4.1.0)
- [github.com/asottile/yesqa: v1.2.3 → v1.3.0](asottile/yesqa@v1.2.3...v1.3.0)
- [github.com/pycqa/isort: 5.9.3 → 5.10.1](PyCQA/isort@5.9.3...5.10.1)
- [github.com/psf/black: 21.9b0 → 21.12b0](psf/black@21.9b0...21.12b0)
- [github.com/pre-commit/pre-commit-hooks: v4.0.1 → v4.1.0](pre-commit/pre-commit-hooks@v4.0.1...v4.1.0)
- [github.com/asottile/pyupgrade: v2.28.0 → v2.31.0](asottile/pyupgrade@v2.28.0...v2.31.0)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Enable ECDSA algorithms supported by PyJWT (jazzband#520)

* Parameterize some tests to reduce duplication and make it easy to add more algorithms

This way new algorithms can be added to the basic test set simply by
adding their backends to TestTokenBackend.backends.

* Enable ECDSA algorithms supported by PyJWT

Enable the algorithms and add basic tests for them.

Also convert the ALLOWED_ALGORITHMS constant to a set for a minor style
cleanup.

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Simplify using custom token classes in serializers (jazzband#517)

For most cases this could be done by overriding get_token, which is simple
enough. The exception was TokenRefreshSerializer.validate where the entire
method needed to be copy-pasted to allow using a custom replacement for
RefreshToken. The other cases are changed the same way mainly for
consistency.

* [pre-commit.ci] pre-commit autoupdate (jazzband#524)

updates:
- [github.com/psf/black: 21.12b0 → 22.1.0](psf/black@21.12b0...22.1.0)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Make the token serializer configurable (jazzband#521)

* Update translation files (jazzband#526)

* Add default __getattr__ behavior to models.TokenUser (jazzband#528)

* Add default __getattr__ behavior to models.TokenUser to allow getting custom claims defined in serializers

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Allow overriding access token class (jazzband#529)

* Maintain compatibility with serializer_class overrides (jazzband#530)

* Consider leeway when checking expiry (jazzband#458)

* Add locale checker to CI (jazzband#456)

* Add locale checker to CI

* Just pip install Django

* Add gettext package to OS

* Add sudo to apt-get

* Use @2ykwang 's updated script

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Only update on push to master
* To avoid pain points of PRs and histories being split
* Trying to use Andrew's username for pushing to see if that works

* Use separate workflow file

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Update CHANGELOG.md for v5.1.0 (jazzband#527)

* Update CHANGELOG.md for v5.0.1

* Update CHANGELOG.md

* Remove looking for maintainers in README since Jazzband

Co-authored-by: Andrew Chen Wang <[email protected]>

* Fix i18n CI (jazzband#538)

* Open PR on i18n (jazzband#539)

* fix small typo (jazzband#540)

* Setup initial PyJWT 1.7.1 support (jazzband#536)

* Fix release locale checker (jazzband#541)

* Update locale files (jazzband#542)

* [pre-commit.ci] pre-commit autoupdate (jazzband#545)

updates:
- [github.com/asottile/pyupgrade: v2.31.0 → v2.31.1](asottile/pyupgrade@v2.31.0...v2.31.1)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Remove the JWTTokenUserAuthentication from the Experimental Features jazzband#546 (jazzband#547)

* Change from git protocol to https protocol (jazzband#555)

* [pre-commit.ci] pre-commit autoupdate (jazzband#551)

updates:
- [github.com/psf/black: 22.1.0 → 22.3.0](psf/black@22.1.0...22.3.0)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Fix leeway type error (jazzband#554)

* Fix lewway type error

* Add test case

* Update Korean translation

* Add type hints

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Fix translation

revert POT-Creation-Date

* update translation

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* [pre-commit.ci] pre-commit autoupdate (jazzband#557)

* Add info on TokenBlacklistView to the docs (jazzband#558)

* chore(ci): add informational Codecov status checks (jazzband#559)

* Update JWTStatelessUserAuthentication docs (jazzband#561)

* Allow none jti claim token type claim (jazzband#567)

* Allow customizing token JSON encoding (jazzband#568)

* Allow specifying custom JSONEncoder for TokenBackend

* Make TokenBackend JSONEncoder configurable

* [pre-commit.ci] pre-commit autoupdate (jazzband#571)

updates:
- [github.com/asottile/pyupgrade: v2.32.0 → v2.32.1](asottile/pyupgrade@v2.32.0...v2.32.1)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Update CHANGELOG to 5.2.0 (jazzband#573)

* Locale update (jazzband#574)

* update & correct supported versions in docs (jazzband#576)

* update & correct supported versions in docs

* Add DRF supported version

Co-authored-by: Andrew Chen Wang <[email protected]>

* Add Swedish translations (jazzband#579)

* Fixed issue jazzband#543 (jazzband#586)

* Allow optional installation of the 'cryptography' package (jazzband#543)

* Update docs (jazzband#543)

* Update docs (jazzband#543)

* Update docs/getting_started.rst

Co-authored-by: Andrew Chen Wang <[email protected]>

* fix for code-block (jazzband#543)

* another fix for code-block (jazzband#543)

* fix: removed extra line (jazzband#543)

Co-authored-by: Andrew Chen Wang <[email protected]>

* [pre-commit.ci] pre-commit autoupdate (jazzband#587)

updates:
- [github.com/pre-commit/pre-commit-hooks: v4.2.0 → v4.3.0](pre-commit/pre-commit-hooks@v4.2.0...v4.3.0)
- [github.com/pre-commit/pre-commit-hooks: v4.2.0 → v4.3.0](pre-commit/pre-commit-hooks@v4.2.0...v4.3.0)
- [github.com/asottile/pyupgrade: v2.32.1 → v2.34.0](asottile/pyupgrade@v2.32.1...v2.34.0)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* [pre-commit.ci] pre-commit autoupdate (jazzband#589)

updates:
- [github.com/psf/black: 22.3.0 → 22.6.0](psf/black@22.3.0...22.6.0)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* [pre-commit.ci] pre-commit autoupdate (jazzband#590)

* removed some unwanted files

* removed some unwanted files

* code lint

Co-authored-by: Marc Salat <[email protected]>
Co-authored-by: Christofer Bertonha <[email protected]>
Co-authored-by: Andrew Chen Wang <[email protected]>
Co-authored-by: vainu-arto <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: yeongkwang <[email protected]>
Co-authored-by: Oscar Y Chen <[email protected]>
Co-authored-by: totycro <[email protected]>
Co-authored-by: Byron Motoche <[email protected]>
Co-authored-by: Vladimir <[email protected]>
Co-authored-by: Tom Hu <[email protected]>
Co-authored-by: Dennis Dinwiddie <[email protected]>
Co-authored-by: abdurrahman <[email protected]>
Co-authored-by: Pasindu Prabhashitha <[email protected]>
Co-authored-by: Armenak Baburyan <[email protected]>
eadwinCode added a commit to eadwinCode/django-ninja-jwt that referenced this pull request Oct 30, 2022
* Fix ES locale translation error (jazzband#499)

* chore: test on Django 4.0 (jazzband#495)

* chore: test on Django 4.0

* Remove Django 3.1 support from trove

* Remove Django 3.1 from tox

* Remove 3.1 reference in tox.ini

Co-authored-by: Andrew Chen Wang <[email protected]>

* Stop deleting blacklist on user delete (jazzband#516)

* OutstandingToken user on_delete should be null

* Add test to verify that deleting a User doesn't remove tokens from the blacklist

This is a rather unexpected default behavior. Deleting a User means that
their blacklisted tokens become live again.

* Add migration for cascading User deletion to SET_NULL instead of DELETE

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

Co-authored-by: Andrew Chen Wang <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* [pre-commit.ci] pre-commit autoupdate (jazzband#498)

updates:
- [github.com/pre-commit/pre-commit-hooks: v4.0.1 → v4.1.0](pre-commit/pre-commit-hooks@v4.0.1...v4.1.0)
- [github.com/asottile/yesqa: v1.2.3 → v1.3.0](asottile/yesqa@v1.2.3...v1.3.0)
- [github.com/pycqa/isort: 5.9.3 → 5.10.1](PyCQA/isort@5.9.3...5.10.1)
- [github.com/psf/black: 21.9b0 → 21.12b0](psf/black@21.9b0...21.12b0)
- [github.com/pre-commit/pre-commit-hooks: v4.0.1 → v4.1.0](pre-commit/pre-commit-hooks@v4.0.1...v4.1.0)
- [github.com/asottile/pyupgrade: v2.28.0 → v2.31.0](asottile/pyupgrade@v2.28.0...v2.31.0)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Enable ECDSA algorithms supported by PyJWT (jazzband#520)

* Parameterize some tests to reduce duplication and make it easy to add more algorithms

This way new algorithms can be added to the basic test set simply by
adding their backends to TestTokenBackend.backends.

* Enable ECDSA algorithms supported by PyJWT

Enable the algorithms and add basic tests for them.

Also convert the ALLOWED_ALGORITHMS constant to a set for a minor style
cleanup.

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Simplify using custom token classes in serializers (jazzband#517)

For most cases this could be done by overriding get_token, which is simple
enough. The exception was TokenRefreshSerializer.validate where the entire
method needed to be copy-pasted to allow using a custom replacement for
RefreshToken. The other cases are changed the same way mainly for
consistency.

* [pre-commit.ci] pre-commit autoupdate (jazzband#524)

updates:
- [github.com/psf/black: 21.12b0 → 22.1.0](psf/black@21.12b0...22.1.0)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Make the token serializer configurable (jazzband#521)

* Update translation files (jazzband#526)

* Add default __getattr__ behavior to models.TokenUser (jazzband#528)

* Add default __getattr__ behavior to models.TokenUser to allow getting custom claims defined in serializers

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Allow overriding access token class (jazzband#529)

* Maintain compatibility with serializer_class overrides (jazzband#530)

* Consider leeway when checking expiry (jazzband#458)

* Add locale checker to CI (jazzband#456)

* Add locale checker to CI

* Just pip install Django

* Add gettext package to OS

* Add sudo to apt-get

* Use @2ykwang 's updated script

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Only update on push to master
* To avoid pain points of PRs and histories being split
* Trying to use Andrew's username for pushing to see if that works

* Use separate workflow file

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Update CHANGELOG.md for v5.1.0 (jazzband#527)

* Update CHANGELOG.md for v5.0.1

* Update CHANGELOG.md

* Remove looking for maintainers in README since Jazzband

Co-authored-by: Andrew Chen Wang <[email protected]>

* Fix i18n CI (jazzband#538)

* Open PR on i18n (jazzband#539)

* fix small typo (jazzband#540)

* Setup initial PyJWT 1.7.1 support (jazzband#536)

* Fix release locale checker (jazzband#541)

* Update locale files (jazzband#542)

* [pre-commit.ci] pre-commit autoupdate (jazzband#545)

updates:
- [github.com/asottile/pyupgrade: v2.31.0 → v2.31.1](asottile/pyupgrade@v2.31.0...v2.31.1)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Remove the JWTTokenUserAuthentication from the Experimental Features jazzband#546 (jazzband#547)

* Change from git protocol to https protocol (jazzband#555)

* [pre-commit.ci] pre-commit autoupdate (jazzband#551)

updates:
- [github.com/psf/black: 22.1.0 → 22.3.0](psf/black@22.1.0...22.3.0)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Fix leeway type error (jazzband#554)

* Fix lewway type error

* Add test case

* Update Korean translation

* Add type hints

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Fix translation

revert POT-Creation-Date

* update translation

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* [pre-commit.ci] pre-commit autoupdate (jazzband#557)

* Add info on TokenBlacklistView to the docs (jazzband#558)

* chore(ci): add informational Codecov status checks (jazzband#559)

* Update JWTStatelessUserAuthentication docs (jazzband#561)

* Allow none jti claim token type claim (jazzband#567)

* Allow customizing token JSON encoding (jazzband#568)

* Allow specifying custom JSONEncoder for TokenBackend

* Make TokenBackend JSONEncoder configurable

* [pre-commit.ci] pre-commit autoupdate (jazzband#571)

updates:
- [github.com/asottile/pyupgrade: v2.32.0 → v2.32.1](asottile/pyupgrade@v2.32.0...v2.32.1)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Update CHANGELOG to 5.2.0 (jazzband#573)

* Locale update (jazzband#574)

* update & correct supported versions in docs (jazzband#576)

* update & correct supported versions in docs

* Add DRF supported version

Co-authored-by: Andrew Chen Wang <[email protected]>

* Add Swedish translations (jazzband#579)

* Fixed issue jazzband#543 (jazzband#586)

* Allow optional installation of the 'cryptography' package (jazzband#543)

* Update docs (jazzband#543)

* Update docs (jazzband#543)

* Update docs/getting_started.rst

Co-authored-by: Andrew Chen Wang <[email protected]>

* fix for code-block (jazzband#543)

* another fix for code-block (jazzband#543)

* fix: removed extra line (jazzband#543)

Co-authored-by: Andrew Chen Wang <[email protected]>

* [pre-commit.ci] pre-commit autoupdate (jazzband#587)

updates:
- [github.com/pre-commit/pre-commit-hooks: v4.2.0 → v4.3.0](pre-commit/pre-commit-hooks@v4.2.0...v4.3.0)
- [github.com/pre-commit/pre-commit-hooks: v4.2.0 → v4.3.0](pre-commit/pre-commit-hooks@v4.2.0...v4.3.0)
- [github.com/asottile/pyupgrade: v2.32.1 → v2.34.0](asottile/pyupgrade@v2.32.1...v2.34.0)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* [pre-commit.ci] pre-commit autoupdate (jazzband#589)

updates:
- [github.com/psf/black: 22.3.0 → 22.6.0](psf/black@22.3.0...22.6.0)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* [pre-commit.ci] pre-commit autoupdate (jazzband#590)

* [pre-commit.ci] pre-commit autoupdate (jazzband#594)

updates:
- [github.com/asottile/pyupgrade: v2.37.1 → v2.37.2](asottile/pyupgrade@v2.37.1...v2.37.2)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* [pre-commit.ci] pre-commit autoupdate (jazzband#597)

updates:
- [github.com/asottile/pyupgrade: v2.37.2 → v2.37.3](asottile/pyupgrade@v2.37.2...v2.37.3)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* [pre-commit.ci] pre-commit autoupdate (jazzband#601)

updates:
- [github.com/asottile/yesqa: v1.3.0 → v1.4.0](asottile/yesqa@v1.3.0...v1.4.0)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Fix uncaught exception with JWK (jazzband#600)

* Fix uncaught exception with JWK

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Allow tests to run on older JWT versions

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Test on Django 4.1 (jazzband#604)

* [pre-commit.ci] pre-commit autoupdate (jazzband#609)

* Add v5.2.1 changes (jazzband#611)

* use non-deprecated UTC timezone (jazzband#606)

RemovedInDjango50Warning

* Added Romanian translations (jazzband#591)

* Added Romanian translations

* Changed some translations according to the grammatical rules of the Romanian language

* Changed some translations according to the advices of:
https://github.com/marcellefter
https://github.com/uoxiu

Co-authored-by: Daniel Cuznetov <[email protected]>

* allow verification skipping (jazzband#605)

* allow verify

skip verification if VERIFYING_KEY is not set

* Update settings.py

* Update authentication.py

* Update settings.py

* Update authentication.py

* [pre-commit.ci] pre-commit autoupdate (jazzband#619)

* [pre-commit.ci] pre-commit autoupdate (jazzband#620)

* Update locale files (jazzband#624)

* Revert 605 (jazzband#629)

* [pre-commit.ci] pre-commit autoupdate (jazzband#630)

* [Docs] Fix typo in blacklist_app.rst (jazzband#593)

* Fix typo in blacklist_app.rst

`TokenBlackListView` -> `TokenBlacklistView`

* Append CHANGELOG

Co-authored-by: Andrew-Chen-Wang <[email protected]>

Co-authored-by: Marc Salat <[email protected]>
Co-authored-by: Christofer Bertonha <[email protected]>
Co-authored-by: Andrew Chen Wang <[email protected]>
Co-authored-by: vainu-arto <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: yeongkwang <[email protected]>
Co-authored-by: Oscar Y Chen <[email protected]>
Co-authored-by: totycro <[email protected]>
Co-authored-by: Byron Motoche <[email protected]>
Co-authored-by: Vladimir <[email protected]>
Co-authored-by: Tom Hu <[email protected]>
Co-authored-by: Dennis Dinwiddie <[email protected]>
Co-authored-by: abdurrahman <[email protected]>
Co-authored-by: Pasindu Prabhashitha <[email protected]>
Co-authored-by: Armenak Baburyan <[email protected]>
Co-authored-by: Jeremy Mayeres <[email protected]>
Co-authored-by: Benedikt S. Vogler <[email protected]>
Co-authored-by: Daniel Cuzneţov <[email protected]>
Co-authored-by: Daniel Cuznetov <[email protected]>
Co-authored-by: Domenico <[email protected]>
Co-authored-by: Boseong Choi <[email protected]>
Co-authored-by: Andrew-Chen-Wang <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Question: What does the JWTTokenUserAuthentication backend need to be a non-experimental feature?
2 participants