feat: bump tonic 0.12→0.14 + tonic-web-wasm-client 0.6→0.9#12
Conversation
tonic 0.14 split prost integration into separate `tonic-prost` (runtime) + `tonic-prost-build` (codegen) crates. tonic itself no longer exposes the `prost` feature. build.rs now calls tonic-prost-build::configure(). API surface is unchanged from the previous tonic-build call. tonic-web-wasm-client 0.9 is the version that pairs with tonic 0.14. Native + wasm32-unknown-unknown both compile clean. Supersedes #7 (tonic), #8 (tonic-web-wasm-client), #9 (prost), #10 (tonic-build).
📝 WalkthroughWalkthroughThis PR upgrades the gRPC-Web WASM client build toolchain for the Sentrix project. The Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
build.rs (1)
1-4:⚠️ Potential issue | 🟡 Minor | ⚡ Quick winUpdate stale header comment to match the new builder crate.
Line 1 still references
tonic-build, but Line 11 now usestonic_prost_build::configure(). Keeping this accurate avoids maintenance confusion.Suggested patch
-// tonic-build invokes protoc at compile time to generate the +// tonic-prost-build invokes protoc at compile time to generate the // `sentrix.v1` Rust module from `proto/sentrix.proto`. We disable // server codegen — this crate is browser-only, no need for the // service stub.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@build.rs` around lines 1 - 4, Update the stale header comment in build.rs to reflect the current builder crate: replace references to "tonic-build" with the new builder name used in this file (tonic_prost_build) and mention that the codegen is configured via tonic_prost_build::configure() rather than tonic-build; ensure the comment still explains that server codegen is disabled for a browser-only crate and that the sentrix.v1 Rust module is generated from proto/sentrix.proto so future readers aren't confused about which crate/configure() call is performing the generation.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Outside diff comments:
In `@build.rs`:
- Around line 1-4: Update the stale header comment in build.rs to reflect the
current builder crate: replace references to "tonic-build" with the new builder
name used in this file (tonic_prost_build) and mention that the codegen is
configured via tonic_prost_build::configure() rather than tonic-build; ensure
the comment still explains that server codegen is disabled for a browser-only
crate and that the sentrix.v1 Rust module is generated from proto/sentrix.proto
so future readers aren't confused about which crate/configure() call is
performing the generation.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: 72169ab8-94fd-43cd-a67d-b2392f942ed0
⛔ Files ignored due to path filters (1)
Cargo.lockis excluded by!**/*.lock,!**/*.lock
📒 Files selected for processing (2)
Cargo.tomlbuild.rs
Cluster A2 of the major-bump audit (WASM gRPC-Web client side).
Changes
API surface
Public exports unchanged.
build.rscallstonic_prost_build::configure()instead oftonic_build::configure()— same builder API.Verification
cargo check(native) — cleancargo check --target wasm32-unknown-unknown— clean (this is the actual deploy target via wasm-pack)Supersedes #7, #8, #9, #10.
Summary by CodeRabbit