Skip to content

Conversation

fmeum
Copy link
Member

@fmeum fmeum commented Jan 23, 2023

This allows developers to use the go command provided by the registered toolchain to e.g. add dependencies to go.mod. This ensures that everyone uses the same version of Go and does not require a local installation of Go.

@fmeum fmeum requested review from linzhp and achew22 January 23, 2023 11:28
@fmeum
Copy link
Member Author

fmeum commented Jan 23, 2023

Stacked on #3428, but otherwise ready for review.

@fmeum fmeum force-pushed the hermetic-go branch 3 times, most recently from 5aa7a7b to 1f68850 Compare January 23, 2023 13:06
@fmeum
Copy link
Member Author

fmeum commented Jan 23, 2023

@alexeagle This provides the missing hermetic link to the go command.

@alexeagle
Copy link
Contributor

How is it different from the binary under @go_sdk? This is the one Bazel resolved for the toolchain so the only difference is if the user installed more than one?

@fmeum
Copy link
Member Author

fmeum commented Jan 23, 2023

There are two differences:

  1. The user may have registered their own toolchain and referencing @go_sdk would needlessly trigger a fetch of yet another Go SDK.
  2. The default @go_sdk may have been configured to run on a remote executor, but may not run on the user's machine (MacBook with Linux RBE).

That's why I turned to toolchain resolution.

@achew22
Copy link
Member

achew22 commented Jan 24, 2023

Did a very light review on this. Seems reasonable at first pass but I'll wait till it's truly ready to review before I do too much more review

This allows developers to use the `go` command provided by the
registered toolchain to e.g. add dependencies to `go.mod`. This ensures
that everyone uses the same version of Go and does not require a local
installation of Go.
@fmeum fmeum marked this pull request as ready for review January 25, 2023 07:54
@fmeum
Copy link
Member Author

fmeum commented Jan 25, 2023

Slightly improved the test, but otherwise rebased without changes.

