Lines Matching +full:pr +full:- +full:dependencies +full:- +full:check
1 # gRPC-rs
3 `gRPC-rs` is a Rust wrapper of [gRPC Core](https://github.com/grpc/grpc). [gRPC](http://www.grpc.io…
7 [](https://github.com/tikv/g…
8 [](https://travis-ci.org/tikv/grpc-rs)
12 This project is still under development. The following features with the check marks are supported:
14 - [x] Basic asynchronous unary/steaming call
15 - [x] SSL
16 - [x] Generic call
17 - [x] Connection level compression
18 - [x] Interoperability test
19 - [x] QPS benchmark
20 - [ ] Custom metadata
21 - [x] Health check
22 - [ ] Reflection
23 - [X] Authentication
24 - [ ] Load balance, client side is fully supported, server side load report is not implemented yet.
28 - CMake >= 3.8.0
29 - Rust >= 1.36.0
30 - binutils >= 2.22
31 - LLVM and Clang >= 3.9 if you need to generate bindings at compile time.
35 Bindings are pre-generated for x86_64/arm64 Linux. For other platforms, bindings are generated at c…
39 - Active State Perl
40 - yasm
41 - Visual Studio 2015+
52 If you're getting linker errors when building your project using `gRPC-rs`, head
59 ### Option 1 - Manual Generation
64 $ cargo install protobuf-codegen
70 $ cargo install grpcio-compiler
76 $ protoc --rust_out=. --grpc_out=. --plugin=protoc-gen-grpc=`which grpc_rust_plugin` example.proto
80 ### Option 2 - Programmatic Generation
83 via your `build.rs` by using [protoc-grpcio](https://crates.io/crates/protoc-grpcio).
86 [README](https://github.com/mtp401/protoc-grpcio/blob/master/README.md).
91 [dependencies]
101 [dependencies]
102 grpcio = { version = "0.13", default-features = false, features = ["protobuf-codec"] }
105 ### Feature `prost-codec` and `protobuf-codec`
107 `gRPC-rs` uses `protobuf` crate by default. If you want to use `prost` instead, you can enable
108 `prost-codec` feature. You probably only want to enable only one of the two features. Though
109 grpcio is completely fine with both features enabled at the same time, grpcio-compiler
112 ### Feature `openssl` and `openssl-vendored`
114 `gRPC-rs` comes vendored with `gRPC Core`, which by default uses BoringSSL
116 missing symbols when another one of your dependencies uses OpenSSL. To resolve
117 this, you can tell `gRPC-rs` to use OpenSSL too by specifying `"openssl"` in
121 [dependencies]
125 Feature `openssl-vendored` is the same as feature `openssl` except it will build openssl from
130 See [benchmark](https://github.com/tikv/grpc-rs/tree/master/benchmark) to find out how to run a ben…
133 -------------
137 ------------
139 Make sure to format and test the code before sending a PR.
141 If the content in grpc-sys/grpc is updated, you may need to regenerate bindings: