Skip to content

Releases: bazelbuild/rules_proto

7.0.2

12 Nov 12:14
Compare
Choose a tag to compare

Using bzlmod with Bazel 6 or later:

  1. [Bazel 6] Add common --enable_bzlmod to .bazelrc.

  2. Add to your MODULE.bazel file:

bazel_dep(name = "rules_proto", version = "7.0.1")

Using WORKSPACE:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "rules_proto",
    sha256 = "0e5c64a2599a6e26c6a03d6162242d231ecc0de219534c38cb4402171def21e8",
    strip_prefix = "rules_proto-7.0.2",
    url = "https://github.com/bazelbuild/rules_proto/releases/download/7.0.2/rules_proto-7.0.2.tar.gz",
)

load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies")
rules_proto_dependencies()

load("@rules_proto//proto:setup.bzl", "rules_proto_setup")
rules_proto_setup()

What's Changed

  • Adding back reference to ProtoLangToolchainInfo

Full Changelog: 7.0.1...7.0.2

7.0.1

07 Nov 15:09
Compare
Choose a tag to compare

Using bzlmod with Bazel 6 or later:

  1. [Bazel 6] Add common --enable_bzlmod to .bazelrc.

  2. Add to your MODULE.bazel file:

bazel_dep(name = "rules_proto", version = "7.0.1")

Using WORKSPACE:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "rules_proto",
    sha256 = "33e496a2b3fe925d5247d848535cb0371890f3e9514a13fd79b0ac9a60a5fc41",
    strip_prefix = "rules_proto-7.0.1",
    url = "https://github.com/bazelbuild/rules_proto/releases/download/7.0.1/rules_proto-7.0.1.tar.gz",
)

load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies")
rules_proto_dependencies()

load("@rules_proto//proto:setup.bzl", "rules_proto_setup")
rules_proto_setup()

What's Changed

  • Update rules_cc version to 0.0.15

Full Changelog: 7.0.0...7.0.1

7.0.0

06 Nov 17:10
Compare
Choose a tag to compare

Using bzlmod with Bazel 6 or later:

  1. [Bazel 6] Add common --enable_bzlmod to .bazelrc.

  2. Add to your MODULE.bazel file:

bazel_dep(name = "rules_proto", version = "7.0.0")

Using WORKSPACE:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "rules_proto",
    sha256 = "8e195dbb6a505ca4c7aafa6b7cffa47fe49a261b27a342053cfb2b973cc4aa12",
    strip_prefix = "rules_proto-7.0.0",
    url = "https://github.com/bazelbuild/rules_proto/releases/download/7.0.0/rules_proto-7.0.0.tar.gz",
)

load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies")
rules_proto_dependencies()

load("@rules_proto//proto:setup.bzl", "rules_proto_setup")
rules_proto_setup()

What's Changed

Full Changelog: 6.0.2...7.0.0

6.0.2

17 Jun 13:40
db09d58
Compare
Choose a tag to compare

Using bzlmod with Bazel 6 or later:

  1. [Bazel 6] Add common --enable_bzlmod to .bazelrc.

  2. Add to your MODULE.bazel file:

bazel_dep(name = "rules_proto", version = "6.0.2")

Using WORKSPACE:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "rules_proto",
    sha256 = "6fb6767d1bef535310547e03247f7518b03487740c11b6c6adb7952033fe1295",
    strip_prefix = "rules_proto-6.0.2",
    url = "https://github.com/bazelbuild/rules_proto/releases/download/6.0.2/rules_proto-6.0.2.tar.gz",
)

load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies")
rules_proto_dependencies()

load("@rules_proto//proto:setup.bzl", "rules_proto_setup")
rules_proto_setup()

load("@rules_proto//proto:toolchains.bzl", "rules_proto_toolchains")
rules_proto_toolchains()

What's Changed

  • Make rules_cc a production dep by @keith in #215
  • Fix Bazel version to 7.1.2, update lock file, fix no bzlmod builds by @comius in #217

Full Changelog: 6.0.0...6.0.2

6.0.0

28 Apr 16:13
d205d37
Compare
Choose a tag to compare

NEW FEATURES

