As of January 1, 2020 this library no longer supports Python 2 on the latest released version. Library versions released prior to that date will continue to be available. For more information please visit Python 2 support on Google Cloud.

Changelog

PyPI History

2.7.1 (2024-05-31)

Bug Fixes

  • Add a check for partial response data (#435) (aaea392)

2.7.0 (2023-12-10)

Features

2.6.0 (2023-09-06)

Features

  • Add support for concurrent XML MPU uploads (#395) (a8d56bc)

  • Introduce compatibility with native namespace packages (#385) (cdd7a5e)

Bug Fixes

2.5.0 (2023-04-21)

Features

  • Add support to retry known connection errors (#375) (147e845)

2.4.1 (2023-01-06)

Bug Fixes

  • Avoid validating checksums for partial responses (#361) (354287f)

2.4.0 (2022-09-29)

Features

  • Handle interrupted downloads with decompressive transcoding (#346) (f4d26b7)

Bug Fixes

Documentation

  • Fix changelog header to consistent size (#331) (7b1dc9c)

2.3.3 (2022-05-05)

Bug Fixes

2.3.2 (2022-03-08)

Bug Fixes

  • append existing headers in prepare_initiate_request (#314) (dfaa317)

2.3.1 (2022-03-03)

Bug Fixes

  • include existing headers in prepare request (#309) (010680b)

2.3.0 (2022-02-11)

Features

2.2.1 (2022-02-09)

Bug Fixes

  • don’t overwrite user-agent on requests (42b380e)

2.2.0 (2022-01-28)

Features

  • add ‘py.typed’ declaration file (#287) (cee4164)

  • add support for signed resumable upload URLs (#290) (e1290f5)

Bug Fixes

2.1.0 (2021-10-20)

Features

Bug Fixes

  • Include ConnectionError and urllib3 exception as retriable (#282) (d33465f)

2.0.3 (2021-09-20)

Bug Fixes

2.0.2 (2021-09-02)

Bug Fixes

  • temporarily pin google-crc32c to 1.1.2 to mitigate upstream issue affecting OS X Big Sur (#264) (9fa344f)

2.0.1 (2021-08-30)

Bug Fixes

  • check if retry is allowed after retry wait calculation (#258) (00ccf71)

  • do not mark upload download instances invalid with retriable error codes (#261) (a1c5f7d)

2.0.0 (2021-08-19)

⚠ BREAKING CHANGES

Bug Fixes

  • retry ConnectionError and similar errors that occur mid-download (#251) (bb3ec13)

2.0.0b1 (2021-08-02)

⚠ BREAKING CHANGES

1.3.3 (2021-07-30)

Reverts

  • revert “fix: add retry coverage to the streaming portion of a download” (#245) (98673d0)

1.3.2 (2021-07-27)

Bug Fixes

  • add retry coverage to the streaming portion of a download (#241) (cc1f07c)

1.3.1 (2021-06-18)

Bug Fixes

1.3.0 (2021-05-18)

Features

  • allow RetryStrategy to be configured with a custom initial wait and multiplier (#216) (579a54b)

Documentation

1.2.0 (2020-12-14)

Features

  • add support for Python 3.9, drop support for Python 3.5 (#191) (76839fb), closes #189

  • add retries for ‘requests.ConnectionError’ (#186) (0d76eac)

1.1.0 (2020-10-05)

Features

Bug Fixes

1.0.0 (2020-08-24)

Features

0.7.1 (2020-08-06)

Dependencies

Documentation

0.7.0 (2020-07-23)

Features

  • add configurable checksum support for uploads (#139) (68264f8)

Bug Fixes

0.6.0 (2020-07-07)

Features

  • add customizable timeouts to upload/download methods (#116) (5310921)

  • add configurable crc32c checksumming for downloads (#135) (db31bf5)

  • add templates for python samples projects (#506) (#132) (8e60cc4)

Documentation

0.5.1 (2020-05-26)

Bug Fixes

  • fix failing unit tests by dropping Python 3.4, add Python 3.8 (#118) (1edb974)

  • fix upload_from_file size greater than multipart (#129) (07dd9c2)

  • Generated file update for docs and testing templates. (#127) (bc7a5a9)

0.5.0

10-28-2019 09:16 PDT

New Features

  • Add raw download classes. (#109)

Documentation

  • Update Sphinx inventory URL for requests library. (#108)

Internal / Testing Changes

  • Initial synth. (#105)

  • Remove CircleCI. (#102)

0.4.1

09-16-2019 17:59 PDT

Implementation Changes

  • Revert “Always use raw response data. (#87)” (#103)

Internal / Testing Changes

  • Add black. (#94)

0.4.0

09-05-2019 11:59 PDT

Backward-Compatibility Note

The change to use raw response data (PR #87) might break the hypothetical usecase of downloading a blob marked with Content-Encoding: gzip and expecting to get the expanded data.

Implementation Changes

  • Require 200 response for initial resumable upload request. (#95)

  • Use response as variable for object returned from http_request. (#98)

  • Further DRY request dependency pins. (#96)

  • Finish download on seeing 416 response with zero byte range. (#86)

  • Always use raw response data. (#87)

Dependencies

  • Drop runtime dependency check on requests. (#97)

Documentation

  • Update docs after release (#93)

0.3.3

08-23-2019 14:15 PDT

Implementation Changes

  • Add a default timeout for the http_request method (#88)

  • DRY ‘requests’ pin; don’t shadow exception. (#83)

  • Drop a hardcoded value in an error message. (#48)

Documentation

  • Reconstruct ‘CHANGELOG.md’ from pre-releasetool era releases. (#66)

Internal / Testing Changes

  • Use Kokoro for CI (#90)

  • Renovate: preserve semver ranges. (#82)

  • Add renovate.json (#79)

  • Fix systest bitrot. (#77)

  • Fix docs build redux. (#75)

  • Update to new nox (#57)

0.3.2

2018-12-17 17:31 PST

Implementation Changes

  • Using str instead of repr for multipart boundary.

Dependencies

  • Making requests a strict dependency for the requests subpackage.

Documentation

  • Announce deprecation of Python 2.7 (#51)

  • Fix broken redirect after repository move

  • Updating generated static content in docs.

Internal / Testing Changes

  • Modify file not found test to look for the correct error message

  • Harden tests so they can run with debug logging statements

  • Add Appveyor support. (#40)

  • Mark the version in main as .dev1.

0.3.1

2017-10-20

Implementation Changes

  • Add requests/urllib3 work-around for intercepting gzipped bytes. (#36)

Internal / Testing Changes

  • Re-factor system/requests/test_download.py. (#35)

0.3.0

2017-10-13

Implementation Changes

  • Add checksum validation for non-chunked non-composite downloads. (#32)

Dependencies

  • Add requests extra to setup.py. (#30)

Documentation

  • Update generated docs, due to updated objects.inf from reequests.

0.2.3

2017-08-07

Implementation Changes

  • Allow empty files to be uploaded. (#25)

0.2.2

2017-08-01

Implementation Changes

  • Swap the order of _write_to_stream() / _process_response() in requests download. (#24)

  • Use requests iter_content() to avoid storing response body in RAM. (#21)

  • Add optional stream argument to DownloadBase. (#20)

0.2.1

2017-07-21

Implementation Changes

  • Drop usage of size to measure (resumable) bytes uploaded. (#18)

  • Use explicit u prefix on unicode strings. (#16)

Internal / Testing Changes

  • Update author_email1 to official mailing list.

0.2.0

2017-07-18

Implementation Changes

  • Ensure passing unicode to json.loads() rather than bytes. (#13)

  • Add MANIFEST.in to repository. (#9)

  • Move contents of exceptions module into common.

Documentation

  • Update docs after latest version of Sphinx. (#11)

  • Update custom_html_writer after Sphinx update removed a class. (#10)

Internal / Testing Changes

  • Use nox session.skip (instead of ValueError) for system tests. (#14)

0.1.1

2017-05-05

Implementation Changes

  • Add common.RetryStrategy class; us it in wait_and_retry.

  • Rename constants module -> common.

0.1.0

2017-05-03

Implementation Changes

  • Pass total_bytes in requests.ResumableUpload.initiate.

0.0.5

2017-05-02

New Features

  • Add support for resumable uploads of unknown size. (#6)

0.0.4

2017-04-28

Implementation Changes

  • Refactor upload / download support into public, transport-agnostic classes and private, requests-specific implementations.

0.0.3

2017-04-24

New Features

  • Add automatic retries for 429, 500, 502, 503 and 504 error responses. (#4)

0.0.2

2017-04-24

New Features

  • Add optional headers to upload / download classes.

Documentation

  • Automate documentation builds via CircleCI.

0.0.1

2017-04-21

  • Initial public release.