uplink 0.0.2

Idiomatic and safe Rust binding for the Storj Lib Uplink
Documentation

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:

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 main branch.
  • 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.