New features
- A new repository,
@go_googleapis
, is declared ingo_rules_dependencies()
. This downloadsgithub.com/googleapis/googleapis
and includesproto_library
andgo_proto_library
rules for everything inside.- Note that
go_proto_library
rules for the Well Known Types are still found in@io_bazel_rules_go//proto/wkt
. go_library
rules using pre-generated .pb.go files may be found in@com_github_golang_protobuf
and@org_golang_google_genproto
. These should be used if you want to avoid a build-time dependency on protoc.- Gazelle 0.13.0 will resolve dependencies for these from both .go and .proto files depending on the proto mode.
- Note that
- Support for Go 1.10.3 and 1.9.7.
go_binary
can now build plugins withlinkmode = "plugin"
(thanks @teh-cmc)- Several fixes for Windows compatibility (thanks @pmuetschard)
- Several fixes for reproducibility (thanks @siddharthab, @bennyscetbun, @steeve)
- Fixes for platform compatibility (thanks @lubinszARM, @likan999, @siddharthab, @rescrv)
go_test
now acceptsgoos
andgoarch
attributes (thanks @kerinin).- The compiler writes go_asm.h when .s files are present.
go_path
can now bundle compiled .a files in pkg directories for its transitive dependencies (thanks @steeve!).- Code generated in
c-archive
mode is position independent (thanks @siddharthab). race
andmsan
tags are enabled in those modes.importmap
may now be inherited from embedded libraries.- .s files may include other .s files.
restricted_to
andcompatible_with
are now propagated in cgo rules (thanks @iley)
Notes
- Removed deprecated features
- Removed support for Go 1.8.
- Removed
go_prefix
.importpath
is now required on libraries.gazelle fix
can help you migrate. - Removed the definition of
go_repository
in rules_go. Use the one in@bazel_gazelle//:deps.bzl
instead.gazelle fix
can help you migrate.
Updated dependencies
com_google_protobuf
(github.com/google/protobuf
) updated to v3.6.0.1.org_golang_google_grpc
(google.golang.org/grpc
) updated to v1.13.0.org_golang_google_genproto
(google.golang.org/genproto
) updated to master.org_golang_x_net
(golang.org/x/net
) updated to 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.13.0/rules_go-0.13.0.tar.gz",
sha256 = "ba79c532ac400cefd1859cbc8a9829346aa69e3b99482cd5a54432092cbc3933",
)
load("@io_bazel_rules_go//go:def.bzl", "go_rules_dependencies", "go_register_toolchains")
go_rules_dependencies()
go_register_toolchains()