@fmeum fmeum merged commit fe69751 into master Jan 25, 2023
@fmeum fmeum deleted the hermetic-go branch January 25, 2023 09:55
renovate bot referenced this pull request in cgrindel/bazel-starlib Mar 29, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [io_bazel_rules_go](https://togithub.com/bazelbuild/rules_go) |
http_archive | minor | `v0.38.1` -> `v0.39.0` |

---

### Release Notes

<details>
<summary>bazelbuild/rules_go</summary>

###
[`v0.39.0`](https://togithub.com/bazelbuild/rules_go/releases/tag/v0.39.0)

[Compare
Source](https://togithub.com/bazelbuild/rules_go/compare/v0.38.1...v0.39.0)

#### `WORKSPACE` code

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

    http_archive(
        name = "io_bazel_rules_go",
sha256 =
"6b65cb7917b4d1709f9410ffe00ecf3e160edf674b78c54a894471320862184f",
        urls = [

"https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.39.0/rules_go-v0.39.0.zip",

"https://github.com/bazelbuild/rules_go/releases/download/v0.39.0/rules_go-v0.39.0.zip",
        ],
    )

load("@&#8203;io_bazel_rules_go//go:deps.bzl", "go_register_toolchains",
"go_rules_dependencies")

    go_rules_dependencies()

    go_register_toolchains(version = "1.20.2")

#### What's Changed

- Make the toolchain's `go` binary available as a target by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3429](https://togithub.com/bazelbuild/rules_go/pull/3429)
- add bazel test rule for excluded packages in popular_repos by
[@&#8203;uberzzr](https://togithub.com/uberzzr) in
[https://github.com/bazelbuild/rules_go/pull/3447](https://togithub.com/bazelbuild/rules_go/pull/3447)
- change build test name from 'need_test' to 'build_only' by
[@&#8203;uberzzr](https://togithub.com/uberzzr) in
[https://github.com/bazelbuild/rules_go/pull/3449](https://togithub.com/bazelbuild/rules_go/pull/3449)
- fix a grammer issue by
[@&#8203;Longchuanzheng](https://togithub.com/Longchuanzheng) in
[https://github.com/bazelbuild/rules_go/pull/3451](https://togithub.com/bazelbuild/rules_go/pull/3451)
- go: support "all:" prefix for "go:embed" directives by
[@&#8203;malt3](https://togithub.com/malt3) in
[https://github.com/bazelbuild/rules_go/pull/3455](https://togithub.com/bazelbuild/rules_go/pull/3455)
- Remove `filter_transition_label` workaround by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3438](https://togithub.com/bazelbuild/rules_go/pull/3438)
- Extract generated code from BUILD.toolchains.bazel into a macro by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3439](https://togithub.com/bazelbuild/rules_go/pull/3439)
- bzlmod: Prohibit undesirable SDK registrations in non-root modules by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3440](https://togithub.com/bazelbuild/rules_go/pull/3440)
- update links to gazelle docs by
[@&#8203;garymm](https://togithub.com/garymm) in
[https://github.com/bazelbuild/rules_go/pull/3464](https://togithub.com/bazelbuild/rules_go/pull/3464)
- bzlmod: Improve SDK registration by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3443](https://togithub.com/bazelbuild/rules_go/pull/3443)
- Expand locations in `x_defs` values by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3473](https://togithub.com/bazelbuild/rules_go/pull/3473)
- Make `//go` usable in scripts run with `bazel run` by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3474](https://togithub.com/bazelbuild/rules_go/pull/3474)
- Avoid repository rule restarts in go_sdk by
[@&#8203;jfirebaugh](https://togithub.com/jfirebaugh) in
[https://github.com/bazelbuild/rules_go/pull/3478](https://togithub.com/bazelbuild/rules_go/pull/3478)
- bzlmod: Test BCR test module on all platforms by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3479](https://togithub.com/bazelbuild/rules_go/pull/3479)
- Improve error when linkmode requires cgo by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3482](https://togithub.com/bazelbuild/rules_go/pull/3482)
- Rename `error` script in `go_cross_binary` by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3481](https://togithub.com/bazelbuild/rules_go/pull/3481)
- Only infer platforms from crosstool/cpu if at default by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3485](https://togithub.com/bazelbuild/rules_go/pull/3485)
- Add missing darwin CPUs to apple matcher by
[@&#8203;keith](https://togithub.com/keith) in
[https://github.com/bazelbuild/rules_go/pull/3461](https://togithub.com/bazelbuild/rules_go/pull/3461)
- Canonicalize tags before transitioning by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3484](https://togithub.com/bazelbuild/rules_go/pull/3484)
- Keep build tags that affect the stdlib build by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3488](https://togithub.com/bazelbuild/rules_go/pull/3488)
- Quote `CC` if it contains whitespace by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3491](https://togithub.com/bazelbuild/rules_go/pull/3491)
- Disable cgo by default with unsupported compilers by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3493](https://togithub.com/bazelbuild/rules_go/pull/3493)
- Only install `runtime/cgo` with `pure = False` by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3492](https://togithub.com/bazelbuild/rules_go/pull/3492)
- Use `ctx.readdir` instead of `ls` for SDK platform detection by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3497](https://togithub.com/bazelbuild/rules_go/pull/3497)

#### New Contributors

- [@&#8203;uberzzr](https://togithub.com/uberzzr) made their first
contribution in
[https://github.com/bazelbuild/rules_go/pull/3447](https://togithub.com/bazelbuild/rules_go/pull/3447)
- [@&#8203;Longchuanzheng](https://togithub.com/Longchuanzheng) made
their first contribution in
[https://github.com/bazelbuild/rules_go/pull/3451](https://togithub.com/bazelbuild/rules_go/pull/3451)
- [@&#8203;malt3](https://togithub.com/malt3) made their first
contribution in
[https://github.com/bazelbuild/rules_go/pull/3455](https://togithub.com/bazelbuild/rules_go/pull/3455)
- [@&#8203;tyler-french](https://togithub.com/tyler-french) made their
first contribution in
[https://github.com/bazelbuild/rules_go/pull/3495](https://togithub.com/bazelbuild/rules_go/pull/3495)

**Full Changelog**:
bazel-contrib/rules_go@v0.38.0...v0.39.0

</details>

---

### Configuration

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

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

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

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://app.renovatebot.com/dashboard#github/cgrindel/bazel-starlib).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4yMi4xIiwidXBkYXRlZEluVmVyIjoiMzUuMjIuMSJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot referenced this pull request in cgrindel/rules_swift_package_manager Mar 29, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [io_bazel_rules_go](https://togithub.com/bazelbuild/rules_go) |
http_archive | minor | `v0.38.1` -> `v0.39.0` |

---

### Release Notes

<details>
<summary>bazelbuild/rules_go</summary>

###
[`v0.39.0`](https://togithub.com/bazelbuild/rules_go/releases/tag/v0.39.0)

[Compare
Source](https://togithub.com/bazelbuild/rules_go/compare/v0.38.1...v0.39.0)

#### `WORKSPACE` code

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

    http_archive(
        name = "io_bazel_rules_go",
sha256 =
"6b65cb7917b4d1709f9410ffe00ecf3e160edf674b78c54a894471320862184f",
        urls = [

"https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.39.0/rules_go-v0.39.0.zip",

"https://github.com/bazelbuild/rules_go/releases/download/v0.39.0/rules_go-v0.39.0.zip",
        ],
    )

load("@&#8203;io_bazel_rules_go//go:deps.bzl", "go_register_toolchains",
"go_rules_dependencies")

    go_rules_dependencies()

    go_register_toolchains(version = "1.20.2")

#### What's Changed

- Make the toolchain's `go` binary available as a target by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3429](https://togithub.com/bazelbuild/rules_go/pull/3429)
- add bazel test rule for excluded packages in popular_repos by
[@&#8203;uberzzr](https://togithub.com/uberzzr) in
[https://github.com/bazelbuild/rules_go/pull/3447](https://togithub.com/bazelbuild/rules_go/pull/3447)
- change build test name from 'need_test' to 'build_only' by
[@&#8203;uberzzr](https://togithub.com/uberzzr) in
[https://github.com/bazelbuild/rules_go/pull/3449](https://togithub.com/bazelbuild/rules_go/pull/3449)
- fix a grammer issue by
[@&#8203;Longchuanzheng](https://togithub.com/Longchuanzheng) in
[https://github.com/bazelbuild/rules_go/pull/3451](https://togithub.com/bazelbuild/rules_go/pull/3451)
- go: support "all:" prefix for "go:embed" directives by
[@&#8203;malt3](https://togithub.com/malt3) in
[https://github.com/bazelbuild/rules_go/pull/3455](https://togithub.com/bazelbuild/rules_go/pull/3455)
- Remove `filter_transition_label` workaround by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3438](https://togithub.com/bazelbuild/rules_go/pull/3438)
- Extract generated code from BUILD.toolchains.bazel into a macro by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3439](https://togithub.com/bazelbuild/rules_go/pull/3439)
- bzlmod: Prohibit undesirable SDK registrations in non-root modules by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3440](https://togithub.com/bazelbuild/rules_go/pull/3440)
- update links to gazelle docs by
[@&#8203;garymm](https://togithub.com/garymm) in
[https://github.com/bazelbuild/rules_go/pull/3464](https://togithub.com/bazelbuild/rules_go/pull/3464)
- bzlmod: Improve SDK registration by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3443](https://togithub.com/bazelbuild/rules_go/pull/3443)
- Expand locations in `x_defs` values by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3473](https://togithub.com/bazelbuild/rules_go/pull/3473)
- Make `//go` usable in scripts run with `bazel run` by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3474](https://togithub.com/bazelbuild/rules_go/pull/3474)
- Avoid repository rule restarts in go_sdk by
[@&#8203;jfirebaugh](https://togithub.com/jfirebaugh) in
[https://github.com/bazelbuild/rules_go/pull/3478](https://togithub.com/bazelbuild/rules_go/pull/3478)
- bzlmod: Test BCR test module on all platforms by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3479](https://togithub.com/bazelbuild/rules_go/pull/3479)
- Improve error when linkmode requires cgo by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3482](https://togithub.com/bazelbuild/rules_go/pull/3482)
- Rename `error` script in `go_cross_binary` by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3481](https://togithub.com/bazelbuild/rules_go/pull/3481)
- Only infer platforms from crosstool/cpu if at default by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3485](https://togithub.com/bazelbuild/rules_go/pull/3485)
- Add missing darwin CPUs to apple matcher by
[@&#8203;keith](https://togithub.com/keith) in
[https://github.com/bazelbuild/rules_go/pull/3461](https://togithub.com/bazelbuild/rules_go/pull/3461)
- Canonicalize tags before transitioning by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3484](https://togithub.com/bazelbuild/rules_go/pull/3484)
- Keep build tags that affect the stdlib build by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3488](https://togithub.com/bazelbuild/rules_go/pull/3488)
- Quote `CC` if it contains whitespace by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3491](https://togithub.com/bazelbuild/rules_go/pull/3491)
- Disable cgo by default with unsupported compilers by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3493](https://togithub.com/bazelbuild/rules_go/pull/3493)
- Only install `runtime/cgo` with `pure = False` by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3492](https://togithub.com/bazelbuild/rules_go/pull/3492)
- Use `ctx.readdir` instead of `ls` for SDK platform detection by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3497](https://togithub.com/bazelbuild/rules_go/pull/3497)

#### New Contributors

- [@&#8203;uberzzr](https://togithub.com/uberzzr) made their first
contribution in
[https://github.com/bazelbuild/rules_go/pull/3447](https://togithub.com/bazelbuild/rules_go/pull/3447)
- [@&#8203;Longchuanzheng](https://togithub.com/Longchuanzheng) made
their first contribution in
[https://github.com/bazelbuild/rules_go/pull/3451](https://togithub.com/bazelbuild/rules_go/pull/3451)
- [@&#8203;malt3](https://togithub.com/malt3) made their first
contribution in
[https://github.com/bazelbuild/rules_go/pull/3455](https://togithub.com/bazelbuild/rules_go/pull/3455)
- [@&#8203;tyler-french](https://togithub.com/tyler-french) made their
first contribution in
[https://github.com/bazelbuild/rules_go/pull/3495](https://togithub.com/bazelbuild/rules_go/pull/3495)

**Full Changelog**:
bazel-contrib/rules_go@v0.38.0...v0.39.0

</details>

---

### Configuration

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

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

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

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://app.renovatebot.com/dashboard#github/cgrindel/swift_bazel).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4yMi4xIiwidXBkYXRlZEluVmVyIjoiMzUuMjIuMSJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot referenced this pull request in kreempuff/rules_unreal_engine Apr 15, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [io_bazel_rules_go](https://togithub.com/bazelbuild/rules_go) |
http_archive | minor | `v0.38.1` -> `v0.39.0` |

---

### ⚠ Dependency Lookup Warnings ⚠

Warnings were logged while processing this repo. Please check the
Dependency Dashboard for more information.

---

### Release Notes

<details>
<summary>bazelbuild/rules_go</summary>

###
[`v0.39.0`](https://togithub.com/bazelbuild/rules_go/releases/tag/v0.39.0)

[Compare
Source](https://togithub.com/bazelbuild/rules_go/compare/v0.38.1...v0.39.0)

#### `WORKSPACE` code

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

    http_archive(
        name = "io_bazel_rules_go",
sha256 =
"6b65cb7917b4d1709f9410ffe00ecf3e160edf674b78c54a894471320862184f",
        urls = [

"https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.39.0/rules_go-v0.39.0.zip",

"https://github.com/bazelbuild/rules_go/releases/download/v0.39.0/rules_go-v0.39.0.zip",
        ],
    )

load("@&#8203;io_bazel_rules_go//go:deps.bzl", "go_register_toolchains",
"go_rules_dependencies")

    go_rules_dependencies()

    go_register_toolchains(version = "1.20.2")

#### What's Changed

- Make the toolchain's `go` binary available as a target by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3429](https://togithub.com/bazelbuild/rules_go/pull/3429)
- add bazel test rule for excluded packages in popular_repos by
[@&#8203;uberzzr](https://togithub.com/uberzzr) in
[https://github.com/bazelbuild/rules_go/pull/3447](https://togithub.com/bazelbuild/rules_go/pull/3447)
- change build test name from 'need_test' to 'build_only' by
[@&#8203;uberzzr](https://togithub.com/uberzzr) in
[https://github.com/bazelbuild/rules_go/pull/3449](https://togithub.com/bazelbuild/rules_go/pull/3449)
- fix a grammer issue by
[@&#8203;Longchuanzheng](https://togithub.com/Longchuanzheng) in
[https://github.com/bazelbuild/rules_go/pull/3451](https://togithub.com/bazelbuild/rules_go/pull/3451)
- go: support "all:" prefix for "go:embed" directives by
[@&#8203;malt3](https://togithub.com/malt3) in
[https://github.com/bazelbuild/rules_go/pull/3455](https://togithub.com/bazelbuild/rules_go/pull/3455)
- Remove `filter_transition_label` workaround by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3438](https://togithub.com/bazelbuild/rules_go/pull/3438)
- Extract generated code from BUILD.toolchains.bazel into a macro by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3439](https://togithub.com/bazelbuild/rules_go/pull/3439)
- bzlmod: Prohibit undesirable SDK registrations in non-root modules by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3440](https://togithub.com/bazelbuild/rules_go/pull/3440)
- update links to gazelle docs by
[@&#8203;garymm](https://togithub.com/garymm) in
[https://github.com/bazelbuild/rules_go/pull/3464](https://togithub.com/bazelbuild/rules_go/pull/3464)
- bzlmod: Improve SDK registration by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3443](https://togithub.com/bazelbuild/rules_go/pull/3443)
- Expand locations in `x_defs` values by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3473](https://togithub.com/bazelbuild/rules_go/pull/3473)
- Make `//go` usable in scripts run with `bazel run` by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3474](https://togithub.com/bazelbuild/rules_go/pull/3474)
- Avoid repository rule restarts in go_sdk by
[@&#8203;jfirebaugh](https://togithub.com/jfirebaugh) in
[https://github.com/bazelbuild/rules_go/pull/3478](https://togithub.com/bazelbuild/rules_go/pull/3478)
- bzlmod: Test BCR test module on all platforms by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3479](https://togithub.com/bazelbuild/rules_go/pull/3479)
- Improve error when linkmode requires cgo by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3482](https://togithub.com/bazelbuild/rules_go/pull/3482)
- Rename `error` script in `go_cross_binary` by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3481](https://togithub.com/bazelbuild/rules_go/pull/3481)
- Only infer platforms from crosstool/cpu if at default by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3485](https://togithub.com/bazelbuild/rules_go/pull/3485)
- Add missing darwin CPUs to apple matcher by
[@&#8203;keith](https://togithub.com/keith) in
[https://github.com/bazelbuild/rules_go/pull/3461](https://togithub.com/bazelbuild/rules_go/pull/3461)
- Canonicalize tags before transitioning by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3484](https://togithub.com/bazelbuild/rules_go/pull/3484)
- Keep build tags that affect the stdlib build by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3488](https://togithub.com/bazelbuild/rules_go/pull/3488)
- Quote `CC` if it contains whitespace by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3491](https://togithub.com/bazelbuild/rules_go/pull/3491)
- Disable cgo by default with unsupported compilers by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3493](https://togithub.com/bazelbuild/rules_go/pull/3493)
- Only install `runtime/cgo` with `pure = False` by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3492](https://togithub.com/bazelbuild/rules_go/pull/3492)
- Use `ctx.readdir` instead of `ls` for SDK platform detection by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3497](https://togithub.com/bazelbuild/rules_go/pull/3497)

#### New Contributors

- [@&#8203;uberzzr](https://togithub.com/uberzzr) made their first
contribution in
[https://github.com/bazelbuild/rules_go/pull/3447](https://togithub.com/bazelbuild/rules_go/pull/3447)
- [@&#8203;Longchuanzheng](https://togithub.com/Longchuanzheng) made
their first contribution in
[https://github.com/bazelbuild/rules_go/pull/3451](https://togithub.com/bazelbuild/rules_go/pull/3451)
- [@&#8203;malt3](https://togithub.com/malt3) made their first
contribution in
[https://github.com/bazelbuild/rules_go/pull/3455](https://togithub.com/bazelbuild/rules_go/pull/3455)
- [@&#8203;tyler-french](https://togithub.com/tyler-french) made their
first contribution in
[https://github.com/bazelbuild/rules_go/pull/3495](https://togithub.com/bazelbuild/rules_go/pull/3495)

**Full Changelog**:
bazel-contrib/rules_go@v0.38.0...v0.39.0

</details>

---

### Configuration

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

🚦 **Automerge**: Enabled.

♻ **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.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://app.renovatebot.com/dashboard#github/kreempuff/rules_unreal_engine).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4yMi4xIiwidXBkYXRlZEluVmVyIjoiMzUuNDAuMCJ9-->
tingilee pushed a commit to tingilee/rules_go that referenced this pull request Jul 19, 2023
…#3429)

This allows developers to use the `go` command provided by the
registered toolchain to e.g. add dependencies to `go.mod`. This ensures
that everyone uses the same version of Go and does not require a local
installation of Go.
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.

3 participants