When used with Bazel 7, Protobuf Toolchainization is now available. This allows you to choose where the protobuf compiler (protoc) comes from, as well as configure a toolchain for each language you generate proto stubs for.

This de-couples rules_proto from the https://github.com/protocolbuffers/protobuf repository; rules_proto no longer depends on com_google_protobuf. The Bazel rules in that repository are now maintained by the protobuf team for Google use cases, and may diverge from rules_proto over time.

rules_proto does not include the toolchain implementation. See https://registry.bazel.build/modules/toolchains_protoc for an example module that registers the prebuilt binary from https://github.com/protocolbuffers/protobuf/releases.

The tracking issue for this feature is #179

BREAKING CHANGES

Upgrading from rules_proto 5.x requires some changes:

  • The load site for rules_proto_toolchains has changed. See the new WORKSPACE snippet below.
  • As mentioned above, rules_proto no longer depends on the protobuf repo (commonly as com_google_protobuf). As a result, the rules_proto_dependencies macro no longer fetches one. For WORKSPACE users, this may affect what version of protobuf you end up with. We recommend explicitly fetching com_google_protobuf early in the WORKSPACE file, as the first declaration wins.

Install

Using bzlmod with Bazel 6 or later:

  1. [Bazel 6] Add common --enable_bzlmod to .bazelrc.

  2. Add to your MODULE.bazel file:

bazel_dep(name = "rules_proto", version = "6.0.0")

Using WORKSPACE:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "rules_proto",
    sha256 = "303e86e722a520f6f326a50b41cfc16b98fe6d1955ce46642a5b7a67c11c0f5d",
    strip_prefix = "rules_proto-6.0.0",
    url = "https://github.com/bazelbuild/rules_proto/releases/download/6.0.0/rules_proto-6.0.0.tar.gz",
)

load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies")
rules_proto_dependencies()

load("@rules_proto//proto:toolchains.bzl", "rules_proto_toolchains")
rules_proto_toolchains()

What's Changed

New Contributors

Full Changelog: 4.0.0...6.0.0

6.0.0-rc3

16 Apr 16:18
c2110a0
Compare
Choose a tag to compare

NEW FEATURES

When used with Bazel 7, Protobuf Toolchainization is now available. This allows you to choose where the protobuf compiler (protoc) comes from, as well as configure a toolchain for each language you generate proto stubs for.

This de-couples rules_proto from the https://github.com/protocolbuffers/protobuf repository; rules_proto no longer depends on com_google_protobuf. The Bazel rules in that repository are now maintained by the protobuf team for Google use cases, and may diverge from rules_proto over time.

rules_proto does not include the toolchain implementation. See https://registry.bazel.build/modules/toolchains_protoc for an example module that registers the prebuilt binary from https://github.com/protocolbuffers/protobuf/releases.

The tracking issue for this feature is #179

BREAKING CHANGES

Upgrading from rules_proto 5.x requires some changes:

  • The load site for rules_proto_toolchains has changed. See the new WORKSPACE snippet below.
  • As mentioned above, rules_proto no longer depends on the protobuf repo (commonly as com_google_protobuf). As a result, the rules_proto_dependencies macro no longer fetches one. For WORKSPACE users, this may affect what version of protobuf you end up with. We recommend explicitly fetching com_google_protobuf early in the WORKSPACE file, as the first declaration wins.

Using bzlmod with Bazel 6 or later:

  1. [Bazel 6] Add common --enable_bzlmod to .bazelrc.

  2. Add to your MODULE.bazel file:

bazel_dep(name = "rules_proto", version = "6.0.0-rc3")

Using WORKSPACE:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "rules_proto",
    sha256 = "a88d018bdcb8df1ce8185470eb4b4899d778f9ac3a66cb36d514beb81e345282",
    strip_prefix = "rules_proto-6.0.0-rc3",
    url = "https://github.com/bazelbuild/rules_proto/releases/download/6.0.0-rc3/rules_proto-6.0.0-rc3.tar.gz",
)

load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies")
rules_proto_dependencies()

load("@rules_proto//proto:toolchains.bzl", "rules_proto_toolchains")
rules_proto_toolchains()

