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

Allow get bodies in 3.0.2. #1

Open
wants to merge 209 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
209 commits
Select commit Hold shift + click to select a range
17593fd
remove check on empty scopes
akira-dev Apr 26, 2017
8130cdc
Merge branch 'master' into master
JonathanHuot Mar 29, 2018
dd120a5
Merge branch 'master' into master
JonathanHuot May 25, 2018
048befd
Merge branch 'master' into master
JonathanHuot Jun 26, 2018
a4f39fc
`invalid_grant` status code should be 400
freeduerinckx Jul 4, 2018
f991b57
Added flask-dance tests, see #553
JonathanHuot Jul 17, 2018
fbacd77
Added htmlcov to help increase coverage locally
JonathanHuot Jul 30, 2018
3b6be54
Call get_default_redirect_uri if no redirect_uri in token req
JonathanHuot Jul 30, 2018
7996201
confirm_r. is called after auth_client
JonathanHuot Jul 30, 2018
0c4ce54
Removed silent output, since tests are not writing output
JonathanHuot Jul 30, 2018
a20120e
Merge branch 'master' into 445_confirm_redirect
JonathanHuot Jul 30, 2018
3a769e2
Add syntax check of get_default_redirect_uri
JonathanHuot Jul 30, 2018
38467a8
Implicit was not converting expires_in into integers
JonathanHuot Aug 6, 2018
d9b3f24
Added access_token as JWT examples, and updated JWT grant section
JonathanHuot Aug 10, 2018
9abadd7
Added emacs ignore list
JonathanHuot Mar 20, 2018
a03cb73
Added README.rst/setup.py check for pypi
JonathanHuot Mar 20, 2018
19ebeae
Added credits to Idan & team.
JonathanHuot Mar 20, 2018
7b2de40
Fixed typo
JonathanHuot Mar 19, 2018
e18a4cf
Removed last occurences of G+ with Gitter
JonathanHuot Mar 19, 2018
ed1a024
Mention our "extra" flags somewhere.
JonathanHuot Mar 19, 2018
28d95db
Added upstream test as best practice
JonathanHuot Mar 19, 2018
6f4fbe6
Updated python versions
JonathanHuot Mar 19, 2018
e53203a
Fixed bad copy/paste
JonathanHuot Mar 19, 2018
3710299
Merge pull request #572 from oauthlib/clean-doc
JonathanHuot Aug 10, 2018
f0958f0
Merge branch 'master' into docs-jwt
JonathanHuot Aug 10, 2018
d5d843d
$ and ' are allowed to be unencoded in query strings (#564)
cutz Aug 12, 2018
daea090
Merge branch 'master' into master
skion Aug 12, 2018
37dad83
Merge branch 'master' into invalid-grant-should-respond-with-400
JonathanHuot Aug 12, 2018
7c38b81
Merge branch 'master' into 569_expires_in_implicit
JonathanHuot Aug 12, 2018
05b1185
Merge pull request #570 from oauthlib/569_expires_in_implicit
JonathanHuot Aug 12, 2018
a8df0a2
Merge branch 'master' into get_default_redir
JonathanHuot Aug 12, 2018
52bd38d
Merge pull request #567 from oauthlib/get_default_redir
JonathanHuot Aug 12, 2018
329c619
Merge branch 'master' into master
JonathanHuot Aug 12, 2018
21040fb
Merge branch 'master' into docs-jwt
JonathanHuot Aug 12, 2018
21e4637
Merge pull request #571 from oauthlib/docs-jwt
JonathanHuot Aug 12, 2018
1711cdb
Add NCoC and Code of merit
JonathanHuot Aug 12, 2018
b89db17
Merge branch 'master' into community_rules
JonathanHuot Aug 12, 2018
f93dca0
Merge branch 'master' into invalid-grant-should-respond-with-400
JonathanHuot Aug 12, 2018
3faf434
Restore confirm = False test
JonathanHuot Aug 14, 2018
058746b
Add test when no redirecturi & no default
JonathanHuot Aug 14, 2018
d6a1281
Merge branch 'master' into 445_confirm_redirect
JonathanHuot Aug 14, 2018
97debbc
client_id is not passed to save_bearer_token
JonathanHuot Aug 15, 2018
ff40476
Replaced NCoC with Django CoC
JonathanHuot Aug 16, 2018
4df5872
Merge pull request #574 from oauthlib/234-fixdoc
JonathanHuot Aug 17, 2018
f319f41
Merge branch 'master' into community_rules
JonathanHuot Aug 17, 2018
6b00071
Change sentences for better SEO
JonathanHuot Aug 17, 2018
ef0a2dd
Merge pull request #573 from oauthlib/community_rules
JonathanHuot Aug 17, 2018
4516651
Merge branch 'master' into 348_SEO
JonathanHuot Aug 17, 2018
39dad84
Remove headers from request attributes
JonathanHuot Aug 17, 2018
698f59e
Initial issue templates
JonathanHuot Aug 19, 2018
0ac839f
Merge branch 'master' into 445_confirm_redirect
JonathanHuot Aug 19, 2018
ce3639e
Merge pull request #575 from oauthlib/348_SEO
JonathanHuot Aug 20, 2018
85e65fe
Merge branch 'master' into 409_headers_not_params
JonathanHuot Aug 20, 2018
8cb3d72
Merge pull request #576 from oauthlib/409_headers_not_params
JonathanHuot Aug 20, 2018
153b726
Merge branch 'master' into 445_confirm_redirect
JonathanHuot Aug 20, 2018
63760cd
Merge pull request #566 from oauthlib/445_confirm_redirect
JonathanHuot Aug 20, 2018
f3d3eb9
Added license check badge. (#581)
thedrow Aug 29, 2018
a839bc2
Mention `oauth_body_hash` in OAuth1 client docs
ngoue Aug 30, 2018
997e8d0
Make scope optional for authorization code grant.
luhn Sep 2, 2018
f7df56a
Fix test_error_catching.
luhn Sep 2, 2018
fd5c979
Write a test for authorization grant w/ no scope.
luhn Sep 4, 2018
92b686f
Merge pull request #584 from luhn/authcode-scope-optional
JonathanHuot Sep 7, 2018
439e2fe
Merge branch 'master' into master
JonathanHuot Sep 7, 2018
36e7f50
Merge pull request #475 from akira-dev/master
JonathanHuot Sep 7, 2018
e81ae77
Add support of custom errors coming from providers
JonathanHuot Aug 1, 2018
346bf28
Fixed py27/pypy support
JonathanHuot Aug 2, 2018
5a9d8d9
redid the docstring fixes
jvanasco Sep 10, 2018
b02809d
Try to improve multibuild coverage
JonathanHuot Sep 11, 2018
3321444
Merge pull request #589 from oauthlib/582-coveralls
JonathanHuot Sep 11, 2018
7fd6fd6
Merge branch 'master' into fix-inline_docs_2
JonathanHuot Sep 11, 2018
a381697
Merge branch 'master' into 431-customexception
JonathanHuot Sep 11, 2018
0e963d8
cleanup on docs fixes
jvanasco Sep 11, 2018
49e555b
Merge branch 'fix-inline_docs_2' of github.com:jvanasco/oauthlib into…
jvanasco Sep 11, 2018
7b843b1
fixed spacing
jvanasco Sep 11, 2018
867802b
idea for documentation in contributing.rst
jvanasco Sep 11, 2018
73b952f
Merge pull request #588 from jvanasco/fix-inline_docs_2
JonathanHuot Sep 11, 2018
1b4fa60
Remove workarounds for unsupported Python 2.6
jdufresne Sep 12, 2018
d6dfe4a
* addresing ticket #585
jvanasco Sep 13, 2018
e4658e0
updated tests to pass on 2.x and 3.x
jvanasco Sep 13, 2018
a49c773
Merge pull request #590 from jdufresne/unittest2
lepture Sep 14, 2018
aef9a3e
Prefer assertIsInstance(...) over assertTrue(isinstance(...))
jdufresne Sep 14, 2018
8aa8956
Remove unnecessary workaround for bytes type
jdufresne Sep 14, 2018
03bbcca
Merge pull request #594 from jdufresne/isinstance
JonathanHuot Sep 14, 2018
3787076
Merge branch 'master' into bytes
JonathanHuot Sep 14, 2018
c8a7cb1
Merge pull request #595 from jdufresne/bytes
JonathanHuot Sep 14, 2018
a0f38f7
Correct recent merge (#596)
jdufresne Sep 14, 2018
c8fcbf8
standardized some test values
jvanasco Sep 14, 2018
037453c
Remove unmaintained nose dependency from tests
jdufresne Sep 14, 2018
e0494a9
Merge pull request #599 from jdufresne/no-nose
lepture Sep 15, 2018
50eccb8
Remove last remaining G+ reference. (#598)
skion Sep 15, 2018
827ab51
Merge branch 'master' into 431-customexception
JonathanHuot Sep 15, 2018
5fbcda2
Merge pull request #587 from oauthlib/431-customexception
JonathanHuot Sep 15, 2018
c490322
Correct capitalization of PyPI
jdufresne Sep 16, 2018
7ed3c53
Merge pull request #600 from jdufresne/cap-pypi
JonathanHuot Sep 17, 2018
e7bd936
* added support for empty strings of `client_secret`
jvanasco Sep 17, 2018
f00935f
Merge branch 'master' into fix-585_client_id
JonathanHuot Sep 17, 2018
b4ceb8a
migrated `include_client_id` to `prepare_request_token`
jvanasco Sep 17, 2018
cca36aa
Merge branch 'fix-585_client_id' of github.com:jvanasco/oauthlib into…
jvanasco Sep 17, 2018
27c58af
Merge branch 'master' into invalid-grant-should-respond-with-400
thedrow Sep 20, 2018
5873be5
fixup! `invalid_grant` status code should be 400
freeduerinckx Sep 20, 2018
7fb3bd4
Merge pull request #561 from freeduerinckx/invalid-grant-should-respo…
JonathanHuot Sep 20, 2018
a77fb1f
* changed "function definition" to "function signature" in two docstr…
jvanasco Sep 20, 2018
326456c
Fix OIDC tests (#565)
skion Sep 20, 2018
127a3b5
Merge branch 'master' into fix-585_client_id
JonathanHuot Sep 21, 2018
fabcf86
Merge pull request #593 from jvanasco/fix-585_client_id
JonathanHuot Sep 21, 2018
320a209
Tidy up templates a bit.
skion Sep 23, 2018
6644551
Merge branch 'master' into 541_issue_template
skion Sep 23, 2018
abfa99f
Merge pull request #577 from oauthlib/541_issue_template
JonathanHuot Sep 24, 2018
b618e0e
Merge branch 'master' into master
JonathanHuot Oct 4, 2018
acad826
Merge pull request #583 from ngoue/master
JonathanHuot Oct 4, 2018
59a0cb7
Bump version to prepare 3.0.0
JonathanHuot Oct 5, 2018
49091c9
Initial OAuth Authorization Server Metadata RFC8414
JonathanHuot Oct 25, 2018
15e4f63
Wrong Client is also a FatalClientError (#608)
JonathanHuot Nov 1, 2018
7961c43
Merge branch 'master' into oauth-metadata
thedrow Nov 1, 2018
93b47c7
Import OIDC main classes identically than OAuth2
JonathanHuot Nov 20, 2018
2a2e48a
Replaced distinct classes by a more unified one.
JonathanHuot Nov 20, 2018
10acc01
Fix unit tests for new Dispatch attributes names
JonathanHuot Nov 20, 2018
e77023c
Allow custom provider to override oauthlib values
JonathanHuot Nov 21, 2018
fb23d86
Add OIDC and id_token as JWT example
JonathanHuot Nov 23, 2018
cb6db1c
Merge pull request #605 from oauthlib/oauth-metadata
JonathanHuot Nov 23, 2018
50dfc47
Merge branch 'master' into 613-oidc-dispatcher
JonathanHuot Nov 23, 2018
655960c
Merge pull request #614 from oauthlib/613-oidc-dispatcher
JonathanHuot Nov 26, 2018
86439d9
Merge branch 'master' into oidc-doc
JonathanHuot Nov 29, 2018
719a5f3
Merge pull request #616 from oauthlib/oidc-doc
JonathanHuot Nov 29, 2018
01b3c4c
Initial OAuth2.0/PKCE Provider support
JonathanHuot Nov 29, 2018
cf3cf40
Add OAuth2 Provider Server Metadata for PKCE.
JonathanHuot Nov 30, 2018
6bd865b
Add Server metadata test and fix metadata.
JonathanHuot Nov 30, 2018
d7891e7
Sort dict and list in dict values for py27/36 compat
JonathanHuot Nov 30, 2018
ea849f6
`invalid_scope` status code should be 400
Dec 3, 2018
6ed5980
Support for Python 3.7.
skion Dec 3, 2018
399ea07
Add PyCharm ignore.
skion Dec 3, 2018
ada6ef4
Fix PyPy build in Xenial.
skion Dec 3, 2018
64b308e
Merge pull request #620 from bpereto/invalid-scope-should-respond-wit…
JonathanHuot Dec 4, 2018
6b09a31
Merge branch 'master' into python-3.7
JonathanHuot Dec 4, 2018
51c927b
Merge pull request #621 from oauthlib/python-3.7
JonathanHuot Dec 4, 2018
ffa87c7
Handle 401 with WWW-Authenticate. Moved wrong 401 into 400.
JonathanHuot Dec 4, 2018
a4dd9cb
Merge branch 'master' into 601-pkce-support
JonathanHuot Dec 11, 2018
7601696
Merge pull request #624 from oauthlib/preconf-server-metadata
JonathanHuot Dec 11, 2018
14c9702
change: grant_type as attribute
mlboy Dec 12, 2018
84389ac
change: grant_type as attribute
mlboy Dec 12, 2018
4f2c7ad
change: grant_type as attribute
mlboy Dec 12, 2018
d8d5fe1
change: grant_type as attribute
mlboy Dec 12, 2018
cb9126f
change: response_type as attribute
mlboy Dec 12, 2018
9130131
Merge pull request #625 from mlboy/master
JonathanHuot Dec 12, 2018
5f629b5
Used WWW-Authenticate and auth-param values as RFC6750 described it.
JonathanHuot Dec 12, 2018
a9ec83a
Add double-quotes to the key/values in WWW-Authenticate
JonathanHuot Dec 12, 2018
6145858
Add Content-Type and Cache headers to introspect/revocation errors
JonathanHuot Dec 13, 2018
c0e9f78
Merge branch 'master' into 264-status401
JonathanHuot Dec 13, 2018
d064003
challenge can have a length of 128 when using maximum size of verifie…
JonathanHuot Dec 13, 2018
5d9a9c9
Merge pull request #623 from oauthlib/264-status401
JonathanHuot Dec 13, 2018
1a7be4e
Replace temporary list by using clearer "extend" method
JonathanHuot Dec 13, 2018
6dcde73
Add details on grant_type & implicit special case.
JonathanHuot Dec 13, 2018
7a0b1e9
Add OAuth2.0 Authorization Server Metadata documentation
JonathanHuot Dec 13, 2018
e694864
Merge branch 'master' into 601-pkce-support
JonathanHuot Dec 13, 2018
bc53c61
Add metadata documentation with quick example
JonathanHuot Dec 13, 2018
ac23d09
Fixed typo
JonathanHuot Dec 13, 2018
8aca902
Update comments regarding OAuth Request Body Hash. (#628)
thedrow Dec 13, 2018
7bd82f5
Fix issue when using Metadata Endpoint with OIDC PreConfigured server.
JonathanHuot Dec 14, 2018
a068c0b
Merge remote-tracking branch 'upstream/master' into 601-pkce-support
JonathanHuot Dec 14, 2018
7be2769
Fix issue when using Metadata Endpoint with OIDC PreConfigured server.
JonathanHuot Dec 14, 2018
f6b6d14
Fixed OAuth2 Metadata when using PKCE and OIDC.Server
JonathanHuot Dec 14, 2018
4bd39a7
Use pytest as test framework
florentcpt Dec 16, 2018
a73dcbd
Merge pull request #630 from oauthlib/fix-metadata-openid-server
JonathanHuot Dec 16, 2018
1c55f05
Merge branch 'master' into 601-pkce-support
JonathanHuot Dec 16, 2018
8de1e52
Merge pull request #617 from oauthlib/601-pkce-support
JonathanHuot Dec 16, 2018
2d9410d
Merge branch 'master' into add-metadata-doc
JonathanHuot Dec 16, 2018
9faf472
Extract default grant headers to helper method.
thedrow Dec 17, 2018
baeb737
Extract redirect handling to a common method.
thedrow Dec 17, 2018
0691228
Raise error on missing token.
thedrow Dec 17, 2018
cfd6af0
Extract raising error on client auth failure.
thedrow Dec 17, 2018
79c667e
Extract raising on unsupported token.
thedrow Dec 17, 2018
e9c6f01
Added bandit to CI to avoid security issues (#627)
thedrow Dec 17, 2018
31461a0
Merge branch 'master' into 631-use-pytest
JonathanHuot Dec 17, 2018
c99b9c3
Merge branch 'master' into dry-up-code
thedrow Dec 17, 2018
c5de837
Fix typo.
thedrow Dec 17, 2018
5d76d02
Merge pull request #632 from florentcpt/631-use-pytest
JonathanHuot Dec 20, 2018
347e4aa
Merge branch 'master' into dry-up-code
JonathanHuot Dec 20, 2018
c9a997e
Merge branch 'master' into add-metadata-doc
thedrow Dec 20, 2018
cbb1379
Merge pull request #629 from oauthlib/add-metadata-doc
JonathanHuot Dec 20, 2018
3893b17
Merge branch 'master' into dry-up-code
JonathanHuot Dec 20, 2018
650f5db
Merge pull request #634 from oauthlib/dry-up-code
JonathanHuot Dec 20, 2018
cecb278
Remove unused 'requires' variable form setup.py
jdufresne Dec 26, 2018
47c5e19
Merge pull request #635 from jdufresne/requires
JonathanHuot Dec 26, 2018
d8fe024
Remove unused 'tests_require' from setup.py (#638)
jdufresne Dec 26, 2018
729fb9f
Pass python_requires argument to setuptools (#636)
jdufresne Dec 27, 2018
b79b551
Fix invalid escape sequence in tests (#637)
jdufresne Dec 27, 2018
d4f4884
Add OAuth2 Provider oauthlib-flow
JonathanHuot Dec 28, 2018
45135a2
Update Changelog to 3.0.0
JonathanHuot Dec 28, 2018
f4273e7
Bump to 2019
JonathanHuot Dec 28, 2018
213a47c
Replace latest occurences of Gazit w/ new community
JonathanHuot Dec 28, 2018
fa0b154
Add Breaking Changes section & split Bugfixes
JonathanHuot Jan 7, 2019
9dfa40c
Merge pull request #639 from oauthlib/3-release
JonathanHuot Jan 7, 2019
20d116c
Fixed graphviz/dot graph & improved clarity (#642)
JonathanHuot Jan 8, 2019
7586b0b
Fix 644, Add tests for BasicAuth credentials for all endpoints (#645)
JonathanHuot Jan 11, 2019
575638c
Bump to 3.0.1
JonathanHuot Jan 24, 2019
cb6af4b
Fix 652: removed "state" from /token response.
JonathanHuot Feb 20, 2019
66d7c00
Add clarity to the deprecation warning
JonathanHuot Feb 21, 2019
c17a4a2
Add authorization "state" preservation back for AuthCode
JonathanHuot Feb 21, 2019
87972cc
Removed useless set_state internal function
JonathanHuot Feb 21, 2019
ff68445
Change to 3.0.2-dev as long as master is in "dev"
JonathanHuot Feb 25, 2019
0d423ac
OIDC: Raise error=invalid_request when nonce is mandatory
JonathanHuot Feb 25, 2019
ad7b154
Add nonce auth request check for authorization_code
JonathanHuot Feb 25, 2019
2d9a89c
Add nonce mandatory check for "id_token" response_type
JonathanHuot Feb 25, 2019
3ccaeb1
Move HybridGrant test into its respective file.
JonathanHuot Feb 25, 2019
1ef4209
Added missing import after test moved
JonathanHuot Feb 25, 2019
4e945e9
Notifications must be sent for every build
JonathanHuot Feb 25, 2019
5b2bfd5
Update for 3.0.2
JonathanHuot Jul 4, 2019
9e824cf
Bump version
JonathanHuot Jul 4, 2019
06ab210
Do not raise ValueError any longer if a GET request has urlencoded bo…
bryanhelmig Mar 5, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 24 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
name: Bug report
about: Create a report to help us improve
---
**Describe the bug**

A clear and concise description of what the problem is.

**How to reproduce**

Steps to reproduce the behavior.

**Expected behavior**

A description of what you expected to happen.

**Additional context**

Please provide any further context here.

- Are you using OAuth1, OAuth2 or OIDC?
- Are you writing client or server side code?
- If client, what provider are you connecting to?
- Are you using a downstream library, such as `requests-oauthlib`, `django-oauth-toolkit`, ...?
14 changes: 14 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
name: Feature request
about: Suggest an idea for this project
---
**Describe the feature**

A clear and concise description of what you would like to see.

**Additional context**

Please provide any further context here.

- Does the feature apply to OAuth1, OAuth2 and/or OIDC?
- Does the feature apply to client or server side code?
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
*.pyc
.idea
*.sublime-project
*.sublime-workspace
*.swp
Expand All @@ -22,16 +23,20 @@ develop-eggs
pip-log.txt

# Unit test / coverage reports
.cache
.coverage
.tox
coverage
htmlcov*

#Translations
*.mo

# Local file cruft/auto-backups
.DS_Store
*~
**/#*#
**/.#*

# Sphinx
docs/_build
Expand Down
15 changes: 11 additions & 4 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
language: python
python: 3.7
dist: xenial
sudo: false
cache: pip
matrix:
Expand All @@ -11,18 +13,23 @@ matrix:
env: TOXENV=py35
- python: 3.6
env: TOXENV=py36
- python: pypy-5.3
env: TOXENV=pypy
- python: 3.7
env: TOXENV=py37
- python: 3.7
env: TOXENV=bandit
- python: pypy3.5
env: TOXENV=pypy3
install:
- pip install -U setuptools
- pip install tox coveralls
script: tox
after_success: coveralls
after_success: COVERALLS_PARALLEL=true coveralls
notifications:
webhooks:
urls:
- https://coveralls.io/webhook
- https://webhooks.gitter.im/e/6008c872bf0ecee344f4
on_success: change
on_success: always
on_failure: always
on_start: never
deploy:
Expand Down
62 changes: 62 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,68 @@
Changelog
=========

3.0.2 (2019-07-04)
------------------
* #650: Fixed space encoding in base string URI used in the signature base string.
* #652: Fixed OIDC /token response which wrongly returned "&state=None"
* #654: Doc: The value `state` must not be stored by the AS, only returned in /authorize response.
* #656: Fixed OIDC "nonce" checks: raise errors when it's mandatory

3.0.1 (2019-01-24)
------------------
* Fixed OAuth2.0 regression introduced in 3.0.0: Revocation with Basic auth no longer possible #644

3.0.0 (2019-01-01)
------------------
OAuth2.0 Provider - outstanding Features

* OpenID Connect Core support
* RFC7662 Introspect support
* RFC8414 OAuth2.0 Authorization Server Metadata support (#605)
* RFC7636 PKCE support (#617 #624)

OAuth2.0 Provider - API/Breaking Changes

* Add "request" to confirm_redirect_uri #504
* confirm_redirect_uri/get_default_redirect_uri has a bit changed #445
* invalid_client is now a FatalError #606
* Changed errors status code from 401 to 400:
- invalid_grant: #264
- invalid_scope: #620
- access_denied/unauthorized_client/consent_required/login_required #623
- 401 must have WWW-Authenticate HTTP Header set. #623

OAuth2.0 Provider - Bugfixes

* empty scopes no longer raise exceptions for implicit and authorization_code #475 / #406

OAuth2.0 Client - Bugfixes / Changes:

* expires_in in Implicit flow is now an integer #569
* expires is no longer overriding expires_in #506
* parse_request_uri_response is now required #499
* Unknown error=xxx raised by OAuth2 providers was not understood #431
* OAuth2's `prepare_token_request` supports sending an empty string for `client_id` (#585)
* OAuth2's `WebApplicationClient.prepare_request_body` was refactored to better
support sending or omitting the `client_id` via a new `include_client_id` kwarg.
By default this is included. The method will also emit a DeprecationWarning if
a `client_id` parameter is submitted; the already configured `self.client_id`
is the preferred option. (#585)

OAuth1.0 Client:

* Support for HMAC-SHA256 #498

General fixes:

* $ and ' are allowed to be unencoded in query strings #564
* Request attributes are no longer overriden by HTTP Headers #409
* Removed unnecessary code for handling python2.6
* Add support of python3.7 #621
* Several minors updates to setup.py and tox
* Set pytest as the default unittest framework


2.1.0 (2018-05-21)
------------------

Expand Down
28 changes: 28 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# OAuthlib Code of Conduct

Like the technical community as a whole, the OAuthlib team and community is made up of a mixture of professionals and volunteers from all over the world, working on every aspect of the mission - including mentorship, teaching, and connecting people.

Diversity is one of our huge strengths, but it can also lead to communication issues and unhappiness. To that end, we have a few ground rules that we ask people to adhere to. This code applies equally to founders, mentors and those seeking help and guidance.

This isn't an exhaustive list of things that you can't do. Rather, take it in the spirit in which it's intended - a guide to make it easier to enrich all of us and the technical communities in which we participate.

This code of conduct applies to all spaces managed by the OAuthlib project. This includes Gitter, the mailing lists, the issue tracker, and any other forums created by the project team which the community uses for communication. In addition, violations of this code outside these spaces may affect a person's ability to participate within them.

If you believe someone is violating the code of conduct, we ask that you report it by contacting us.

Be friendly and patient.
Be welcoming. We strive to be a community that welcomes and supports people of all backgrounds and identities. This includes, but is not limited to members of any race, ethnicity, culture, national origin, colour, immigration status, social and economic class, educational level, sex, sexual orientation, gender identity and expression, age, size, family status, political belief, religion, and mental and physical ability.
Be considerate. Your work will be used by other people, and you in turn will depend on the work of others. Any decision you take will affect users and colleagues, and you should take those consequences into account when making decisions. Remember that we're a world-wide community, so you might not be communicating in someone else's primary language.
Be respectful. Not all of us will agree all the time, but disagreement is no excuse for poor behavior and poor manners. We might all experience some frustration now and then, but we cannot allow that frustration to turn into a personal attack. It's important to remember that a community where people feel uncomfortable or threatened is not a productive one. Members of the OAuthlib community should be respectful when dealing with other members as well as with people outside the OAuthlib community.
Be careful in the words that you choose. We are a community of professionals, and we conduct ourselves professionally. Be kind to others. Do not insult or put down other participants. Harassment and other exclusionary behavior aren't acceptable. This includes, but is not limited to:
Violent threats or language directed against another person.
Discriminatory jokes and language.
Posting sexually explicit or violent material.
Posting (or threatening to post) other people's personally identifying information ("doxing").
Personal insults, especially those using racist or sexist terms.
Unwelcome sexual attention.
Advocating for, or encouraging, any of the above behavior.
Repeated harassment of others. In general, if someone asks you to stop, then stop.
When we disagree, try to understand why. Disagreements, both social and technical, happen all the time and OAuthlib is no exception. It is important that we resolve disagreements and differing views constructively. Remember that we're different. The strength of OAuthlib comes from its varied community, people from a wide range of backgrounds. Different people have different perspectives on issues. Being unable to understand why someone holds a viewpoint doesn't mean that they're wrong. Don't forget that it is human to err and blaming each other doesn't get us anywhere. Instead, focus on helping to resolve issues and learning from mistakes.

For reading the original text, please visit the [Django Code of Conduct](https://www.djangoproject.com/conduct/).
4 changes: 2 additions & 2 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Copyright (c) 2011 Idan Gazit and contributors
Copyright (c) 2019 The OAuthlib Community
All rights reserved.

Redistribution and use in source and binary forms, with or without
Expand All @@ -24,4 +24,4 @@ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
12 changes: 10 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ clean: clean-eggs clean-build
@find . -iname '__pycache__' -delete
rm -rf .tox
rm -rf bottle-oauthlib
rm -rf dance
rm -rf django-oauth-toolkit
rm -rf flask-oauthlib
rm -rf requests-oauthlib
Expand Down Expand Up @@ -65,6 +66,13 @@ requests:
cd requests-oauthlib 2>/dev/null || git clone https://github.com/requests/requests-oauthlib.git
cd requests-oauthlib && sed -i.old 's,deps=,deps = --editable=file://{toxinidir}/../[signedtoken],' tox.ini && sed -i.old '/oauthlib/d' requirements.txt && tox

dance:
#---------------------------
# Library singingwolfboy/flask-dance
# Contacts: singingwolfboy
cd flask-dance 2>/dev/null || git clone https://github.com/singingwolfboy/flask-dance.git
cd flask-dance && sed -i.old 's,deps=,deps = --editable=file://{toxinidir}/../,' tox.ini && sed -i.old '/oauthlib/d' requirements.txt && tox

.DEFAULT_GOAL := all
.PHONY: clean test bottle django flask requests
all: clean test bottle django flask requests
.PHONY: clean test bottle dance django flask requests
all: clean test bottle dance django flask requests
25 changes: 20 additions & 5 deletions README.rst
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
OAuthLib
========
OAuthLib - Python Framework for OAuth1 & OAuth2
===============================================

*A generic, spec-compliant, thorough implementation of the OAuth request-signing
logic for Python 2.7 and 3.4+.*
Expand All @@ -12,10 +12,13 @@ logic for Python 2.7 and 3.4+.*
:alt: Coveralls
.. image:: https://img.shields.io/pypi/pyversions/oauthlib.svg
:target: https://pypi.org/project/oauthlib/
:alt: Download from PyPi
:alt: Download from PyPI
.. image:: https://img.shields.io/pypi/l/oauthlib.svg
:target: https://pypi.org/project/oauthlib/
:alt: License
.. image:: https://app.fossa.io/api/projects/git%2Bgithub.com%2Foauthlib%2Foauthlib.svg?type=shield
:target: https://app.fossa.io/projects/git%2Bgithub.com%2Foauthlib%2Foauthlib?ref=badge_shield
:alt: FOSSA Status
.. image:: https://img.shields.io/readthedocs/oauthlib.svg
:target: https://oauthlib.readthedocs.io/en/latest/index.html
:alt: Read the Docs
Expand All @@ -34,7 +37,7 @@ both of the following:
.. _`OAuth 1.0 spec`: https://tools.ietf.org/html/rfc5849
.. _`OAuth 2.0 spec`: https://tools.ietf.org/html/rfc6749

OAuthLib is a generic utility which implements the logic of OAuth without
OAuthLib is a framework which implements the logic of OAuth1 or OAuth2 without
assuming a specific HTTP request object or web framework. Use it to graft OAuth
client support onto your favorite HTTP library, or provide support onto your
favourite web framework. If you're a maintainer of such a library, write a thin
Expand Down Expand Up @@ -104,10 +107,22 @@ License
OAuthLib is yours to use and abuse according to the terms of the BSD license.
Check the LICENSE file for full details.

Credits
-------

OAuthLib has been started and maintained several years by Idan Gazit and other
amazing `AUTHORS`_. Thanks to their wonderful work, the open-source `community`_
creation has been possible and the project can stay active and reactive to users
requests.


.. _`AUTHORS`: https://github.com/oauthlib/oauthlib/blob/master/AUTHORS
.. _`community`: https://github.com/oauthlib/

Changelog
---------

*OAuthLib is in active development, with the core of both OAuth 1 and 2
*OAuthLib is in active development, with the core of both OAuth1 and OAuth2
completed, for providers as well as clients.* See `supported features`_ for
details.

Expand Down
48 changes: 48 additions & 0 deletions bandit.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
{
"errors": [],
"generated_at": "2018-12-13T10:39:37Z",
"results": [
{
"code": "182 if request.body is not None and content_type_eligible:\n183 params.append(('oauth_body_hash', base64.b64encode(hashlib.sha1(request.body.encode('utf-8')).digest()).decode('utf-8')))\n184 \n",
"filename": "oauthlib/oauth1/rfc5849/__init__.py",
"issue_confidence": "HIGH",
"issue_severity": "MEDIUM",
"issue_text": "Use of insecure MD2, MD4, MD5, or SHA1 hash function.",
"line_number": 183,
"line_range": [
183
],
"more_info": "https://bandit.readthedocs.io/en/latest/blacklists/blacklist_calls.html#b303-md5",
"test_id": "B303",
"test_name": "blacklist"
},
{
"code": "45 def __init__(self, endpoints, claims={}, raise_errors=True):\n46 assert isinstance(claims, dict)\n47 for endpoint in endpoints:\n",
"filename": "oauthlib/oauth2/rfc6749/endpoints/metadata.py",
"issue_confidence": "HIGH",
"issue_severity": "LOW",
"issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
"line_number": 46,
"line_range": [
46
],
"more_info": "https://bandit.readthedocs.io/en/latest/plugins/b101_assert_used.html",
"test_id": "B101",
"test_name": "assert_used"
},
{
"code": "47 for endpoint in endpoints:\n48 assert isinstance(endpoint, BaseEndpoint)\n49 \n",
"filename": "oauthlib/oauth2/rfc6749/endpoints/metadata.py",
"issue_confidence": "HIGH",
"issue_severity": "LOW",
"issue_text": "Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.",
"line_number": 48,
"line_range": [
48
],
"more_info": "https://bandit.readthedocs.io/en/latest/plugins/b101_assert_used.html",
"test_id": "B101",
"test_name": "assert_used"
}
]
}
2 changes: 1 addition & 1 deletion docs/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
#

# You can set these variables from the command line.
SPHINXOPTS =
SPHINXOPTS = -v
SPHINXBUILD = sphinx-build
PAPER =
BUILDDIR = _build
Expand Down
Loading