Sourced from oauthlib's releases.
4.0.0
Introduction
The release 4.0.0 defines the foundation that enables AI contributions and will improve the maintenance of oauthlib by using AI agents, skills, code for both contributors and maintainers. It includes devcontainer, skills and cleanup of instructions.
What's Changed
Important: this release contains 2 breaking changes. See CHANGELOG.rst for details:
- Removed JSONP support from token revocation endpoint (#951)
- Client authentication validation reorganized across grants (#919, #920): the
grant_typeparameter is now validated before client authentication.
- Replace pyenv with uv in documentation and tooling by
@JonathanHuotin oauthlib/oauthlib#910- Improve github action to publish package by
@JonathanHuotin oauthlib/oauthlib#915- Add pre-commit to run linters, formatters, etc. on code changes by
@cclaussin oauthlib/oauthlib#918- Fix client authentication for DeviceCodeGrant when getting a token by
@hekhuiskin oauthlib/oauthlib#920- Add project URLs to this project's PyPI page by
@Flimmin oauthlib/oauthlib#921- Fix a typo in ServiceApplicationClient docstring. by
@rafalkrupinskiin oauthlib/oauthlib#923- Correct grammar in function help by
@verhovskyin oauthlib/oauthlib#924- Add Python 3.14 to the testing by
@cclaussin oauthlib/oauthlib#925- Initial python/uv/tox devcontainer by
@JonathanHuotin oauthlib/oauthlib#930- Fix ruff checks about unused variables by
@JonathanHuotin oauthlib/oauthlib#931- Drop EOL Python 3.8 from CI by
@auvipyin oauthlib/oauthlib#932- Set Open Collective username to 'oauthlib' by
@auvipyin oauthlib/oauthlib#933- pre-commit autoupdate 2026_02_21 by
@cclaussin oauthlib/oauthlib#934- Remove a trailing whitespace fo fix failing pre-commit by
@cclaussin oauthlib/oauthlib#935- Fix typos discovered by typos by
@cclaussin oauthlib/oauthlib#938- Add
resourceto Request._params by@juannyGin oauthlib/oauthlib#942- Release 3.4.0: Add OAuthLib Maintainer agent by
@JonathanHuotin oauthlib/oauthlib#950- Remove JSONP support from token revocation by
@JonathanHuotin oauthlib/oauthlib#951- Improve PKCE code comparison by
@JonathanHuotin oauthlib/oauthlib#963- Release 4.0.0: bump and update changelog by
@JonathanHuotin oauthlib/oauthlib#976New Contributors
@hekhuiskmade their first contribution in oauthlib/oauthlib#920@Flimmmade their first contribution in oauthlib/oauthlib#921@verhovskymade their first contribution in oauthlib/oauthlib#924@juannyGmade their first contribution in oauthlib/oauthlib#942Full Changelog: https://github.com/oauthlib/oauthlib/compare/v3.3.1...v4.0.0
Sourced from oauthlib's changelog.
4.0.0 (2026-09-28):
OAuth2.0 Provider:
- Breaking: #951: Removed JSONP support from token revocation endpoint. JSONP has been superseded by CORS for cross-origin requests. The
enable_jsonpparameter has been removed fromRevocationEndpointand thecallbackparameter has been removed fromprepare_token_revocation_request.- Breaking: #919, #920: Fixed
DeviceCodeGrant.validate_token_requesttrying to authenticate public clients. Client authentication validation has been reorganized and is now shared acrossAuthorizationCodeGrant,DeviceCodeGrant,RefreshTokenGrantandResourceOwnerPasswordCredentialsGrant: thegrant_typeparameter is validated before client authentication, so requests missinggrant_typenow return400 invalid_requestinstead of401 invalid_client.- #963: Improved PKCE code comparison
Misc:
- #904: Stop installing
examplesintosite-packages.- #930: Add devcontainer, Add Python3.14, Python3.14t.
- #931: Fix ruff checks about unused variables.
- #932: Dropped EOL Python 3.8 from CI.
- #934: Pre-commit hooks autoupdate.
- #938: Fix typos discovered by typos.
- Add OAuthLib Maintainer agent for automated issue/PR triage and release management.
145a9a4
Release 4.0.0: clarify changelog breaking changes and reformat
entriesc8344d6
Update CHANGELOG.rste172830
Release 4.0.0: bump version to 4.0.0 and update changelog40b0ab5
Merge pull request #963
from oauthlib/ft/pkcecode1b68cea
Merge pull request #920
from hekhuisk/validate-client-authenticationc951a1d
Organized validate_client functions for all grant to avoid mistake in
grnat i...74664d3
Improve PKCE code comparison9859b05
Merge pull request #950
from oauthlib/feature/3.4.0-maintainer-agent9bf9b97
Merge branch 'master' into feature/3.4.0-maintainer-agent1ba7429
Clarify agent instructions