-
-
Notifications
You must be signed in to change notification settings - Fork 679
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # 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://github.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://github.com/bazelbuild/rules_go/releases/tag/v0.44.0) [Compare Source](https://github.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://github.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://github.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://github.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://github.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3757](https://github.com/bazelbuild/rules_go/pull/3757) - update documentation for 0.43.0 release by [@​tyler-french](https://github.com/tyler-french) in [https://github.com/bazelbuild/rules_go/pull/3758](https://github.com/bazelbuild/rules_go/pull/3758) - Add toolchain param to affected actions by [@​kotlaja](https://github.com/kotlaja) in [https://github.com/bazelbuild/rules_go/pull/3760](https://github.com/bazelbuild/rules_go/pull/3760) - Update GO_TOOLCHAIN string to Label and add toolchain param to one more action by [@​kotlaja](https://github.com/kotlaja) in [https://github.com/bazelbuild/rules_go/pull/3762](https://github.com/bazelbuild/rules_go/pull/3762) - Do not choose prereleases as highest versions by [@​mering](https://github.com/mering) in [https://github.com/bazelbuild/rules_go/pull/3764](https://github.com/bazelbuild/rules_go/pull/3764) - Remove unmaintained validators by [@​mering](https://github.com/mering) in [https://github.com/bazelbuild/rules_go/pull/3768](https://github.com/bazelbuild/rules_go/pull/3768) - Use `tools.go` trick to make `go.mod` work with `go mod tidy` by [@​fmeum](https://github.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3775](https://github.com/bazelbuild/rules_go/pull/3775) - feat(packagesdriver): add \_test suffix to pkgPath by [@​JamyDev](https://github.com/JamyDev) in [https://github.com/bazelbuild/rules_go/pull/3777](https://github.com/bazelbuild/rules_go/pull/3777) - Typo --test_runner_fail_fast by [@​Clement-Jean](https://github.com/Clement-Jean) in [https://github.com/bazelbuild/rules_go/pull/3773](https://github.com/bazelbuild/rules_go/pull/3773) - Panic when a test times out by [@​fmeum](https://github.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3749](https://github.com/bazelbuild/rules_go/pull/3749) - Fix integration tests with Bazel@HEAD by [@​fmeum](https://github.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3781](https://github.com/bazelbuild/rules_go/pull/3781) - Automatically register SDKs for common execution platforms by [@​fmeum](https://github.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3634](https://github.com/bazelbuild/rules_go/pull/3634) - fix `aux_files` relative paths for gomock source mocks (fix [#​3752](https://github.com/bazelbuild/rules_go/issues/3752)) by [@​ikavalio](https://github.com/ikavalio) in [https://github.com/bazelbuild/rules_go/pull/3753](https://github.com/bazelbuild/rules_go/pull/3753) - Update to modern protoc plugins by [@​mering](https://github.com/mering) in [https://github.com/bazelbuild/rules_go/pull/3761](https://github.com/bazelbuild/rules_go/pull/3761) - Add integration tests for protoc-gen-go-grpc by [@​ryanpbrewster](https://github.com/ryanpbrewster) in [https://github.com/bazelbuild/rules_go/pull/3787](https://github.com/bazelbuild/rules_go/pull/3787) - Add Bzlmod support for `nogo` by [@​fmeum](https://github.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3782](https://github.com/bazelbuild/rules_go/pull/3782) - fix(gpd): don't panic on invalid root by [@​JamyDev](https://github.com/JamyDev) in [https://github.com/bazelbuild/rules_go/pull/3779](https://github.com/bazelbuild/rules_go/pull/3779) - Pass env to gentestmain so it will correctly filter by [@​patrickmscott](https://github.com/patrickmscott) in [https://github.com/bazelbuild/rules_go/pull/3785](https://github.com/bazelbuild/rules_go/pull/3785) - prepare release 0.44.0 by [@​tyler-french](https://github.com/tyler-french) in [https://github.com/bazelbuild/rules_go/pull/3788](https://github.com/bazelbuild/rules_go/pull/3788) #### New Contributors - [@​Clement-Jean](https://github.com/Clement-Jean) made their first contribution in [https://github.com/bazelbuild/rules_go/pull/3773](https://github.com/bazelbuild/rules_go/pull/3773) - [@​ikavalio](https://github.com/ikavalio) made their first contribution in [https://github.com/bazelbuild/rules_go/pull/3753](https://github.com/bazelbuild/rules_go/pull/3753) - [@​ryanpbrewster](https://github.com/ryanpbrewster) made their first contribution in [https://github.com/bazelbuild/rules_go/pull/3787](https://github.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://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: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://github.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://github.com/bazelbuild/rules_go/releases/tag/v0.44.0) [Compare Source](https://github.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://github.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://github.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://github.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://github.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3757](https://github.com/bazelbuild/rules_go/pull/3757) - update documentation for 0.43.0 release by [@​tyler-french](https://github.com/tyler-french) in [https://github.com/bazelbuild/rules_go/pull/3758](https://github.com/bazelbuild/rules_go/pull/3758) - Add toolchain param to affected actions by [@​kotlaja](https://github.com/kotlaja) in [https://github.com/bazelbuild/rules_go/pull/3760](https://github.com/bazelbuild/rules_go/pull/3760) - Update GO_TOOLCHAIN string to Label and add toolchain param to one more action by [@​kotlaja](https://github.com/kotlaja) in [https://github.com/bazelbuild/rules_go/pull/3762](https://github.com/bazelbuild/rules_go/pull/3762) - Do not choose prereleases as highest versions by [@​mering](https://github.com/mering) in [https://github.com/bazelbuild/rules_go/pull/3764](https://github.com/bazelbuild/rules_go/pull/3764) - Remove unmaintained validators by [@​mering](https://github.com/mering) in [https://github.com/bazelbuild/rules_go/pull/3768](https://github.com/bazelbuild/rules_go/pull/3768) - Use `tools.go` trick to make `go.mod` work with `go mod tidy` by [@​fmeum](https://github.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3775](https://github.com/bazelbuild/rules_go/pull/3775) - feat(packagesdriver): add \_test suffix to pkgPath by [@​JamyDev](https://github.com/JamyDev) in [https://github.com/bazelbuild/rules_go/pull/3777](https://github.com/bazelbuild/rules_go/pull/3777) - Typo --test_runner_fail_fast by [@​Clement-Jean](https://github.com/Clement-Jean) in [https://github.com/bazelbuild/rules_go/pull/3773](https://github.com/bazelbuild/rules_go/pull/3773) - Panic when a test times out by [@​fmeum](https://github.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3749](https://github.com/bazelbuild/rules_go/pull/3749) - Fix integration tests with Bazel@HEAD by [@​fmeum](https://github.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3781](https://github.com/bazelbuild/rules_go/pull/3781) - Automatically register SDKs for common execution platforms by [@​fmeum](https://github.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3634](https://github.com/bazelbuild/rules_go/pull/3634) - fix `aux_files` relative paths for gomock source mocks (fix [#​3752](https://github.com/bazelbuild/rules_go/issues/3752)) by [@​ikavalio](https://github.com/ikavalio) in [https://github.com/bazelbuild/rules_go/pull/3753](https://github.com/bazelbuild/rules_go/pull/3753) - Update to modern protoc plugins by [@​mering](https://github.com/mering) in [https://github.com/bazelbuild/rules_go/pull/3761](https://github.com/bazelbuild/rules_go/pull/3761) - Add integration tests for protoc-gen-go-grpc by [@​ryanpbrewster](https://github.com/ryanpbrewster) in [https://github.com/bazelbuild/rules_go/pull/3787](https://github.com/bazelbuild/rules_go/pull/3787) - Add Bzlmod support for `nogo` by [@​fmeum](https://github.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3782](https://github.com/bazelbuild/rules_go/pull/3782) - fix(gpd): don't panic on invalid root by [@​JamyDev](https://github.com/JamyDev) in [https://github.com/bazelbuild/rules_go/pull/3779](https://github.com/bazelbuild/rules_go/pull/3779) - Pass env to gentestmain so it will correctly filter by [@​patrickmscott](https://github.com/patrickmscott) in [https://github.com/bazelbuild/rules_go/pull/3785](https://github.com/bazelbuild/rules_go/pull/3785) - prepare release 0.44.0 by [@​tyler-french](https://github.com/tyler-french) in [https://github.com/bazelbuild/rules_go/pull/3788](https://github.com/bazelbuild/rules_go/pull/3788) #### New Contributors - [@​Clement-Jean](https://github.com/Clement-Jean) made their first contribution in [https://github.com/bazelbuild/rules_go/pull/3773](https://github.com/bazelbuild/rules_go/pull/3773) - [@​ikavalio](https://github.com/ikavalio) made their first contribution in [https://github.com/bazelbuild/rules_go/pull/3753](https://github.com/bazelbuild/rules_go/pull/3753) - [@​ryanpbrewster](https://github.com/ryanpbrewster) made their first contribution in [https://github.com/bazelbuild/rules_go/pull/3787](https://github.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://github.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://github.com/bazelbuild/rules_go/releases/tag/v0.44.0) [Compare Source](https://github.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://github.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://github.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://github.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://github.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3757](https://github.com/bazelbuild/rules_go/pull/3757) - update documentation for 0.43.0 release by [@​tyler-french](https://github.com/tyler-french) in [https://github.com/bazelbuild/rules_go/pull/3758](https://github.com/bazelbuild/rules_go/pull/3758) - Add toolchain param to affected actions by [@​kotlaja](https://github.com/kotlaja) in [https://github.com/bazelbuild/rules_go/pull/3760](https://github.com/bazelbuild/rules_go/pull/3760) - Update GO_TOOLCHAIN string to Label and add toolchain param to one more action by [@​kotlaja](https://github.com/kotlaja) in [https://github.com/bazelbuild/rules_go/pull/3762](https://github.com/bazelbuild/rules_go/pull/3762) - Do not choose prereleases as highest versions by [@​mering](https://github.com/mering) in [https://github.com/bazelbuild/rules_go/pull/3764](https://github.com/bazelbuild/rules_go/pull/3764) - Remove unmaintained validators by [@​mering](https://github.com/mering) in [https://github.com/bazelbuild/rules_go/pull/3768](https://github.com/bazelbuild/rules_go/pull/3768) - Use `tools.go` trick to make `go.mod` work with `go mod tidy` by [@​fmeum](https://github.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3775](https://github.com/bazelbuild/rules_go/pull/3775) - feat(packagesdriver): add \_test suffix to pkgPath by [@​JamyDev](https://github.com/JamyDev) in [https://github.com/bazelbuild/rules_go/pull/3777](https://github.com/bazelbuild/rules_go/pull/3777) - Typo --test_runner_fail_fast by [@​Clement-Jean](https://github.com/Clement-Jean) in [https://github.com/bazelbuild/rules_go/pull/3773](https://github.com/bazelbuild/rules_go/pull/3773) - Panic when a test times out by [@​fmeum](https://github.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3749](https://github.com/bazelbuild/rules_go/pull/3749) - Fix integration tests with Bazel@HEAD by [@​fmeum](https://github.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3781](https://github.com/bazelbuild/rules_go/pull/3781) - Automatically register SDKs for common execution platforms by [@​fmeum](https://github.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3634](https://github.com/bazelbuild/rules_go/pull/3634) - fix `aux_files` relative paths for gomock source mocks (fix [#​3752](https://github.com/bazelbuild/rules_go/issues/3752)) by [@​ikavalio](https://github.com/ikavalio) in [https://github.com/bazelbuild/rules_go/pull/3753](https://github.com/bazelbuild/rules_go/pull/3753) - Update to modern protoc plugins by [@​mering](https://github.com/mering) in [https://github.com/bazelbuild/rules_go/pull/3761](https://github.com/bazelbuild/rules_go/pull/3761) - Add integration tests for protoc-gen-go-grpc by [@​ryanpbrewster](https://github.com/ryanpbrewster) in [https://github.com/bazelbuild/rules_go/pull/3787](https://github.com/bazelbuild/rules_go/pull/3787) - Add Bzlmod support for `nogo` by [@​fmeum](https://github.com/fmeum) in [https://github.com/bazelbuild/rules_go/pull/3782](https://github.com/bazelbuild/rules_go/pull/3782) - fix(gpd): don't panic on invalid root by [@​JamyDev](https://github.com/JamyDev) in [https://github.com/bazelbuild/rules_go/pull/3779](https://github.com/bazelbuild/rules_go/pull/3779) - Pass env to gentestmain so it will correctly filter by [@​patrickmscott](https://github.com/patrickmscott) in [https://github.com/bazelbuild/rules_go/pull/3785](https://github.com/bazelbuild/rules_go/pull/3785) - prepare release 0.44.0 by [@​tyler-french](https://github.com/tyler-french) in [https://github.com/bazelbuild/rules_go/pull/3788](https://github.com/bazelbuild/rules_go/pull/3788) #### New Contributors - [@​Clement-Jean](https://github.com/Clement-Jean) made their first contribution in [https://github.com/bazelbuild/rules_go/pull/3773](https://github.com/bazelbuild/rules_go/pull/3773) - [@​ikavalio](https://github.com/ikavalio) made their first contribution in [https://github.com/bazelbuild/rules_go/pull/3753](https://github.com/bazelbuild/rules_go/pull/3753) - [@​ryanpbrewster](https://github.com/ryanpbrewster) made their first contribution in [https://github.com/bazelbuild/rules_go/pull/3787](https://github.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://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: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