Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove deprecated tokio-proto and replace with homegrown rpc framework #199

Merged
merged 59 commits into from
Oct 16, 2018
Merged
Show file tree
Hide file tree
Changes from 54 commits
Commits
Show all changes
59 commits
Select commit Hold shift + click to select a range
7d406ba
Update for rustc
tikue Aug 25, 2018
2c0a885
cargo fmt
tikue Aug 25, 2018
542631e
start terroring out $error and sync code
tikue Aug 25, 2018
e8d601d
Tear out Never
tikue Aug 25, 2018
11d0049
Enable 2018 edition
tikue Aug 25, 2018
b0700ec
cargo fmt
tikue Aug 25, 2018
4bc916e
Merge origin/master into rm-error
tikue Aug 28, 2018
bef6cb4
Tear out, like, all the code
tikue Aug 28, 2018
3eea070
Remove unused deps
tikue Aug 28, 2018
59e534a
Only use futures-preview features in dev-dependencies
tikue Aug 28, 2018
5dc1104
Replace FutureReply__ with an async block
tikue Aug 28, 2018
e4647a9
Remove Future prefix, remove unused macro patterns
tikue Aug 28, 2018
8c2c852
(WIP) Fix examples
tikue Aug 30, 2018
9be101a
Cargo fmt
tikue Aug 31, 2018
b9c9816
Fix example
tikue Aug 31, 2018
d58fd43
Fix up pubsub example
tikue Aug 31, 2018
3e2ac5e
Fix tests in src/macros.rs.
tikue Aug 31, 2018
d892530
Move bench to tests/latency.rs.
tikue Aug 31, 2018
8d316d9
Move rpc-framework into tarpc workspace
tikue Aug 31, 2018
36c40c5
Take server::Context by value in response handler
tikue Aug 31, 2018
133ddb5
Make benches run shorter
tikue Aug 31, 2018
4680ae1
Clean up test
tikue Aug 31, 2018
984c20c
Rustfmt
tikue Aug 31, 2018
c5795ae
Unify client::Context and server::Context, removing client::Context.c…
tikue Aug 31, 2018
b5f950d
Copyright headers
tikue Aug 31, 2018
4f863b7
Fix tests and cargo fmt
tikue Aug 31, 2018
2488a08
Fix imports
tikue Aug 31, 2018
c88e98c
Update README
tikue Aug 31, 2018
a94de0f
Remove tls from .travis.yml.
tikue Sep 1, 2018
3e45330
Try to fix travis doc test
tikue Sep 3, 2018
7757d2c
Remove fn reconnecting
tikue Sep 5, 2018
3c469ca
Cargo fmt
tikue Sep 5, 2018
803afe9
Add some doc comments
tikue Sep 5, 2018
6fc82dd
Change Client::send to propagate a call context that is a child of th…
tikue Sep 5, 2018
acf1fbf
Move next_request_id into dispatch::Channel.
tikue Sep 10, 2018
7b3d260
Move all client logic into Channel.
tikue Sep 10, 2018
20e9e2a
Cargo fmt
tikue Sep 10, 2018
7448a69
Rename Client::send to Client::call
tikue Sep 10, 2018
9ea391a
Remove edition feature from Cargo.toml, as it is now stable.
tikue Sep 10, 2018
739359a
Fix request leak in the server.
tikue Sep 11, 2018
3f41e4b
Remove doc comments from struct creation
tikue Sep 11, 2018
1534676
Use Duration's new built-in Debug
tikue Sep 13, 2018
0cda3f3
Remove usage of extern crate
tikue Sep 17, 2018
43f081e
Cargo fmt
tikue Sep 17, 2018
97db12b
Fix crate paths for recent rustc change.
tikue Sep 19, 2018
f350a86
Fix unused import warning
tikue Sep 19, 2018
9ae9c88
Feature gate serde in tarpc
tikue Sep 19, 2018
cdc3a34
Add example to tarpc crate doc
tikue Sep 19, 2018
9b0329c
Try (and fail?) to make doc tests work for readme
tikue Sep 19, 2018
4bddea5
Add example-service crate that documents expanded types
tikue Sep 19, 2018
4a9fb52
rustfmt
tikue Sep 19, 2018
0cc85e7
Actually feature-gate serde in tarpc
tikue Sep 19, 2018
baa70fa
(WIP) split example into lib and main files
tikue Sep 19, 2018
ba086ed
Enable all features when testing.
tikue Sep 19, 2018
e6741a2
(WIP) update for futures API changes
tikue Oct 13, 2018
050639e
Make tests compile and use current_thread in tests.
tikue Oct 14, 2018
be378c2
Remove unused plugin macro
tikue Oct 16, 2018
89b0aa4
Convert plugins crate from an actual plugin to a proc-macro.
tikue Oct 16, 2018
59e4672
Tear out the existential types stuff since it's highly unstable.
tikue Oct 16, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 4 additions & 26 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,34 +1,12 @@
language: rust
sudo: false

rust:
- nightly
sudo: false
cache: cargo

os:
- osx
- linux

addons:
apt:
packages:
- libcurl4-openssl-dev
- libelf-dev
- libdw-dev

before_script:
- |
pip install 'travis-cargo<0.2' --user &&
export PATH=$HOME/.local/bin:$PATH

script:
- |
travis-cargo build -- --features tls && travis-cargo test -- --features tls && travis-cargo bench -- --features tls &&
rustdoc --test README.md -L target/debug/deps -L target/debug &&
travis-cargo build && travis-cargo test && travis-cargo bench

after_success:
- travis-cargo coveralls --no-sudo

env:
global:
# override the default `--features unstable` used for the nightly branch
- TRAVIS_CARGO_NIGHTLY_FEATURE=""
- cargo test --all --all-features
64 changes: 9 additions & 55 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,56 +1,10 @@
[package]
name = "tarpc"
version = "0.12.1"
authors = ["Adam Wright <[email protected]>", "Tim Kuehn <[email protected]>"]
license = "MIT"
documentation = "https://docs.rs/tarpc"
homepage = "https://github.com/google/tarpc"
repository = "https://github.com/google/tarpc"
keywords = ["rpc", "network", "server", "api", "tls"]
categories = ["asynchronous", "network-programming"]
readme = "README.md"
description = "An RPC framework for Rust with a focus on ease of use."

[badges]
travis-ci = { repository = "google/tarpc" }

[dependencies]
bincode = "1.0"
byteorder = "1.0"
bytes = "0.4"
cfg-if = "0.1.0"
futures = "0.1.11"
lazy_static = "1.0"
log = "0.4"
net2 = "0.2"
num_cpus = "1.0"
serde = "1.0"
serde_derive = "1.0"
tarpc-plugins = { path = "src/plugins", version = "0.4.0" }
thread-pool = "0.1.1"
tokio-codec = "0.1"
tokio-core = "0.1.6"
tokio-io = "0.1"
tokio-proto = "0.1.1"
tokio-service = "0.1"

# Optional dependencies
native-tls = { version = "0.1", optional = true }
tokio-tls = { version = "0.1", optional = true }

[dev-dependencies]
chrono = "0.4"
env_logger = "0.5"
futures-cpupool = "0.1"
clap = "2.0"
serde_bytes = "0.10"

[target.'cfg(target_os = "macos")'.dev-dependencies]
security-framework = "0.2"

[features]
default = []
tls = ["tokio-tls", "native-tls"]
unstable = ["serde/unstable"]

[workspace]

members = [
"example-service",
"rpc",
"trace",
"bincode-transport",
"tarpc",
"plugins",
]
Loading