You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Bump to rules_proto 6.0.2, separate protobuf 21.7 (#1623)
* Bump to rules_proto 6.0.2, separate protobuf 21.7
This is in preparation for adding a `MODULE.bazel` file, which will
bring in dependencies that use rules_proto 6.x. This change avoids that
warning, and changing it now ensures that `WORKSPACE` builds are still
compatible.
As explained in the 6.0.0 release notes, rules_proto 6.x no longer
depends directly on com_google_protobuf, so we need to import it
separately. We're keeping the Protobuf version as 21.7 for now, because
Protobuf 22.x requires C++14 at a minimum, which Bazel 6.x doesn't
support by default:
- https://protobuf.dev/news/v22/#c11-support
- https://github.com/protocolbuffers/protobuf/releases/tag/v22.0
The downside is that, unline rules_proto-5.3.0-21.7, we now
end up building (and occasionally rebuilding) `protoc` as part of our
build. However, this also enables clients to try "Protobuf
Toolchainization" to download precompiled `protoc` binaries.
- https://github.com/bazelbuild/rules_proto/releases/tag/6.0.0
- https://docs.google.com/document/d/1CE6wJHNfKbUPBr7-mmk_0Yo3a4TaqcTPE0OWNuQkhPs/edit
For now, Protobuf Toolchainization requires Bazel 6.5.0 or Bazel >= 7
and the `--incompatible_enable_proto_toolchain_resolution` flag:
- https://bazel.build/reference/command-line-reference#flag--incompatible_enable_proto_toolchain_resolution
I've got a working draft implementation in a separate branch, though
that experiment is certainly not urgent.
* Update check for existing com_google_protobuf
I'd previously checked for an existing `protobuf` rule, not
`com_google_protobuf`. D'oh!
0 commit comments