#aws #s3

s3-ext

Simple Storage Service Extensions for Rust

17 unstable releases (4 breaking)

0.5.1 May 8, 2022
0.4.2 Apr 20, 2022
0.4.0 Dec 11, 2021
0.3.0 Jul 10, 2021
0.1.5 Mar 19, 2020

#26 in #s3

Download history 7/week @ 2023-01-30 38/week @ 2023-02-06 40/week @ 2023-02-13 69/week @ 2023-02-20 1/week @ 2023-02-27 7/week @ 2023-03-06 1/week @ 2023-03-13 2/week @ 2023-03-20 1/week @ 2023-03-27 21/week @ 2023-04-03 13/week @ 2023-04-10 20/week @ 2023-04-17 3/week @ 2023-04-24 2/week @ 2023-05-01 47/week @ 2023-05-08 7/week @ 2023-05-15

60 downloads per month

LGPL-3.0+

37KB
717 lines

S3-Ext - Simple Storage Service Extensions for Rust

crates.io Build Status Documentation codecov

What is S3-Ext

This is a fork of the S4 Crate, the name has been changed, the minimum supported version of rusoto is v0.43.0, and everything is async/await.

S3-ext provides a high-level API for S3 building on top of Rusoto and extending it's API.

What is added that Rusoto itself doesn't provide

  • simple way to create an S3Client
  • download object to a file
  • download object and [Write] it
  • upload object from file
  • [Read] object and upload it
  • simple way to create stream of all objects or objects with a given prefix

Implementation details

Most functionality is provided by the S3Ext trait which is implemented for Rusoto's S3Client.

Running Tests

  1. Start Minio
docker run -d --rm -p 9000:9000 --env "MINIO_ACCESS_KEY=ANTN35UAENTS5UIAEATD" \
--env "MINIO_SECRET_KEY=TtnuieannGt2rGuie2t8Tt7urarg5nauedRndrur" \
--env MINIO_DOMAIN=localhost minio/minio server /minio
  1. Run tests
cargo test --all

Dependencies

~10–44MB
~750K SLoC