Skip to content

Unilang/rules_proto

This branch is 29 commits behind bazelbuild/rules_proto:main.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

A Googlercomius
A Googler
and
Jun 26, 2024
b38f0e6 · Jun 26, 2024
Jun 17, 2024
Feb 5, 2024
Jun 19, 2024
Oct 26, 2023
Jun 26, 2024
Mar 6, 2024
Apr 25, 2023
Jun 26, 2024
Jun 26, 2024
Nov 2, 2023
Jul 15, 2019
Oct 10, 2023
Jan 15, 2021
Oct 21, 2023
Oct 5, 2023
Nov 2, 2023
Jul 15, 2019
Jun 26, 2024
Jun 26, 2024
Oct 20, 2023
Jun 26, 2024
Oct 18, 2022
Jun 26, 2024

Repository files navigation

Protobuf Rules for Bazel

  • Postsubmit Build status

This repository contains a Starlark implementation of proto_library and related "base layer" rules in Bazel. It does not provide rules for any specific languages. These are typically expected to be provided in the ruleset for the language.

For a high-level overview of using Protocol Buffers and gRPC with Bazel, see https://bazel-contrib.github.io/SIG-rules-authors/proto-grpc.html.

For the list of Proto rules, see the Bazel documentation.

Roadmap

As of September 2023, this repo is mostly empty and contains stubs for proto_library, ProtoInfo and other proto toolchain support rules.

This will change soon, around the time Bazel 7 is released (in Oct/Nov 2023), because the stubs will be replaced with actual implementations. We plan to remove the native implementations in Bazel 8, at which point rules_proto will be the only way to build Protobuf rules.

As such it's recommended to use this repository now, so that the removal of implementations from Bazel 8 does not cause you problems.

Getting Started

To get started with rules_proto, add the WORKSPACE file snippet from the latest release.

Then, in your BUILD files, import and use the rules:

load("@rules_proto//proto:defs.bzl", "proto_library")
proto_library(
    ...
)

If you're migrating from the native proto rules to rules_proto, you can use the following buildifier command to automate the changes to your BUILD and .bzl files:

buildifier --lint=fix --warnings=native-proto <path/to/BUILD>

Contributing

Bazel and rules_proto are the work of many contributors. We appreciate your help!

To contribute, please read the contribution guidelines: CONTRIBUTING.md.

Note that the rules_proto use the GitHub issue tracker for bug reports and feature requests only.

For asking questions see:

About

Protocol buffer rules for Bazel

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Starlark 82.5%
  • C++ 17.5%