6 releases (3 breaking)
0.4.1 | Aug 6, 2020 |
---|---|
0.4.0 | Jul 20, 2020 |
0.3.0 | Apr 8, 2020 |
0.2.0 | Jan 15, 2020 |
0.1.1 | Nov 18, 2019 |
#579 in Science
110KB
161 lines
Rust Pachyderm
Official Rust Pachyderm client. This library provides low-level (auto-generated) bindings to our gRPC services, with support for async/await thanks to tonic. It should work on rust stable 1.39+, as well as nightly/beta.
A Small Taste
Here's an example that creates a repo and adds a file:
//! This creates a PFS repo called `hello-world`
extern crate pachyderm;
extern crate tokio;
extern crate tonic;
use std::error::Error;
use pachyderm::pfs::{client::ApiClient as PfsClient, CreateRepoRequest, Repo};
#[tokio::main]
async fn main() -> Result<(), Box<dyn Error>> {
let mut client = PfsClient::connect("http://localhost:30650").await?;
let request = tonic::Request::new(CreateRepoRequest {
repo: Some(Repo {
name: "hello-world".into()
}),
description: "".into(),
update: false
});
let response = client.create_repo(request).await?;
println!("Response: {:?}", response);
Ok(())
}
Examples
- Hello World: Creates a PFS repo called
hello-world
. To run:cargo run --example hello_world
- OpenCV: This is the canonical Pachyderm/OpenCV demo, ported to this library. To run
cargo run --example opencv
Contributing
This driver is co-maintained by Pachyderm and the community. If you're looking to contribute to the project, this is a fantastic place to get involved. Take a look at the contributing guide for more info.
Dependencies
~9MB
~150K SLoC