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

Add a full fs.FS implementation to runfiles #3969

Merged
merged 41 commits into from
Jul 10, 2024
Merged

Add a full fs.FS implementation to runfiles #3969

merged 41 commits into from
Jul 10, 2024

Conversation

fmeum
Copy link
Member

@fmeum fmeum commented Jun 21, 2024

What type of PR is this?

Feature

What does this PR do? Why is it needed?

Runfiles instances now implement fs.FS in a platform-agnostic way, regardless of whether they are manifest- or directory-based. This is meant to finally provide a full replacement for runfiles functionality offered by the legacy bazel package.

Which issues(s) does this PR fix?

Fixes #3375
Fixes #3830

Other notes for review

@fmeum fmeum force-pushed the runfiles-fs branch 7 times, most recently from c570027 to 8edd51e Compare June 24, 2024 09:31
@fmeum fmeum changed the title WIP: Add a full fs.FS implementation to runfiles Add a full fs.FS implementation to runfiles Jun 24, 2024
@fmeum fmeum requested review from linzhp and tyler-french June 24, 2024 14:14
@fmeum fmeum marked this pull request as ready for review June 24, 2024 14:14
@fmeum
Copy link
Member Author

fmeum commented Jun 24, 2024

cc @sluongng

@fmeum fmeum force-pushed the runfiles-fs branch 2 times, most recently from e85435c to 67d7a60 Compare June 24, 2024 14:18
Copy link
Contributor

@sluongng sluongng left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I gave this a quick read and have some nits, but this looks promising. FS is a powerful interface so I think this is the right approach.

go/runfiles/fs.go Outdated Show resolved Hide resolved
go/runfiles/fs.go Outdated Show resolved Hide resolved
go/runfiles/fs.go Outdated Show resolved Hide resolved
go/runfiles/fs.go Show resolved Hide resolved
go/runfiles/fs.go Outdated Show resolved Hide resolved
go/runfiles/manifest.go Show resolved Hide resolved
go/runfiles/manifest.go Outdated Show resolved Hide resolved
go/runfiles/manifest.go Outdated Show resolved Hide resolved
go/runfiles/manifest.go Outdated Show resolved Hide resolved
tests/runfiles/fs_test.go Show resolved Hide resolved
Copy link
Contributor

@sluongng sluongng left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

a few more nits

go/runfiles/manifest.go Outdated Show resolved Hide resolved
go/runfiles/manifest.go Outdated Show resolved Hide resolved
go/runfiles/manifest.go Outdated Show resolved Hide resolved
go/runfiles/manifest.go Outdated Show resolved Hide resolved
@fmeum
Copy link
Member Author

fmeum commented Jun 25, 2024

Thanks, I addressed your comments and am debugging the remaining test failure on Windows.

@fmeum fmeum force-pushed the runfiles-fs branch 2 times, most recently from d79da1c to 5603803 Compare June 25, 2024 08:23
@fmeum
Copy link
Member Author

fmeum commented Jun 25, 2024

The remaining test failure is a very reasonable one: The logic fails to account for runfiles that are linked under a basename that differs from that of the underlying file. This will require some more tweaks.

@fmeum fmeum force-pushed the runfiles-fs branch 2 times, most recently from b6e2352 to 86809bd Compare June 25, 2024 11:43
@fmeum fmeum requested a review from sluongng June 25, 2024 14:13
@fmeum fmeum enabled auto-merge (squash) July 7, 2024 16:35
@fmeum
Copy link
Member Author

fmeum commented Jul 9, 2024

@meteorcloudy The new macOS machines frequently run into timeouts: https://buildkite.com/bazel/rules-go-golang/builds/6622#01908e0d-57ff-4850-8b3c-cb9fe2fff52f

Are we perhaps lacking any settings?

@meteorcloudy
Copy link
Contributor

.bazelci/presubmit.yml Outdated Show resolved Hide resolved
@meteorcloudy
Copy link
Contributor

@fmeum To unblock this, you can also temporarily switch back to the old Mac fleet by using macos_legacy or macos_arm64_legacy.

The timeout looks weird, does it look like some network issue? One major difference is that the new Mac fleet is ipv6 only, not sure if it's relevant.

@fmeum
Copy link
Member Author

fmeum commented Jul 10, 2024

