This repository has been archived by the owner on Nov 5, 2019. It is now read-only.
Releases: googleapis/oauth2client
Releases · googleapis/oauth2client
v2.0.0 Post Release Fix
- Fix Google Compute Engine breakage (#411, breakage introduced in #387) that
made it impossible to obtain access tokens - Implement
ServiceAccountCredentials.from_p12_keyfile_buffer()
to allow passing a file-like object in addition to the factory
constructor that uses a filename directly (#413) - Implement
ServiceAccountCredentials.create_delegated()
to allow upgrading a credential to one that acts on behalf
of a given subject (#420)
v2.0.0
- Add
django_util
(#332) - Avoid OAuth2Credentials
id_token
going out of sync after a token refresh (#337) - Move to a
contrib
sub-package code not considered a core part of the library (#346, #353, #370, #375, #376, #382) - Add
token_expiry
todevshell
credentials (#372) - Move
Storage
locking into a base class (#379) - Added dictionary storage (#380)
- Added
to_json
andfrom_json
methods to allCredentials
classes (#385) - Fall back to read-only credentials on EACCES errors (#389)
- Coalesced the two
ServiceAccountCredentials
classes (#395, #396, #397, #398, #400)
Special Note About ServiceAccountCredentials
:
For JSON keys, you can create a credential via
from oauth2client.service_account import ServiceAccountCredentials
credentials = ServiceAccountCredentials.from_json_keyfile_name(
key_file_name, scopes=[...])
You can still rely on
from oauth2client.client import GoogleCredentials
credentials = GoogleCredentials.get_application_default()
returning these credentials when you set the GOOGLE_APPLICATION_CREDENTIALS
environment variable.
For .p12
keys, construct via
credentials = ServiceAccountCredentials.from_p12_keyfil(
service_account_email, key_file_name, scopes=[...])
though we urge you to use JSON keys (rather than .p12
keys) if you can. This is equivalent to the previous method
# PRE-oauth2client 2.0.0 EXAMPLE CODE!
from oauth2client.client import SignedJwtAssertionCredentials
with open(key_file_name, 'rb') as key_file:
private_key = key_file.read()
credentials = SignedJwtAssertionCredentials(
service_account_email, private_key, scope=[...])
v1.5.2
v1.5.1
v1.5.0
- Fix (more like clarify)
bytes
/str
handling in crypto
methods. (#203, #250, #272) - Replacing
webapp
withwebapp2
inoauth2client.appengine
(#217) - Added optional
state
parameter to
step1_get_authorize_url
. (#219 and #222) - Added
flask_util
module that provides a Flask extension to aid
with using OAuth2 web server flow. This provides the same functionality
as theappengine.webapp2
OAuth2Decorator, but will work with any Flask
application regardless of hosting environment. (#226, #273) - Track scopes used on credentials objects (#230)
- Moving docs to [readthedocs.org][1](#237, #238, #244)
- Removing
old_run
module. Was deprecated July 2, 2013. (#285) - Avoid proxies when querying for GCE metadata (to check if
running on GCE) (#114, #293)
v1.4.12
- Fix OS X flaky test failure (#189).
- Fix broken OpenSSL import (#191).
- Remove
@util.positional
from wrapped request inCredentials.authorize()
(#196, #197). - Changing pinned dependencies to
>=
(#200, #204). - Support client authentication using
Authorization
header (#206). - Clarify environment check in case where GAE imports succeed but GAE services
aren't available (#208).
See https://github.com/google/oauth2client/blob/master/CHANGELOG.md