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

#2217 in Network programming

LGPL-3.0+

38KB
717 lines

S3-Ext - Simple Storage Service Extensions for Rust

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

~11–24MB
~357K SLoC