Skip to content

Releases: Backblaze/b2-sdk-python

1.31.0

19 Feb 15:02

Choose a tag to compare

Fixed

  • Remove obsolete test scripts from b2sdk package: test_upload_url_concurrency, b2sdk.b2http:test_http. (#471)

Added

  • Allow for min_part_size that is greater than default recommended_part_size value, without having to explicitly set recommended_part_size value.
  • Add GET method support to B2Http.
  • Add JSON type annotation and fix type hints in B2Http methods.
  • Add more type hints to API methods.

1.30.1

02 Feb 14:14

Choose a tag to compare

Fixed

  • Fix package author metadata.

1.30.0

02 Feb 13:16

Choose a tag to compare

Fixed

  • Fix escape sequence warnings present in python 3.12. (#458)
  • Handle json encoded, invalid B2 error responses, preventing exceptions such as invalid literal for int() with base 10: 'service_unavailable'.

Added

  • Add support for filters to Bucket.ls().

Infrastructure

  • Package the library using pdm, use locked dependencies in CI.
  • Update ruff linter and apply it to all files.

1.29.1

23 Jan 09:53

Choose a tag to compare

Fixed

  • Handle non-json encoded B2 error responses, i.e. retry on 502 and 504 errors.

Doc

  • Add missing import in Synchronizer docs example.

1.29.0

13 Dec 09:52

Choose a tag to compare

Changed

  • Change v3.B2Api.authorize_account signature to make realm optional and "production" by default.

Added

  • Progress listener instances can now change their descriptions during run. This allows for e.g.: changing description after file headers are downloaded but before the content is fetched.

Infrastructure

  • Add -v to pytest in CI.
  • Run windows pypy3.9 tests on nightly builds.

1.28.0

06 Dec 19:32

Choose a tag to compare

Changed

  • On XDG compatible OSes (Linux, BSD), the profile file is now created in $XDG_CONFIG_HOME (with a fallback to ~/.config/ in absence of given env. variable).
  • Replace blank assert with exception when size values for parts upload are misaligned.

Fixed

  • Streaming from empty stream no longer ends with "Empty emerge parts iterator" error.

Infrastructure

  • Changelog entries are now validated as a part of CI pipeline.
  • Disable dependabot requests for updates unrelated to security issues.
  • Fixed tests failing because of changes made to locale.normalize in Python 3.12.

1.27.0

26 Nov 22:15
f29585d

Choose a tag to compare

Changed

  • Add dependency on setuptools and packaging as they are not shipped by cpython 3.12 and are used in production code.

Fixed

  • Fix closing of passed progress listeners in Bucket.upload and Bucket.copy

1.26.0

21 Nov 13:33
9ca9d0a

Choose a tag to compare

Added

  • Add expires, content_disposition, content_encoding, content_language arguments to various Bucket methods (#357)

Infrastructure

  • Towncrier changelog generation - to avoid conflicts when simultaneously working on PRs
  • Fix towncrier generated changelog to work with mindsers/changelog-reader-action

1.25.0

15 Nov 19:31

Choose a tag to compare

Added

  • Add *_PART_SIZE, BUCKET_NAME_*, STDOUT_FILEPATH constants
  • Add points_to_fifo, points_to_stdout functions

Changed

  • Mark TempDir as deprecated in favor of tempfile.TemporaryDirectory

Fixed

  • Fix downloading to a non-seekable file, such as /dev/stdout
  • Fix ScanPoliciesManager support for compiled regexes

Infrastructure

  • Fix readthedocs build by updating to v2 configuration schema
  • Fix spellcheck erroring out on LICENSE file
  • Fix snyk reporting vulnerability due to tornado package use in docs generation
  • Deduplicate test_base files in test suite
  • Refactor integration tests for better pytest compatibility & eager bucket cleanup

1.24.1

27 Sep 17:59

Choose a tag to compare

Fixed

  • Fix missing key ID for large file encrypted with SSE-C
  • Fix concatenating error message when message is None