Skip to content

Commit

Permalink
*: bump 0.6.0 (#467)
Browse files Browse the repository at this point in the history
Signed-off-by: Jay <[email protected]>
  • Loading branch information
BusyJay authored Jun 12, 2020
1 parent 253fa3f commit 19a53b5
Show file tree
Hide file tree
Showing 8 changed files with 60 additions and 19 deletions.
14 changes: 13 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -104,4 +104,16 @@ jobs:
- run: go version ; cargo version ; cmake --version
- run: scripts/reset-submodule.cmd
- run: cargo build
- run: cargo test --all
- run: cargo test --all

Pre-Release:
name: Pre-Release
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: scripts/reset-submodule.cmd
- run: cd grpc-sys && cargo publish --dry-run
- name: Check generated package size
run: |
ls -alh target/package/grpcio-sys-*.crate
test `cat target/package/grpcio-sys-*.crate | wc -c` -le 10485760
13 changes: 12 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,14 @@
# 0.6.0 - 2020-06-12

- Switch to std::future (#447)
- Update gRPC C core to 1.29.1 (#466)
- Change spinlock to parking_lot::Mutex (#468)

# 0.5.3 - 2020-05-07

- Switch to github action and update badge (#459)
- Enable ALPN by default (#456)

# grpcio-sys 0.5.2 - 2020-03-31

- Downgrade bindgen version to be backward compatible. (#452)
Expand All @@ -8,7 +19,7 @@
- Support unix domain socket (#446)
- Build: fix rebuild rules for no prebuilt bindings (#450)

# 0.5.0 - 2019-03-16
# 0.5.0 - 2020-03-16

- Make `build_args` and `channel_args` public (#405)
- Reclaim buffer memory after sending message (#407)
Expand Down
7 changes: 4 additions & 3 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "grpcio"
version = "0.5.1"
version = "0.6.0"
edition = "2018"
authors = ["The TiKV Project Developers"]
license = "Apache-2.0"
Expand All @@ -17,7 +17,7 @@ autoexamples = false
all-features = true

[dependencies]
grpcio-sys = { path = "grpc-sys", version = "0.5.0" }
grpcio-sys = { path = "grpc-sys", version = "0.6.0" }
libc = "0.2"
futures = "0.3"
protobuf = { version = "2.0", optional = true }
Expand Down Expand Up @@ -45,4 +45,5 @@ debug = true
travis-ci = { repository = "tikv/grpc-rs" }

[patch.crates-io]
grpcio-compiler = { path = "compiler", version = "0.5.0", default-features = false }
grpcio-compiler = { path = "compiler", version = "0.6.0", default-features = false }
protobuf-build = { git = "https://github.com/tikv/protobuf-build.git" }
24 changes: 17 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,14 +26,14 @@ This project is still under development. The following features with the check m
## Prerequisites

- CMake >= 3.8.0
- Rust >= 1.19.0
- Rust >= 1.36.0
- binutils >= 2.22
- LLVM and Clang >= 3.9 if you need to generate bindings at compile time.
- By default, the [secure feature](#feature-secure) is provided by boringssl, which requires Go (>=1.7) to build. You can also use openssl instead by enabling [openssl feature](#feature-openssl).
- By default, the [secure feature](#feature-secure) is provided by boringssl. You can also use openssl instead by enabling [openssl feature](#feature-openssl).

For Linux and MacOS, you also need to install gcc (or clang) too.

Bindings are pre-generated for x86_64 Linux. For other platforms, bindings are generated at compile time.
Bindings are pre-generated for x86_64/arm64 Linux. For other platforms, bindings are generated at compile time.

For Windows, you also need to install following software:

Expand Down Expand Up @@ -90,7 +90,7 @@ To include this project as a dependency:

```
[dependencies]
grpcio = "0.4"
grpcio = "0.6"
```

### Feature `secure`
Expand All @@ -100,10 +100,17 @@ mechanism. When you do not need it, for example when working in intranet,
you can disable it by using the following configuration:
```
[dependencies]
grpcio = { version = "0.4", default-features = false, features = ["protobuf-codec"] }
grpcio = { version = "0.6", default-features = false, features = ["protobuf-codec"] }
```

### Feature `openssl`
### Feature `prost-codec` and `protobuf-codec`

`gRPC-rs` uses `protobuf` crate by default. If you want to use `prost` instead, you can enable
`prost-codec` feature. You probably only want to enable only one of the two features. Though
grpcio is completely fine with both features enabled at the same time, grpcio-compiler
will not going to work as expected.

### Feature `openssl` and `openssl-vendored`

`gRPC-rs` comes vendored with `gRPC Core`, which by default uses BoringSSL
instead of OpenSSL. This may cause linking issues due to symbol clashes and/or
Expand All @@ -113,9 +120,12 @@ your `Cargo.toml`'s features list for `gprcio`, which requires openssl (>=1.0.2)

```toml
[dependencies]
grpcio = { version = "0.4.4", features = ["openssl"] }
grpcio = { version = "0.6", features = ["openssl"] }
```

Feature `openssl-vendored` is the same as feature `openssl` except it will build openssl from
bundled sources.

## Performance

See [benchmark](https://github.com/tikv/grpc-rs/tree/master/benchmark) to find out how to run a benchmark by yourself.
Expand Down
2 changes: 1 addition & 1 deletion compiler/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "grpcio-compiler"
version = "0.5.0"
version = "0.6.0"
edition = "2018"
authors = ["The TiKV Project Developers"]
license = "Apache-2.0"
Expand Down
8 changes: 7 additions & 1 deletion grpc-sys/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "grpcio-sys"
version = "0.5.2"
version = "0.6.0"
authors = ["The TiKV Project Developers"]
license = "Apache-2.0"
keywords = ["grpc", "bindings"]
Expand All @@ -26,8 +26,14 @@ exclude = [
"grpc/src/ruby/*",
"grpc/test/core/end2end/*",
"grpc/third_party/zlib/*",
"grpc/third_party/abseil-cpp/absl/time/internal/cctz/testdata",
"grpc/third_party/benchmark/*",
"grpc/third_party/bloaty/*",
"grpc/third_party/boringssl-with-bazel/crypto_test_data.cc",
"grpc/third_party/boringssl-with-bazel/src/fuzz",
"grpc/third_party/boringssl-with-bazel/src/crypto/cipher_extra/test",
"grpc/third_party/boringssl-with-bazel/src/third_party/wycheproof_testvectors",
"grpc/third_party/boringssl-with-bazel/src/third_party/googletest",
"grpc/third_party/libuv/*",
"grpc/third_party/gflags/*",
"grpc/third_party/googletest/*",
Expand Down
4 changes: 2 additions & 2 deletions proto/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "grpcio-proto"
version = "0.5.0"
version = "0.6.0"
edition = "2018"
authors = ["The TiKV Project Developers"]
license = "Apache-2.0"
Expand All @@ -19,7 +19,7 @@ prost-codec = ["prost-derive", "bytes", "lazy_static", "grpcio/prost-codec", "pr

[dependencies]
futures = "0.3"
grpcio = { path = "..", features = ["secure"], version = "0.5.0", default-features = false }
grpcio = { path = "..", features = ["secure"], version = "0.6.0", default-features = false }
bytes = { version = "0.5", optional = true }
prost = { version = "0.6", optional = true }
prost-derive = { version = "0.6", optional = true }
Expand Down
7 changes: 4 additions & 3 deletions tests-and-examples/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,27 +3,28 @@ name = "tests-and-examples"
version = "0.1.0"
edition = "2018"
autoexamples = false
publish = false

[features]
default = ["protobuf-codec"]
protobuf-codec = ["protobuf", "grpcio/protobuf-codec", "grpcio-proto/protobuf-codec"]
prost-codec = ["prost", "bytes", "grpcio/prost-codec", "grpcio-proto/prost-codec"]

[dependencies]
grpcio-sys = { path = "../grpc-sys", version = "0.5.0" }
grpcio-sys = { path = "../grpc-sys", version = "0.6.0" }
libc = "0.2"
futures = "0.3"
protobuf = { version = "2.0", optional = true }
prost = { version = "0.6", optional = true }
bytes = { version = "0.5", optional = true }
log = "0.4"
grpcio = { path = "..", version = "0.5.0", default-features = false, features = ["secure"] }
grpcio = { path = "..", version = "0.6.0", default-features = false, features = ["secure"] }

[dev-dependencies]
serde_json = "1.0"
serde = "1.0"
serde_derive = "1.0"
grpcio-proto = { path = "../proto", version = "0.5.0", default-features = false }
grpcio-proto = { path = "../proto", version = "0.6.0", default-features = false }
rand = "0.7"
slog = "2.0"
slog-async = "2.1"
Expand Down

0 comments on commit 19a53b5

Please sign in to comment.