@meteorcloudy Thanks, I'll go with this workaround for now until I can properly investigate this (limited to GitHub web UI right now).

The failing test downloads a few old Go releases from the official download page, I don't know why this would cause issues. The relevant tests are tagged local.

@meteorcloudy
Copy link
Contributor

meteorcloudy commented Jul 10, 2024

One major difference is that the new Mac fleet is ipv6 only, not sure if it's relevant.

Indeed it's caused by the ipv6-only network.

  • We are setting --host_jvm_args=-Djava.net.preferIPv6Addresses=true in /private/etc/bazel.bazelrc on the Mac VMs.
  • But it only affected the outer Bazel, inner Bazel running in the test has --nosystem_rc specified.
  • I can confirm after adding this flag in the go code, the three timeout tests are passing. Also on macos_arm64.

I'll let you decide how to inject this for macos ci, here is an example for Bazel's integration test bazelbuild/bazel@2c51a0c

@fmeum fmeum merged commit 3e84965 into master Jul 10, 2024
5 checks passed
@fmeum fmeum deleted the runfiles-fs branch July 10, 2024 12:52
cgrindel-self-hosted-renovate bot referenced this pull request in cgrindel/bazel-starlib Jul 13, 2024
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [io_bazel_rules_go](https://github.com/bazelbuild/rules_go) |
http_archive | minor | `v0.48.1` -> `v0.49.0` |

---

### Release Notes

<details>
<summary>bazelbuild/rules_go (io_bazel_rules_go)</summary>

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

[Compare
Source](https://github.com/bazelbuild/rules_go/compare/v0.48.1...v0.49.0)

#### `WORKSPACE` code

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

    http_archive(
        name = "io_bazel_rules_go",
sha256 =
"d93ef02f1e72c82d8bb3d5169519b36167b33cf68c252525e3b9d3d5dd143de7",
        urls = [

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

"https://github.com/bazelbuild/rules_go/releases/download/v0.49.0/rules_go-v0.49.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.22.5")

#### What's Changed

- Add support for path mapping by
[@&#8203;fmeum](https://github.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3915](https://github.com/bazelbuild/rules_go/pull/3915)
- Introduce rules_go_unsupported_feature by
[@&#8203;cramertj](https://github.com/cramertj) in
[https://github.com/bazelbuild/rules_go/pull/3955](https://github.com/bazelbuild/rules_go/pull/3955)
- Automatically run `bazel mod tidy` in `@rules_go//go` by
[@&#8203;fmeum](https://github.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3927](https://github.com/bazelbuild/rules_go/pull/3927)
- Fix revive warning in testmain.go files by
[@&#8203;EdSchouten](https://github.com/EdSchouten) in
[https://github.com/bazelbuild/rules_go/pull/3958](https://github.com/bazelbuild/rules_go/pull/3958)
- Revert "feat(mode): add `purego` tag when `pure`
([#&#8203;3901](https://github.com/bazelbuild/rules_go/issues/3901))"
by [@&#8203;fmeum](https://github.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3961](https://github.com/bazelbuild/rules_go/pull/3961)
- prepare patch release 0.48.1 by
[@&#8203;tyler-french](https://github.com/tyler-french) in
[https://github.com/bazelbuild/rules_go/pull/3963](https://github.com/bazelbuild/rules_go/pull/3963)
- Fix broken link to
https://bazel.build/concepts/dependencies#data-dependencies by
[@&#8203;alexbozhenko](https://github.com/alexbozhenko) in
[https://github.com/bazelbuild/rules_go/pull/3960](https://github.com/bazelbuild/rules_go/pull/3960)
- docs: Discourage use `go_sdk.host()` in bzlmod.md (see
[#&#8203;713](https://github.com/bazelbuild/rules_go/issues/713)) by
[@&#8203;vorburger](https://github.com/vorburger) in
[https://github.com/bazelbuild/rules_go/pull/3968](https://github.com/bazelbuild/rules_go/pull/3968)
- Add linux/ppc64le to GOARCH constraints by
[@&#8203;c16a](https://github.com/c16a) in
[https://github.com/bazelbuild/rules_go/pull/3975](https://github.com/bazelbuild/rules_go/pull/3975)
- gopackagesdriver: Make kind query regexes anchored by
[@&#8203;jscissr](https://github.com/jscissr) in
[https://github.com/bazelbuild/rules_go/pull/3978](https://github.com/bazelbuild/rules_go/pull/3978)
- Add a full `fs.FS` implementation to `runfiles` by
[@&#8203;fmeum](https://github.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3969](https://github.com/bazelbuild/rules_go/pull/3969)
- update readmes for latest release by
[@&#8203;tyler-french](https://github.com/tyler-french) in
[https://github.com/bazelbuild/rules_go/pull/3988](https://github.com/bazelbuild/rules_go/pull/3988)
- prepare release 0.49.0 by
[@&#8203;tyler-french](https://github.com/tyler-french) in
[https://github.com/bazelbuild/rules_go/pull/3989](https://github.com/bazelbuild/rules_go/pull/3989)

#### New Contributors

- [@&#8203;cramertj](https://github.com/cramertj) made their first
contribution in
[https://github.com/bazelbuild/rules_go/pull/3955](https://github.com/bazelbuild/rules_go/pull/3955)
- [@&#8203;alexbozhenko](https://github.com/alexbozhenko) made their
first contribution in
[https://github.com/bazelbuild/rules_go/pull/3960](https://github.com/bazelbuild/rules_go/pull/3960)
- [@&#8203;vorburger](https://github.com/vorburger) made their first
contribution in
[https://github.com/bazelbuild/rules_go/pull/3968](https://github.com/bazelbuild/rules_go/pull/3968)
- [@&#8203;c16a](https://github.com/c16a) made their first
contribution in
[https://github.com/bazelbuild/rules_go/pull/3975](https://github.com/bazelbuild/rules_go/pull/3975)
- [@&#8203;jscissr](https://github.com/jscissr) made their first
contribution in
[https://github.com/bazelbuild/rules_go/pull/3978](https://github.com/bazelbuild/rules_go/pull/3978)

**Full Changelog**:
bazel-contrib/rules_go@v0.48.0...v0.49.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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://github.com/renovatebot/renovate/discussions) if
that's undesired.

---

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

---

This PR has been generated by [Renovate
Bot](https://github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi4xMDkuNCIsInVwZGF0ZWRJblZlciI6IjM2LjEwOS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: Self-hosted Renovate Bot <361546+cgrindel-self-hosted-renovate[bot]@users.noreply.github.enterprise.com>
renovate bot referenced this pull request in kreempuff/rules_unreal_engine Jul 13, 2024
[![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://github.com/bazelbuild/rules_go) |
http_archive | minor | `v0.48.1` -> `v0.49.0` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>bazelbuild/rules_go (io_bazel_rules_go)</summary>

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

[Compare
Source](https://github.com/bazelbuild/rules_go/compare/v0.48.1...v0.49.0)

#### `WORKSPACE` code

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

    http_archive(
        name = "io_bazel_rules_go",
sha256 =
"d93ef02f1e72c82d8bb3d5169519b36167b33cf68c252525e3b9d3d5dd143de7",
        urls = [

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

"https://github.com/bazelbuild/rules_go/releases/download/v0.49.0/rules_go-v0.49.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.22.5")

#### What's Changed

- Add support for path mapping by
[@&#8203;fmeum](https://github.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3915](https://github.com/bazelbuild/rules_go/pull/3915)
- Introduce rules_go_unsupported_feature by
[@&#8203;cramertj](https://github.com/cramertj) in
[https://github.com/bazelbuild/rules_go/pull/3955](https://github.com/bazelbuild/rules_go/pull/3955)
- Automatically run `bazel mod tidy` in `@rules_go//go` by
[@&#8203;fmeum](https://github.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3927](https://github.com/bazelbuild/rules_go/pull/3927)
- Fix revive warning in testmain.go files by
[@&#8203;EdSchouten](https://github.com/EdSchouten) in
[https://github.com/bazelbuild/rules_go/pull/3958](https://github.com/bazelbuild/rules_go/pull/3958)
- Revert "feat(mode): add `purego` tag when `pure`
([#&#8203;3901](https://github.com/bazelbuild/rules_go/issues/3901))"
by [@&#8203;fmeum](https://github.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3961](https://github.com/bazelbuild/rules_go/pull/3961)
- prepare patch release 0.48.1 by
[@&#8203;tyler-french](https://github.com/tyler-french) in
[https://github.com/bazelbuild/rules_go/pull/3963](https://github.com/bazelbuild/rules_go/pull/3963)
- Fix broken link to
https://bazel.build/concepts/dependencies#data-dependencies by
[@&#8203;alexbozhenko](https://github.com/alexbozhenko) in
[https://github.com/bazelbuild/rules_go/pull/3960](https://github.com/bazelbuild/rules_go/pull/3960)
- docs: Discourage use `go_sdk.host()` in bzlmod.md (see
[#&#8203;713](https://github.com/bazelbuild/rules_go/issues/713)) by
[@&#8203;vorburger](https://github.com/vorburger) in
[https://github.com/bazelbuild/rules_go/pull/3968](https://github.com/bazelbuild/rules_go/pull/3968)
- Add linux/ppc64le to GOARCH constraints by
[@&#8203;c16a](https://github.com/c16a) in
[https://github.com/bazelbuild/rules_go/pull/3975](https://github.com/bazelbuild/rules_go/pull/3975)
- gopackagesdriver: Make kind query regexes anchored by
[@&#8203;jscissr](https://github.com/jscissr) in
[https://github.com/bazelbuild/rules_go/pull/3978](https://github.com/bazelbuild/rules_go/pull/3978)
- Add a full `fs.FS` implementation to `runfiles` by
[@&#8203;fmeum](https://github.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3969](https://github.com/bazelbuild/rules_go/pull/3969)
- update readmes for latest release by
[@&#8203;tyler-french](https://github.com/tyler-french) in
[https://github.com/bazelbuild/rules_go/pull/3988](https://github.com/bazelbuild/rules_go/pull/3988)
- prepare release 0.49.0 by
[@&#8203;tyler-french](https://github.com/tyler-french) in
[https://github.com/bazelbuild/rules_go/pull/3989](https://github.com/bazelbuild/rules_go/pull/3989)

#### New Contributors

- [@&#8203;cramertj](https://github.com/cramertj) made their first
contribution in
[https://github.com/bazelbuild/rules_go/pull/3955](https://github.com/bazelbuild/rules_go/pull/3955)
- [@&#8203;alexbozhenko](https://github.com/alexbozhenko) made their
first contribution in
[https://github.com/bazelbuild/rules_go/pull/3960](https://github.com/bazelbuild/rules_go/pull/3960)
- [@&#8203;vorburger](https://github.com/vorburger) made their first
contribution in
[https://github.com/bazelbuild/rules_go/pull/3968](https://github.com/bazelbuild/rules_go/pull/3968)
- [@&#8203;c16a](https://github.com/c16a) made their first
contribution in
[https://github.com/bazelbuild/rules_go/pull/3975](https://github.com/bazelbuild/rules_go/pull/3975)
- [@&#8203;jscissr](https://github.com/jscissr) made their first
contribution in
[https://github.com/bazelbuild/rules_go/pull/3978](https://github.com/bazelbuild/rules_go/pull/3978)

**Full Changelog**:
bazel-contrib/rules_go@v0.48.0...v0.49.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://developer.mend.io/github/kreempuff/rules_unreal_engine).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MjUuMSIsInVwZGF0ZWRJblZlciI6IjM3LjQyNS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
rrbutani referenced this pull request in bazel-contrib/toolchains_llvm Jul 13, 2024
[![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://github.com/bazelbuild/rules_go) |
http_archive | minor | `v0.48.1` -> `v0.49.0` |

---

### Release Notes

<details>
<summary>bazelbuild/rules_go (io_bazel_rules_go)</summary>

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

[Compare
Source](https://github.com/bazelbuild/rules_go/compare/v0.48.1...v0.49.0)

#### `WORKSPACE` code

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

    http_archive(
        name = "io_bazel_rules_go",
sha256 =
"d93ef02f1e72c82d8bb3d5169519b36167b33cf68c252525e3b9d3d5dd143de7",
        urls = [

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

"https://github.com/bazelbuild/rules_go/releases/download/v0.49.0/rules_go-v0.49.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.22.5")

#### What's Changed

- Add support for path mapping by
[@&#8203;fmeum](https://github.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3915](https://github.com/bazelbuild/rules_go/pull/3915)
- Introduce rules_go_unsupported_feature by
[@&#8203;cramertj](https://github.com/cramertj) in
[https://github.com/bazelbuild/rules_go/pull/3955](https://github.com/bazelbuild/rules_go/pull/3955)
- Automatically run `bazel mod tidy` in `@rules_go//go` by
[@&#8203;fmeum](https://github.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3927](https://github.com/bazelbuild/rules_go/pull/3927)
- Fix revive warning in testmain.go files by
[@&#8203;EdSchouten](https://github.com/EdSchouten) in
[https://github.com/bazelbuild/rules_go/pull/3958](https://github.com/bazelbuild/rules_go/pull/3958)
- Revert "feat(mode): add `purego` tag when `pure`
([#&#8203;3901](https://github.com/bazelbuild/rules_go/issues/3901))"
by [@&#8203;fmeum](https://github.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3961](https://github.com/bazelbuild/rules_go/pull/3961)
- prepare patch release 0.48.1 by
[@&#8203;tyler-french](https://github.com/tyler-french) in
[https://github.com/bazelbuild/rules_go/pull/3963](https://github.com/bazelbuild/rules_go/pull/3963)
- Fix broken link to
https://bazel.build/concepts/dependencies#data-dependencies by
[@&#8203;alexbozhenko](https://github.com/alexbozhenko) in
[https://github.com/bazelbuild/rules_go/pull/3960](https://github.com/bazelbuild/rules_go/pull/3960)
- docs: Discourage use `go_sdk.host()` in bzlmod.md (see
[#&#8203;713](https://github.com/bazelbuild/rules_go/issues/713)) by
[@&#8203;vorburger](https://github.com/vorburger) in
[https://github.com/bazelbuild/rules_go/pull/3968](https://github.com/bazelbuild/rules_go/pull/3968)
- Add linux/ppc64le to GOARCH constraints by
[@&#8203;c16a](https://github.com/c16a) in
[https://github.com/bazelbuild/rules_go/pull/3975](https://github.com/bazelbuild/rules_go/pull/3975)
- gopackagesdriver: Make kind query regexes anchored by
[@&#8203;jscissr](https://github.com/jscissr) in
[https://github.com/bazelbuild/rules_go/pull/3978](https://github.com/bazelbuild/rules_go/pull/3978)
- Add a full `fs.FS` implementation to `runfiles` by
[@&#8203;fmeum](https://github.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3969](https://github.com/bazelbuild/rules_go/pull/3969)
- update readmes for latest release by
[@&#8203;tyler-french](https://github.com/tyler-french) in
[https://github.com/bazelbuild/rules_go/pull/3988](https://github.com/bazelbuild/rules_go/pull/3988)
- prepare release 0.49.0 by
[@&#8203;tyler-french](https://github.com/tyler-french) in
[https://github.com/bazelbuild/rules_go/pull/3989](https://github.com/bazelbuild/rules_go/pull/3989)

#### New Contributors

- [@&#8203;cramertj](https://github.com/cramertj) made their first
contribution in
[https://github.com/bazelbuild/rules_go/pull/3955](https://github.com/bazelbuild/rules_go/pull/3955)
- [@&#8203;alexbozhenko](https://github.com/alexbozhenko) made their
first contribution in
[https://github.com/bazelbuild/rules_go/pull/3960](https://github.com/bazelbuild/rules_go/pull/3960)
- [@&#8203;vorburger](https://github.com/vorburger) made their first
contribution in
[https://github.com/bazelbuild/rules_go/pull/3968](https://github.com/bazelbuild/rules_go/pull/3968)
- [@&#8203;c16a](https://github.com/c16a) made their first
contribution in
[https://github.com/bazelbuild/rules_go/pull/3975](https://github.com/bazelbuild/rules_go/pull/3975)
- [@&#8203;jscissr](https://github.com/jscissr) made their first
contribution in
[https://github.com/bazelbuild/rules_go/pull/3978](https://github.com/bazelbuild/rules_go/pull/3978)

**Full Changelog**:
bazel-contrib/rules_go@v0.48.0...v0.49.0

</details>

---

### 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.

---

- [ ] <!-- 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://developer.mend.io/github/bazel-contrib/toolchains_llvm).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MjUuMSIsInVwZGF0ZWRJblZlciI6IjM3LjQyNS4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
4 participants