Releases: bazel-contrib/rules_go
Releases · bazel-contrib/rules_go
v0.25.1
Bug fixes
- Fixed an issue in
go_test
with capturing XML output when changing directories. - Paths in error messages are now relativized. This should reduce noise from Bazel sandbox directories. (thanks @robfig)
go_local_sdk
provides better error messages when Go is built for multiple platforms. (thanks @prattmic)- Multiple compatibility fixes for Go 1.16beta1.
WORKSPACE code
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "io_bazel_rules_go",
sha256 = "7904dbecbaffd068651916dce77ff3437679f9d20e1a7956bff43826e7645fcc",
urls = [
"https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.25.1/rules_go-v0.25.1.tar.gz",
"https://github.com/bazelbuild/rules_go/releases/download/v0.25.1/rules_go-v0.25.1.tar.gz",
],
)
load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")
go_rules_dependencies()
go_register_toolchains(version = "1.15.6")
v0.24.10
Bug fixes
- Paths in error messages are now relativized. This should reduce noise from Bazel sandbox directories. (thanks @robfig)
go_local_sdk
provides better error messages when Go is built for multiple platforms. (thanks @prattmic)- Multiple compatibility fixes for Go 1.16beta1.
WORKSPACE code
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "io_bazel_rules_go",
sha256 = "8e9434015ff8f3d6962cb8f016230ea7acc1ac402b760a8d66ff54dc11673ca6",
urls = [
"https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.24.10/rules_go-v0.24.10.tar.gz",
"https://github.com/bazelbuild/rules_go/releases/download/v0.24.10/rules_go-v0.24.10.tar.gz",
],
)
load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")
go_rules_dependencies()
go_register_toolchains()
v0.24.9
New Go versions
Go 1.15.6 and 1.14.13 are now supported.
WORKSPACE code
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "io_bazel_rules_go",
sha256 = "81eff5df9077783b18e93d0c7ff990d8ad7a3b8b3ca5b785e1c483aacdb342d7",
urls = [
"https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.24.9/rules_go-v0.24.9.tar.gz",
"https://github.com/bazelbuild/rules_go/releases/download/v0.24.9/rules_go-v0.24.9.tar.gz",
],
)
load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")
go_rules_dependencies()
go_register_toolchains()
v0.25.0
Changes
go_download_sdk
andgo_register_toolchains
can now download any version of Go fromgolang.org/dl
without the need for hardcoded support in rules_go.- Consequently, the
version
parameter must be set to a string like"1.15.5"
or to"host"
. This requires a change toWORKSPACE
for most users. Seego_register_toolchains
for details. go_download_sdk
querieshttps://golang.org/dl
in order to find SHA-256 of toolchains. Bazel won't cache downloaded files without these. If your build has limited network access, useversion = "host"
or set thesdks
andurls
attributes ingo_download_sdk
.- As a result of this change, rules_go will no longer need patch releases for new Go versions. The v0.24 branch will still be patched as long as it's supported.
- Consequently, the
- Package conflicts are now errors rather than warnings. The linker already reports errors for most of these since Go 1.15.
- rules_go now uses Bazel's modern C/C++ Starlark linker API.
go_path
supports theinclude_transitive
attribute, which controls whether transitively imported packages are included (thanks @steeve)go_test
changes to the test directory in aninit
function run before other packageinit
s instead of inmain
(thanks @dragonsinth)- Several deprecated features were removed. See Deprecation schedule for information on removals.
go_rule
wrapper.go_archive_aspect
andGoAspectProvider
.- It is now an error when a
go_binary
orgo_test
depends on anothergo_binary
orgo_test
. --feature
flags are no longer used for configuration. Use flags like--@io_bazel_rules_go//go/config:pure
instead.
Compatibility
- Go 1.13 is no longer supported.
- Bazel 3.4.0 is now required.
- This release is expected to be compatible with Bazel 4.0.0. Earlier rules_go releases may not work due to incompatible changes in the C/C++ APIs.
Updated dependencies
As always you can use higher versions of rules_go's dependencies by declaring them in WORKSPACE
before calling go_rules_dependencies
. Lower versions may work but are not supported.
platforms
is updated to0.0.1
.rules_cc
is updated tomaster
as of 2020-12-01.bazel_skylib
is updated to1.0.3
.org_golang_x_tools
is updated tomaster
as of 2020-12-01.com_github_golang_protobuf
is updated tov1.4.3
.org_golang_google_genproto
is updated tomaster
as of 2020-12-01.go_googleapis
is updated tomaster
as of 2020-12-01.
WORKSPACE
code
NOTE: The code below has changed. In go_register_toolchains
, version
must be set to a string like "1.15.5"
or to "host"
unless a Go toolchain is declared earlier.
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "io_bazel_rules_go",
sha256 = "6f111c57fd50baf5b8ee9d63024874dd2a014b069426156c55adbf6d3d22cb7b",
urls = [
"https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.25.0/rules_go-v0.25.0.tar.gz",
"https://github.com/bazelbuild/rules_go/releases/download/v0.25.0/rules_go-v0.25.0.tar.gz",
],
)
load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")
go_rules_dependencies()
go_register_toolchains(version = "1.15.5")
v0.24.8
Bug fixes
go_test
no longer requiresTestMain
to callos.Exit
(thanks @rabbbit)@io_bazel_rules_go//proto/wkt:field_mask_go_proto
,
source_context_go_proto
, andtype_go_proto
are now wrappers around the
pre-generated sources ingoogle.golang.org/protobuf
. This should eliminate
linker conflicts.go_proto_library
now declares implicit dependencies on both APIv1 and
APIv2 packages. This may increase build time (both sets of packages will be
compiled) but is needed for compatibility with protobuf 3.14.0.
go_proto_library
needs both sets of packages, since we don't know which
version of protobuf is used at analysis time.go_binary
andgo_test
now force internal linking in pure mode, since
a C/C++ toolchain is not available. This should produce better error messages
on platforms that don't support internal linking.
WORKSPACE code
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "io_bazel_rules_go",
sha256 = "75c97f089190833ee58872238c98394267d35c32baabf42aac0827102b62af6b",
urls = [
"https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.24.8/rules_go-v0.24.8.tar.gz",
"https://github.com/bazelbuild/rules_go/releases/download/v0.24.8/rules_go-v0.24.8.tar.gz",
],
)
load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")
go_rules_dependencies()
go_register_toolchains()
v0.24.7
New Go versions
Go 1.15.5 and 1.14.12 are now supported.
WORKSPACE code
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "io_bazel_rules_go",
sha256 = "207fad3e6689135c5d8713e5a17ba9d1290238f47b9ba545b63d9303406209c6",
urls = [
"https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.24.7/rules_go-v0.24.7.tar.gz",
"https://github.com/bazelbuild/rules_go/releases/download/v0.24.7/rules_go-v0.24.7.tar.gz",
],
)
load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")
go_rules_dependencies()
go_register_toolchains()
v0.23.15
New Go versions
Go 1.15.5 and 1.14.12 are now supported.
WORKSPACE code
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "io_bazel_rules_go",
sha256 = "e3f4c9aef825c2ac023d0d78f74f7bc22b4b918a329b2d1b888b2978ff5ac154",
urls = [
"https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.23.15/rules_go-v0.23.15.tar.gz",
"https://github.com/bazelbuild/rules_go/releases/download/v0.23.15/rules_go-v0.23.15.tar.gz",
],
)
load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")
go_rules_dependencies()
go_register_toolchains()
v0.24.6
New Go versions
Go 1.15.4 and 1.14.11 are now supported.
WORKSPACE code
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "io_bazel_rules_go",
sha256 = "b4433651f57560237681cb9caa969106aba614f5b1e66fefa5834c42b8013b42",
urls = [
"https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.24.6/rules_go-v0.24.6.tar.gz",
"https://github.com/bazelbuild/rules_go/releases/download/v0.24.6/rules_go-v0.24.6.tar.gz",
],
)
load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")
go_rules_dependencies()
go_register_toolchains()
v0.23.14
New Go versions
Go 1.15.4 and 1.14.11 are now supported.
WORKSPACE code
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "io_bazel_rules_go",
sha256 = "e19e73c40511461a2f45ad45ccbfeff15184264a2169bbb10b5a7f4f0b578b90",
urls = [
"https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.23.14/rules_go-v0.23.14.tar.gz",
"https://github.com/bazelbuild/rules_go/releases/download/v0.23.14/rules_go-v0.23.14.tar.gz",
],
)
load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")
go_rules_dependencies()
go_register_toolchains()
v0.24.5
Bug fixes
- Fixed an issue with include paths in cgo libraries in external repositories
that was exposed in Bazel 3.7.0. - Subcommand errors are now less verbose.
WORKSPACE code
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "io_bazel_rules_go",
sha256 = "d1ffd055969c8f8d431e2d439813e42326961d0942bdf734d2c95dc30c369566",
urls = [
"https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.24.5/rules_go-v0.24.5.tar.gz",
"https://github.com/bazelbuild/rules_go/releases/download/v0.24.5/rules_go-v0.24.5.tar.gz",
],
)
load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")
go_rules_dependencies()
go_register_toolchains()