What's Changed

  • fix: add bazel versions tested to presubmit by @thesayyn in #202

Full Changelog: 6.0.0-rc2...6.0.0-rc3

6.0.0-rc2

02 Feb 19:18
5cb4053
Compare
Choose a tag to compare

Using bzlmod with Bazel 6 or later:

  1. [Bazel 6] Add common --enable_bzlmod to .bazelrc.

  2. Add to your MODULE.bazel file:

bazel_dep(name = "rules_proto", version = "6.0.0-rc2")

Using WORKSPACE:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "rules_proto",
    sha256 = "71fdbed00a0709521ad212058c60d13997b922a5d01dbfd997f0d57d689e7b67",
    strip_prefix = "rules_proto-6.0.0-rc2",
    url = "https://github.com/bazelbuild/rules_proto/releases/download/6.0.0-rc2/rules_proto-6.0.0-rc2.tar.gz",
)

load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies")
rules_proto_dependencies()

load("@rules_proto//proto:toolchains.bzl", "rules_proto_toolchains")
rules_proto_toolchains()

What's Changed

New Contributors

Full Changelog: 6.0.0-rc1...6.0.0-rc2

6.0.0-rc1

04 Dec 23:17
f9b0b88
Compare
Choose a tag to compare
6.0.0-rc1 Pre-release
Pre-release

Using bzlmod with Bazel 6 or later:

  1. [Bazel 6] Add common --enable_bzlmod to .bazelrc.

  2. Add to your MODULE.bazel file:

bazel_dep(name = "rules_proto", version = "6.0.0-rc1")

Using WORKSPACE:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "rules_proto",
    sha256 = "904a8097fae42a690c8e08d805210e40cccb069f5f9a0f6727cf4faa7bed2c9c",
    strip_prefix = "rules_proto-6.0.0-rc1",
    url = "https://github.com/bazelbuild/rules_proto/releases/download/6.0.0-rc1/rules_proto-6.0.0-rc1.tar.gz",
)

What's Changed

Full Changelog: 6.0.0-rc0...6.0.0-rc1

6.0.0-rc0

03 Nov 15:09
c911daa
Compare
Choose a tag to compare
6.0.0-rc0 Pre-release
Pre-release

Note: you cannot use --incompatible_enable_proto_toolchain_resolution yet.

Using bzlmod with Bazel 6 or later:

This release doesn't work with bzlmod due to protocolbuffers/protobuf#14569

Using WORKSPACE:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "com_google_protobuf",
    sha256 = "616bb3536ac1fff3fb1a141450fa28b875e985712170ea7f1bfe5e5fc41e2cd8",
    strip_prefix = "protobuf-24.4",
    urls = ["https://github.com/protocolbuffers/protobuf/archive/v24.4.tar.gz"],
)

load("@com_google_protobuf//:protobuf_deps.bzl", "protobuf_deps")

protobuf_deps()

http_archive(
    name = "rules_proto",
    sha256 = "903af49528dc37ad2adbb744b317da520f133bc1cbbecbdd2a6c546c9ead080b",
    strip_prefix = "rules_proto-6.0.0-rc0",
    url = "https://github.com/bazelbuild/rules_proto/releases/download/6.0.0-rc0/rules_proto-6.0.0-rc0.tar.gz",
)

load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies", "rules_proto_toolchains")

rules_proto_dependencies()

rules_proto_toolchains()

What's Changed

New Contributors

Full Changelog: 5.3.0-21.7...6.0.0-rc0

rules_proto 5.3.0-21.7

27 Dec 15:53
3f1ab99
Compare
Choose a tag to compare

To use this release add the following to your WORKSPACE file:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "rules_proto",
    sha256 = "dc3fb206a2cb3441b485eb1e423165b231235a1ea9b031b4433cf7bc1fa460dd",
    strip_prefix = "rules_proto-5.3.0-21.7",
    urls = [
        "https://github.com/bazelbuild/rules_proto/archive/refs/tags/5.3.0-21.7.tar.gz",
    ],
)
load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies", "rules_proto_toolchains")
rules_proto_dependencies()
rules_proto_toolchains()