Storj Uplink Library for Rust
Safe and idiomatic Rust crate library for the Storj Uplink Library.
THIS IS WIP, there is not any estimation of time nor a commitment when this Rust binding will have all the functionalities, so don't use it for any non-pet project.
Implementation
This crate wraps the uplink-sys crate present in this same repository for
offering an safe and idiomatic Rust Storj Uplink.
Development plan and status
Entities:
- Access
- Bucket
- Bucket Iterator
- Config
- Custom Metadata
- Download
- Download Options
- Encryption Key
- List Buckets Options
- List Objects Options
- Object
- Object Iterator
- Permission
- Project
- Share Prefix
- System Metadata
- Upload
- Upload Options
Integration tests:
- Access Grant.
- Create.
- Request an Access Grant with passphrase.
- Parse one.
- Share one.
- Override an encryption key of a specific Bucket and prefix.
- Project
- Create a Bucket.
- Try to create a Bucket which already exists.
- Ensure a Bucket, an existing and non-existing one.
- Stat a Bucket.
- List Buckets.
- Upload an Object.
- Upload an Object with Custom Metadata.
- Download an Object.
- Stat an Object.
- List Objects with and without System and Custom Metadata.
- Delete an Object.
- Delete an empty Bucket.
- Delete a Bucket with objects.
General:
- Add a CI solution (Travis, Github actions, etc.) for running tests,
linters on every PR and when something is merge into the
mainbranch. - Add general documentation about the Storj network and its entities mimicking the original Go Uplink package.
- Add some documentation about the crate design and implementation if the documentation of each module, types, functions, etc., aren't enough.