0.9.0
Pre-release
Pre-release
Go rules
- Support for transitive link stamping. You can now set
x_defsattributes ingo_libraryrules. Any binary rules that depend on those libraries (directly or transitively) will apply those definitions at link time. See Defines and Stamping for more information. - Refactored rules and toolchain internals. This doesn't affect normal usage of Go rules, but if you maintain Bazel rules that depend on Go providers and toolchains, see documentation in go/toolchains.rst, especially on
GoContextandgo_context. - The
libraryattribute is now deprecated. Please migrate toembedinstead.gazelle fixwill do this for you automatically. - Several fixes for cgo, Windows, and ppc64.
- Fixed a bug in the code used to check the minimum Bazel version.
Proto rules
- Support for gogo proto. See
GOGO_VARIANTSin proto/BUILD.bazel for available compiler plugins. See gogo/BUILD.bazel for an example. - Proto files no longer need to set
option go_package, and the protopackagedoesn't need to match theimportpathexplicitly set ingo_proto_library.
Gazelle
Reminder: the old Gazelle tree at go/tools/gazelle is deprecated and will be removed soon (#1199). The new location is github.com/bazelbuild/bazel-gazelle. Please update any tooling you have that builds Gazelle at master.
WORKSPACE code
To use this release, add this code to your WORKSPACE file:
http_archive(
name = "io_bazel_rules_go",
url = "https://github.com/bazelbuild/rules_go/releases/download/0.9.0/rules_go-0.9.0.tar.gz",
sha256 = "4d8d6244320dd751590f9100cf39fd7a4b75cd901e1f3ffdfd6f048328883695",
)
load("@io_bazel_rules_go//go:def.bzl", "go_rules_dependencies", "go_register_toolchains")
go_rules_dependencies()
go_register_toolchains()
Direct download: rules_go-0.9.0.tar.gz