Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update dependency io_bazel_rules_go to v0.51.0 #1165

Merged
merged 1 commit into from
Dec 26, 2024

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Dec 25, 2024

This PR contains the following updates:

Package Type Update Change
io_bazel_rules_go http_archive minor v0.50.1 -> v0.51.0

Release Notes

bazelbuild/rules_go (io_bazel_rules_go)

v0.51.0

Compare Source

Breaking changes

In order to reduce CPU and memory usage in the analysis phase and to improve the maintainability of the codebase, this release contains a number of breaking changes.
As the bulk of these changes are to the Go context API, users of the go_* rules should not be affected (with a very minor exception below).

The maintainers would like to give a special thanks to @​dzbarsky for numerous contributions to this release!

Changes to rules

  • Support for inferring an importpath for libraries named go_default_library has been removed. Modern versions of Gazelle do not generate this target name, please ensure you are up to date. (c8a7ebca3)

Changes to the Go context API and behavior

  • Converted SDK files to depsets (go.sdk.tools, go.sdk.headers, go.sdk.libs, go.sdk.srcs). To migrate, either call to_list() on those properties or, preferably, use them as depsets in your downstream actions. To remain compatible with older versions, consider a conditional conversion such as depset_or_list if type(depset_or_list) == type([]) else depset_or_list.to_list() (3994841a)

  • go.sdk_files has been removed and can be replaced with depset(direct = [go.sdk.go], transitive = [go.sdk.srcs, go.sdk.headers, go.sdk.libs, go.sdk.tools]) (which is a depset). Wherever possible, try to use only the subset of those files that's actually needed.

  • GoSource and GoLibrary providers have been merged and renamed to GoInfo. The previous names are now aliases, but can result in errors about duplicate providers when both are returned from the same rule. go.new_library and go.library_to_source are now deprecated. To migrate, use go.new_go_info. To remain compatible with older versions that require both providers, consider checking whether GoSource != GoLibrary. (564f8204)

  • Some fields on the Go context object are marked deprecated. go_context will still add them to the context object, unless it is invoked with include_deprecated_properties = False. This default will be flipped in the future and eventually this codepath will be removed. (aa96a1174) You can migrate as follows:

    • go.root -> go.env["GOROOT"]
    • go.go -> go.sdk.go
    • go.sdk_root -> go.sdk.root_file
    • go.sdk_tools -> go.sdk.tools
    • go.package_list -> go.sdk.package_list
    • go.tags -> go.mode.tags
    • go.stamp -> go.mode.stamp
    • go.cover_format -> go.mode.cover_format
    • go.pgoprofile -> go.mode.pgoprofile
  • Removed get_nogo from the Go context object (0f88f8c8)

  • Removed exe_extension and shared_extension from the Go context object. (c419453a)

  • Removed GoSource.cc_info. If you need to access the CcInfo from a Go target, you will need to apply the _go_cc_aspect from go/private/rules/binary.bzl. Please let us know if it's needed and we can move it to public API. (a01ba7c72)

  • go_binary and go_test targets no longer expose GoInfo, GoSource or GoLibrary providers. If you need a dedicated provider to attach an aspect to, please let us know. (2d2266)

  • The Go context's mode property is now a GoConfigInfo provider instead of a bare struct. go.mode.link has been renamed to go.mode.linkmode (5933f872)

  • If you are relying on go_context to read an _stdlib attribute from your attrs, please ensure the attribute is not transitioned, as it will no longer handle a list value. (9214edcd126)

  • go_context now accepts keyword arguments for the following fields: go_context_data, importpath, importmap, embed, importpath_aliases. If these properties are omitted, the function will continue to fall back to reading them from attr. Consider passing these explicitly to improve code clarity and analysis phase performance. (6749a3819, f3029e2a8)

Changes to providers

GoSource

  • Removed cgo_deps, use cdeps instead (56d415d)

  • Removed orig_srcs (520bee50)

  • Removed cgo_exports (86c3f3ae97)

  • Converted cover to a depset (692d008c96)

  • deps is now a list of GoArchives instead of Targets (a32f3e1)

GoArchive

  • Removed mode, use source.mode instead (bfd99a663)

GoArchiveData

  • Removed data_files, use with runfiles instead, which is a runfiles object (60f55c91ce)

CgoContextInfo

  • Converted cc_toolchain_files to a depset (3994841)

WORKSPACE code

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

http_archive(
    name = "io_bazel_rules_go",
    sha256 = "0936c9bc3c4321ee372cb8f66dd972d368cb940ed01a9ba9fd7debcf0093f09b",
    urls = [
        "https://mirror.bazel.build/github.com/bazel-contrib/rules_go/releases/download/v0.51.0/rules_go-v0.51.0.zip",
        "https://github.com/bazel-contrib/rules_go/releases/download/v0.51.0/rules_go-v0.51.0.zip",
    ],
)

load("@​io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")

go_rules_dependencies()

go_register_toolchains(version = "1.23.4")

What's Changed

New Contributors

Full Changelog: bazel-contrib/rules_go@v0.50.1...v0.51.0


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@damingerdai damingerdai merged commit ca3fcf8 into master Dec 26, 2024
6 checks passed
@renovate renovate bot deleted the renovate/io_bazel_rules_go-0.x branch December 26, 2024 22:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant