Sergey Shepelev | 86c3b4e | 2018-11-14 09:40:05 +0500 | [diff] [blame] | 1 | 0.12.0 |
| 2 | |
| 3 | Drop support for Python 3.3 |
| 4 | |
| 5 | ca_certs from environment HTTPLIB2_CA_CERTS or certifi |
| 6 | https://github.com/httplib2/httplib2/pull/117 |
| 7 | |
| 8 | PROXY_TYPE_HTTP with non-empty user/pass raised TypeError: bytes required |
| 9 | https://github.com/httplib2/httplib2/pull/115 |
| 10 | |
| 11 | Revert http:443->https workaround |
| 12 | https://github.com/httplib2/httplib2/issues/112 |
| 13 | |
| 14 | eliminate connection pool read race |
| 15 | https://github.com/httplib2/httplib2/pull/110 |
| 16 | |
| 17 | cache: stronger safename |
| 18 | https://github.com/httplib2/httplib2/pull/101 |
| 19 | |
Sergey Shepelev | 70fb0c8 | 2018-03-30 05:17:35 +0300 | [diff] [blame] | 20 | 0.11.3 |
| 21 | |
| 22 | No changes, just reupload of 0.11.2 after fixing automatic release conditions in Travis. |
| 23 | |
Sergey Shepelev | 470bb2a | 2018-03-30 02:29:48 +0300 | [diff] [blame] | 24 | 0.11.2 |
| 25 | |
| 26 | proxy: py3 NameError basestring |
| 27 | https://github.com/httplib2/httplib2/pull/100 |
| 28 | |
Sergey Shepelev | f20cd36 | 2018-03-26 20:15:07 +0300 | [diff] [blame] | 29 | 0.11.1 |
| 30 | |
| 31 | Fix HTTP(S)ConnectionWithTimeout AttributeError proxy_info |
| 32 | https://github.com/httplib2/httplib2/pull/97 |
| 33 | |
Sergey Shepelev | 5dee729 | 2018-03-21 21:13:04 +0300 | [diff] [blame] | 34 | 0.11.0 |
| 35 | |
| 36 | Add DigiCert Global Root G2 serial 033af1e6a711a9a0bb2864b11d09fae5 |
| 37 | https://github.com/httplib2/httplib2/pull/91 |
| 38 | |
| 39 | python3 proxy support |
| 40 | https://github.com/httplib2/httplib2/pull/90 |
| 41 | |
| 42 | If no_proxy environment value ends with comma then proxy is not used |
| 43 | https://github.com/httplib2/httplib2/issues/11 |
| 44 | |
| 45 | fix UnicodeDecodeError using socks5 proxy |
| 46 | https://github.com/httplib2/httplib2/pull/64 |
| 47 | |
| 48 | Respect NO_PROXY env var in proxy_info_from_url |
| 49 | https://github.com/httplib2/httplib2/pull/58 |
| 50 | |
| 51 | NO_PROXY=bar was matching foobar (suffix without dot delimiter) |
| 52 | New behavior matches curl/wget: |
| 53 | - no_proxy=foo.bar will only skip proxy for exact hostname match |
| 54 | - no_proxy=.wild.card will skip proxy for any.subdomains.wild.card |
| 55 | https://github.com/httplib2/httplib2/issues/94 |
| 56 | |
| 57 | Bugfix for Content-Encoding: deflate |
| 58 | https://stackoverflow.com/a/22311297 |
| 59 | |
Sergey Shepelev | 1ae16e0 | 2017-02-06 20:56:20 +0300 | [diff] [blame] | 60 | 0.10.3 |
| 61 | |
| 62 | Fix certificate validation on Python<=2.7.8 without ssl.CertificateError |
| 63 | https://github.com/httplib2/httplib2/issues/45 |
| 64 | |
Sergey Shepelev | 7b54fbb | 2017-02-04 00:09:28 +0300 | [diff] [blame] | 65 | 0.10.2 |
| 66 | |
| 67 | Just a reupload of 0.10.1, which was broken for Python3 |
| 68 | because wheel distribution doesn't play well with our 2/3 split code base. |
| 69 | https://github.com/httplib2/httplib2/issues/43 |
| 70 | |
Sergey Shepelev | 4623377 | 2017-02-03 22:09:29 +0300 | [diff] [blame] | 71 | 0.10.1 |
| 72 | |
| 73 | This is the first release by new httplib2 team. See post by Joe |
| 74 | https://bitworking.org/news/2016/03/an_update_on_httplib2 |
| 75 | |
| 76 | Remove VeriSign Class 3 CA from trusted certs |
| 77 | https://googleonlinesecurity.blogspot.com/2015/12/proactive-measures-in-digital.html |
| 78 | |
| 79 | Add IdenTrust DST Root CA X3 |
| 80 | https://github.com/httplib2/httplib2/pull/26 |
| 81 | |
| 82 | Support for specifying the SSL protocol version (Python v2) |
| 83 | https://github.com/jcgregorio/httplib2/issues/329 |
| 84 | |
| 85 | On App Engine use urlfetch's default deadline if None is passed. |
| 86 | |
| 87 | Fix TypeError on AppEngine “__init__() got an unexpected keyword argument 'ssl_version’” |
| 88 | https://github.com/httplib2/httplib2/pull/12 |
| 89 | |
| 90 | Send SNI data for SSL connections on Python 2.7.9+ |
| 91 | Verify the server hostname if certificate validation is enabled |
| 92 | https://github.com/httplib2/httplib2/pull/13 |
| 93 | |
| 94 | Add proxy_headers argument to ProxyInfo constructor |
| 95 | https://github.com/httplib2/httplib2/pull/21 |
| 96 | |
| 97 | Make disable_ssl_certificate_validation work with Python 3.5. |
| 98 | https://github.com/httplib2/httplib2/pull/15 |
| 99 | |
| 100 | Fix socket error handling |
| 101 | https://github.com/httplib2/httplib2/commit/eb7468561714a5b700d5a3d8fa1a8794de02b9ef |
| 102 | https://github.com/httplib2/httplib2/commit/e7f6e622047107e701ee70e7ec586717d97b0cbb |
| 103 | |
Joe Gregorio | cf631a7 | 2015-09-28 09:49:57 -0400 | [diff] [blame] | 104 | 0.9.2 |
| 105 | |
| 106 | Fixes in this release: |
| 107 | |
| 108 | https://github.com/jcgregorio/httplib2/pull/313 |
| 109 | |
| 110 | Fix incorrect ResponseNotReady exceptions, retry on transient errors. |
| 111 | |
Joe Gregorio | 1af76a6 | 2015-04-09 10:10:39 -0400 | [diff] [blame] | 112 | 0.9.1 |
| 113 | |
Joe Gregorio | f9f7972 | 2015-04-11 09:50:15 -0400 | [diff] [blame] | 114 | Fixes in this release: |
| 115 | |
| 116 | https://github.com/jcgregorio/httplib2/pull/296 |
| 117 | |
| 118 | There was a problem with headers when a binary string is passed (like |
| 119 | b'Authorization'). |
| 120 | |
| 121 | https://github.com/jcgregorio/httplib2/pull/276 |
| 122 | |
| 123 | Default to doing DNS resolution through a proxy server if present. |
| 124 | |
Joe Gregorio | 1af76a6 | 2015-04-09 10:10:39 -0400 | [diff] [blame] | 125 | 0.9 |
| 126 | Heartbleed |
| 127 | |
Joe Gregorio | ee9ee3c | 2013-03-06 15:31:15 -0500 | [diff] [blame] | 128 | 0.8 |
| 129 | More fixes for the App Engine support. |
| 130 | |
| 131 | Added a new feature that allows you to supply your own provider for the |
| 132 | CA_CERTS file. Just create a module named ca_certs_locater that has a method |
| 133 | get() that returns the file location of the CA_CERTS file. |
| 134 | |
| 135 | Lots of clean up of the code formatting to make it more consistent. |
| 136 | |
Joe Gregorio | 7642017 | 2012-11-12 14:02:58 -0500 | [diff] [blame] | 137 | 0.7.7 |
| 138 | More fixes for App Engine, now less likely to swallow important exceptions. |
| 139 | Adding proxy_info_from_* methods to Python3. Reviewed in https://codereview.appspot.com/6588078/. |
| 140 | Added GeoTrust cert |
| 141 | Make httplib2.Http() instances pickleable. Reviewed in https://codereview.appspot.com/6506074/ |
| 142 | |
| 143 | The following issues have been fixed: |
| 144 | |
| 145 | 229 python3 httplib2 clobbers multiple headers of same key |
| 146 | 230 Expose meaningful exception for App Engine URLFetch ResponseTooLargeError |
| 147 | 231 Expose App Engine URLFetch DeadlineExceededError for debugging purposes |
| 148 | |
Joe Gregorio | a91406d | 2012-09-11 13:20:44 -0400 | [diff] [blame] | 149 | 0.7.6 |
| 150 | Fixes for App Engine 2.7. |
| 151 | |
Joe Gregorio | ed72cba | 2012-08-28 12:19:28 -0400 | [diff] [blame] | 152 | 0.7.5 |
| 153 | Keys are lowercase in a Response object, regardless of how Response object is constructed. |
| 154 | Add control so that Authorization: headers aren't forwarded on a 3xx response by default. |
| 155 | Set the reason correctly when running on App Engine. Patch from Alain Vongsouvanh. Reviewed in http://codereview.appspot.com/6422051/ |
| 156 | Fix proxy socks for SSL connections. Fixes issue #199. |
| 157 | You can now set httplib2.RETRIES to the number of retries before a request |
| 158 | is considered to fail It is set to a default of 2 to mimic the traditional |
| 159 | behavior of httplib2. |
| 160 | |
| 161 | The following issues have been addressed: |
| 162 | |
| 163 | 223 HEAD requests fail calling the close() method of ResponseDict instance. |
| 164 | 222 Can't disable cert validation in appengine |
| 165 | 204 Credentials can leak in HTTP redirects |
| 166 | 210 Different API between Python 2 and Python 3 version breaks wsgi_intercept |
| 167 | 214 ValueError on malformated cache entries |
| 168 | 204 Credentials can leak in HTTP redirects |
| 169 | |
| 170 | |
Joe Gregorio | b850bd0 | 2012-03-02 08:37:22 -0800 | [diff] [blame] | 171 | 0.7.3 |
Jason R. Coombs | 4384089 | 2011-08-09 10:30:46 -0400 | [diff] [blame] | 172 | ProxyInfo objects now can construct themselves from environment |
| 173 | variables commonly-used in Unix environments. By default, the Http |
| 174 | class will construct a ProxyInfo instance based on these environment |
| 175 | variables. To achieve the previous behavior, where environment |
| 176 | variables are ignored, pass proxy_info=None to Http(). |
| 177 | |
| 178 | The following issues have been addressed: |
| 179 | |
| 180 | Issue 159: automatic detection of proxy configuration. |
Joe Gregorio | b850bd0 | 2012-03-02 08:37:22 -0800 | [diff] [blame] | 181 | Issue 179: Allow unicode in proxy hostname. |
| 182 | Issue 194: Added support for setuptools. |
| 183 | Fixes for HTTP CONNECT proxies. |
Jason R. Coombs | 4384089 | 2011-08-09 10:30:46 -0400 | [diff] [blame] | 184 | |
Joe Gregorio | b2cfdf6 | 2011-06-16 10:11:13 -0400 | [diff] [blame] | 185 | 0.7.1 |
| 186 | Fix failure to install cacerts.txt for 2.x installs. |
| 187 | |
Joe Gregorio | b0c82ca | 2011-06-13 15:13:11 -0400 | [diff] [blame] | 188 | 0.7.0 |
| 189 | The two major changes in this release are SSL Certificate |
| 190 | checking and App Engine support. By default the certificates |
| 191 | of an HTTPS connection are checked, but that can be disabled |
| 192 | via disable_ssl_certificate_validation. The second change |
| 193 | is that on App Engine there is a new connection object |
| 194 | that utilizes the urlfetch capabilities on App Engine, including |
| 195 | setting timeouts and validating certificates. |
| 196 | |
| 197 | The following issues have been addressed: |
| 198 | |
| 199 | Fixes issue 72. Always lowercase authorization header. |
| 200 | Fix issue 47. Redirects that become a GET should not have a body. |
| 201 | Fixes issue 19. Set Content-location on redirected HEAD requests |
Jason R. Coombs | 4384089 | 2011-08-09 10:30:46 -0400 | [diff] [blame] | 202 | Fixes issue 139. Redirect with a GET on 302 regardless of the originating method. |
| 203 | Fixes issue 138. Handle unicode in headers when writing and retrieving cache entries. Who says headers have to be ASCII! |
Joe Gregorio | b0c82ca | 2011-06-13 15:13:11 -0400 | [diff] [blame] | 204 | Add certificate validation. Work initially started by Christoph Kern. |
| 205 | Set a version number. Fixes issue # 135. |
| 206 | Sync to latest version of socks.py |
| 207 | Add gzip to the user-agent, in case we are making a request to an app engine project: http://code.google.com/appengine/kb/general.html#compression |
| 208 | Uses a custom httplib shim on App Engine to wrap urlfetch, as opposed |
| 209 | Add default support for optimistic concurrency on PATCH requests |
| 210 | Fixes issue 126. IPv6 under various conditions would fail. |
| 211 | Fixes issue 131. Handle socket.timeout's that occur during send. |
| 212 | proxy support: degrade gracefully when socket.socket is unavailable |
| 213 | |
| 214 | |
Joe Gregorio | f311655 | 2009-12-28 13:02:42 -0500 | [diff] [blame] | 215 | 0.6.0 |
| 216 | |
| 217 | The following issues have been addressed: |
| 218 | |
Jason R. Coombs | 4384089 | 2011-08-09 10:30:46 -0400 | [diff] [blame] | 219 | #51 - Failure to handle server legitimately closing connection before request body is fully sent |
| 220 | #77 - Duplicated caching test |
Joe Gregorio | f311655 | 2009-12-28 13:02:42 -0500 | [diff] [blame] | 221 | #65 - Transform _normalize_headers into a method of Http class |
Jason R. Coombs | 4384089 | 2011-08-09 10:30:46 -0400 | [diff] [blame] | 222 | #45 - Vary header |
| 223 | #73 - All files in Mercurial are executable |
| 224 | #81 - Have a useful .hgignore |
| 225 | #78 - Add release tags to the Mercurial repository |
| 226 | #67 - HEAD requests cause next request to be retried |
Joe Gregorio | f311655 | 2009-12-28 13:02:42 -0500 | [diff] [blame] | 227 | |
| 228 | Mostly bug fixes, the big enhancement is the addition of proper Vary: header |
| 229 | handling. Thanks to Chris Dent for that change. |
| 230 | |
| 231 | The other big change is the build process for distributions so that both python2 and python3 |
| 232 | are included in the same .tar.gz/.zip file. |
| 233 | |
Joe Gregorio | 66611ff | 2009-07-19 01:32:17 -0400 | [diff] [blame] | 234 | 0.5.0 |
| 235 | |
| 236 | Added Python 3 support |
| 237 | |
| 238 | Fixed the following bugs: |
| 239 | |
Jason R. Coombs | 4384089 | 2011-08-09 10:30:46 -0400 | [diff] [blame] | 240 | #12 - Cache-Control: only-if-cached incorrectly does request if item not in cache |
Joe Gregorio | 66611ff | 2009-07-19 01:32:17 -0400 | [diff] [blame] | 241 | #39 - Deprecation warnings in Python 2.6 |
Jakub Wilk | 4b22c7e | 2017-03-02 00:05:56 +0100 | [diff] [blame] | 242 | #54 - Http.request fails accessing Google account via http proxy |
Joe Gregorio | 66611ff | 2009-07-19 01:32:17 -0400 | [diff] [blame] | 243 | #56 - Block on response.read() for HEAD requests. |
| 244 | #57 - Timeout ignore for Python 2.6 |
| 245 | #58 - Fixed parsing of Cache-Control: header to make it more robust |
| 246 | |
Joe Gregorio | 891439e | 2009-07-28 10:52:36 -0400 | [diff] [blame] | 247 | Also fixed a deprecation warning that appeared between Python 3.0 and 3.1. |
Joe Gregorio | 66611ff | 2009-07-19 01:32:17 -0400 | [diff] [blame] | 248 | |
joe.gregorio | 5fcc199 | 2007-10-23 15:12:17 +0000 | [diff] [blame] | 249 | 0.4.0 |
jcgregorio | 1464437 | 2007-07-30 14:13:37 +0000 | [diff] [blame] | 250 | |
joe.gregorio | 5fcc199 | 2007-10-23 15:12:17 +0000 | [diff] [blame] | 251 | Added support for proxies if the Socksipy module is installed. |
| 252 | |
Jason R. Coombs | 4384089 | 2011-08-09 10:30:46 -0400 | [diff] [blame] | 253 | Fixed bug with some HEAD responses having content-length set to |
joe.gregorio | 5fcc199 | 2007-10-23 15:12:17 +0000 | [diff] [blame] | 254 | zero incorrectly. |
| 255 | |
| 256 | Fixed most except's to catch a specific exception. |
jcgregorio | 1464437 | 2007-07-30 14:13:37 +0000 | [diff] [blame] | 257 | |
| 258 | Added 'connection_type' parameter to Http.request(). |
Jason R. Coombs | 4384089 | 2011-08-09 10:30:46 -0400 | [diff] [blame] | 259 | |
joe.gregorio | 5fcc199 | 2007-10-23 15:12:17 +0000 | [diff] [blame] | 260 | The default for 'force_exception_to_status_code' was changed to False. Defaulting |
| 261 | to True was causing quite a bit of confusion. |
jcgregorio | 1464437 | 2007-07-30 14:13:37 +0000 | [diff] [blame] | 262 | |
| 263 | |
jcgregorio | 463a8db | 2007-03-09 03:27:14 +0000 | [diff] [blame] | 264 | 0.3.0 |
| 265 | Calling Http.request() with a relative URI, as opposed to an absolute URI, |
| 266 | will now throw a specific exception. |
| 267 | |
| 268 | Http() now has an additional optional parameter for the socket timeout. |
| 269 | |
| 270 | Exceptions can now be forced into responses. That is, instead of |
| 271 | throwing an exception, a good httlib2.Response object is returned |
| 272 | that describe the error with an appropriate status code. |
| 273 | |
| 274 | Many improvements to the file cache: |
| 275 | |
Jason R. Coombs | 4384089 | 2011-08-09 10:30:46 -0400 | [diff] [blame] | 276 | 1. The names in the cache are now much less |
jcgregorio | 463a8db | 2007-03-09 03:27:14 +0000 | [diff] [blame] | 277 | opaque, which should help with debugging. |
| 278 | |
Jason R. Coombs | 4384089 | 2011-08-09 10:30:46 -0400 | [diff] [blame] | 279 | 2. The disk cache is now Apache mod_asis compatible. |
| 280 | |
jcgregorio | 463a8db | 2007-03-09 03:27:14 +0000 | [diff] [blame] | 281 | 3. A Content-Location: header is supplied and stored in the |
| 282 | cache which points to the original requested URI. |
| 283 | |
| 284 | User supplied If-* headers now override httplib2 supplied |
| 285 | versions. |
| 286 | |
| 287 | IRIs are now fully supported. Note that they MUST be passed in |
| 288 | as unicode objects. |
| 289 | |
| 290 | Http.add_credentials() now takes an optional domain to restrict |
| 291 | the credentials to being only used on that domain. |
| 292 | |
Jason R. Coombs | 4384089 | 2011-08-09 10:30:46 -0400 | [diff] [blame] | 293 | Added Http.add_certificate() which allows setting |
Jakub Wilk | 4b22c7e | 2017-03-02 00:05:56 +0100 | [diff] [blame] | 294 | a key and cert for SSL connections. |
jcgregorio | 463a8db | 2007-03-09 03:27:14 +0000 | [diff] [blame] | 295 | |
| 296 | Many other bugs fixed. |
| 297 | |
| 298 | |
jcgregorio | a0713ab | 2006-07-01 05:21:34 +0000 | [diff] [blame] | 299 | 0.2.0 |
| 300 | Added support for Google Auth. |
jcgregorio | 2d66d4f | 2006-02-07 05:34:14 +0000 | [diff] [blame] | 301 | |
Jason R. Coombs | 4384089 | 2011-08-09 10:30:46 -0400 | [diff] [blame] | 302 | Added experimental support for HMACDigest. |
jcgregorio | a0713ab | 2006-07-01 05:21:34 +0000 | [diff] [blame] | 303 | |
jcgregorio | 9208892 | 2006-07-01 05:53:21 +0000 | [diff] [blame] | 304 | Added support for a pluggable caching system. Now supports |
| 305 | the old system of using the file system and now memcached. |
| 306 | |
Jason R. Coombs | 4384089 | 2011-08-09 10:30:46 -0400 | [diff] [blame] | 307 | Added httplib2.debuglevel which turns on debugging. |
jcgregorio | 2d66d4f | 2006-02-07 05:34:14 +0000 | [diff] [blame] | 308 | |
jcgregorio | 9208892 | 2006-07-01 05:53:21 +0000 | [diff] [blame] | 309 | Change Response._previous to Response.previous. |
| 310 | |
Jakub Wilk | 4b22c7e | 2017-03-02 00:05:56 +0100 | [diff] [blame] | 311 | Added Http.follow_all_redirects which forces |
Jason R. Coombs | 4384089 | 2011-08-09 10:30:46 -0400 | [diff] [blame] | 312 | httplib2 to follow all redirects, as opposed to |
jcgregorio | 9208892 | 2006-07-01 05:53:21 +0000 | [diff] [blame] | 313 | following only the safe redirects. This makes the |
| 314 | GData protocol easier to use. |
| 315 | |
| 316 | All known bugs fixed to date. |
| 317 | |
jcgregorio | 8421f27 | 2006-02-14 18:19:51 +0000 | [diff] [blame] | 318 | 0.1.1 |
jcgregorio | 2d66d4f | 2006-02-07 05:34:14 +0000 | [diff] [blame] | 319 | |
jcgregorio | 4177ca1 | 2006-02-16 10:50:58 +0000 | [diff] [blame] | 320 | Fixed several bugs raised by James Antill: |
jcgregorio | 2d66d4f | 2006-02-07 05:34:14 +0000 | [diff] [blame] | 321 | 1. HEAD didn't get an Accept: header added like GET. |
| 322 | 2. HEAD requests did not use the cache. |
| 323 | 3. GET requests with Range: headers would erroneously return a full cached response. |
jcgregorio | 8421f27 | 2006-02-14 18:19:51 +0000 | [diff] [blame] | 324 | 4. Subsequent requests to resources that had timed out would raise an exception. |
jcgregorio | 2d66d4f | 2006-02-07 05:34:14 +0000 | [diff] [blame] | 325 | And one feature request for 'method' to default to GET. |
| 326 | |
Jason R. Coombs | 4384089 | 2011-08-09 10:30:46 -0400 | [diff] [blame] | 327 | Xavier Verges Farrero supplied what I needed to make the |
jcgregorio | 4177ca1 | 2006-02-16 10:50:58 +0000 | [diff] [blame] | 328 | library work with Python 2.3. |
jcgregorio | 8421f27 | 2006-02-14 18:19:51 +0000 | [diff] [blame] | 329 | |
jcgregorio | 1eed40f | 2006-02-15 18:56:46 +0000 | [diff] [blame] | 330 | I added distutils based setup.py. |
| 331 | |
Jason R. Coombs | 4384089 | 2011-08-09 10:30:46 -0400 | [diff] [blame] | 332 | 0.1 Rev 86 |
| 333 | |
jcgregorio | 2d66d4f | 2006-02-07 05:34:14 +0000 | [diff] [blame] | 334 | Initial Release |
| 335 | |