summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Update version to 2.0.0a1a1José Padilla2020-11-011-1/+1
|
* Update Auth0 sponsorship link (#519)Sam Bellen2020-09-242-8/+6
| | | | | | | | | | | | | | | | | | | | * Update Auth0 sponsorship link Hey We recently launched a new page specifically geared towards developers on auth0.com. Can we change the link in the sponsorship message? Thanks again for your continuous open-source work! Sam * Update both link and link-text * Update README.rst * Update index.rst Co-authored-by: José Padilla <jpadilla@webapplicate.com>
* Implementation of ECAlgorithm.from_jwk (#500)José Padilla2020-08-247-0/+188
| | | | | | | * ECAlgorithm.to_jwk * Fix failing linting Co-authored-by: Evert Lammerts <evert@lucipher.net>
* Drop deprecation warnings (#515)José Padilla2020-08-2418-336/+341
| | | | | | | | | | | * Drop deprecation warnings * Add missing keys * Remove commented exceptions * Undo lambda change * Remove unused keys
* Drop support for legacy contrib algorithms (#514)José Padilla2020-08-2414-552/+157
| | | | | * Drop support for legacy contrib algorithms * Update cryptography dep
* Introduce better experience for JWKs (#511)José Padilla2020-08-2411-22/+459
| | | | | | | | | | | * Introduce better experience for JWKs * Remove explicit inheritance * Add tests for PyJWK * Fix failing test * Get rid of lambda
* Return tokens as string not bytes (#513)José Padilla2020-08-243-4/+8
|
* Fix tox conditional extras (#512)José Padilla2020-08-221-1/+1
|
* Remove cli entrypoint (#501)José Padilla2020-08-213-392/+0
|
* Update README.md badges (#510)José Padilla2020-08-211-7/+4
|
* Setup GH Actions (#499)José Padilla2020-08-1913-327/+257
| | | | | | | | | | | | | | | * Setup GH Actions * Remove src path changes * Add dev extras * Update USING_COVERAGE * last update * Upgrade pytest * Remove 2.7 things
* Default links to stable version of documentation (#508)Brian Salcedo2020-07-281-3/+3
|
* Expose InvalidKeyError on jwt module (#503)Russell Cardullo2020-06-251-0/+1
| | | | | | This allows one import that similar to other exceptions: ``` from jwt import InvalidKeyError ```
* Remove unnecessary compatibility shims for Python 2 (#498)Jon Dufresne2020-06-1912-83/+46
| | | | | | | | | | | As the project is Python 3 only, can remove the compatibility shims in compat.py. Type checking has been simplified where it can: - str is iterable - bytes is iterable - use isinstance instead of issubclass The remaining function bytes_from_int() has been moved to utils.py.
* Specify the target Python version for mypy (#497)Jon Dufresne2020-06-191-1/+1
|
* CLI options for verifying audience and issuer (#496)Geoff Richards2020-06-161-1/+18
|
* Move setup information to declarative setup.cfg (#495)Jon Dufresne2020-06-113-73/+53
| | | | | | | | Use a declarative syntax to avoid mixing code and configuration. Simplifies handling of long description and version by reducing some boilerplate. For details on this setuptools feature, see: https://setuptools.readthedocs.io/en/latest/setuptools.html#configuring-setup-using-setup-cfg-files
* Emit warnings about user code, not pyjwt code (#494)Marius Gedminas2020-06-092-0/+4
| | | | This assumes all direct calls to private methods (leading underscore in name) are from pyjwt code, hence stacklevel=3 nor 2.
* Fix `tox -e lint` warnings and errors (#490)Jon Dufresne2020-06-096-59/+59
| | | Now successfully passes when running `tox -e lint`.
* Run pyupgrade across project to use modern Python 3 conventions (#491)Jon Dufresne2020-06-0813-122/+115
| | | | | | | | pyupgrade is a tool to automatically upgrade Python syntax for newer versions of the language. Running pyupgrade removes several Python-2-isms that are no longer necessary now that the project is Python 3 only. https://github.com/asottile/pyupgrade
* Add Python-3-only trove classifier and remove "universal" from wheel (#492)Jon Dufresne2020-06-081-1/+1
| | | | | | | | | | | Documents the project as Python 3 only to potential and current library users. As the project no longer supports Python 2, the wheel is not "universal". From https://wheel.readthedocs.io/en/stable/user_guide.html?highlight=universal#building-wheels: > If your project … is expected to work on both Python 2 and 3, you will > want to tell wheel to produce universal wheels …
* Correct README on how to run tests locally (#489)Jon Dufresne2020-06-081-1/+1
| | | | The command `setup.py test` has been unused since 3a20892442b34c754b26550e05f7f856fb008c94.
* Add support for Ed25519 / EdDSA, with unit tests (#455)Someguy1232020-05-245-0/+173
|
* Enhance tracebacks. (#477)Julien Palard2020-05-151-9/+9
|
* Require tweak (#280)Pau Ruiz Safont2020-05-143-12/+47
| | | | | | | | | | | * Use require options as a list, instead of booleans Deprecate the use of the boolean options * Add test for the new require option * Add documentation on how to use the require option Co-authored-by: Pau Ruiz i Safont <psafont@ebi.ac.uk>
* Document top-level .encode and .decode to close #459 (#482)Dima Tisnek2020-04-262-4/+64
| | | Co-authored-by: José Padilla <jpadilla@webapplicate.com>
* Improve documentation for audience usage (#484)Correy Lim2020-04-261-8/+35
| | | | | | | | | | | | | | | | | | | | | | | * Add code example for `aud` being an array The previous code example only showed the `aud` claim as a single case-sensitive string, despite the documentation mentioning that the `aud` claim can be an array of case-sensitive strings Add a code block demonstrating the `aud` claim being an array of case-sensitive strings to make it more clear to the user that it is a permitted use of the `aud` claim * Add example of the `audience` param as an iterable Demonstrate to users reading the documentation that the `audience` parameter is not restricted to the `string` type, but can also accept an iterable, as implemented in PR#306 https://github.com/jpadilla/pyjwt/pull/306 * Fix short title underlines Short title underlines throw warnings in reStructuredText linters
* Create main.ymlJosé Padilla2020-04-061-0/+40
|
* Simplify `python_requires` (#478)Michael2020-03-241-1/+1
|
* Add support of python 3.8 (#452)Bastien Vallet2019-12-273-3/+6
|
* Update CHANGELOG.mdJosé Padilla2019-11-231-0/+17
|
* Fix 406 (#454)justinbaur2019-11-162-7/+56
| | | | | | | | | | * Added header option for encode * added tests and None check * updated quotes for consistency * format fixes after tox
* Fix simple typo: encododed -> encoded (#462)Tim Gates2019-11-141-1/+1
|
* Remove Python 2.7 compatibility (#457)Bastien Vallet2019-11-128-87/+31
| | | | | | * Remove py27 support * [py27] Remove useless compatibility files
* Create FUNDING.ymlJosé Padilla2019-11-041-0/+3
|
* DX Tweaks (#450)José Padilla2019-10-2136-1395/+1737
| | | | | | | | | | * Setup pre-commit hooks * Run initial `tox -e lint` * Fix package name * Fix .travis.yml
* Update .gitignoreJosé Padilla2019-10-201-0/+1
|
* Catch BadSignatureError raised by ecdsa 0.13.3 on verification errors (#448)StefanBruens2019-10-201-1/+3
| | | | | | The new ecdsa no longer uses AssertionError when the signature is too long. This happens in the test suite, where "123" is appended to the signature. Fixes #447
* Fix mypy errors (#449)José Padilla2019-10-201-4/+4
|
* Remove setup.py test command in favor of pytest and tox (#442)Jon Dufresne2019-10-062-16/+4
| | | | | | | | | Using pytest and tox directly is simpler and more conventional then going through setup.py. Using setup.py installs packages as eggs where as tox uses the more typical pip. Overall simplifies setup.py. Fixes #415
* Rename [wheel] section to [bdist_wheel] as the former is legacy (#441)Jon Dufresne2019-09-281-1/+1
| | | | | | | | | | | Fixes warning when running the `python3 setup.py bdist_wheel` command: The [wheel] section is deprecated. Use [bdist_wheel] instead. For additional details, see: https://github.com/pypa/wheel/blob/d2f5b43c866295de7b3963da9fd049f1ca4b1194/wheel/bdist_wheel.py#L124-L131 https://pythonwheels.com/
* Pass python_requires argument to setuptools (#440)Jon Dufresne2019-09-281-0/+1
| | | | | | | | | | | | | | | | | | | Helps pip decide what version of the library to install. This is especially useful when removing support for EOL Python versions. https://packaging.python.org/guides/distributing-packages-using-setuptools/#python-requires > If your project only runs on certain Python versions, setting the > python_requires argument to the appropriate PEP 440 version specifier > string will prevent pip from installing the project on other Python > versions. https://setuptools.readthedocs.io/en/latest/setuptools.html#new-and-changed-setup-keywords > python_requires > > A string corresponding to a version specifier (as defined in PEP 440) > for the Python version, used to specify the Requires-Python defined in > PEP 345.
* Prefer https:// links where available (#439)Jon Dufresne2019-09-284-6/+6
|
* Correct type for json_encoder argument (#438)Jon Dufresne2019-09-282-4/+4
| | | | | | | | | | | Per recent upstream fix to typeshed, json.dumps() cls argument should be optional type JSONEncoder. https://github.com/python/typeshed/commit/8e0d288ea49a34f9bd21b1598ec487414a339a1f Fixes mypy error: jwt/api_jws.py:102: error: Argument "cls" to "dumps" has incompatible type "Optional[Callable[..., Any]]"; expected "Optional[Type[JSONEncoder]]" jwt/api_jwt.py:61: error: Argument "cls" to "dumps" has incompatible type "Optional[Callable[..., Any]]"; expected "Optional[Type[JSONEncoder]]"
* Document (and prefer) `pyjwt[crypto]` req format (#426)Gunnlaugur Thor Briem2019-06-121-2/+7
|
* Run mypy with tox (#421)José Padilla2019-05-043-8/+12
|
* Invoke pytest directly. Avoids use of easy_install and interaction between ↵Jason R. Coombs2019-05-041-5/+3
| | | | flake8 and tests. Fixes #416. (#417)
* Fix linter error in test_cli (#414)Jason R. Coombs2019-05-041-1/+1
|
* Decode return type is dict[str, Any] (#393)Jacopo Farina2019-01-311-2/+3
| | | | | | * Use Dict instead of Mapping for return type of decode * Use str as a dictionary key
* Fix pytest and pinned test dependencies1.7.1José Padilla2018-12-066-7/+16
|