Skip to content

Latest commit

 

History

History
83 lines (52 loc) · 3.33 KB

File metadata and controls

83 lines (52 loc) · 3.33 KB

Changelog

Added

  • Add configurable multipart threshold/part size. (#155, thanks @dup2)
  • Introduced a Presigner class to simplify generating presigned URLs and forms. (#150, thanks @treagod)
  • Add status, status_message and headers attributes to all response objects. (#151, thanks @treagod)

Removed

  • The deprecated HTTP initialization interface. (#144, thanks @miry)

Fixed

  • Close HTTP connections in DefaultHttpClientFactory#release to prevent CLOSE_WAIT socket leaks in long-running processes. (#160, thanks @usiegj00)
  • Fix SignatureDoesNotMatch on paginated ListObjectsV2 requests by using URI.encode_www_form for query string values to match V4 signer encoding. (#161, thanks @usiegj00)

Changed

  • The bulk_delete method now raises ArgumentError instead of S3::Exception when the number of keys is 0 or exceeds 1000. (#145, thanks @miry)
  • Replace all usages of Util.encode with the standard library method URI.encode_path. (#153, thanks @treagod)

0.10.0 - 2025-04-21

Changed

  • Move endpoint to client and expose it. (#130, thanks @treagod)
  • Introduce a factory-based mechanism for Awscr::S3::Http, allowing for custom connection strategies (e.g. pooling). (#139, thanks @treagod)

Chores

  • Add release and fix CI badges to README. (#135, thanks @treagod)
  • Support Crystal 1.16. (#136, thanks @miry)

Removed

  • The presigned old interfaces without aws_session_key argument. (#137, thanks @miry)

Breaking

  • Awscr::S3::Http no longer caches a single HTTP::Client for all requests. By default, each request now acquires a fresh client via the new factory. If you relied on persistent keep-alives or a single client across requests, consider implementing a custom factory to retain the old behavior.

0.9.0 - 2025-04-12

Added

  • Add option to include port in presigned url. (#106, thanks @taylorfinnell)
  • Adds option to specify scheme for presigned urls. (#110, thanks @taylorfinnell)
  • Add support for session key to use temporary accounts. (#114, thanks @anton7c3)
  • Support upload of big files. (#112, thanks @joseafga)
  • Setup Logging. (#122, thanks @miry)
  • ci: Validate examples in CI pipeline. (#123, thanks @miry)
  • Use Presigned URL for Minio and DigitalOcean Spaces. (#124, thanks @miry)
  • Setup the integration tests. (#126, thanks @miry)

Fixed

  • Fixed an overflow when files were listed that are above 2G. (#116, thanks @philipp-classen)
  • Fix Awscr::S3::Response::HeadObjectOutput.meta method. (#111 and #128, thanks @compumike and @miry)
  • fixed: retries needs to be incremented to avoid infinite retries. (#129, thanks @philipp-classen)

Changed

  • Migrating more code to use the new session key API. (#115, thanks @philipp-classen)
  • Bump awscr-signer to v0.9.0. (#120, thanks @miry)

0.8.3 - 2021-09-16

Changed

  • Switch from Travis-CI to GitHub Workflows. (#98, thanks @OldhamMade)
  • Use Github CI status badge. (#101, thanks @caspiano)

Added

  • Adds Awscr::S3::Client#copy_object(bucket, source, destination, headers). (#100, thanks @caspiano)