Skip to content

Releases: Backblaze/b2-sdk-python

2.5.1

15 Aug 19:59
5b5ac44
Compare
Choose a tag to compare

Fixed

  • Fix LocalFolder.all_files(..) erroring out if one of the non-excluded directories is not readable by the user running the scan.
    Warning is added to ProgressReport instead as other file access errors are.

2.5.0

30 Jul 19:28
470de14
Compare
Choose a tag to compare

Fixed

  • Fix TruncatedOutput errors when downloading files over congested network (fixes B2_Command_Line_Tool#554).
  • Ensure FileSimulator.as_download_headers returns dict[str, str] mapping.

Added

  • Add unhide_file method to Bucket class.

Doc

  • Improve download_file_from_url methods type hints.

Infrastructure

  • Limit max CI (Github Actions) duration to 90 minutes.

2.4.1

19 Jun 14:26
9de9d70
Compare
Choose a tag to compare

Fixed

  • Fix LocalFolder regression (introduced in 2.4.0) which caused LocalFolder to not list files by path lexicographical order.
    This is also a fix for synchronizer re-uploading files on every run in some cases. (#502)

2.4.0

17 Jun 09:01
21f12c4
Compare
Choose a tag to compare

Changed

  • In b2sdk.v3 the B2Api will always create cache from AccountInfo object, unless cache is provided explicitly.
    The current stable b2sdk.v2 remains unchanged, i.e. DummyCache is created by default if account_info was provided, but not cache.
    Documentation for b2sdk.v2 was updated with the new recommended usage, e.g. B2Api(info, cache=AuthInfoCache(info)), to achieve the same behavior as b2sdk.v3. (#497)

Fixed

  • Move scan filters before a read on filesystem access attempt. This will prevent unnecessary warnings and IO operations on paths that are not relevant to the operation. (#456)
  • Fix bucket caching erroring out when using StubAccountInfo.

Added

  • Add annotated_types dependency for type annotations that include basic value validation.
  • Add daysFromStartingToCancelingUnfinishedLargeFiles option to lifecycle_rules type annotation.
  • Add non-retryable NoPaymentHistory exception.
    API returns this exception when action (e.g. bucket creation or replication rules) is not allowed due to lack of payment history.

2.3.0

15 May 12:37
84f421b
Compare
Choose a tag to compare

Added

  • Add folder_to_list_can_be_a_file parameter to b2sdk.v2.Bucket.ls, that if set to True will allow listing a file versions if path is an exact match.
    This parameter won't be included in b2sdk.v3.Bucket.ls and unless supplied path ends with /, the possibility of path pointing to file will be considered first.

2.2.1

09 May 11:12
9fbe73c
Compare
Choose a tag to compare

Fixed

  • Fix __str__ of b2sdk.v2.BucketIdNotFound to return full error message and not just missing bucket ID value.

2.2.0

08 May 18:33
3bb7f33
Compare
Choose a tag to compare

Added

  • Add has_errors_or_warnings method to ProgressReport class.

Fixed

  • Ensure b2sdk.v2.b2http emits b2sdk.v2.BucketIdNotFound exception instead of b2sdk._v3.BucketIdNotFound. (#437)
  • Ensure unprintable_to_hex and unprintable_to_hex return empty string (instead of None) if empty string was supplied as argument.
  • Skip files with invalid filenames when scanning directories (for sync, ...) instead of raising an exception.

2.1.0

15 Apr 13:35
87311b9
Compare
Choose a tag to compare

Changed

  • Use ParallelDownloader for small files instead of SimpleDownloader to avoid blocking on I/O.

Fixed

  • Fix decode_content=True causing an error when downloading tiny and large files.
  • Prevent errors due to the use of "seekable" download strategies for seekable, but not readable files.

Added

2.0.0

02 Apr 12:02
294d056
Compare
Choose a tag to compare

Removed

  • Remove tqdm dependency. Now tqdm has to be explicitly installed to use TqdmProgressListener class.
  • Remove [doc] extras dependency group - moved to dev dependencies.
  • Remove unnecessary packaging package dependency. It's functionality was never explicitly exposed.

Changed

  • Move non-apiver packages (e.g. packages other than b2sdk.v1, b2sdk.v2, ...) to b2sdk._internal to further discourage use of non-public internals.
    If you accidentally used non-public internals, most likely only thing you will need to do, is import from b2sdk.v2 instead of b2sdk.
  • Move logging setup and UrllibWarningFilter class from b2sdk.__init__.py to b2sdk._v3 (and thus b2sdk.v2 & b2sdk.v1).
    This will allow us to remove/change it in new apiver releases without the need to change the major semver version.

Added

  • Add SqliteAccountInfo.get_user_account_info_path to public API.

Infrastructure

1.33.0

15 Mar 15:36
c9c18c9
Compare
Choose a tag to compare

Fixed

  • Escape control characters whenever printing object and bucket names to improve security.
  • Remove unused setuptools from default dependency list.

Added

  • Added control character escaping methods.