Skip to content

Upgrade tonic from 0.11 to 0.13 and prost from 0.12 to 0.13 #110

@danghoangnhan

Description

@danghoangnhan

Summary

The SDK currently depends on tonic = "0.11.0" and prost = "0.12.6". These are outdated — tonic is now at 0.13+ and prost at 0.13+. Projects that use newer versions of tonic (e.g., 0.13.x) cannot depend on this SDK without version conflicts, since tonic 0.11 and 0.13 expose incompatible types.

Proposed Changes

All changes are mechanical (API renames) with no behavioral differences:

  • Cargo.toml: Bump tonic 0.11→0.13.1, prost 0.12→0.13, base64 0.21→0.22, tonic-build 0.11→0.13
  • build.rs: compile()compile_protos() (renamed in tonic-build 0.13)
  • src/client.rs: Remove tonic::codegen::StdError (removed in tonic 0.13), use Box<dyn std::error::Error + Send + Sync> directly; Endpoint::new(dst)dst.connect()
  • src/{collection,data,error,schema,types,utils}.rs: from_i32()try_from() (prost 0.13 removed from_i32 on generated enums)
  • src/proto/*.rs: Regenerated with tonic-build 0.13
  • Feature flags: tlstls-native-roots + prost (tonic 0.13 restructured TLS features)

Verification

  • cargo build passes cleanly
  • cargo test unit tests pass
  • cargo clippy shows only pre-existing warnings (none introduced by the upgrade)

I'll submit a PR with these changes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions