Jon Wayne Parrott | 6436741 | 2018-01-18 09:38:27 -0800 | [diff] [blame] | 1 | v1.6.5 |
| 2 | Version 1.6.5 |
| 3 | |
| 4 | Bugfix release |
| 5 | |
| 6 | - Proactively refresh credentials when applying and treat a missing |
| 7 | `access_token` as invalid. Note: This change reveals surprising behavior |
| 8 | between default credentials and batches. If you allow |
| 9 | `googleapiclient.discovery.build` to use default credentials *and* specify |
| 10 | different credentials by providing `batch.execut()` with an explicit `http` |
| 11 | argument, your individual requests will use the default credentials and |
| 12 | *not* the credentials specified to the batch http. To avoid this, tell |
| 13 | `build` explicitly not to use default credentials by specifying |
| 14 | `build(..., http=httplib2.Http()`. (#469) |
| 15 | - Remove mutual exclusivity check for developerKey and credentials (#465) |
| 16 | - Handle unknown media length. (#406) |
| 17 | - Handle variant error format gracefully. (#459) |
| 18 | - Avoid testing against Django >= 2.0.0 on Python 2. (#460) |
| 19 | |
Jon Wayne Parrott | af67669 | 2017-09-20 08:53:28 -0700 | [diff] [blame] | 20 | v1.6.4 |
| 21 | Version 1.6.4 |
| 22 | |
| 23 | Bugfix release |
| 24 | |
| 25 | - Warn when google-auth credentials are used but google-auth-httplib2 isn't available. (#443) |
| 26 | |
Jon Wayne Parrott | b63a71d | 2017-08-29 09:15:16 -0700 | [diff] [blame] | 27 | v1.6.3 |
| 28 | Version 1.6.3 |
| 29 | |
| 30 | Bugfix release |
| 31 | |
| 32 | - Add notification of maintenance mode to README. (#410) |
| 33 | - Fix generation of methods with abnormal page token conventions. (#338) |
| 34 | - Raise ValueError is credentials and developerKey are both specified. (#358) |
| 35 | - Re-generate documentation. (#364, #373, #401) |
| 36 | - Fix method signature documentation for multiline required parameters. (#374) |
| 37 | - Fix ZeroDivisionError in MediaDownloadProgress.progress. (#377) |
| 38 | - Fix dead link to WebTest in README. (#378) |
| 39 | - Fix details missing in googleapiclient.errors.HttpError. (#412) |
| 40 | - Don't treat httplib2.Credentials as oauth credentials. (#425) |
| 41 | - Various fixes to the Django sample. (#413) |
| 42 | |
Jon Wayne Parrott | afe134b | 2017-02-08 10:20:57 -0800 | [diff] [blame] | 43 | v1.6.2 |
| 44 | Version 1.6.2 |
| 45 | |
| 46 | Bugfix release |
| 47 | |
| 48 | - Fixed a bug where application default credentials would still be used even |
| 49 | when a developerKey was specified. (#347) |
| 50 | - Official support for Python 3.5 and 3.6. (#341) |
| 51 | |
Jon Wayne Parrott | 811d570 | 2017-01-11 14:45:20 -0800 | [diff] [blame] | 52 | v1.6.1 |
| 53 | Version 1.6.1 |
| 54 | |
| 55 | Bugfix release |
| 56 | |
| 57 | - Fixed a bug where using google-auth with scoped credentials would fail. (#328) |
| 58 | |
Jon Wayne Parrott | 692617a | 2017-01-06 09:58:29 -0800 | [diff] [blame] | 59 | v1.6.0 |
| 60 | Version 1.6.0 |
| 61 | |
| 62 | Release to drop support for Python 2.6 and add support for google-auth. |
| 63 | |
| 64 | - Support for Python 2.6 has been dropped. (#319) |
| 65 | - The credentials argument to discovery.build and discovery.build_from_document |
| 66 | can be either oauth2client credentials or google-auth credentials. (#319) |
| 67 | - discovery.build and discovery.build_from_document now unambiguously use the |
| 68 | http argument to make all requests, including the request for the discovery |
| 69 | document. (#319) |
| 70 | - The http and credentials arguments to discovery.build and |
| 71 | discovery.build_from_document are now mutually exclusive, eliminating a |
| 72 | buggy edge case. (#319) |
| 73 | - If neither http or credentials is specified to discovery.build and |
| 74 | discovery.build_from_document, then Application Default Credentials will |
| 75 | be used. The library prefers google-auth for this if it is available, but |
| 76 | can also use oauth2client's implementation. (#319) |
| 77 | - Fixed resumable upload failure when receiving a 308 response. (#312) |
| 78 | - Clarified the support versions of Python 3. (#316) |
| 79 | |
Brian J. Watson | 0711b8b | 2016-10-31 17:55:50 -0700 | [diff] [blame] | 80 | v1.5.5 |
| 81 | Version 1.5.5 |
| 82 | |
| 83 | Bugfix release |
| 84 | |
| 85 | - Allow explicit MIME type specification with media_mime_type keyword argument. |
| 86 | - Fix unprintable representation of BatchError with default constructor. (#165) |
| 87 | - Refresh all discovery docs, not just the preferred ones. (#298) |
| 88 | - Update minimum httplib2 dependency to >=0.9.2. |
| 89 | |
Jon Wayne Parrott | e2ce004 | 2016-10-14 11:02:09 -0700 | [diff] [blame] | 90 | v1.5.4 |
| 91 | Version 1.5.4 |
| 92 | |
| 93 | Bugfix release |
| 94 | |
| 95 | - Properly handle errors when the API returns a mapping or sequence. (#289) |
| 96 | - Upgrade to unified uritemplate 3.0.0. (#293) |
| 97 | - Allow oauth2client 4.0.0, with the caveat that file-based discovery |
| 98 | caching is disabled. |
| 99 | |
Jon Wayne Parrott | c4dca35 | 2016-08-29 10:16:34 -0700 | [diff] [blame] | 100 | v1.5.3 |
| 101 | Version 1.5.3 |
| 102 | |
| 103 | Bugfix release |
| 104 | |
| 105 | - Fixed import error with oauth2client >= 3.0.0. (#270) |
| 106 | |
Jon Wayne Parrott | bf7066e | 2016-08-16 12:41:22 -0700 | [diff] [blame] | 107 | v1.5.2 |
| 108 | Version 1.5.2 |
| 109 | |
| 110 | Bugfix release |
| 111 | |
| 112 | - Allow using oauth2client >= 1.5.0, < 4.0.0. (#265) |
| 113 | - Fix project_id argument description. (#257) |
| 114 | - Retry chunk uploaded on rate limit exceeded errors. (#255) |
| 115 | - Obtain access token if necessary in BatchHttpRequest.execute(). (#232) |
| 116 | - Warn when running tests using HttpMock without having a cache. (#261) |
| 117 | |
Jon Wayne Parrott | 2aedb52 | 2016-05-19 11:03:33 -0700 | [diff] [blame] | 118 | v1.5.1 |
| 119 | Version 1.5.1 |
| 120 | |
| 121 | Bugfix release |
| 122 | |
| 123 | - Allow using versions of oauth2client < 2.0.0. (#197) |
| 124 | - Check both current and new API discovery URL. (#202) |
| 125 | - Retry http requests on connection errors and timeouts. (#218) |
| 126 | - Retry http requests on rate limit responses. (#201) |
| 127 | - Import guards for ssl (for Google App Engine). (#220) |
| 128 | - Use named loggers instead of the root logger. (#206) |
| 129 | - New search console example. (#212) |
| 130 | |
Jon Wayne Parrott | da3e689 | 2016-02-19 15:42:07 -0800 | [diff] [blame] | 131 | v1.5.0 |
| 132 | Version 1.5.0 |
| 133 | |
| 134 | Release to support oauth2client >= 2.0.0. |
| 135 | |
| 136 | - Fix file stream recognition in Python 3 (#141) |
| 137 | - Fix non-resumable binary uploads in Python 3 (#147) |
| 138 | - Default to 'octet-stream' if mimetype detection fails (#157) |
| 139 | - Handle SSL errors with retries (#160) |
| 140 | - Fix incompatibility with oauth2client v2.0.0 (#182) |
| 141 | |
Takashi Matsuo | 05f1932 | 2015-09-11 13:56:00 -0700 | [diff] [blame] | 142 | v1.4.2 |
| 143 | Version 1.4.2 |
| 144 | |
| 145 | Add automatic caching for the discovery docs. |
| 146 | |
Nathaniel Manista | dda86ad | 2015-06-15 17:24:11 +0000 | [diff] [blame] | 147 | v1.4.1 |
| 148 | Version 1.4.1 |
| 149 | |
| 150 | Add the googleapiclient.discovery.Resource.new_batch_http_request method. |
| 151 | |
Nathaniel Manista | 31c47b8 | 2015-03-10 23:31:35 +0000 | [diff] [blame] | 152 | v1.4.0 |
| 153 | Version 1.4.0 |
| 154 | |
| 155 | Python 3 support. |
| 156 | |
Craig Citro | 326cd51 | 2015-03-02 13:24:09 -0800 | [diff] [blame] | 157 | v1.3.2 |
| 158 | Version 1.3.2 |
| 159 | |
| 160 | Small bugfix release. |
Nathaniel Manista | 31c47b8 | 2015-03-10 23:31:35 +0000 | [diff] [blame] | 161 | |
Craig Citro | 326cd51 | 2015-03-02 13:24:09 -0800 | [diff] [blame] | 162 | - Fix an infinite loop for downloading small files. |
| 163 | - Fix a unicode error in error encoding. |
| 164 | - Better handling of `content-length` in media requests. |
| 165 | - Add support for methodPath entries containing colon. |
Nathaniel Manista | 31c47b8 | 2015-03-10 23:31:35 +0000 | [diff] [blame] | 166 | |
Craig Citro | 49d45a6 | 2014-10-17 20:33:51 -0700 | [diff] [blame] | 167 | v1.3.1 |
| 168 | Version 1.3.1 |
| 169 | |
| 170 | Quick release for a fix around aliasing in v1.3. |
Nathaniel Manista | 31c47b8 | 2015-03-10 23:31:35 +0000 | [diff] [blame] | 171 | |
Craig Citro | 0e5b9bf | 2014-10-15 10:26:14 -0700 | [diff] [blame] | 172 | v1.3 |
| 173 | Version 1.3 |
| 174 | |
| 175 | Add support for the Google Application Default Credentials. |
| 176 | Require python 2.6 as a minimum version. |
| 177 | Update several API samples. |
| 178 | Finish splitting out oauth2client repo and update tests. |
| 179 | Various doc cleanup and bugfixes. |
Craig Citro | f756c68 | 2014-10-15 23:01:31 -0700 | [diff] [blame] | 180 | |
| 181 | Two important notes: |
| 182 | * We've added `googleapiclient` as the primary suggested import |
| 183 | name, and kept `apiclient` as an alias, in order to have a more |
| 184 | appropriate import name. At some point, we will remove `apiclient` |
| 185 | as an alias. |
| 186 | * Due to an issue around in-place upgrades for Python packages, |
| 187 | it's not possible to do an upgrade from version 1.2 to 1.3. Instead, |
| 188 | setup.py attempts to detect this and prevents it. Simply remove |
| 189 | the previous version and reinstall to fix this. |
| 190 | |
Joe Gregorio | ce67bc2 | 2013-07-02 13:50:31 -0400 | [diff] [blame] | 191 | v1.2 |
| 192 | Version 1.2 |
| 193 | |
| 194 | The use of the gflags library is now deprecated, and is no longer a |
| 195 | dependency. If you are still using the oauth2client.tools.run() function |
| 196 | then include gflags as a dependency of your application or switch to |
| 197 | oauth2client.tools.run_flow. |
| 198 | Samples have been updated to use the new apiclient.sample_tools, and no |
| 199 | longer use gflags. |
| 200 | Added support for the experimental Object Change Notification, as found in |
| 201 | the Cloud Storage API. |
| 202 | The oauth2client App Engine decorators are now threadsafe. |
| 203 | |
| 204 | - Use the following redirects feature of httplib2 where it returns the |
| 205 | ultimate URL after a series of redirects to avoid multiple hops for every |
| 206 | resumable media upload request. |
| 207 | - Updated AdSense Management API samples to V1.3 |
| 208 | - Add option to automatically retry requests. |
| 209 | - Ability to list registered keys in multistore_file. |
| 210 | - User-agent must contain (gzip). |
| 211 | - The 'method' parameter for httplib2 is not positional. This would cause |
| 212 | spurious warnings in the logging. |
| 213 | - Making OAuth2Decorator more extensible. Fixes Issue 256. |
| 214 | - Update AdExchange Buyer API examples to version v1.2. |
| 215 | |
| 216 | |
Joe Gregorio | 3cc9a45 | 2013-03-07 10:08:39 -0500 | [diff] [blame] | 217 | v1.1 |
| 218 | Version 1.1 |
| 219 | |
| 220 | Add PEM support to SignedJWTAssertionCredentials (used to only support |
| 221 | PKCS12 formatted keys). Note that if you use PEM formatted keys you can use |
| 222 | PyCrypto 2.6 or later instead of OpenSSL. |
| 223 | |
| 224 | Allow deserialized discovery docs to be passed to build_from_document(). |
| 225 | |
| 226 | - Make ResumableUploadError derive from HttpError. |
| 227 | - Many changes to move all the closures in apiclient.discovery into real |
| 228 | - classes and objects. |
| 229 | - Make from_json behavior inheritable. |
| 230 | - Expose the full token response in OAuth2Client and OAuth2Decorator. |
| 231 | - Handle reasons that are None. |
| 232 | - Added support for NDB based storing of oauth2client objects. |
| 233 | - Update grant_type for AssertionCredentials. |
| 234 | - Adding a .revoke() to Credentials. Closes issue 98. |
| 235 | - Modify oauth2client.multistore_file to store and retrieve credentials |
| 236 | using an arbitrary key. |
| 237 | - Don't accept 403 challenges by default for auth challenges. |
| 238 | - Set httplib2.RETRIES to 1. |
| 239 | - Consolidate handling of scopes. |
| 240 | - Upgrade to httplib2 version 0.8. |
| 241 | - Allow setting the response_type in OAuth2WebServerFlow. |
| 242 | - Ensure that dataWrapper feature is checked before using the 'data' value. |
| 243 | - HMAC verification does not use a constant time algorithm. |
| 244 | |
Joe Gregorio | f4839b0 | 2012-09-06 13:47:24 -0400 | [diff] [blame] | 245 | v1.0 |
| 246 | Version 1.0 |
| 247 | |
| 248 | - Changes to the code for running tests and building releases. |
| 249 | |
Joe Gregorio | 73774c5 | 2012-08-29 09:45:53 -0400 | [diff] [blame] | 250 | v1.0c3 |
| 251 | Version 1.0 Release Candidate 3 |
| 252 | |
| 253 | - In samples and oauth2 decorator, escape untrusted content before displaying it. |
| 254 | - Do not allow credentials files to be symlinks. |
| 255 | - Add XSRF protection to oauth2decorator callback 'state'. |
| 256 | - Handle uploading chunked media by stream. |
| 257 | - Handle passing streams directly to httplib2. |
| 258 | - Add support for Google Compute Engine service accounts. |
| 259 | - Flows no longer need to be saved between uses. |
| 260 | - Change GET to POST if URI is too long. Fixes issue #96. |
| 261 | - Add a keyring based Storage. |
| 262 | - More robust picking up JSON error responses. |
| 263 | - Make batch errors align with normal errors. |
| 264 | - Add a Google Compute sample. |
| 265 | - Token refresh to work with 'old' GData API |
| 266 | - Loading of client_secrets JSON file backed by a cache. |
| 267 | - Switch to new discovery path parameters. |
| 268 | - Add support for additionalProperties when printing schema'd objects. |
| 269 | - Fix media upload parameter names. Reviewed in http://codereview.appspot.com/6374062/ |
| 270 | - oauth2client support for URL-encoded format of exchange token response (e.g. Facebook) |
| 271 | - Build cleaner and easier to read docs for dynamic surfaces. |
| 272 | |
Joe Gregorio | bf14cef | 2012-06-22 15:26:16 -0400 | [diff] [blame] | 273 | v1.0c2 |
| 274 | Version 1.0 Release Candidate 2 |
| 275 | |
| 276 | - Parameter values of None should be treated as missing. Fixes issue #144. |
| 277 | - Distribute the samples separately from the library source. Fixes issue #155. |
| 278 | - Move all remaining samples over to client_secrets.json. Fixes issue #156. |
| 279 | - Make locked_file.py understand win32file primitives for better awesomeness. |
| 280 | |
Joe Gregorio | 1aaec4b | 2012-06-15 16:20:41 -0400 | [diff] [blame] | 281 | v1.0c1 |
| 282 | Version 1.0 Release Candidate 1 |
| 283 | |
Joe Gregorio | 638663c | 2012-06-15 14:40:47 -0400 | [diff] [blame] | 284 | - Documentation for the library has switched to epydoc: |
| 285 | http://google-api-python-client.googlecode.com/hg/docs/epy/index.html |
| 286 | - Many improvements for media support: |
| 287 | * Added media download support, including resumable downloads. |
| 288 | * Better handling of streams that report their size as 0. |
| 289 | * Update Media Upload to include io.Base and also fix some bugs. |
| 290 | - OAuth bug fixes and improvements. |
| 291 | * Remove OAuth 1.0 support. |
| 292 | * Added credentials_from_code and credentials_from_clientsecrets_and_code. |
| 293 | * Make oauth2client support Windows-friendly locking. |
| 294 | * Fix bug in StorageByKeyName. |
| 295 | * Fix None handling in Django fields. Reviewed in http://codereview.appspot.com/6298084/. Fixes issue #128. |
| 296 | - Add epydoc generated docs. Reviewed in http://codereview.appspot.com/6305043/ |
| 297 | - Move to PEP386 compliant version numbers. |
| 298 | - New and updated samples |
| 299 | * Ad Exchange Buyer API v1 code samples. |
| 300 | * Automatically generate Samples wiki page from README files. |
| 301 | * Update Google Prediction samples. |
| 302 | * Add a Tasks sample that demonstrates Service accounts. |
| 303 | * new analytics api samples. Reviewed here: http://codereview.appspot.com/5494058/ |
| 304 | - Convert all inline samples to the Farm API for consistency. |
| 305 | |
Joe Gregorio | d02bf5e | 2012-03-02 13:21:32 -0800 | [diff] [blame] | 306 | v1.0beta8 |
| 307 | - Updated meda upload support. |
| 308 | - Many fixes for batch requests. |
| 309 | - Better handling for requests that don't require a body. |
| 310 | - Fix issues with Google App Engine Python 2.7 runtime. |
| 311 | - Better support for proxies. |
| 312 | - All Storages now have a .delete() method. |
| 313 | - Important changes which might break your code: |
| 314 | * apiclient.anyjson has moved to oauth2client.anyjson. |
| 315 | * Some calls, for example, taskqueue().lease() used to require a parameter |
| 316 | named body. In this new release only methods that really need to send a body |
| 317 | require a body parameter, and so you may get errors about an unknown |
| 318 | 'body' parameter in your call. The solution is to remove the unneeded |
| 319 | body={} parameter. |
| 320 | |
Joe Gregorio | 205a061 | 2011-12-14 11:38:16 -0500 | [diff] [blame] | 321 | v1.0beta7 |
| 322 | - Support for batch requests. http://code.google.com/p/google-api-python-client/wiki/Batch |
| 323 | - Support for media upload. http://code.google.com/p/google-api-python-client/wiki/MediaUpload |
| 324 | - Better handling for APIs that return something other than JSON. |
| 325 | - Major cleanup and consolidation of the samples. |
| 326 | - Bug fixes and other enhancements: |
| 327 | 72 Defect Appengine OAuth2Decorator: Convert redirect address to string |
| 328 | 22 Defect Better error handling for unknown service name or version |
| 329 | 48 Defect StorageByKeyName().get() has side effects |
| 330 | 50 Defect Need sample client code for Admin Audit API |
| 331 | 28 Defect better comments for app engine sample Nov 9 |
| 332 | 63 Enhancement Let OAuth2Decorator take a list of scope |