Skip to content

build(deps): update ttrpc requirement from 0.9 to 0.10 - #496

Merged
mxpv merged 3 commits into
mainfrom
dependabot/cargo/ttrpc-0.10
Oct 17, 2026
Merged

mxpv merged 3 commits into
mainfrom
dependabot/cargo/ttrpc-0.10

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 14, 2026

Copy link
Copy Markdown
Contributor

Updates the requirements on ttrpc to permit the latest version.

Release notes

Sourced from ttrpc's releases.

ttrpc 0.10.0 and code generators

This coordinated release publishes ttrpc 0.10.0 and its matching code generators. All four crates were published on October 9, 2026 from commit 8fdc03fa7180ac150933eadd7df4f8a4470e1034.

Crate Previous release New release Git tag
ttrpc 0.9.0 0.10.0 v0.10.0
ttrpc-compiler 0.8.0 0.9.0 ttrpc-compiler-v0.9.0
ttrpc-codegen 0.6.0 0.7.0 ttrpc-codegen-v0.7.0
ttrpc-codegen-prost Initial release 0.1.0 ttrpc-codegen-prost-v0.1.0

Highlights

  • Add the Prost 0.13 runtime backend and the first standalone Prost generator, supporting synchronous, asynchronous, and streaming RPCs. (#286)
  • Add Unix connection hooks, per-connection metadata, and payload transforms through the optional security_extension feature. (#316)
  • Enforce async unary deadlines during queueing and writing, preserve stream data/close ordering, and clean up failed or cancelled connections and requests. (#312, #318, #324)
  • Reduce allocations, copying, and transport writes through buffer reuse and frame coalescing. (#327, #328, #337)
  • Improve canonical Google well-known type handling and generated module ordering. (#322, #326, #335)

Compatibility and migration

This release includes breaking API changes and requires Rust 1.80 or newer.

  • rust-protobuf: Upgrade to ttrpc 0.10, ttrpc-codegen 0.7, and ttrpc-compiler 0.9, then regenerate checked-in bindings. Canonical Google well-known RPC types now use protobuf runtime types unless explicitly selected for local generation. Customize and Codegen::customize use compiler 0.9 types; use ttrpc_codegen::Customize or upgrade direct compiler dependencies.
  • Prost: Use ttrpc-codegen-prost 0.1 with Prost 0.13 and install protoc. Configure ttrpc with default-features = false and explicitly enable prost and the desired runtime features (sync and/or async). The prost and rustprotobuf features are mutually exclusive. See the Prost setup guide.
  • Runtime APIs: Direct synchronous TtrpcContext construction requires conn_ctx; asynchronous construction requires connection_data. Custom proto::Codec implementations must provide merge. asynchronous::StreamInner::new is no longer public; use generated clients and typed stream APIs. Replace deprecated response_to_channel calls with TtrpcContext::respond or send_response to preserve payload transforms.
  • Compiler APIs: The unused legacy grpcio prost_codegen module was removed from ttrpc-compiler. Use ttrpc-codegen-prost for ttrpc Prost bindings.

Detailed changelogs

Full source changes since v0.9.0

Changelog

Sourced from ttrpc's changelog.

[0.10.0]

API changes

  • Breaking: Builds with default features disabled must explicitly select either rustprotobuf or prost, along with the desired runtime features. The two protobuf backends are mutually exclusive. (#286)
  • Breaking: Direct construction of synchronous TtrpcContext now requires conn_ctx; asynchronous TtrpcContext requires connection_data. Use a default connection context or ..Default::default() for async test contexts. (#316)
  • Breaking: Custom implementations of proto::Codec must implement the new merge method. (#286)
  • Breaking: asynchronous::StreamInner::new is no longer public; use the generated clients and typed stream APIs instead. (#316)
  • Migration: Regenerate rust-protobuf bindings with ttrpc-codegen 0.7.0 and ttrpc-compiler 0.9.0. For Prost, use ttrpc-codegen-prost 0.1.0 with Prost 0.13 and install protoc.
  • Deprecated: Use TtrpcContext::respond or send_response instead of response_to_channel to preserve per-connection payload transforms. (#316)

Added

  • Added a Prost 0.13 backend for synchronous, asynchronous, and streaming RPCs. (#286)
  • Added the Unix-only security_extension feature with accept/connect hooks, per-connection metadata, and pluggable payload transforms. (#316)
  • Added API documentation, backend setup guides, and Prost examples. (#286, #320, #329)

Changed

  • Reduced allocation and copying by reusing sync receive and async send buffers, using stack-allocated frame headers, and moving owned metadata. (#328)
  • Coalesced sync and async frame headers with a bounded payload prefix, reused sender buffers, and removed boxed futures from internal connection delegates. (#327, #328, #337)
  • Raised the declared minimum supported Rust version from 1.70 to 1.80 and added CI coverage for both protobuf backends and the code generators on Rust 1.80. (#333)

Fixed

  • Enforced async unary request deadlines during queueing and writing, and cleaned up pending registrations when requests time out or are cancelled. (#318)
  • Preserved client stream frame ordering, including data and close frames. (#312)
  • Closed async connections after writer failures. (#324)

... (truncated)

Commits

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Updates the requirements on [ttrpc](https://github.com/containerd/ttrpc-rust) to permit the latest version.
- [Release notes](https://github.com/containerd/ttrpc-rust/releases)
- [Changelog](https://github.com/containerd/ttrpc-rust/blob/master/CHANGELOG.md)
- [Commits](containerd/ttrpc-rust@ttrpc-compiler-v0.9.0...v0.10.0)

---
updated-dependencies:
- dependency-name: ttrpc
  dependency-version: 0.10.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added the T-dependencies Pull requests that update a dependency file label Oct 14, 2026
@github-actions github-actions Bot added the C-shim-protos Shim protos label Oct 14, 2026
ttrpc 0.10 made the protobuf backend an explicit feature, so a build
with default features disabled must select `rustprotobuf`, otherwise
its build script fails to compile. It pairs with ttrpc-codegen 0.7 and
ttrpc-compiler 0.9, which emit the new handler forms.

The new compiler resolves Google well-known types through the
`protobuf` runtime unless their .proto files are generated explicitly,
so the service traits now use `protobuf::well_known_types::empty::Empty`.
Stop generating a crate-local `Empty` and re-export the runtime type
from `types::empty` instead. `api::Empty` and `types::empty::Empty`
remain valid paths but now name the runtime type.

The sync `TtrpcContext` gained a required `conn_ctx` field and the
async one `connection_data`; fill them in the test constructors.
@github-actions github-actions Bot added the C-runc-shim Runc shim label Oct 17, 2026
zvariant, zvariant_derive and zbus_names were merged into zbus 6.0.0
and are now flagged as unmaintained (RUSTSEC-2026-0370, -0371, -0372).
They come in through cgroups-rs, which still depends on zbus 5, so
ignore them until cgroups-rs upgrades.
@github-actions github-actions Bot added the T-CI Changes in project's CI label Oct 17, 2026
@mxpv
mxpv added this pull request to the merge queue Oct 17, 2026
Merged via the queue into main with commit 832354a Oct 17, 2026
30 checks passed
@dependabot
dependabot Bot deleted the dependabot/cargo/ttrpc-0.10 branch October 17, 2026 22:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

C-runc-shim Runc shim C-shim-protos Shim protos T-CI Changes in project's CI T-dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant