Skip to content

build(deps): update oneio requirement from 0.21 to 0.22#283

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/oneio-0.22
Open

build(deps): update oneio requirement from 0.21 to 0.22#283
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/oneio-0.22

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot Bot commented on behalf of github May 4, 2026

Updates the requirements on oneio to permit the latest version.

Release notes

Sourced from oneio's releases.

v0.22.0

Breaking changes

  • Migrated S3 implementation from rust-s3 to rusty-s3 (sans-IO signing + reqwest HTTP)
    • s3_bucket() now returns S3Bucket instead of rust_s3::Bucket
    • s3_stats() now returns S3ObjectMetadata instead of rust_s3::serde_types::HeadObjectResult
    • Removed re-export of rust-s3 types; all S3 types are now owned by oneio
  • s3_list() keeps returning Vec<String> for backward compatibility

Changed

  • S3 operations now use the same reqwest HTTP client as HTTP operations (no duplicate HTTP stack)
  • Single PUT uploads for files smaller than the multipart threshold (default: 5MB)
  • Multipart uploads use 8MB chunks with auto-calculated part sizing for very large files
  • S3Config is now a public type with endpoint/region fields
  • Added ONEIO_S3_MULTIPART_THRESHOLD environment variable to configure when to use multipart upload (default: 5MB, the S3 minimum part size)

Bug fixes

  • Fixed s3_copy() to use AWS Signature V4 Authorization header for S3-compatible services like R2
  • Fixed digest command to work with remote URLs (HTTP, HTTPS, FTP, S3)
  • Fixed s3_list() to decode URL-encoded keys returned by ListObjectsV2
  • Fixed oneio s3 list CLI flag parsing by removing the -d short-flag collision
Changelog

Sourced from oneio's changelog.

v0.22.0 -- 2026-05-01

Breaking changes

  • Migrated S3 implementation from rust-s3 to rusty-s3 (sans-IO signing + reqwest HTTP)
    • s3_bucket() now returns S3Bucket instead of rust_s3::Bucket
    • s3_stats() now returns S3ObjectMetadata instead of rust_s3::serde_types::HeadObjectResult
    • Removed re-export of rust-s3 types; all S3 types are now owned by oneio
  • s3_list() keeps returning Vec<String> for backward compatibility

Changed

  • S3 operations now use the same reqwest HTTP client as HTTP operations (no duplicate HTTP stack)
  • Single PUT uploads for files smaller than the multipart threshold (default: 5MB)
  • Multipart uploads use 8MB chunks with auto-calculated part sizing for very large files
  • S3Config is now a public type with endpoint/region fields
  • Added ONEIO_S3_MULTIPART_THRESHOLD environment variable to configure when to use multipart upload (default: 5MB, the S3 minimum part size)

Bug fixes

  • Fixed s3_copy() to use AWS Signature V4 Authorization header for S3-compatible services like R2
  • Fixed digest command to work with remote URLs (HTTP, HTTPS, FTP, S3)
  • Fixed s3_list() to decode URL-encoded keys returned by ListObjectsV2
  • Fixed oneio s3 list CLI flag parsing by removing the -d short-flag collision

v0.21.0 -- 2026-03-27

Breaking changes

  • OneIoError is now #[non_exhaustive]; match expressions without a wildcard _ arm will fail to compile
  • OneIoBuilder::header() now accepts typed HeaderName/HeaderValue (infallible) instead of (K, V) -> Result<Self>
  • OneIoBuilder::user_agent() now accepts a typed HeaderValue (infallible) instead of V -> Result<Self>
  • oneio::download() no longer accepts an Option<reqwest::blocking::Client> parameter
  • oneio::remote module is now pub(crate); create_client_with_headers is deprecated (use OneIo::builder().header_str())
  • ProgressReader and ProgressCallback are no longer part of the public API

Changed

  • Flattened module layout: src/oneio/ sub-directory removed; all modules are now at src/ level
  • OneIo and OneIoBuilder are now the primary API surface; free-standing functions delegate to a shared default client
  • Compression detection strips URL query parameters and fragments before reading the file extension
  • download_with_retry() uses exponential backoff between retry attempts (100ms × 2^attempt, capped at 6400ms)
  • Stream cache writes to disk via std::io::copy instead of buffering the full payload in memory
  • download_async() now preserves raw bytes, matching download()
  • Default blocking HTTP clients are reused across reads and content-length probes
  • Stateless read and download helpers now delegate to a reusable OneIo client internally
  • S3 status failures now use structured errors instead of string parsing
  • S3 readers now stream data through a bounded channel instead of materializing the full object in memory

Added

  • OneIoBuilder::header_str(name, value) — string convenience for adding headers (panics on invalid input, matching reqwest convention)
  • OneIoBuilder::configure_http(f) — escape hatch for setting any reqwest::blocking::ClientBuilder option
  • OneIoBuilder::timeout(), connect_timeout() — request and connect timeouts
  • OneIoBuilder::proxy(), no_proxy() — proxy configuration
  • OneIoBuilder::redirect() — redirect policy

... (truncated)

Commits
  • 00e3d8d prepare v0.22.0 release
  • 7078cce remove temporary doc
  • 9db52d2 Merge pull request #71 from bgpkit/dev/migrate-to-rusty-s3
  • 111ca0c ci: update actions/checkout from v4 to v5 (Node 22)
  • 230140a ci: add S3 integration test job against Cloudflare R2
  • a318a1d fix: use case-insensitive ETag header constant
  • 59d2248 fix: address PR #71 review issues
  • cacbd3c fix: address remaining review issues
  • 157689b chore: revert version bump and add version check to release checklist
  • d9533b7 fix: address MAGI round 4 review issues (Claude Sonnet)
  • Additional commits viewable in compare view

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file rust Pull requests that update rust code labels May 4, 2026
Updates the requirements on [oneio](https://github.com/bgpkit/oneio) to permit the latest version.
- [Release notes](https://github.com/bgpkit/oneio/releases)
- [Changelog](https://github.com/bgpkit/oneio/blob/main/CHANGELOG.md)
- [Commits](bgpkit/oneio@v0.21.0...v0.22.0)

---
updated-dependencies:
- dependency-name: oneio
  dependency-version: 0.22.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot force-pushed the dependabot/cargo/oneio-0.22 branch from eecee20 to a13e682 Compare May 11, 2026 13:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file rust Pull requests that update rust code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants