-
-
Notifications
You must be signed in to change notification settings - Fork 661
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
Panic when a test times out #3749
Conversation
d5b3d4f
to
6311550
Compare
Ping on this :) IMO this is a colossal UX improvement over the status quo. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Nice work making the signal channel have a buffer of 1. I do wonder if there is a more idiomatic way to handle a stack trace with runtime.Stack and os.Exit()
, but panic
is probably good for simplicity.
Since the |
By calling `panic` when a Bazel test times out, which is indicated by Bazel sending a SIGTERM, stack traces of all Go routines are printed, similar to the behavior of native `go test`.
6311550
to
3dce04b
Compare
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [io_bazel_rules_go](https://togithub.com/bazelbuild/rules_go) | http_archive | minor | `v0.43.0` -> `v0.44.0` | --- ### Release Notes <details> <summary>bazelbuild/rules_go (io_bazel_rules_go)</summary> ### [`v0.44.0`](https://togithub.com/bazelbuild/rules_go/releases/tag/v0.44.0) [Compare Source](https://togithub.com/bazelbuild/rules_go/compare/v0.43.0...v0.44.0) ### IMPORTANT CHANGES #### Tests now call `panic()` when they timeout This means there is a running goroutine (which will fail [goleak](https://togithub.com/uber-go/goleak) detection) [Goroutine 26 in state chan receive, with github.com/bazelbuild/rules_go/go/tools/bzltestutil.RegisterTimeoutHandler.func1 on top of the This also means there may be some different behavior when calling `SIGTERM` directly from within a test. For more information see: [https://github.com/bazelbuild/rules_go/pull/3749](https://togithub.com/bazelbuild/rules_go/pull/3749) #### Bzlmod support for `nogo` This can be added in your `MODULE.bazel` file: go_sdk = use_extension("@​io_bazel_rules_go//go:extensions.bzl", "go_sdk") go_sdk.download( name = "go_sdk", ... ) go_sdk.nogo( nogo = "//:default_nogo", ) For more information see [https://github.com/bazelbuild/rules_go/pull/3782](https://togithub.com/bazelbuild/rules_go/pull/3782) #### `WORKSPACE` code load("@​bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "io_bazel_rules_go", sha256 = "c8035e8ae248b56040a65ad3f0b7434712e2037e5dfdcebfe97576e620422709", urls = [ "https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.44.0/rules_go-v0.44.0.zip", "https://github.com/bazelbuild/rules_go/releases/download/v0.44.0/rules_go-v0.44.0.zip", ], ) load("@​io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() go_register_toolchains(version = "1.21.5") #### What's Changed - Do not test on centos7 by [@​fmeum](https://togithub.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3757](https://togithub.com/bazelbuild/rules_go/pull/3757) - update documentation for 0.43.0 release by [@​tyler-french](https://togithub.com/tyler-french) in [https://github.com/bazelbuild/rules_go/pull/3758](https://togithub.com/bazelbuild/rules_go/pull/3758) - Add toolchain param to affected actions by [@​kotlaja](https://togithub.com/kotlaja) in [https://github.com/bazelbuild/rules_go/pull/3760](https://togithub.com/bazelbuild/rules_go/pull/3760) - Update GO_TOOLCHAIN string to Label and add toolchain param to one more action by [@​kotlaja](https://togithub.com/kotlaja) in [https://github.com/bazelbuild/rules_go/pull/3762](https://togithub.com/bazelbuild/rules_go/pull/3762) - Do not choose prereleases as highest versions by [@​mering](https://togithub.com/mering) in [https://github.com/bazelbuild/rules_go/pull/3764](https://togithub.com/bazelbuild/rules_go/pull/3764) - Remove unmaintained validators by [@​mering](https://togithub.com/mering) in [https://github.com/bazelbuild/rules_go/pull/3768](https://togithub.com/bazelbuild/rules_go/pull/3768) - Use `tools.go` trick to make `go.mod` work with `go mod tidy` by [@​fmeum](https://togithub.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3775](https://togithub.com/bazelbuild/rules_go/pull/3775) - feat(packagesdriver): add \_test suffix to pkgPath by [@​JamyDev](https://togithub.com/JamyDev) in [https://github.com/bazelbuild/rules_go/pull/3777](https://togithub.com/bazelbuild/rules_go/pull/3777) - Typo --test_runner_fail_fast by [@​Clement-Jean](https://togithub.com/Clement-Jean) in [https://github.com/bazelbuild/rules_go/pull/3773](https://togithub.com/bazelbuild/rules_go/pull/3773) - Panic when a test times out by [@​fmeum](https://togithub.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3749](https://togithub.com/bazelbuild/rules_go/pull/3749) - Fix integration tests with Bazel@HEAD by [@​fmeum](https://togithub.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3781](https://togithub.com/bazelbuild/rules_go/pull/3781) - Automatically register SDKs for common execution platforms by [@​fmeum](https://togithub.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3634](https://togithub.com/bazelbuild/rules_go/pull/3634) - fix `aux_files` relative paths for gomock source mocks (fix [#​3752](https://togithub.com/bazelbuild/rules_go/issues/3752)) by [@​ikavalio](https://togithub.com/ikavalio) in [https://github.com/bazelbuild/rules_go/pull/3753](https://togithub.com/bazelbuild/rules_go/pull/3753) - Update to modern protoc plugins by [@​mering](https://togithub.com/mering) in [https://github.com/bazelbuild/rules_go/pull/3761](https://togithub.com/bazelbuild/rules_go/pull/3761) - Add integration tests for protoc-gen-go-grpc by [@​ryanpbrewster](https://togithub.com/ryanpbrewster) in [https://github.com/bazelbuild/rules_go/pull/3787](https://togithub.com/bazelbuild/rules_go/pull/3787) - Add Bzlmod support for `nogo` by [@​fmeum](https://togithub.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3782](https://togithub.com/bazelbuild/rules_go/pull/3782) - fix(gpd): don't panic on invalid root by [@​JamyDev](https://togithub.com/JamyDev) in [https://github.com/bazelbuild/rules_go/pull/3779](https://togithub.com/bazelbuild/rules_go/pull/3779) - Pass env to gentestmain so it will correctly filter by [@​patrickmscott](https://togithub.com/patrickmscott) in [https://github.com/bazelbuild/rules_go/pull/3785](https://togithub.com/bazelbuild/rules_go/pull/3785) - prepare release 0.44.0 by [@​tyler-french](https://togithub.com/tyler-french) in [https://github.com/bazelbuild/rules_go/pull/3788](https://togithub.com/bazelbuild/rules_go/pull/3788) #### New Contributors - [@​Clement-Jean](https://togithub.com/Clement-Jean) made their first contribution in [https://github.com/bazelbuild/rules_go/pull/3773](https://togithub.com/bazelbuild/rules_go/pull/3773) - [@​ikavalio](https://togithub.com/ikavalio) made their first contribution in [https://github.com/bazelbuild/rules_go/pull/3753](https://togithub.com/bazelbuild/rules_go/pull/3753) - [@​ryanpbrewster](https://togithub.com/ryanpbrewster) made their first contribution in [https://github.com/bazelbuild/rules_go/pull/3787](https://togithub.com/bazelbuild/rules_go/pull/3787) **Full Changelog**: bazel-contrib/rules_go@v0.43.0...v0.44.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://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 [Renovate Bot](https://togithub.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi4xMDAuMCIsInVwZGF0ZWRJblZlciI6IjM2LjEwMC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9--> Co-authored-by: Self-hosted Renovate Bot <361546+cgrindel-self-hosted-renovate[bot]@users.noreply.github.enterprise.com>
[![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.43.0` -> `v0.44.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.44.0`](https://togithub.com/bazelbuild/rules_go/releases/tag/v0.44.0) [Compare Source](https://togithub.com/bazelbuild/rules_go/compare/v0.43.0...v0.44.0) ### IMPORTANT CHANGES #### Tests now call `panic()` when they timeout This means there is a running goroutine (which will fail [goleak](https://togithub.com/uber-go/goleak) detection) [Goroutine 26 in state chan receive, with github.com/bazelbuild/rules_go/go/tools/bzltestutil.RegisterTimeoutHandler.func1 on top of the This also means there may be some different behavior when calling `SIGTERM` directly from within a test. For more information see: [https://github.com/bazelbuild/rules_go/pull/3749](https://togithub.com/bazelbuild/rules_go/pull/3749) #### Bzlmod support for `nogo` This can be added in your `MODULE.bazel` file: go_sdk = use_extension("@​io_bazel_rules_go//go:extensions.bzl", "go_sdk") go_sdk.download( name = "go_sdk", ... ) go_sdk.nogo( nogo = "//:default_nogo", ) For more information see [https://github.com/bazelbuild/rules_go/pull/3782](https://togithub.com/bazelbuild/rules_go/pull/3782) #### `WORKSPACE` code load("@​bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "io_bazel_rules_go", sha256 = "c8035e8ae248b56040a65ad3f0b7434712e2037e5dfdcebfe97576e620422709", urls = [ "https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.44.0/rules_go-v0.44.0.zip", "https://github.com/bazelbuild/rules_go/releases/download/v0.44.0/rules_go-v0.44.0.zip", ], ) load("@​io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() go_register_toolchains(version = "1.21.5") #### What's Changed - Do not test on centos7 by [@​fmeum](https://togithub.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3757](https://togithub.com/bazelbuild/rules_go/pull/3757) - update documentation for 0.43.0 release by [@​tyler-french](https://togithub.com/tyler-french) in [https://github.com/bazelbuild/rules_go/pull/3758](https://togithub.com/bazelbuild/rules_go/pull/3758) - Add toolchain param to affected actions by [@​kotlaja](https://togithub.com/kotlaja) in [https://github.com/bazelbuild/rules_go/pull/3760](https://togithub.com/bazelbuild/rules_go/pull/3760) - Update GO_TOOLCHAIN string to Label and add toolchain param to one more action by [@​kotlaja](https://togithub.com/kotlaja) in [https://github.com/bazelbuild/rules_go/pull/3762](https://togithub.com/bazelbuild/rules_go/pull/3762) - Do not choose prereleases as highest versions by [@​mering](https://togithub.com/mering) in [https://github.com/bazelbuild/rules_go/pull/3764](https://togithub.com/bazelbuild/rules_go/pull/3764) - Remove unmaintained validators by [@​mering](https://togithub.com/mering) in [https://github.com/bazelbuild/rules_go/pull/3768](https://togithub.com/bazelbuild/rules_go/pull/3768) - Use `tools.go` trick to make `go.mod` work with `go mod tidy` by [@​fmeum](https://togithub.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3775](https://togithub.com/bazelbuild/rules_go/pull/3775) - feat(packagesdriver): add \_test suffix to pkgPath by [@​JamyDev](https://togithub.com/JamyDev) in [https://github.com/bazelbuild/rules_go/pull/3777](https://togithub.com/bazelbuild/rules_go/pull/3777) - Typo --test_runner_fail_fast by [@​Clement-Jean](https://togithub.com/Clement-Jean) in [https://github.com/bazelbuild/rules_go/pull/3773](https://togithub.com/bazelbuild/rules_go/pull/3773) - Panic when a test times out by [@​fmeum](https://togithub.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3749](https://togithub.com/bazelbuild/rules_go/pull/3749) - Fix integration tests with Bazel@HEAD by [@​fmeum](https://togithub.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3781](https://togithub.com/bazelbuild/rules_go/pull/3781) - Automatically register SDKs for common execution platforms by [@​fmeum](https://togithub.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3634](https://togithub.com/bazelbuild/rules_go/pull/3634) - fix `aux_files` relative paths for gomock source mocks (fix [#​3752](https://togithub.com/bazelbuild/rules_go/issues/3752)) by [@​ikavalio](https://togithub.com/ikavalio) in [https://github.com/bazelbuild/rules_go/pull/3753](https://togithub.com/bazelbuild/rules_go/pull/3753) - Update to modern protoc plugins by [@​mering](https://togithub.com/mering) in [https://github.com/bazelbuild/rules_go/pull/3761](https://togithub.com/bazelbuild/rules_go/pull/3761) - Add integration tests for protoc-gen-go-grpc by [@​ryanpbrewster](https://togithub.com/ryanpbrewster) in [https://github.com/bazelbuild/rules_go/pull/3787](https://togithub.com/bazelbuild/rules_go/pull/3787) - Add Bzlmod support for `nogo` by [@​fmeum](https://togithub.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3782](https://togithub.com/bazelbuild/rules_go/pull/3782) - fix(gpd): don't panic on invalid root by [@​JamyDev](https://togithub.com/JamyDev) in [https://github.com/bazelbuild/rules_go/pull/3779](https://togithub.com/bazelbuild/rules_go/pull/3779) - Pass env to gentestmain so it will correctly filter by [@​patrickmscott](https://togithub.com/patrickmscott) in [https://github.com/bazelbuild/rules_go/pull/3785](https://togithub.com/bazelbuild/rules_go/pull/3785) - prepare release 0.44.0 by [@​tyler-french](https://togithub.com/tyler-french) in [https://github.com/bazelbuild/rules_go/pull/3788](https://togithub.com/bazelbuild/rules_go/pull/3788) #### New Contributors - [@​Clement-Jean](https://togithub.com/Clement-Jean) made their first contribution in [https://github.com/bazelbuild/rules_go/pull/3773](https://togithub.com/bazelbuild/rules_go/pull/3773) - [@​ikavalio](https://togithub.com/ikavalio) made their first contribution in [https://github.com/bazelbuild/rules_go/pull/3753](https://togithub.com/bazelbuild/rules_go/pull/3753) - [@​ryanpbrewster](https://togithub.com/ryanpbrewster) made their first contribution in [https://github.com/bazelbuild/rules_go/pull/3787](https://togithub.com/bazelbuild/rules_go/pull/3787) **Full Changelog**: bazel-contrib/rules_go@v0.43.0...v0.44.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:eyJjcmVhdGVkSW5WZXIiOiIzNy4xMDMuMSIsInVwZGF0ZWRJblZlciI6IjM3LjEwMy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [io_bazel_rules_go](https://togithub.com/bazelbuild/rules_go) | http_archive | minor | `v0.43.0` -> `v0.44.0` | --- ### Release Notes <details> <summary>bazelbuild/rules_go (io_bazel_rules_go)</summary> ### [`v0.44.0`](https://togithub.com/bazelbuild/rules_go/releases/tag/v0.44.0) [Compare Source](https://togithub.com/bazelbuild/rules_go/compare/v0.43.0...v0.44.0) ### IMPORTANT CHANGES #### Tests now call `panic()` when they timeout This means there is a running goroutine (which will fail [goleak](https://togithub.com/uber-go/goleak) detection) [Goroutine 26 in state chan receive, with github.com/bazelbuild/rules_go/go/tools/bzltestutil.RegisterTimeoutHandler.func1 on top of the This also means there may be some different behavior when calling `SIGTERM` directly from within a test. For more information see: [https://github.com/bazelbuild/rules_go/pull/3749](https://togithub.com/bazelbuild/rules_go/pull/3749) #### Bzlmod support for `nogo` This can be added in your `MODULE.bazel` file: go_sdk = use_extension("@​io_bazel_rules_go//go:extensions.bzl", "go_sdk") go_sdk.download( name = "go_sdk", ... ) go_sdk.nogo( nogo = "//:default_nogo", ) For more information see [https://github.com/bazelbuild/rules_go/pull/3782](https://togithub.com/bazelbuild/rules_go/pull/3782) #### `WORKSPACE` code load("@​bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "io_bazel_rules_go", sha256 = "c8035e8ae248b56040a65ad3f0b7434712e2037e5dfdcebfe97576e620422709", urls = [ "https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.44.0/rules_go-v0.44.0.zip", "https://github.com/bazelbuild/rules_go/releases/download/v0.44.0/rules_go-v0.44.0.zip", ], ) load("@​io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() go_register_toolchains(version = "1.21.5") #### What's Changed - Do not test on centos7 by [@​fmeum](https://togithub.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3757](https://togithub.com/bazelbuild/rules_go/pull/3757) - update documentation for 0.43.0 release by [@​tyler-french](https://togithub.com/tyler-french) in [https://github.com/bazelbuild/rules_go/pull/3758](https://togithub.com/bazelbuild/rules_go/pull/3758) - Add toolchain param to affected actions by [@​kotlaja](https://togithub.com/kotlaja) in [https://github.com/bazelbuild/rules_go/pull/3760](https://togithub.com/bazelbuild/rules_go/pull/3760) - Update GO_TOOLCHAIN string to Label and add toolchain param to one more action by [@​kotlaja](https://togithub.com/kotlaja) in [https://github.com/bazelbuild/rules_go/pull/3762](https://togithub.com/bazelbuild/rules_go/pull/3762) - Do not choose prereleases as highest versions by [@​mering](https://togithub.com/mering) in [https://github.com/bazelbuild/rules_go/pull/3764](https://togithub.com/bazelbuild/rules_go/pull/3764) - Remove unmaintained validators by [@​mering](https://togithub.com/mering) in [https://github.com/bazelbuild/rules_go/pull/3768](https://togithub.com/bazelbuild/rules_go/pull/3768) - Use `tools.go` trick to make `go.mod` work with `go mod tidy` by [@​fmeum](https://togithub.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3775](https://togithub.com/bazelbuild/rules_go/pull/3775) - feat(packagesdriver): add \_test suffix to pkgPath by [@​JamyDev](https://togithub.com/JamyDev) in [https://github.com/bazelbuild/rules_go/pull/3777](https://togithub.com/bazelbuild/rules_go/pull/3777) - Typo --test_runner_fail_fast by [@​Clement-Jean](https://togithub.com/Clement-Jean) in [https://github.com/bazelbuild/rules_go/pull/3773](https://togithub.com/bazelbuild/rules_go/pull/3773) - Panic when a test times out by [@​fmeum](https://togithub.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3749](https://togithub.com/bazelbuild/rules_go/pull/3749) - Fix integration tests with Bazel@HEAD by [@​fmeum](https://togithub.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3781](https://togithub.com/bazelbuild/rules_go/pull/3781) - Automatically register SDKs for common execution platforms by [@​fmeum](https://togithub.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3634](https://togithub.com/bazelbuild/rules_go/pull/3634) - fix `aux_files` relative paths for gomock source mocks (fix [#​3752](https://togithub.com/bazelbuild/rules_go/issues/3752)) by [@​ikavalio](https://togithub.com/ikavalio) in [https://github.com/bazelbuild/rules_go/pull/3753](https://togithub.com/bazelbuild/rules_go/pull/3753) - Update to modern protoc plugins by [@​mering](https://togithub.com/mering) in [https://github.com/bazelbuild/rules_go/pull/3761](https://togithub.com/bazelbuild/rules_go/pull/3761) - Add integration tests for protoc-gen-go-grpc by [@​ryanpbrewster](https://togithub.com/ryanpbrewster) in [https://github.com/bazelbuild/rules_go/pull/3787](https://togithub.com/bazelbuild/rules_go/pull/3787) - Add Bzlmod support for `nogo` by [@​fmeum](https://togithub.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3782](https://togithub.com/bazelbuild/rules_go/pull/3782) - fix(gpd): don't panic on invalid root by [@​JamyDev](https://togithub.com/JamyDev) in [https://github.com/bazelbuild/rules_go/pull/3779](https://togithub.com/bazelbuild/rules_go/pull/3779) - Pass env to gentestmain so it will correctly filter by [@​patrickmscott](https://togithub.com/patrickmscott) in [https://github.com/bazelbuild/rules_go/pull/3785](https://togithub.com/bazelbuild/rules_go/pull/3785) - prepare release 0.44.0 by [@​tyler-french](https://togithub.com/tyler-french) in [https://github.com/bazelbuild/rules_go/pull/3788](https://togithub.com/bazelbuild/rules_go/pull/3788) #### New Contributors - [@​Clement-Jean](https://togithub.com/Clement-Jean) made their first contribution in [https://github.com/bazelbuild/rules_go/pull/3773](https://togithub.com/bazelbuild/rules_go/pull/3773) - [@​ikavalio](https://togithub.com/ikavalio) made their first contribution in [https://github.com/bazelbuild/rules_go/pull/3753](https://togithub.com/bazelbuild/rules_go/pull/3753) - [@​ryanpbrewster](https://togithub.com/ryanpbrewster) made their first contribution in [https://github.com/bazelbuild/rules_go/pull/3787](https://togithub.com/bazelbuild/rules_go/pull/3787) **Full Changelog**: bazel-contrib/rules_go@v0.43.0...v0.44.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://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 [Renovate Bot](https://togithub.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi4xMDAuMCIsInVwZGF0ZWRJblZlciI6IjM2LjEwMC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9--> Co-authored-by: Self-hosted Renovate Bot <361546+cgrindel-self-hosted-renovate[bot]@users.noreply.github.enterprise.com>
FYI: I came across goleak problem after rules_go v0.44.0. Since bzltestutil.RegisterTimeoutHandler() is registered before TestMain, I have to use func TestMain(m *testing.M) {
goleak.VerifyTestMain(m, goleak.IgnoreCurrent())
} |
I meet this problem, too. @fmeum PTAL |
This will be addressed via a default ignore rule in a future goleak release - rules_go can't cancel the go routine in time for the leak check. Cc @linzhp |
You can call IgnoreTopFunction too, which is less dependent on lifetime of the goroutine that rules_go creates |
rules_go added a SIGTERM handler that has a goroutine that survives the scope of the goleak check. Currently, the best known workaround is to ignore this goroutine. uber-go/goleak#119 bazel-contrib/rules_go#3749 bazel-contrib/rules_go#3827 (comment)
rules_go added a SIGTERM handler that has a goroutine that survives the scope of the goleak check. Currently, the best known workaround is to ignore this goroutine. uber-go/goleak#119 bazel-contrib/rules_go#3749 bazel-contrib/rules_go#3827 (comment)
rules_go added a SIGTERM handler that has a goroutine that survives the scope of the goleak check. Currently, the best known workaround is to ignore this goroutine. uber-go/goleak#119 bazel-contrib/rules_go#3749 bazel-contrib/rules_go#3827 (comment)
rules_go added a SIGTERM handler that has a goroutine that survives the scope of the goleak check. Currently, the best known workaround is to ignore this goroutine. uber-go/goleak#119 bazel-contrib/rules_go#3749 bazel-contrib/rules_go#3827 (comment)
What type of PR is this?
Feature
What does this PR do? Why is it needed?
By calling
panic
when a Bazel test times out, which is indicated by Bazel sending a SIGTERM, stack traces of all Go routines are printed, similar to the behavior of nativego test
.Which issues(s) does this PR fix?
Fixes #3746
Other notes for review