-
Notifications
You must be signed in to change notification settings - Fork 874
Feature/transfermanager #4193
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: development
Are you sure you want to change the base?
Feature/transfermanager #4193
Conversation
…pdate docs and sync exception handling (#4187)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR introduces a new Transfer Manager feature for the AWS .NET SDK's S3 service, specifically adding enhanced download capabilities with response objects and lifecycle events. The changes include:
- New response-based methods for upload/download operations that return metadata
- Lifecycle events (initiated, completed, failed) for transfer operations
- Enhanced multipart download streaming with buffering support
- Atomic file operations for safer downloads
- Comprehensive test coverage for new functionality
Reviewed changes
Copilot reviewed 106 out of 127 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| BufferedMultipartStreamTests.cs | Unit tests for buffered multipart streaming functionality |
| BufferedDownloadConfigurationTests.cs | Unit tests for download configuration validation |
| BufferedDataSourceTests.cs | Unit tests for buffered data source reading |
| AtomicFileHandlerTests.cs | Unit tests for atomic file operations |
| TransferUtilityUploadDirectoryWithResponseTests.cs | Integration tests for directory upload with response |
| TransferUtilityUploadDirectoryLifecycleTests.cs | Integration tests for upload directory lifecycle events |
| TransferUtilityTests.cs | Enhanced integration tests with lifecycle events and response methods |
| TransferUtilityOpenStreamTests.cs | Integration tests for enhanced streaming downloads |
| TransferUtilityDownloadWithResponseTests.cs | Integration tests for file download with response |
| TransferUtilityDownloadDirectoryWithResponseTests.cs | Integration tests for directory download with response |
| TransferUtilityDownloadDirectoryLifecycleTests.cs | Integration tests for download directory lifecycle events |
| GetObjectTests.cs | Integration test for ContentLanguage header handling |
| AssemblyInfo.cs | Added InternalsVisibleTo for Moq dynamic proxy |
| ContentRangeParser.cs | New utility for parsing S3 ContentRange headers |
| TransferUtility.sync.cs | Synchronous wrapper methods for new response-based APIs |
| TransferUtility.async.cs | Async implementations for response-based directory operations |
| ITransferUtility.async.cs | Interface additions for response-based async methods |
| TransferUtilityUploadDirectoryResponse.cs | New response object for directory uploads |
| TransferUtilityOpenStreamResponse.cs | New response object for stream operations |
| TransferUtilityOpenStreamRequest.cs | Added MaxInMemoryParts property |
| TransferUtility.cs | Updated logger initialization and upload command return type |
Description
Motivation and Context
Testing
Screenshots (if appropriate)
Types of changes
Checklist
License