We are overjoyed to announce the release of: python-swiftclient 4.3.0: OpenStack Object Storage API Client Library This release is part of the bobcat release series. The source is available from: https://opendev.org/openstack/python-swiftclient Download the package from: https://pypi.org/project/python-swiftclient Please report issues through: https://bugs.launchpad.net/python-swiftclient/+bugs For more details, please see below. 4.3.0 ^^^^^ New Features ************ * Static Large Objects will now be used by default for segmented uploads to clusters that support them. The new "--use-dlo" option may be used to create Dynamic Large Objects, as was the previous behavior without "--use-slo". * Uploads from stdin may now be Dynamic Large Objects by using the new "--use-dlo" option. * The "--timeout" option may now include 's', 'm', and 'h' suffixes similar to the "tempurl" "<time>" argument. Bug Fixes ********* * "499 Client Disconnect" responses are now retried in a manner similar to "408 Request Timeout" responses. * Requests are retried for more SSL errors. Only certificate validation errors will not be retried. * If downloaded content does not match the Content-Length from response headers, the reported error will now highlight Content- Length rather than ETag. * Transaction IDs are now included when downloaded content does not match the expectations set by response headers. * Fix an import error for some distributions by using "importlib" rather than "pkg_resources" when possible. * Various other minor bug fixes and improvements. Changes in python-swiftclient 4.2.0..4.3.0 ------------------------------------------ 236c277 Changelog for 4.3.0 (and 4.2.0) ee952c1 Ensure v*password auth_type correctly implies auth version 825145e trivial: Refactor os_options processing 9c45343 shell: Allow uploads from stdin to specify --use-dlo f96c3cf docs: Fix code-generated docs 6a8675e Use SLO by default for segmented uploads if the cluster supports it 9e703b9 shell: Allow timeouts to have units 099dd66 Retry on SSLError d368644 Metadata updates e343298 Include transaction ID on content-check failures 6adb8bb service: Check content-length before etag 16f0034 Switch from pkg_resources to importlib cf3be52 Update master for stable/2023.1 ff6b359 Retry with fresh socket on 499 Diffstat (except docs and test files) ------------------------------------- ChangeLog | 43 +++++++++ releasenotes/notes/4_3_0_release.yaml | 40 ++++++++ releasenotes/source/2023.1.rst | 6 ++ releasenotes/source/index.rst | 1 + setup.cfg | 6 ++ swiftclient/client.py | 13 ++- swiftclient/service.py | 100 +++++++++++++------- swiftclient/shell.py | 26 +++-- swiftclient/utils.py | 14 +++ swiftclient/version.py | 30 ++++-- test/unit/test_service.py | 112 +++++++++++++++++++++- test/unit/test_shell.py | 172 +++++++++++++++++++++++++++++++++- test/unit/test_swiftclient.py | 59 +++++++++++- 14 files changed, 563 insertions(+), 64 deletions(-)