Update Rust crate rust-s3 to 0.37.0 #97

Merged
renovate merged 1 commits from renovate/rust-s3-0.x into master 2025-09-17 00:35:28 +00:00
Collaborator

This PR contains the following updates:

Package Type Update Change
rust-s3 dependencies minor 0.36.0-beta.2 -> 0.37.0

Release Notes

durch/rust-s3 (rust-s3)

v0.37.0

Release 0.37.0 - Performance, Reliability, and API Improvements

This release brings significant improvements in performance, memory management, and reliability, along with several bug fixes and new features.

🚀 Performance Improvements

Multipart Upload Optimizations

Memory-bounded parallelism: Implemented smart memory management that prevents OOM errors during large file uploads by dynamically adjusting concurrency based on available memory
Streaming improvements: Added AsyncRead implementation for ResponseDataStream enabling efficient streaming of large objects
🐛 Bug Fixes

Endpoint and URL Handling

Fixed trailing slash issues (#​429): Custom endpoints with trailing slashes no longer cause 403 signature mismatch errors
Fixed standard port preservation (#​419): Presigned URLs now correctly preserve explicit standard ports (80/443) for proper signature validation
Fixed LocalStack compatibility (#​411): Added RUST_S3_SKIP_LOCATION_CONSTRAINT environment variable for LocalStack support
API Correctness

Fixed delete_bucket_lifecycle (#​414): Corrected critical bug that was sending DeleteBucket instead of DeleteBucketLifecycle command, preventing potential data loss
Fixed content-length header (#​428): Excluded content-length header for ListBuckets command
Fixed SSL config propagation (#​415): Bucket::exists() now properly honors dangerous SSL configurations
Fixed sync implementation: Corrected Bucket::get_object_range_to_writer() sync implementation (#​413)
New Features

Builder Pattern for PUT Operations

Added a fluent builder API for PUT operations with custom headers:
bucket.put_object_builder("/my-file.txt", b"Hello, World!")
.with_content_type("text/plain")
.with_cache_control("public, max-age=3600")?
.with_metadata("author", "john-doe")?
.execute()
.await?

Region Support

Added support for R2 EU jurisdiction endpoints (#​409)
Improved custom region handling with better error messages
📚 Documentation

Added comprehensive CLAUDE.md file for AI-assisted development guidelines
Clarified ETag handling behavior in response_data for PUT operations (#​430)
Improved inline documentation for multipart operations


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [rust-s3](https://github.com/durch/rust-s3) | dependencies | minor | `0.36.0-beta.2` -> `0.37.0` | --- ### Release Notes <details> <summary>durch/rust-s3 (rust-s3)</summary> ### [`v0.37.0`](https://github.com/durch/rust-s3/releases/tag/v0.37.0) Release 0.37.0 - Performance, Reliability, and API Improvements This release brings significant improvements in performance, memory management, and reliability, along with several bug fixes and new features. 🚀 Performance Improvements Multipart Upload Optimizations Memory-bounded parallelism: Implemented smart memory management that prevents OOM errors during large file uploads by dynamically adjusting concurrency based on available memory Streaming improvements: Added AsyncRead implementation for ResponseDataStream enabling efficient streaming of large objects 🐛 Bug Fixes Endpoint and URL Handling Fixed trailing slash issues ([#&#8203;429](https://github.com/durch/rust-s3/issues/429)): Custom endpoints with trailing slashes no longer cause 403 signature mismatch errors Fixed standard port preservation ([#&#8203;419](https://github.com/durch/rust-s3/issues/419)): Presigned URLs now correctly preserve explicit standard ports (80/443) for proper signature validation Fixed LocalStack compatibility ([#&#8203;411](https://github.com/durch/rust-s3/issues/411)): Added RUST\_S3\_SKIP\_LOCATION\_CONSTRAINT environment variable for LocalStack support API Correctness Fixed delete\_bucket\_lifecycle ([#&#8203;414](https://github.com/durch/rust-s3/issues/414)): Corrected critical bug that was sending DeleteBucket instead of DeleteBucketLifecycle command, preventing potential data loss Fixed content-length header ([#&#8203;428](https://github.com/durch/rust-s3/pull/428)): Excluded content-length header for ListBuckets command Fixed SSL config propagation ([#&#8203;415](https://github.com/durch/rust-s3/pull/415)): Bucket::exists() now properly honors dangerous SSL configurations Fixed sync implementation: Corrected Bucket::get\_object\_range\_to\_writer() sync implementation ([#&#8203;413](https://github.com/durch/rust-s3/pull/413)) ✨ New Features Builder Pattern for PUT Operations Added a fluent builder API for PUT operations with custom headers: bucket.put\_object\_builder("/my-file.txt", b"Hello, World!") .with\_content\_type("text/plain") .with\_cache\_control("public, max-age=3600")? .with\_metadata("author", "john-doe")? .execute() .await? Region Support Added support for R2 EU jurisdiction endpoints ([#&#8203;409](https://github.com/durch/rust-s3/pull/409)) Improved custom region handling with better error messages 📚 Documentation Added comprehensive CLAUDE.md file for AI-assisted development guidelines Clarified ETag handling behavior in response\_data for PUT operations ([#&#8203;430](https://github.com/durch/rust-s3/issues/430)) Improved inline documentation for multipart operations </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMTUuMyIsInVwZGF0ZWRJblZlciI6IjQxLjExNS4zIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbXX0=-->
renovate added 1 commit 2025-09-17 00:35:28 +00:00
Update Rust crate rust-s3 to 0.37.0
Some checks failed
renovate/artifacts Artifact file update failure
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
03e5c375fb
renovate scheduled this pull request to auto merge when all checks succeed 2025-09-17 00:35:28 +00:00
Author
Collaborator

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: Cargo.lock
Command failed: cargo update --config net.git-fetch-with-cli=true --manifest-path Cargo.toml --package rust-s3@0.36.0-beta.2 --precise 0.37.0
    Updating crates.io index
error: failed to select a version for `ruma`.
    ... required by package `matrix_gateway v0.1.0 (/tmp/renovate/repos/gitea/pierre/MatrixGW)`
versions that meet the requirements `^0.13.0` are: 0.13.0

package `matrix_gateway` depends on `ruma` with feature `client-ext-client-api` but `ruma` does not have that feature.


failed to select a version for `ruma` which could resolve this conflict

### ⚠️ Artifact update problem Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is. ♻ Renovate will retry this branch, including artifacts, only when one of the following happens: - any of the package files in this branch needs updating, or - the branch becomes conflicted, or - you click the rebase/retry checkbox if found above, or - you rename this PR's title to start with "rebase!" to trigger it manually The artifact failure details are included below: ##### File name: Cargo.lock ``` Command failed: cargo update --config net.git-fetch-with-cli=true --manifest-path Cargo.toml --package rust-s3@0.36.0-beta.2 --precise 0.37.0 Updating crates.io index error: failed to select a version for `ruma`. ... required by package `matrix_gateway v0.1.0 (/tmp/renovate/repos/gitea/pierre/MatrixGW)` versions that meet the requirements `^0.13.0` are: 0.13.0 package `matrix_gateway` depends on `ruma` with feature `client-ext-client-api` but `ruma` does not have that feature. failed to select a version for `ruma` which could resolve this conflict ```
renovate merged commit ae1550248e into master 2025-09-17 00:35:28 +00:00
renovate deleted branch renovate/rust-s3-0.x 2025-09-17 00:35:29 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: pierre/MatrixGW#97
No description provided.