Skip to content

(CHORE)[EX-3143] Upgrade protoc-cpp to 1.13.0#188

Merged
Michael Gunawan (scmichaelg) merged 9 commits intomainfrom
EX-3143-protoc-cpp-updates-2
Apr 9, 2026
Merged

(CHORE)[EX-3143] Upgrade protoc-cpp to 1.13.0#188
Michael Gunawan (scmichaelg) merged 9 commits intomainfrom
EX-3143-protoc-cpp-updates-2

Conversation

@scmichaelg
Copy link
Copy Markdown
Contributor

Summary

  • protoc-cpp 1.12.4 → 1.13.0: Base image updated to protoc:1.15.0, s12-proto 1.36.0 → 1.38.0
  • Added abseil-cpp-dev and pkgconf build dependencies (required for linking against protobuf v24+ on Alpine 3.21)
  • Regenerates wire_options.pb.cc/h at build time using protoc-system (Alpine's protoc 24.4, matching protobuf-dev headers)
  • Temporary sed patch for proto3 optional support in protoc-gen-cruxclient (remove once s12-proto PR #155 is merged)

Depends on

Cleanup after merge

Test plan

🤖 Generated with Claude Code

- Alpine 3.15 → 3.21
- buf 1.8.0 → 1.66.0
- protoc/grpc from Alpine 3.21 community repo (protobuf v24.4, grpc 1.62.1)

Split from upgrade/alpine-3.21-protobuf-v24 to unblock protoc-cpp build.
protoc-gen-workato@latest now requires go >= 1.24.0.
Bump protoc-go version to 3.26.0.
- protoc base image: Alpine 3.15 -> 3.21, buf 1.8.0 -> 1.66.0
  - protoc 3.18.1 -> 24.4, grpc 1.62.1 (from community repo)
- protoc-cpp image: base protoc 1.14.2 -> 1.15.0
  - Add abseil-cpp-dev and pkgconf build deps (required by protobuf v22+)
  - Regenerate wire_options.pb.cc/h during build to match container protobuf
  - Bump version to 1.13.0
- Fix legacy ENV format warning in Dockerfile

Note: CRUX_CLIENT_RELEASE needs updating to a new s12-proto tag
that includes the protobuf v24 string_view compatibility changes
(see SafetyCulture/s12-proto PR upgrade/protobuf-v33-compatibility).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
In Alpine 3.21, grpc_cpp_plugin is in a separate grpc-plugins package.
- protoc/Dockerfile: install protoc 26.1 from official GitHub release
  for code generation; keep Alpine's protoc 24.4 as protoc-system for
  plugin compilation against protobuf-dev headers
- protoc-cpp/build.sh: use protoc-system for wire_options regeneration;
  add temporary sed patch for proto3 optional support (remove once
  s12-proto PR #155 is merged)
- publish.sh: revert -pre tag bypass for protoc/protoc-cpp images
- docs: add migration notes for protoc 1.15.0 and protoc-cpp 1.13.0
protoc-cpp depends on the protoc base image being published first.
Split into a follow-up PR after protoc:1.15.0 is merged and available.
@scmichaelg Michael Gunawan (scmichaelg) requested a review from a team as a code owner March 29, 2026 06:28
@scmichaelg Michael Gunawan (scmichaelg) requested review from Harry Tran (HarryTranAU) and removed request for a team March 29, 2026 06:28
@scmichaelg Michael Gunawan (scmichaelg) changed the title feat: upgrade protoc-cpp to 1.13.0 (CHORE)[EX-3143] Upgrade protoc-cpp to 1.13.0 Mar 29, 2026
@scmichaelg Michael Gunawan (scmichaelg) marked this pull request as draft March 29, 2026 06:30
Base automatically changed from EX-3143-protoc-cpp-updates to main April 7, 2026 05:54
@scmichaelg Michael Gunawan (scmichaelg) marked this pull request as ready for review April 7, 2026 05:58
@scmichaelg Michael Gunawan (scmichaelg) merged commit ba33a6b into main Apr 9, 2026
11 of 17 checks passed
@scmichaelg Michael Gunawan (scmichaelg) deleted the EX-3143-protoc-cpp-updates-2 branch April 9, 2026 00:20
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.

3 participants