- enhancement:
s3
: Added Multi-Region Access Points support to CRT transfers.
- enhancement:Python: Added provisional Python 3.13 support to s3transfer
- bugfix:
awscrt
: Pass operation name to awscrt.s3 to improve error handling.
- bugfix:
urllib3
: Fixed retry handling for IncompleteRead exception raised by urllib3 2.x during data transfer
- feature:
s3
: Added CRT support for S3 Express One Zone
- feature:Python: End of support for Python 3.7
- bugfix:Subscribers: Added caching for Subscribers to improve throughput by up to 24% in high volume transfer
- enhancement:
s3
: Added support for defaulting checksums to CRC32 for s3express.
- enhancement:
crt
: Automatically configure CRC32 checksums for uploads and checksum validation for downloads through the CRT transfer manager. - feature:
crt
: S3transfer now supports a wider range of CRT functionality for uploads to improve throughput in the CLI/Boto3. - enhancement:
Botocore
: S3Transfer now requires Botocore >=1.32.7 - enhancement:
crt
: Updatetarget_throughput
defaults. If not configured, s3transfer will use the AWS CRT to attempt to determine a recommended target throughput to use based on the system. If there is no recommended throughput, s3transfer now falls back to ten gigabits per second. - enhancement:
crt
: Add support for uploading and downloading file-like objects using CRT transfer manager. It supports both seekable and non-seekable file-like objects.
- feature:
SSE-C
: Pass SSECustomer* arguments to CompleteMultipartUpload for upload operations
- enhancement:Python: Added provisional Python 3.12 support to s3transfer
- bugfix:copy: Added support for
ChecksumAlgorithm
when uploading copy data in parts.
- feature:Python: Dropped support for Python 3.6
- enhancement:
s3
: Added support for flexible checksums when uploading or downloading objects.
- enhancement:Python: Officially add Python 3.10 support
- feature:Python: Dropped support for Python 2.7
- enhancement:s3: Add support for
ExpectedBucketOwner
. Fixes #181.
- enhancement:
crt
: Addset_exception
toCRTTransferFuture
to allow setting exceptions in subscribers.
- feature:
crt
: Add optional AWS Common Runtime (CRT) support. The AWS CRT provides a C-based S3 transfer client that can improve transfer throughput.
- bugfix:ReadFileChunk: Fix seek behavior in ReadFileChunk class
- bugfix:packaging: Fix setup.py metadata for futures on Python 2.7
- enhancement:
s3
: Block TransferManager methods for S3 Object Lambda resources
- enhancement:s3: Add server side encryption context into allowed list
- bugfix:dependency: Updated botocore version range to allow for developmental installs.
- bugfix:s3: Fixes boto/botocore`#1916 <https://github.com/boto/botocore/issues/1916>`__
- enhancement:
TransferManager
: Exposeclient
andconfig
properties - enhancement:Tags: Add support for
Tagging
andTaggingDirective
- feature:Python: Dropped support for Python 2.6 and 3.3.
- enhancment:ProcessPool: Adds user agent suffix.
- feature:
ProcessPoolDownloader
: AddProcessPoolDownloader
class to speed up download throughput by using processes instead of threads.
- bugfix:
RequestPayer
: Plumb ``RequestPayer` argument to the ``CompleteMultipartUpload` operation (#103).
- enhancement:
max_bandwidth
: Add ability to set maximum bandwidth consumption for streaming of S3 uploads and downloads
- bugfix:TransferManager: Properly handle unicode exceptions in the context manager. Fixes #85
- feature:
TransferManager
: Expose ability to use own executor class forTransferManager
- feature:
TransferFuture
: Add support for setting exceptions on transfer future
- feature:download: Support downloading to FIFOs.
- bugfix:TransferManager: Fix memory leak when using same client to create multiple TransferManagers
- bugfix:download: Fix issue where S3 Object was not downloaded to disk when empty
- bugfix:Cntrl-C: Fix issue of hangs when Cntrl-C happens for many queued transfers
- feature:cancel: Expose messages for cancels
- feature:chunksize: Automatically adjust the chunksize if it doesn't meet S3s requirements.
- bugfix:Download: Add support for downloading to special UNIX file by name
- feature:delete: Add a
.delete()
method to the transfer manager. - bugfix:seekable upload: Fix issue where seeked position of seekable file for a nonmultipart upload was not being taken into account.
- bugfix:download: Patch memory leak related to unnecessarily holding onto futures for downloads.
- bugfix:deadlock: Fix deadlock issue described here: https://bugs.python.org/issue20319 with using concurrent.futures.wait
- feature:copy: Add support for managed copies.
- feature:download: Add support for downloading to a filename, seekable file-like object, and nonseekable file-like object.
- feature:general: Add
TransferManager
class. All public functionality fors3transfer
is exposed through this class. - feature:subscribers: Add subscriber interface. Currently supports on_queued, on_progress, and on_done status changes.
- feature:upload: Add support for uploading a filename, seekable file-like object, and nonseekable file-like object.
- feature:manager: Add boto3 s3 transfer logic to package. (issue 2)