All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Update
vergento version 8
- Update
aws-sdk-*crates to version1.*.0
- Update
aws-sdk-*crates to version1.*.0
- Add ability to create empty archive (#124)
- Update to Rust version 1.71.0
- Update
aws-sdk-*crates to version0.27.0 - Update
aws-smithy-*crates to version0.56
-
Add
CredentialsProvidertrait to support custom way to provide credentialsThe code that uses this crate as a lib can implement this trait and pass it into config
-
Add
aws-sdk-sts v0.27.0as a dependency forssstarcrate -
Add new
role_credentials_providermodule that implements auto refreshing credentialsThis provider assumes the role and gets the temporary credentials and refreshes the credentials when they are close to expiration.
-
Rename several
CreateProgressCallbackmethods to remove thetar_prefix to reflect the fact that the archive might not be tar format in the future. -
Change
CreateProgressCallbacktrait to add databyte_offsetand objecttimestampparameters toarchive_object_writtenmethodThis is a bit of an abuse of the progress callback since this information is not needed for progress reporting and instead will be used in Elastio to populate the index of the S3 backup, however it's an easy change to make that will facilitate our initial indexing impl without having to wait for the new storage API to stabilize.
-
Update AWS SDK crates from 0.54 to 0.55 and 0.24 to 0.27
-
Update to Rust version 1.69.0
-
Update to
rust-cacheaction v2 -
Remove
coverageGHA job since it's consistently broken and thetarpaulinGHA seems abandoned -
Replace deprecated
tempfiledependency withtempdir. This is a dev-only dependency so this shouldn't have any runtime impact. -
Add new
storagemodule with new public API for writing to custom archive formats instead of tarThis isn't actually implemented yet, but we're releasing the API in an experimental state to collect feedback. This new storage API is subject to change and should not be relied upon until we finalize it. For now it's hidden behind the
storagefeature and is not enabled by default. -
Move all dependencies to the workspace level to make it easier to update dependencies in the future.
-
Add new field
user_agenttoConfigto allow callers to customize the user agent when talking to S3 APIs.This is not a breaking change since
Configis marked with thenon_exhaustiveattribute.
- Update AWS SDK crates from 0.52 to 0.54
- Update Tokio to 1.25 and tokio-util to 0.7.7
- Update misc dependencies:
- async-trait v0.1.57 -> v0.1.64
- aws-smith-http to 0.54.4
- base64 v0.20.0 -> v0.21.0
- bytes v1.2.1 -> v1.4.0
- clap v4.0.32 -> v4.1.6
- futures v0.3.24 -> v0.3.26
- http to 0.2.9
- indicatif v0.17.1 -> v0.17.3
- once_cell v1.15.0 -> v1.17.1
- regex v1.6.0 -> v1.7.1
- tokio-stream to 0.1.12
- tracing-test v0.2.3 -> v0.2.4
- vergen v7.4.2 -> v7.5.1
- which v4.3.0 -> v4.4.0
- Add
aws_session_tokenoption forssstar::Configto allow to use AWS temporal credentials
- Add
Synctrait requirement to the inner reader ofssstar::SourceArchive::Reader(..). Now, the inner reader requires implementation of traits:Read + Send + Sync
- Update
base64to 0.20
- The performance of
extractwriting many files to object storage should be improved now. In general, theextractspeed should more or less match the performance of thecreateoperation which produced the archive to be extracted. - Integration tests are updated to work correctly with the multipart checksum logic in recent MinIO releases.
- Increment MSRV to 1.64
- Update AWS SDK for S3 from 0.17 to 0.22
- Update AWS SDK common crates like
aws-config,aws-http, etc from 0.47 to 0.52 - Update
clapfrom 3.x to 4.x
- Report average bytes per second rates at the end of each stage of operation. This modifies the signature of the progress callback traits.
First release published via GitHub Actions. Functionally identical to 0.1.0.
Incomplete release missing ssstar-cli
Incomplete release missing ssstar and ssstar-cli
Initial release