Using Bzlmod with Bazel 6 or later
- (Bazel 6 only) Enable with
common --enable_bzlmod
in.bazelrc
. - Add to your
MODULE.bazel
file:
bazel_dep(name = "toolchains_protoc", version = "0.3.7")
# Optional: choose a version of protoc rather than the latest.
protoc = use_extension("@toolchains_protoc//protoc:extensions.bzl", "protoc")
protoc.toolchain(
# Creates a repository to satisfy well-known-types dependencies such as
# deps=["@com_google_protobuf//:any_proto"]
google_protobuf = "com_google_protobuf",
# Pin to any version of protoc
version = "v26.0",
)
use_repo(protoc, "com_google_protobuf", "toolchains_protoc_hub")
register_toolchains("@toolchains_protoc_hub//:all")
Using WORKSPACE
Paste this snippet into your WORKSPACE.bazel
file:
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "toolchains_protoc",
sha256 = "ba6c8a455e12117dcafb321b063a2485a76a695cc7d108e8b86daf2e24d99127",
strip_prefix = "toolchains_protoc-0.3.7",
url = "https://github.com/aspect-build/toolchains_protoc/releases/download/v0.3.7/toolchains_protoc-v0.3.7.tar.gz",
)
######################
# toolchains_protoc setup #
######################
# Fetches the toolchains_protoc dependencies.
# If you want to have a different version of some dependency,
# you should fetch it *before* calling this.
# Alternatively, you can skip calling this function, so long as you've
# already fetched all the dependencies.
load("@toolchains_protoc//protoc:repositories.bzl", "rules_protoc_dependencies")
rules_protoc_dependencies()
load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies")
rules_proto_dependencies()
load("@bazel_features//:deps.bzl", "bazel_features_deps")
bazel_features_deps()
load("@toolchains_protoc//protoc:toolchain.bzl", "protoc_toolchains")
protoc_toolchains(
name = "protoc_toolchains",
version = "v25.3",
)
What's Changed
- chore(deps): upgrade Bazel to latest 7 release by @alexeagle in #40
- chore: add Bazel 8 testing by @alexeagle in #39
- Fix mirror protoc release github action by @cerisier in #43
- Add v29.x protoc versions by @cerisier in #44
New Contributors
Full Changelog: v0.3.6...v0.3.7