mirror of
https://github.com/OMGeeky/tarpc.git
synced 2025-12-31 16:44:31 +01:00
* Rewrite tarpc on top of tokio. * Add examples * Move error types to their own module. Also, cull unused error variants. * Remove unused fn * Remove CanonicalRpcError* types. They're 100% useless. * Track tokio master (WIP) * The great error revamp. Removed the canonical rpc error type. Instead, the user declares the error type for each rpc: In the above example, the error type is Baz. Declaring an error is optional; if none is specified, it defaults to Never, a convenience struct that wraps the never type (exclamation mark) to impl Serialize, Deserialize, Error, etc. Also adds the convenience type StringError for easily using a String as an error type. * Add missing license header * Minor cleanup * Rename StringError => Message * Create a sync::Connect trait. Along with this, the existing Connect trait moves to future::Connect. The future and sync modules are reexported from the crate root. Additionally, the utility errors Never and Message are no longer reexported from the crate root. * Update readme * Track tokio/futures master. Add a Spawn utility trait to replace the removed forget. * Fix pre-push hook * Add doc comment to SyncServiceExt. * Fix up some documentation * Track tokio-proto master * Don't set tcp nodelay * Make future::Connect take an associated type for the future. * Unbox FutureClient::connect return type * Use type alias instead of newtype struct for ClientFuture * Fix benches/latency.rs * Write a plugin to convert lower_snake_case idents/types to UpperCamelCase. Use it to add associated types to FutureService instead of boxing the return futures. * Specify plugin = true in snake_to_camel/Cargo.toml. Weird things happen otherwise. * Add clippy.toml
38 lines
1.1 KiB
TOML
38 lines
1.1 KiB
TOML
[package]
|
|
name = "tarpc"
|
|
version = "0.6.0"
|
|
authors = ["Adam Wright <adam.austin.wright@gmail.com>", "Tim Kuehn <timothy.j.kuehn@gmail.com>"]
|
|
license = "MIT"
|
|
documentation = "https://docs.rs/tarpc"
|
|
homepage = "https://github.com/google/tarpc"
|
|
repository = "https://github.com/google/tarpc"
|
|
keywords = ["rpc", "protocol", "remote", "procedure", "serialize"]
|
|
readme = "README.md"
|
|
description = "An RPC framework for Rust with a focus on ease of use."
|
|
|
|
[dependencies]
|
|
bincode = "0.6"
|
|
byteorder = "0.5"
|
|
bytes = "0.3"
|
|
futures = { git = "https://github.com/alexcrichton/futures-rs" }
|
|
futures-cpupool = { git = "https://github.com/alexcrichton/futures-rs" }
|
|
lazy_static = "0.2"
|
|
log = "0.3"
|
|
scoped-pool = "1.0"
|
|
serde = "0.8"
|
|
serde_macros = "0.8"
|
|
snake_to_camel = { path = "src/snake_to_camel" }
|
|
take = "0.1"
|
|
tokio-service = { git = "https://github.com/tokio-rs/tokio-service" }
|
|
tokio-proto = { git = "https://github.com/tokio-rs/tokio-proto" }
|
|
tokio-core = { git = "https://github.com/tokio-rs/tokio-core" }
|
|
|
|
[dev-dependencies]
|
|
chrono = "0.2"
|
|
env_logger = "0.3"
|
|
|
|
[features]
|
|
unstable = ["serde/unstable"]
|
|
|
|
[workspace]
|