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

Implement functionality to skip tests via TESTBRIDGE_TEST_ONLY env #3618

Merged
merged 8 commits into from
Jul 7, 2023

Conversation

yushan26
Copy link
Contributor

@yushan26 yushan26 commented Jul 6, 2023

What type of PR is this?

Feature

What does this PR do? Why is it needed?
This PR implements the functionality to skip tests via TESTBRIDGE_TEST_ONLY env field. TESTBRIDGE_TEST_ONLY will expect a comma-separated list of regex expressions. A prefix '-' to the regex specifies to excluded test case matching the filter (similar to instrumentaion_filter.
For example:
To indicate tests to run all the tests except for TestFQNTaskFiler and TestTargetTaskFiler, provide the environment in go_test:
env = {"TESTBRIDGE_TEST_ONLY":"-^TestFQNTaskFiler$,-^TestTargetTaskFiler$"}

This is the opposite behavior of the existing behavior go test -run.
This is needed in order to skip flaky test cases in CI.

Which issues(s) does this PR fix?

Fixes #2785

Other notes for review

@linzhp
Copy link
Contributor

linzhp commented Jul 7, 2023

Let's implement the same convention as --instrumentation_filter:

a comma-separated list of regex expressions with prefix '-' specifying excluded paths

In your example above, it should be --test_filter -^TestFQNTaskFiler$,-^TestTargetTaskFiler$

We can potentially pass something like --test_filter ^TestTask.+,-^TestTaskB$, meaning we want to only run tests with prefix TestTask, except TestTaskB.

@linzhp
Copy link
Contributor

linzhp commented Jul 7, 2023

Also, add some tests to cover this feature

tests/core/go_test/filter_test_cases_test.go Outdated Show resolved Hide resolved
go/tools/builders/generate_test_main.go Outdated Show resolved Hide resolved
tests/core/go_test/filter_test_cases_test.go Outdated Show resolved Hide resolved
Copy link
Contributor

@linzhp linzhp left a comment

Choose a reason for hiding this comment

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

Thank your for working on this. I am really excited to see this implemented finally!

@linzhp linzhp enabled auto-merge (squash) July 7, 2023 22:29
@linzhp linzhp merged commit 6b3d718 into bazel-contrib:master Jul 7, 2023
renovate bot referenced this pull request in cgrindel/bazel-starlib Jul 10, 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.40.1` -> `v0.41.0` |

---

### Release Notes

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

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

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

#### What's Changed

Starting this release, rules_go no longer ship with `@go_googleapis`
repo. Together with Gazelle v0.32.0, it means that all Go code importing
generated code from Google APIs will depend on
`@org_golang_google_genproto`, which is resolved by Go modules. For
proto files importing Google APIs proto, people needs to:

1.  Add an `http_archive` rule to download Google APIs, e.g.,

<!---->

    http_archive(
        name = "googleapis",
sha256 =
"9d1a930e767c93c825398b8f8692eca3fe353b9aaadedfbcf1fca2282c85df88",
strip_prefix = "googleapis-64926d52febbf298cb82a8f472ade4a3969ba922",
        urls = [

"https://github.com/googleapis/googleapis/archive/64926d52febbf298cb82a8f472ade4a3969ba922.zip",
        ],
    )

2. Resolve the proto manually. If Gazelle is being used, directives like
this needs to be added to a parent directory of the proto files:

<!---->

### gazelle:resolve proto proto google/rpc/status.proto
@&#8203;googleapis//google/rpc:status_proto
### gazelle:resolve proto go google/rpc/status.proto
@&#8203;org_golang_google_genproto//googleapis/rpc/status
### gazelle:resolve proto google/longrunning/operations.proto
@&#8203;googleapis//google/longrunning:operations_proto
### gazelle:resolve proto go google/longrunning/operations.proto
@&#8203;org_golang_google_genproto//googleapis/longrunning

Other changes included in this release

- detect_sdk_version: Support 1.21's new VERSION file format by
[@&#8203;evanj](https://togithub.com/evanj) in
[https://github.com/bazelbuild/rules_go/pull/3600](https://togithub.com/bazelbuild/rules_go/pull/3600)
- stdlib: Do not pass -static to cgo by
[@&#8203;zecke](https://togithub.com/zecke) in
[https://github.com/bazelbuild/rules_go/pull/3593](https://togithub.com/bazelbuild/rules_go/pull/3593)
- Expand stdlib packages when queried by
[@&#8203;JamyDev](https://togithub.com/JamyDev) in
[https://github.com/bazelbuild/rules_go/pull/3606](https://togithub.com/bazelbuild/rules_go/pull/3606)
- Fix stdlib file outputs pointing to processwrapper by
[@&#8203;JamyDev](https://togithub.com/JamyDev) in
[https://github.com/bazelbuild/rules_go/pull/3608](https://togithub.com/bazelbuild/rules_go/pull/3608)
- Fix `go_sdk` extension failure for unnamed root module by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3612](https://togithub.com/bazelbuild/rules_go/pull/3612)
- Adding Uber's hermetic cc toolchain for tests by
[@&#8203;linzhp](https://togithub.com/linzhp) in
[https://github.com/bazelbuild/rules_go/pull/3609](https://togithub.com/bazelbuild/rules_go/pull/3609)
- Implement functionality to skip tests via TESTBRIDGE_TEST_ONLY env by
[@&#8203;yushan26](https://togithub.com/yushan26) in
[https://github.com/bazelbuild/rules_go/pull/3618](https://togithub.com/bazelbuild/rules_go/pull/3618)

**Full Changelog**:
bazel-contrib/rules_go@v0.40.1...v0.41.0

#### `WORKSPACE` code

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

    http_archive(
        name = "io_bazel_rules_go",
sha256 =
"278b7ff5a826f3dc10f04feaf0b70d48b68748ccd512d7f98bf442077f043fe3",
        urls = [

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

"https://github.com/bazelbuild/rules_go/releases/download/v0.41.0/rules_go-v0.41.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.5")

</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://developer.mend.io/github/cgrindel/bazel-starlib).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot referenced this pull request in kreempuff/rules_unreal_engine Jul 11, 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.40.1` -> `v0.41.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 (io_bazel_rules_go)</summary>

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

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

##### What's Changed

Starting this release, rules_go no longer ship with `@go_googleapis`
repo. Together with Gazelle v0.32.0, it means that all Go code importing
generated code from Google APIs will depend on
`@org_golang_google_genproto`, which is resolved by Go modules. For
proto files importing Google APIs proto, people needs to:

1.  Add an `http_archive` rule to download Google APIs, e.g.,

<!---->

    http_archive(
        name = "googleapis",
sha256 =
"9d1a930e767c93c825398b8f8692eca3fe353b9aaadedfbcf1fca2282c85df88",
strip_prefix = "googleapis-64926d52febbf298cb82a8f472ade4a3969ba922",
        urls = [

"https://github.com/googleapis/googleapis/archive/64926d52febbf298cb82a8f472ade4a3969ba922.zip",
        ],
    )

2. Resolve the proto manually. If Gazelle is being used, directives like
this needs to be added to a parent directory of the proto files:

<!---->

##### gazelle:resolve proto proto google/rpc/status.proto
@&#8203;googleapis//google/rpc:status_proto
##### gazelle:resolve proto go google/rpc/status.proto
@&#8203;org_golang_google_genproto//googleapis/rpc/status
##### gazelle:resolve proto google/longrunning/operations.proto
@&#8203;googleapis//google/longrunning:operations_proto
##### gazelle:resolve proto go google/longrunning/operations.proto
@&#8203;org_golang_google_genproto//googleapis/longrunning

Other changes included in this release

- detect_sdk_version: Support 1.21's new VERSION file format by
[@&#8203;evanj](https://togithub.com/evanj) in
[https://github.com/bazelbuild/rules_go/pull/3600](https://togithub.com/bazelbuild/rules_go/pull/3600)
- stdlib: Do not pass -static to cgo by
[@&#8203;zecke](https://togithub.com/zecke) in
[https://github.com/bazelbuild/rules_go/pull/3593](https://togithub.com/bazelbuild/rules_go/pull/3593)
- Expand stdlib packages when queried by
[@&#8203;JamyDev](https://togithub.com/JamyDev) in
[https://github.com/bazelbuild/rules_go/pull/3606](https://togithub.com/bazelbuild/rules_go/pull/3606)
- Fix stdlib file outputs pointing to processwrapper by
[@&#8203;JamyDev](https://togithub.com/JamyDev) in
[https://github.com/bazelbuild/rules_go/pull/3608](https://togithub.com/bazelbuild/rules_go/pull/3608)
- Fix `go_sdk` extension failure for unnamed root module by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3612](https://togithub.com/bazelbuild/rules_go/pull/3612)
- Adding Uber's hermetic cc toolchain for tests by
[@&#8203;linzhp](https://togithub.com/linzhp) in
[https://github.com/bazelbuild/rules_go/pull/3609](https://togithub.com/bazelbuild/rules_go/pull/3609)
- Implement functionality to skip tests via TESTBRIDGE_TEST_ONLY env by
[@&#8203;yushan26](https://togithub.com/yushan26) in
[https://github.com/bazelbuild/rules_go/pull/3618](https://togithub.com/bazelbuild/rules_go/pull/3618)

**Full Changelog**:
bazel-contrib/rules_go@v0.40.1...v0.41.0

##### `WORKSPACE` code

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

    http_archive(
        name = "io_bazel_rules_go",
sha256 =
"278b7ff5a826f3dc10f04feaf0b70d48b68748ccd512d7f98bf442077f043fe3",
        urls = [

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

"https://github.com/bazelbuild/rules_go/releases/download/v0.41.0/rules_go-v0.41.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.5")

</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:eyJjcmVhdGVkSW5WZXIiOiIzNi41LjMiLCJ1cGRhdGVkSW5WZXIiOiIzNi41LjMiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=-->
renovate bot referenced this pull request in cgrindel/rules_swift_package_manager Jul 11, 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.40.1` -> `v0.41.0` |

---

### Release Notes

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

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

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

#### What's Changed

Starting this release, rules_go no longer ship with `@go_googleapis`
repo. Together with Gazelle v0.32.0, it means that all Go code importing
generated code from Google APIs will depend on
`@org_golang_google_genproto`, which is resolved by Go modules. For
proto files importing Google APIs proto, people needs to:

1.  Add an `http_archive` rule to download Google APIs, e.g.,

<!---->

    http_archive(
        name = "googleapis",
sha256 =
"9d1a930e767c93c825398b8f8692eca3fe353b9aaadedfbcf1fca2282c85df88",
strip_prefix = "googleapis-64926d52febbf298cb82a8f472ade4a3969ba922",
        urls = [

"https://github.com/googleapis/googleapis/archive/64926d52febbf298cb82a8f472ade4a3969ba922.zip",
        ],
    )

2. Resolve the proto manually. If Gazelle is being used, directives like
this needs to be added to a parent directory of the proto files:

<!---->

### gazelle:resolve proto proto google/rpc/status.proto
@&#8203;googleapis//google/rpc:status_proto
### gazelle:resolve proto go google/rpc/status.proto
@&#8203;org_golang_google_genproto//googleapis/rpc/status
### gazelle:resolve proto google/longrunning/operations.proto
@&#8203;googleapis//google/longrunning:operations_proto
### gazelle:resolve proto go google/longrunning/operations.proto
@&#8203;org_golang_google_genproto//googleapis/longrunning

Other changes included in this release

- detect_sdk_version: Support 1.21's new VERSION file format by
[@&#8203;evanj](https://togithub.com/evanj) in
[https://github.com/bazelbuild/rules_go/pull/3600](https://togithub.com/bazelbuild/rules_go/pull/3600)
- stdlib: Do not pass -static to cgo by
[@&#8203;zecke](https://togithub.com/zecke) in
[https://github.com/bazelbuild/rules_go/pull/3593](https://togithub.com/bazelbuild/rules_go/pull/3593)
- Expand stdlib packages when queried by
[@&#8203;JamyDev](https://togithub.com/JamyDev) in
[https://github.com/bazelbuild/rules_go/pull/3606](https://togithub.com/bazelbuild/rules_go/pull/3606)
- Fix stdlib file outputs pointing to processwrapper by
[@&#8203;JamyDev](https://togithub.com/JamyDev) in
[https://github.com/bazelbuild/rules_go/pull/3608](https://togithub.com/bazelbuild/rules_go/pull/3608)
- Fix `go_sdk` extension failure for unnamed root module by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3612](https://togithub.com/bazelbuild/rules_go/pull/3612)
- Adding Uber's hermetic cc toolchain for tests by
[@&#8203;linzhp](https://togithub.com/linzhp) in
[https://github.com/bazelbuild/rules_go/pull/3609](https://togithub.com/bazelbuild/rules_go/pull/3609)
- Implement functionality to skip tests via TESTBRIDGE_TEST_ONLY env by
[@&#8203;yushan26](https://togithub.com/yushan26) in
[https://github.com/bazelbuild/rules_go/pull/3618](https://togithub.com/bazelbuild/rules_go/pull/3618)

**Full Changelog**:
bazel-contrib/rules_go@v0.40.1...v0.41.0

#### `WORKSPACE` code

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

    http_archive(
        name = "io_bazel_rules_go",
sha256 =
"278b7ff5a826f3dc10f04feaf0b70d48b68748ccd512d7f98bf442077f043fe3",
        urls = [

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

"https://github.com/bazelbuild/rules_go/releases/download/v0.41.0/rules_go-v0.41.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.5")

</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://developer.mend.io/github/cgrindel/rules_swift_package_manager).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
f0rmiga referenced this pull request in aspect-build/talkie Aug 11, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[github.com/bazel-contrib/rules_jvm](https://togithub.com/bazel-contrib/rules_jvm)
| require | minor | `v0.14.0` -> `v0.15.0` |
|
[github.com/bazelbuild/bazel-gazelle](https://togithub.com/bazelbuild/bazel-gazelle)
| require | minor | `v0.31.1` -> `v0.32.0` |
|
[github.com/bazelbuild/rules_go](https://togithub.com/bazelbuild/rules_go)
| require | minor | `v0.40.1` -> `v0.41.0` |
|
[github.com/buildbarn/bb-remote-execution](https://togithub.com/buildbarn/bb-remote-execution)
| require | digest | `2b8c1fb` -> `d791ebc` |
| [github.com/emicklei/proto](https://togithub.com/emicklei/proto) |
require | minor | `v1.11.2` -> `v1.12.0` |
| [github.com/evanw/esbuild](https://togithub.com/evanw/esbuild) |
require | patch | `v0.18.11` -> `v0.18.13` |
| golang.org/x/exp | require | digest | `97b1e66` -> `613f0c0` |
|
[google.golang.org/genproto](https://togithub.com/googleapis/go-genproto)
| require | digest | `9506855` -> `782d3b1` |
|
[google.golang.org/genproto/googleapis/api](https://togithub.com/googleapis/go-genproto)
| require | digest | `f517056` -> `782d3b1` |
| [helm.sh/helm/v3](https://togithub.com/helm/helm) | require | patch |
`v3.12.1` -> `v3.12.2` |

---

### ⚠ Dependency Lookup Warnings ⚠

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

---

### Release Notes

<details>
<summary>bazel-contrib/rules_jvm
(github.com/bazel-contrib/rules_jvm)</summary>

###
[`v0.15.0`](https://togithub.com/bazel-contrib/rules_jvm/releases/tag/v0.15.0)

[Compare
Source](https://togithub.com/bazel-contrib/rules_jvm/compare/v0.14.0...v0.15.0)

WORKSPACE snippet:

```starlark
load("@&#8203;bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "contrib_rules_jvm",
    sha256 = "75e9e6e1bc15ab960e2e2a652299a252b03315a77d14447ea996f665d7f923b8",
    strip_prefix = "rules_jvm-0.15.0",
    url = "https://github.com/bazel-contrib/rules_jvm/releases/download/v0.15.0/rules_jvm-v0.15.0.tar.gz",
)

### Fetches the contrib_rules_jvm dependencies.
### If you want to have a different version of some dependency,

### you should fetch it *before* calling this.
load("@&#8203;contrib_rules_jvm//:repositories.bzl", "contrib_rules_jvm_deps")

contrib_rules_jvm_deps()

### Now ensure that the downloaded deps are properly configured
load("@&#8203;contrib_rules_jvm//:setup.bzl", "contrib_rules_jvm_setup")

contrib_rules_jvm_setup()
```

#### What's Changed

- build: Upgrade grpc-java to 1.56.1 and protobuf to 21.7 and ensure we
choose the right version by
[@&#8203;blorente](https://togithub.com/blorente) in
[https://github.com/bazel-contrib/rules_jvm/pull/183](https://togithub.com/bazel-contrib/rules_jvm/pull/183)
- Add javax.annotation.processing as in the stdlib by
[@&#8203;illicitonion](https://togithub.com/illicitonion) in
[https://github.com/bazel-contrib/rules_jvm/pull/184](https://togithub.com/bazel-contrib/rules_jvm/pull/184)
- fix: Reflect protobuf updates into MODULE.bazel by
[@&#8203;blorente](https://togithub.com/blorente) in
[https://github.com/bazel-contrib/rules_jvm/pull/185](https://togithub.com/bazel-contrib/rules_jvm/pull/185)
- Add full JRE package list by
[@&#8203;illicitonion](https://togithub.com/illicitonion) in
[https://github.com/bazel-contrib/rules_jvm/pull/186](https://togithub.com/bazel-contrib/rules_jvm/pull/186)

**Full Changelog**:
bazel-contrib/rules_jvm@v0.14.0...v0.15.0

</details>

<details>
<summary>bazelbuild/bazel-gazelle
(github.com/bazelbuild/bazel-gazelle)</summary>

###
[`v0.32.0`](https://togithub.com/bazelbuild/bazel-gazelle/releases/tag/v0.32.0)

[Compare
Source](https://togithub.com/bazelbuild/bazel-gazelle/compare/v0.31.1...v0.32.0)

Starting this release, Gazelle no longer resolves Go and proto imports
of Google APIs to `@go_googleapis`. Instead, Go packages from Google
APIs will be treated as regular Go packages, and resolve to
`@org_golang_google_genproto`, which contains the pre-generated Go code,
with its version determined by Go modules. For proto files importing
Google APIs proto and generating Go code, users need to:

1.  Add an `http_archive` rule to download Google APIs, e.g.,

<!---->

    http_archive(
        name = "googleapis",
sha256 =
"9d1a930e767c93c825398b8f8692eca3fe353b9aaadedfbcf1fca2282c85df88",
strip_prefix = "googleapis-64926d52febbf298cb82a8f472ade4a3969ba922",
        urls = [

"https://github.com/googleapis/googleapis/archive/64926d52febbf298cb82a8f472ade4a3969ba922.zip",
        ],
    )

load("@&#8203;googleapis//:repository_rules.bzl",
"switched_rules_by_language")

    switched_rules_by_language(
        name = "com_google_googleapis_imports",
    )

Note that the version of Google APIs archive needs to be compatible with
the pre-generated code in `@org_golang_google_genproto`.

2. Resolve the proto manually. If Gazelle is being used, directives like
the following need to be added to a parent directory of the proto files:

<!---->

### gazelle:resolve proto proto google/rpc/status.proto
@&#8203;googleapis//google/rpc:status_proto
### gazelle:resolve proto go google/rpc/status.proto
@&#8203;org_golang_google_genproto//googleapis/rpc/status
### gazelle:resolve proto google/longrunning/operations.proto
@&#8203;googleapis//google/longrunning:operations_proto
### gazelle:resolve proto go google/longrunning/operations.proto
@&#8203;org_golang_google_genproto//googleapis/longrunning

#### What's Changed

- Decouple Google APIs by [@&#8203;linzhp](https://togithub.com/linzhp)
in
[https://github.com/bazelbuild/bazel-gazelle/pull/1561](https://togithub.com/bazelbuild/bazel-gazelle/pull/1561)
- resolve: Add a resolve_regexp directive by
[@&#8203;DolceTriade](https://togithub.com/DolceTriade) in
[https://github.com/bazelbuild/bazel-gazelle/pull/1542](https://togithub.com/bazelbuild/bazel-gazelle/pull/1542)
- Remove module dependency on go_googleapis by
[@&#8203;linzhp](https://togithub.com/linzhp) in
[https://github.com/bazelbuild/bazel-gazelle/pull/1563](https://togithub.com/bazelbuild/bazel-gazelle/pull/1563)
- Testing on macOS arm64 by
[@&#8203;linzhp](https://togithub.com/linzhp) in
[https://github.com/bazelbuild/bazel-gazelle/pull/1568](https://togithub.com/bazelbuild/bazel-gazelle/pull/1568)
- Stop resolving to @&#8203;io_bazel_rules_go//proto/wkt by
[@&#8203;linzhp](https://togithub.com/linzhp) in
[https://github.com/bazelbuild/bazel-gazelle/pull/1567](https://togithub.com/bazelbuild/bazel-gazelle/pull/1567)
- Fix directive table in Readme file by
[@&#8203;farhaven](https://togithub.com/farhaven) in
[https://github.com/bazelbuild/bazel-gazelle/pull/1571](https://togithub.com/bazelbuild/bazel-gazelle/pull/1571)

#### New Contributors

- [@&#8203;DolceTriade](https://togithub.com/DolceTriade) made their
first contribution in
[https://github.com/bazelbuild/bazel-gazelle/pull/1542](https://togithub.com/bazelbuild/bazel-gazelle/pull/1542)
- [@&#8203;farhaven](https://togithub.com/farhaven) made their first
contribution in
[https://github.com/bazelbuild/bazel-gazelle/pull/1571](https://togithub.com/bazelbuild/bazel-gazelle/pull/1571)

**Full Changelog**:
bazel-contrib/bazel-gazelle@v0.31.1...v0.32.0

</details>

<details>
<summary>bazelbuild/rules_go (github.com/bazelbuild/rules_go)</summary>

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

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

#### What's Changed

Starting this release, rules_go no longer ship with `@go_googleapis`
repo. Together with Gazelle v0.32.0, it means that all Go code importing
generated code from Google APIs will depend on
`@org_golang_google_genproto`, which is resolved by Go modules. For
proto files importing Google APIs proto and generating Go code, users
need to:

1.  Add an `http_archive` rule to download Google APIs, e.g.,

<!---->

    http_archive(
        name = "googleapis",
sha256 =
"9d1a930e767c93c825398b8f8692eca3fe353b9aaadedfbcf1fca2282c85df88",
strip_prefix = "googleapis-64926d52febbf298cb82a8f472ade4a3969ba922",
        urls = [

"https://github.com/googleapis/googleapis/archive/64926d52febbf298cb82a8f472ade4a3969ba922.zip",
        ],
    )

load("@&#8203;googleapis//:repository_rules.bzl",
"switched_rules_by_language")

    switched_rules_by_language(
        name = "com_google_googleapis_imports",
    )

Note that the version of Google APIs archive needs to be compatible with
the pre-generated code in `@org_golang_google_genproto`.

2. Resolve the proto manually. If Gazelle is being used, directives like
the following need to be added to a parent directory of the proto files:

<!---->

### gazelle:resolve proto proto google/rpc/status.proto
@&#8203;googleapis//google/rpc:status_proto
### gazelle:resolve proto go google/rpc/status.proto
@&#8203;org_golang_google_genproto//googleapis/rpc/status
### gazelle:resolve proto google/longrunning/operations.proto
@&#8203;googleapis//google/longrunning:operations_proto
### gazelle:resolve proto go google/longrunning/operations.proto
@&#8203;org_golang_google_genproto//googleapis/longrunning

Other changes included in this release

- detect_sdk_version: Support 1.21's new VERSION file format by
[@&#8203;evanj](https://togithub.com/evanj) in
[https://github.com/bazelbuild/rules_go/pull/3600](https://togithub.com/bazelbuild/rules_go/pull/3600)
- stdlib: Do not pass -static to cgo by
[@&#8203;zecke](https://togithub.com/zecke) in
[https://github.com/bazelbuild/rules_go/pull/3593](https://togithub.com/bazelbuild/rules_go/pull/3593)
- Expand stdlib packages when queried by
[@&#8203;JamyDev](https://togithub.com/JamyDev) in
[https://github.com/bazelbuild/rules_go/pull/3606](https://togithub.com/bazelbuild/rules_go/pull/3606)
- Fix stdlib file outputs pointing to processwrapper by
[@&#8203;JamyDev](https://togithub.com/JamyDev) in
[https://github.com/bazelbuild/rules_go/pull/3608](https://togithub.com/bazelbuild/rules_go/pull/3608)
- Fix `go_sdk` extension failure for unnamed root module by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[https://github.com/bazelbuild/rules_go/pull/3612](https://togithub.com/bazelbuild/rules_go/pull/3612)
- Adding Uber's hermetic cc toolchain for tests by
[@&#8203;linzhp](https://togithub.com/linzhp) in
[https://github.com/bazelbuild/rules_go/pull/3609](https://togithub.com/bazelbuild/rules_go/pull/3609)
- Implement functionality to skip tests via TESTBRIDGE_TEST_ONLY env by
[@&#8203;yushan26](https://togithub.com/yushan26) in
[https://github.com/bazelbuild/rules_go/pull/3618](https://togithub.com/bazelbuild/rules_go/pull/3618)

**Full Changelog**:
bazel-contrib/rules_go@v0.40.1...v0.41.0

#### `WORKSPACE` code

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

    http_archive(
        name = "io_bazel_rules_go",
sha256 =
"278b7ff5a826f3dc10f04feaf0b70d48b68748ccd512d7f98bf442077f043fe3",
        urls = [

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

"https://github.com/bazelbuild/rules_go/releases/download/v0.41.0/rules_go-v0.41.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.5")

</details>

<details>
<summary>emicklei/proto (github.com/emicklei/proto)</summary>

###
[`v1.12.0`](https://togithub.com/emicklei/proto/compare/v1.11.2...v1.12.0)

[Compare
Source](https://togithub.com/emicklei/proto/compare/v1.11.2...v1.12.0)

</details>

<details>
<summary>evanw/esbuild (github.com/evanw/esbuild)</summary>

###
[`v0.18.13`](https://togithub.com/evanw/esbuild/releases/tag/v0.18.13)

[Compare
Source](https://togithub.com/evanw/esbuild/compare/v0.18.12...v0.18.13)

- Add the `--drop-labels=` option
([#&#8203;2398](https://togithub.com/evanw/esbuild/issues/2398))

If you want to conditionally disable some development-only code and have
it not be present in the final production bundle, right now the most
straightforward way of doing this is to use the `--define:` flag along
with a specially-named global variable. For example, consider the
following code:

    ```js
    function main() {
      DEV && doAnExpensiveCheck()
    }
    ```

    You can build this for development and production like this:

    -   Development: `esbuild --define:DEV=true`
    -   Production: `esbuild --define:DEV=false`

One drawback of this approach is that the resulting code crashes if you
don't provide a value for `DEV` with `--define:`. In practice this isn't
that big of a problem, and there are also various ways to work around
this.

However, another approach that avoids this drawback is to use JavaScript
label statements instead. That's what the `--drop-labels=` flag
implements. For example, consider the following code:

    ```js
    function main() {
      DEV: doAnExpensiveCheck()
    }
    ```

With this release, you can now build this for development and production
like this:

    -   Development: `esbuild`
    -   Production: `esbuild --drop-labels=DEV`

This means that code containing optional development-only checks can now
be written such that it's safe to run without any additional
configuration. The `--drop-labels=` flag takes comma-separated list of
multiple label names to drop.

- Avoid causing `unhandledRejection` during shutdown
([#&#8203;3219](https://togithub.com/evanw/esbuild/issues/3219))

All pending esbuild JavaScript API calls are supposed to fail if
esbuild's underlying child process is unexpectedly terminated. This can
happen if `SIGINT` is sent to the parent `node` process with Ctrl+C, for
example. Previously doing this could also cause an unhandled promise
rejection when esbuild attempted to communicate this failure to its own
child process that no longer exists. This release now swallows this
communication failure, which should prevent this internal unhandled
promise rejection. This change means that you can now use esbuild's
JavaScript API with a custom `SIGINT` handler that extends the lifetime
of the `node` process without esbuild's internals causing an early exit
due to an unhandled promise rejection.

-   Update browser compatibility table scripts

The scripts that esbuild uses to compile its internal browser
compatibility table have been overhauled. Briefly:

    -   Converted from JavaScript to TypeScript
    -   Fixed some bugs that resulted in small changes to the table
- Added [`caniuse-lite`](https://www.npmjs.com/package/caniuse-lite) and
[`@mdn/browser-compat-data`](https://www.npmjs.com/package/@&#8203;mdn/browser-compat-data)
as new data sources (replacing manually-copied information)

This change means it's now much easier to keep esbuild's internal
compatibility tables up to date. You can review the table changes here
if you need to debug something about this change:

- [JS table
changes](https://togithub.com/evanw/esbuild/compare/d259b8fac717ee347c19bd8299f2c26d7c87481a...af1d35c372f78c14f364b63e819fd69548508f55#diff-1649eb68992c79753469f02c097de309adaf7231b45cc816c50bf751af400eb4)
- [CSS table
changes](https://togithub.com/evanw/esbuild/commit/95feb2e09877597cb929469ce43811bdf11f50c1#diff-4e1c4f269e02c5ea31cbd5138d66751e32cf0e240524ee8a966ac756f0e3c3cd)

###
[`v0.18.12`](https://togithub.com/evanw/esbuild/releases/tag/v0.18.12)

[Compare
Source](https://togithub.com/evanw/esbuild/compare/v0.18.11...v0.18.12)

- Fix a panic with `const enum` inside parentheses
([#&#8203;3205](https://togithub.com/evanw/esbuild/issues/3205))

This release fixes an edge case where esbuild could potentially panic if
a TypeScript `const enum` statement was used inside of a parenthesized
expression and was followed by certain other scope-related statements.
Here's a minimal example that triggers this edge case:

    ```ts
    (() => {
      const enum E { a };
      () => E.a
    })
    ```

- Allow a newline in the middle of TypeScript `export type` statement
([#&#8203;3225](https://togithub.com/evanw/esbuild/issues/3225))

Previously esbuild incorrectly rejected the following valid TypeScript
code:

    ```ts
    export type
    { T };

    export type
    * as foo from 'bar';
    ```

Code that uses a newline after `export type` is now allowed starting
with this release.

- Fix cross-module inlining of string enums
([#&#8203;3210](https://togithub.com/evanw/esbuild/issues/3210))

A refactoring typo in version 0.18.9 accidentally introduced a
regression with cross-module inlining of string enums when combined with
computed property accesses. This regression has been fixed.

- Rewrite `.js` to `.ts` inside packages with `exports`
([#&#8203;3201](https://togithub.com/evanw/esbuild/issues/3201))

Packages with the `exports` field are supposed to disable node's path
resolution behavior that allows you to import a file with a different
extension than the one in the source code (for example, importing
`foo/bar` to get `foo/bar.js`). And TypeScript has behavior where you
can import a non-existent `.js` file and you will get the `.ts` file
instead. Previously the presence of the `exports` field caused esbuild
to disable all extension manipulation stuff which included both node's
implicit file extension searching and TypeScript's file extension
swapping. However, TypeScript appears to always apply file extension
swapping even in this case. So with this release, esbuild will now
rewrite `.js` to `.ts` even inside packages with `exports`.

- Fix a redirect edge case in esbuild's development server
([#&#8203;3208](https://togithub.com/evanw/esbuild/issues/3208))

The development server canonicalizes directory URLs by adding a trailing
slash. For example, visiting `/about` redirects to `/about/` if
`/about/index.html` would be served. However, if the requested path
begins with two slashes, then the redirect incorrectly turned into a
protocol-relative URL. For example, visiting `//about` redirected to
`//about/` which the browser turns into `http://about/`. This release
fixes the bug by canonicalizing the URL path when doing this redirect.

</details>

<details>
<summary>helm/helm (helm.sh/helm/v3)</summary>

### [`v3.12.2`](https://togithub.com/helm/helm/releases/tag/v3.12.2):
Helm v3.12.2

[Compare
Source](https://togithub.com/helm/helm/compare/v3.12.1...v3.12.2)

Helm v3.12.2 is a patch release. Users are encouraged to upgrade for the
best experience. Users are encouraged to upgrade for the best
experience.

The community keeps growing, and we'd love to see you there!

- Join the discussion in [Kubernetes
Slack](https://kubernetes.slack.com):
    -   for questions and just to hang out
    -   for discussing PRs, code, and bugs
- Hang out at the Public Developer Call: Thursday, 9:30 Pacific via
[Zoom](https://zoom.us/j/696660622)
- Test, debug, and contribute charts:
[ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0)

#### Installation and Upgrading

Download Helm v3.12.2. The common platform binaries are here:

- [MacOS amd64](https://get.helm.sh/helm-v3.12.2-darwin-amd64.tar.gz)
([checksum](https://get.helm.sh/helm-v3.12.2-darwin-amd64.tar.gz.sha256sum)
/ 6e8bfc84a640e0dc47cc49cfc2d0a482f011f4249e2dff2a7e23c7ef2df1b64e)
- [MacOS arm64](https://get.helm.sh/helm-v3.12.2-darwin-arm64.tar.gz)
([checksum](https://get.helm.sh/helm-v3.12.2-darwin-arm64.tar.gz.sha256sum)
/ b60ee16847e28879ae298a20ba4672fc84f741410f438e645277205824ddbf55)
- [Linux amd64](https://get.helm.sh/helm-v3.12.2-linux-amd64.tar.gz)
([checksum](https://get.helm.sh/helm-v3.12.2-linux-amd64.tar.gz.sha256sum)
/ 2b6efaa009891d3703869f4be80ab86faa33fa83d9d5ff2f6492a8aebe97b219)
- [Linux arm](https://get.helm.sh/helm-v3.12.2-linux-arm.tar.gz)
([checksum](https://get.helm.sh/helm-v3.12.2-linux-arm.tar.gz.sha256sum)
/ 39cc63757901eaea5f0c30b464d3253a5d034ffefcb9b9d3c9e284887b9bb381)
- [Linux arm64](https://get.helm.sh/helm-v3.12.2-linux-arm64.tar.gz)
([checksum](https://get.helm.sh/helm-v3.12.2-linux-arm64.tar.gz.sha256sum)
/ cfafbae85c31afde88c69f0e5053610c8c455826081c1b2d665d9b44c31b3759)
- [Linux i386](https://get.helm.sh/helm-v3.12.2-linux-386.tar.gz)
([checksum](https://get.helm.sh/helm-v3.12.2-linux-386.tar.gz.sha256sum)
/ ecd4d0f3feb0f8448ed11e182e493e74c36572e1b52d47ecbed3e99919c8390d)
- [Linux ppc64le](https://get.helm.sh/helm-v3.12.2-linux-ppc64le.tar.gz)
([checksum](https://get.helm.sh/helm-v3.12.2-linux-ppc64le.tar.gz.sha256sum)
/ fb0313bfd6ec5a08d8755efb7e603f76633726160040434fd885e74b6c10e387)
- [Linux s390x](https://get.helm.sh/helm-v3.12.2-linux-s390x.tar.gz)
([checksum](https://get.helm.sh/helm-v3.12.2-linux-s390x.tar.gz.sha256sum)
/ 63dec602455337a6ec08ba16429ec2b87ab064ea563249c07c01f483c0c4bd4c)
- [Windows amd64](https://get.helm.sh/helm-v3.12.2-windows-amd64.zip)
([checksum](https://get.helm.sh/helm-v3.12.2-windows-amd64.zip.sha256sum)
/ 35dc439baad85728dafd2be0edd4721ae5b770c5cf72c3adf9558b1415a9cae6)

This release was signed with ` 672C 657B E06B 4B30 969C 4A57 4614 49C2
5E36 B98E ` and can be found at
[@&#8203;mattfarina](https://togithub.com/mattfarina) [keybase
account](https://keybase.io/mattfarina). Please use the attached
signatures for verifying this release using `gpg`.

The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get
you going from there. For **upgrade instructions** or detailed
installation notes, check the [install
guide](https://helm.sh/docs/intro/install/). You can also use a [script
to
install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3)
on any system with `bash`.

#### What's Next

- 3.12.3 is the next patch/bug fix release and will be on August 9,
2023.
-   3.13.0 is the next feature release and be on September 13, 2023.

#### Changelog

- add GetRegistryClient method
[`1e210a2`](https://togithub.com/helm/helm/commit/1e210a2c8cc5117d1055bfaa5d40f51bbc2e345e)
(wujunwei)
- chore(deps): bump oras.land/oras-go from 1.2.2 to 1.2.3
[`cfa7bc6`](https://togithub.com/helm/helm/commit/cfa7bc68fa131284fb2fafdb43cd0233dcc7a2b7)
(dependabot\[bot])

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

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.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 [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/aspect-build/silo).

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

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jason Bedard <[email protected]>
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.

go_test: skipping tests with --test_filter
3 participants