Releases: Backblaze/b2-sdk-python
Releases · Backblaze/b2-sdk-python
2.6.0
Removed
- Remove Python 3.7 support in new releases.
Under Python 3.7pipwill keep resolving the latest version of the package that supports active interpreter.
Python 3.8 is now the minimum supported version, until it reaches EOL in October 2024.
We encourage use of the latest stable Python release.
Fixed
- Fixed datetime.utcnow() deprecation warnings under Python 3.12.
Added
- Declare official support for Python 3.13 in b2sdk.
Test b2sdk against Python 3.13 in CI.
Infrastructure
- Upgraded to pytest 8 (#484).
2.5.1
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
Fixed
- Fix TruncatedOutput errors when downloading files over congested network (fixes B2_Command_Line_Tool#554).
- Ensure
FileSimulator.as_download_headersreturnsdict[str, str]mapping.
Added
- Add
unhide_filemethod to Bucket class.
Doc
- Improve
download_file_from_urlmethods type hints.
Infrastructure
- Limit max CI (Github Actions) duration to 90 minutes.
2.4.1
2.4.0
Changed
- In
b2sdk.v3theB2Apiwill always createcachefromAccountInfoobject, unlesscacheis provided explicitly.
The current stableb2sdk.v2remains unchanged, i.e.DummyCacheis created by default ifaccount_infowas provided, but notcache.
Documentation forb2sdk.v2was updated with the new recommended usage, e.g.B2Api(info, cache=AuthInfoCache(info)), to achieve the same behavior asb2sdk.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_typesdependency for type annotations that include basic value validation. - Add
daysFromStartingToCancelingUnfinishedLargeFilesoption tolifecycle_rulestype annotation. - Add non-retryable
NoPaymentHistoryexception.
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
Added
- Add
folder_to_list_can_be_a_fileparameter tob2sdk.v2.Bucket.ls, that if set toTruewill allow listing a file versions if path is an exact match.
This parameter won't be included inb2sdk.v3.Bucket.lsand unless suppliedpathends with/, the possibility of path pointing to file will be considered first.
2.2.1
Fixed
- Fix
__str__ofb2sdk.v2.BucketIdNotFoundto return full error message and not just missing bucket ID value.
2.2.0
Added
- Add
has_errors_or_warningsmethod toProgressReportclass.
Fixed
- Ensure
b2sdk.v2.b2httpemitsb2sdk.v2.BucketIdNotFoundexception instead ofb2sdk._v3.BucketIdNotFound. (#437) - Ensure
unprintable_to_hexandunprintable_to_hexreturn empty string (instead ofNone) 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
Changed
- Use ParallelDownloader for small files instead of SimpleDownloader to avoid blocking on I/O.
Fixed
- Fix
decode_content=Truecausing 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
- Add set&get Event Notification rules methods to Bucket API as part of Event Notifications feature Private Preview.
See https://www.backblaze.com/blog/announcing-event-notifications/ for details.
2.0.0
Removed
- Remove
tqdmdependency. Nowtqdmhas to be explicitly installed to useTqdmProgressListenerclass. - Remove
[doc]extras dependency group - moved to dev dependencies. - Remove unnecessary
packagingpackage dependency. It's functionality was never explicitly exposed.
Changed
- Move non-apiver packages (e.g. packages other than
b2sdk.v1,b2sdk.v2, ...) tob2sdk._internalto 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 fromb2sdk.v2instead ofb2sdk. - Move logging setup and
UrllibWarningFilterclass fromb2sdk.__init__.pytob2sdk._v3(and thusb2sdk.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_pathto public API.
Infrastructure
- Update to GitHub Actions using Node 20.