Skip to content

Update protobuf runtime to v1.33.0 - #19

Merged
piotr-roslaniec merged 5 commits into
devfrom
codex/deps-protobuf-runtime
Sep 25, 2026
Merged

piotr-roslaniec merged 5 commits into
devfrom
codex/deps-protobuf-runtime

Conversation

@mswilkison

@mswilkison mswilkison commented Sep 14, 2026 •

Copy link
Copy Markdown

Upgrade google.golang.org/protobuf from v1.27.1 to v1.33.0, the published fixed version for GHSA-8r3f-844c-mc37 (Dependabot alert #10). Raise the module's Go minimum to 1.17, as required by that runtime.

The existing binary message format is covered by fixed vectors captured with v1.27.1 for all four generated schemas and the actual Any transport path. The runtime update preserves those bytes, parsed content, and routing. Generated files and schemas are retained; the generator-version check in #18 remains separate.

Validation:

  • New binary and transport compatibility tests pass on both the previous and updated runtimes.
  • Complete tss, common, and ecdsa/signing suites pass, including ordinary signing and HD signing.
  • Repository-wide vet, compilation of every package/test, module checksum verification, formatting, and independent patch review pass.
  • Selected production dependency metadata resolves Google protobuf packages to v1.33.0. No older Google runtime alias is introduced.

This updates an advisory-affected dependency pin. It does not claim that the affected JSON parser was reachable through tss-lib's binary transport.

Notes

  • Go 1.17 minimum toolchain. go.mod now declares go 1.17 (a consequence of the protobuf v1.33.0 requirement). Downstream consumers whose toolchain is older than 1.17 must upgrade before adopting this version; the tss, common, and ecdsa/signing suites are verified on the repo's CI toolchain (1.24.x).
  • Wire-format guard is the fixed vectors, not a dual-runtime CI job. The "both the previous and updated runtimes" line above describes a one-time verification. The durable, version-independent guard is the set of fixed binary vectors in tss/protobuf_compatibility_test.go (captured on v1.27.1); they will fail under any future runtime bump that changes the encoding, so no separate old+new CI matrix is needed.
  • Future advisories. This pin is aligned to the named advisory's published fix; subsequent google.golang.org/protobuf advisories will require follow-up dependency bumps, as usual.
  • Release workflow. The .github/workflows/release.yml file is not modified by this change. An earlier review misread it as a deletion because this branch was cut from a base that predates its introduction on master; the branch is being updated to the current base so the diff is clean.

Full repository test and formatting CI runs at head 26537a0 follow the push; earlier runs (test, formatting) passed at 0eb767d9dbc7101a3fc7c4140b14f1091afa2a06.

Raise the minimum Go version to 1.17 as required by the patched runtime. Preserve generated schemas and add binary encoding controls captured on the previous runtime.
piotr-roslaniec and others added 4 commits September 17, 2026 18:51
Extracts the section matching the pushed tag's version (Keep a Changelog
format) and publishes it as the release body via softprops/action-gh-release.
Release-publishing only; does not touch or duplicate gofmt.yml/test.yml.
ci: publish a GitHub Release from CHANGELOG.md on v* tag push
- PR #19 added to the unreleased PR-stack list
- 'Security & correctness hardening (non-breaking)' entry: protobuf v1.33.0
  (GHSA-8r3f-844c-mc37 / Dependabot alert #10) + go 1.17 toolchain floor
@piotr-roslaniec
piotr-roslaniec merged commit 435d5ba into dev Sep 25, 2026
2 checks passed
piotr-roslaniec added a commit that referenced this pull request Sep 29, 2026
Keep the #19 and #17 changelog entries and correct the round-5 rx secrecy
wording identified during review.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants