Skip to content

Releases: Backblaze/b2-sdk-python

1.18.0

20 Sep 02:38
96aa9ea
Compare
Choose a tag to compare

Added

  • Logging performance summary of parallel download threads
  • Add max_download_streams_per_file parameter to B2Api class and underlying structures
  • Add is_file_lock_enabled parameter to Bucket.update() and related methods

Fixed

  • Replace ReplicationScanResult.source_has_sse_c_enabled with source_encryption_mode
  • Fix B2Api.get_key() and RawSimulator.delete_key()
  • Fix calling CopySizeTooBig exception

Infrastructure

  • Fix nox's deprecated session.install() calls
  • Re-enable changelog validation in CI

1.17.3

15 Jul 10:34
ce7e38c
Compare
Choose a tag to compare

As in version 1.16.0, the replication API may still be unstable, however
no backward-incompatible changes are planned at this point.

Fixed

  • Fix FileVersion._get_upload_headers when encryption key is None

Infrastructure

  • Fix download integration tests on non-production environments
  • Add B2_DEBUG_HTTP env variable to enable network-level test debugging
  • Disable changelog validation temporarily

1.17.2

23 Jun 04:29
Compare
Choose a tag to compare

As in version 1.16.0, the replication API may still be unstable, however
no backward-incompatible changes are planned at this point.

Fixed

  • Fix a race in progress reporter
  • Fix import of replication

1.17.1

22 Jun 23:54
Compare
Choose a tag to compare

As in version 1.16.0, the replication API may still be unstable, however
no backward-incompatible changes are planned at this point.

Fixed

  • Fix importing scan module

1.17.0

22 Jun 22:46
bc878ed
Compare
Choose a tag to compare

As in version 1.16.0, the replication API may still be unstable, however
no backward-incompatible changes are planned at this point.

Added

  • Add included_sources module for keeping track of included modified third-party libraries
  • Add include_existing_files parameter to ReplicationSetupHelper

Changed

  • Downloading compressed files with Content-Encoding header set no longer causes them to be decompressed on the fly - it's an option
  • Change the per part retry limit from 5 to 20 for data transfer operations. Please note that the retry system is not considered to be a part of the public interface and is subject to be adjusted
  • Do not wait more than 64 seconds between retry attempts (unless server asks for it)
  • On longer failures wait an additional (random, up to 1s) amount of time to prevent client synchronization
  • Flatten ReplicationConfiguration interface
  • Reorder actions of ReplicationSetupHelper to avoid zombie rules

Fixed

  • Fix: downloading compressed files and decompressing them on the fly now does not cause a TruncatedOutput error
  • Fix AccountInfo.is_master_key()
  • Fix docstring of SqliteAccountInfo
  • Fix lifecycle rule type in the docs

Infrastructure

  • Add 3.11.0-beta.1 to CI
  • Change Sphinx major version from 5 to 6
  • Extract folder/bucket scanning into a new scan module
  • Enable pip cache in CI

1.16.0

28 Apr 21:07
bbbd465
Compare
Choose a tag to compare

This release contains a preview of replication support. It allows for basic
usage of B2 replication feature (currently in closed beta).

As the interface of the sdk (and the server api) may change, the replication
support shall be considered PRIVATE interface and should be used with caution.
Please consult the documentation on how to safely use the private api interface.

Expect substantial amount of work on sdk interface:

  • The interface of ReplicationConfiguration WILL change
  • The interface of FileVersion.replication_status MIGHT change
  • The interface of FileVersionDownload MIGHT change

Added

  • Add basic replication support to Bucket and FileVersion
  • Add is_master_key() method to AbstractAccountInfo
  • Add readBucketReplications and writeBucketReplications to ALL_CAPABILITIES
  • Add log tracing of interpret_b2_error
  • Add ReplicationSetupHelper

Fixed

  • Fix license test on Windows
  • Fix cryptic errors when running integration tests with a non-full key

1.15.0

12 Apr 22:30
280c54b
Compare
Choose a tag to compare

Changed

  • Don't run coverage in pypy in CI
  • Introduce a common thread worker pool for all downloads
  • Increase http timeout to 20min (for copy using 5GB parts)
  • Remove inheritance from object (leftover from python2)
  • Run unit tests on all CPUs

Added

  • Add pypy-3.8 to test matrix
  • Add support for unverified checksum upload mode
  • Add dedicated exception for unverified email
  • Add a parameter to customize sync_policy_manager
  • Add parameters to set the min/max part size for large file upload/copy methods
  • Add CopySourceTooBig exception
  • Add an option to set a custom file version class to FileVersionFactory
  • Add an option for B2Api to turn off hash checking for downloaded files
  • Add an option for B2Api to set write buffer size for DownloadedFile.save_to method
  • Add support for multiple profile files for SqliteAccountInfo

Fixed

  • Fix copying objects larger than 1TB
  • Fix uploading objects larger than 1TB
  • Fix downloading files with unverified checksum
  • Fix decoding in filename and file info of DownloadVersion
  • Fix an off-by-one bug and other bugs in the Simulator copy functionality

Removed

  • Drop support for Python 3.5 and Python 3.6

1.14.1

23 Feb 19:24
Compare
Choose a tag to compare

Fixed

  • Fix setting permissions for local sqlite database (thanks to Jan Schejbal for responsible disclosure!)

1.14.0

23 Dec 22:44
9ed5b69
Compare
Choose a tag to compare

Fixed

  • Relax constraint on arrow to allow for versions >= 1.0.2

1.13.0

24 Oct 14:39
Compare
Choose a tag to compare

Added

  • Add support for Python 3.10

Changed

  • Update a list with all capabilities

Fixed

  • Fix pypy selector in CI