Bazel 9 Upstream Prebuilt Protobuf
Blog post from Aspect Build
Bazel 9.0 is a significant long-term support release introducing new features and backward-incompatible changes, notably always enabling Bzlmod while removing all WORKSPACE logic and requiring C++ rules to be loaded from @rules_cc as part of the Starlark project. The release includes the latest protobuf module, version 33.4, which supports a prebuilt protobuf compiler, enhancing the speed and efficiency of Bazel. With Bazel 9, the --incompatible_enable_proto_toolchain_resolution flag is automatically enabled, allowing it to resolve the symbol @protobuf//bazel/private:proto_toolchain_type to an appropriate toolchain for the execution platform. Users on earlier versions must manually set this flag. To facilitate the transition to Bazel 9, Aspect Build offers migration support and guidance on adapting to the changes, while repositories like toolchains_protoc and rules_proto are now archived, marking the end of their deprecation.