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 go_test directive to enable generating go_test targets per _test.go file #1597

Merged
merged 11 commits into from
Sep 6, 2023

Conversation

shahms
Copy link
Contributor

@shahms shahms commented Aug 2, 2023

What type of PR is this?
Feature

What package or component does this PR mostly affect?
language/go

What does this PR do? Why is it needed?
This adds a new directive controlling how go_test targets are generated. Specifically, it adds a new file mode, which will generate a go_test target for each _test.go file in a package, rather than a single go_test target containing all such files.

Which issues(s) does this PR fix?

Fixes #1594

Other notes for review

language/go/generate.go Outdated Show resolved Hide resolved
language/go/package.go Outdated Show resolved Hide resolved
language/go/testdata/tests_per_file/BUILD.want Outdated Show resolved Hide resolved
@shahms
Copy link
Contributor Author

shahms commented Aug 11, 2023

Any further comments here?

@fmeum
Copy link
Collaborator

fmeum commented Aug 13, 2023

This looks good to me now, but I don't know the gazelle codebase well enough to be sure that this will behave correctly on updates (such as when switching test modes or adding new test files).

Could you perhaps add tests for these cases?

@shahms
Copy link
Contributor Author

shahms commented Aug 25, 2023

This looks good to me now, but I don't know the gazelle codebase well enough to be sure that this will behave correctly on updates (such as when switching test modes or adding new test files).

Could you perhaps add tests for these cases?

Done. Thanks!

Copy link
Collaborator

@fmeum fmeum left a comment

Choose a reason for hiding this comment

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

Thanks for the great test coverage!

@fmeum
Copy link
Collaborator

fmeum commented Aug 26, 2023

@shahms Could you resolve the merge conflicts and ping me afterwards?

@shahms
Copy link
Contributor Author

shahms commented Aug 28, 2023

@shahms Could you resolve the merge conflicts and ping me afterwards?

It looks like you took care of that? Thanks!

@tyler-french
Copy link
Contributor

tyler-french commented Aug 29, 2023

Something interesting is happening. When I use mode file to test (from the PR), I am getting nogo failures from a generated testmain.go from rules_go, which I think should be excluded by some convention (FYI @fmeum).

Trying to investigate why this is happening, but my guess is there needs to be an update to the logic nogo uses to skip this testmain.go file.

As this is an opt in, that doesn't necessarily mean this situation is release blocking.

@shahms
Copy link
Contributor Author

shahms commented Aug 30, 2023

Let me know if there's something more I can do to help :-)

@fmeum
Copy link
Collaborator

fmeum commented Aug 30, 2023

@sluongng Do you happen to have an idea why nogo triggers on testmain.go in this case?

@sluongng
Copy link
Contributor

I think we are only excluding the content of the generated coverage code and empty files right now. Not testmain.go.

There are 2 ways to go about fixing it:

  • Make testmain.go template in-compliance with the linter
  • Adjust compilepkg.go to exclude testmain.go

I suspect the former would be easier, but I don't know the details of the analyzer @tyler-french is running in his repo.

If you choose the latter route, take a look at this variable usage to see how exclusion could be implemented. https://github.com/search?q=repo%3Abazelbuild%2Frules_go%20%2FnogoSrcsOrigin%2F&type=code


Regardless, @tyler-french it would be nice if you could help us add a test for this in either rules_go / gazelle or both. It would help us detect future regression earlier. Right now this PR is completely green and could be a very attractive target for merging. I know that @hawkingrei has been asking for something like this since they ran into Bazel shard count limitation (25?).

@fmeum fmeum enabled auto-merge (squash) September 6, 2023 00:18
@fmeum fmeum mentioned this pull request Sep 6, 2023
@fmeum fmeum merged commit 8977484 into bazelbuild:master Sep 6, 2023
9 of 10 checks passed
@hawkingrei
Copy link

I think we are only excluding the content of the generated coverage code and empty files right now. Not testmain.go.

There are 2 ways to go about fixing it:

* Make `testmain.go` template in-compliance with the linter

* Adjust compilepkg.go to exclude `testmain.go`

I suspect the former would be easier, but I don't know the details of the analyzer @tyler-french is running in his repo.

If you choose the latter route, take a look at this variable usage to see how exclusion could be implemented. https://github.com/search?q=repo%3Abazelbuild%2Frules_go%20%2FnogoSrcsOrigin%2F&type=code

Regardless, @tyler-french it would be nice if you could help us add a test for this in either rules_go / gazelle or both. It would help us detect future regression earlier. Right now this PR is completely green and could be a very attractive target for merging. I know that @hawkingrei has been asking for something like this since they ran into Bazel shard count limitation (25?).

Yes, we have too many test case in the bazel shard. It is a good way to help us to solve this problem.

BTW, we have many goleak in the main_test.go so we should add this file into go_test per _test.go file.

@@ -30,6 +29,8 @@ import (
"strconv"
"strings"

"github.com/bazelbuild/bazel-gazelle/internal/module"

Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change

nit

case fileTestMode:
return "file"
default:
log.Panicf("unknown mode %d", m)
Copy link
Contributor

Choose a reason for hiding this comment

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

Don't panic on a String(), since this is mostly used for fmt.Sprintf(. Instead, let's just say "unknown"

Comment on lines 36 to 39
library, binary, test goTarget
tests []goTarget
proto protoTarget
hasTestdata bool
Copy link
Contributor

Choose a reason for hiding this comment

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

nit: formatting

Suggested change
library, binary, test goTarget
tests []goTarget
proto protoTarget
hasTestdata bool
library, binary, test goTarget
tests []goTarget
proto protoTarget
hasTestdata bool

@tyler-french
Copy link
Contributor

@fmeum @shahms Oops sorry didn't see that this was already merged. I agree, and think the maintest.go issue anyway is safe because this feature is guarded by a directive anyway. Nice work!

@fmeum
Copy link
Collaborator

fmeum commented Sep 6, 2023

@shahms If possible, could you address @tyler-french's comments in a follow-up PR?

@shahms shahms deleted the per-file-go_test branch September 6, 2023 15:12
shahms added a commit to shahms/bazel-gazelle that referenced this pull request Sep 6, 2023
@shahms
Copy link
Contributor Author

shahms commented Sep 6, 2023

Comments addressed in #1628

cgrindel-self-hosted-renovate bot added a commit to cgrindel/bazel-starlib that referenced this pull request Sep 8, 2023
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [bazel_gazelle](https://togithub.com/bazelbuild/bazel-gazelle) |
http_archive | minor | `v0.32.0` -> `v0.33.0` |

---

### Release Notes

<details>
<summary>bazelbuild/bazel-gazelle (bazel_gazelle)</summary>

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

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

#### What's Changed

- Generate BUILD files for grpc-gateway by default by
[@&#8203;seh](https://togithub.com/seh) in
[bazelbuild/bazel-gazelle#1578
- Remove temporary workaround after rules_go 0.41.0 release by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1577
- bzlmod: Use first host-compatible SDK to bootstrap Gazelle by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1581
- Update: golang.org/x/exp & golang.org/x/oauth2 deps. by
[@&#8203;sfc-gh-ptabor](https://togithub.com/sfc-gh-ptabor) in
[bazelbuild/bazel-gazelle#1582
- \[README.rst] Mention kotlin PoC by
[@&#8203;kolloch](https://togithub.com/kolloch) in
[bazelbuild/bazel-gazelle#1590
- Fix and let `# gazelle:follow` accept a glob by
[@&#8203;shahms](https://togithub.com/shahms) in
[bazelbuild/bazel-gazelle#1596
- Add support for isolated `go_deps` usages by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1584
- feat(bzlmod): support archive_override in go_deps by
[@&#8203;tyler-french](https://togithub.com/tyler-french) in
[bazelbuild/bazel-gazelle#1559
- fix: avoid updating `WORKSPACE` file when running `update-repos` when
bzlmod is enabled by [@&#8203;cgrindel](https://togithub.com/cgrindel)
in
[bazelbuild/bazel-gazelle#1589
- Make `go_deps.from_file` compatible with Go 1.21 by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1605
- go_repository: fix missing default GOPROXY by
[@&#8203;sluongng](https://togithub.com/sluongng) in
[bazelbuild/bazel-gazelle#1602
- fix: patch support for dir named workspace by
[@&#8203;michaellzc](https://togithub.com/michaellzc) in
[bazelbuild/bazel-gazelle#1606
- Revert "go_repository: fix missing default GOPROXY
([#&#8203;1602](https://togithub.com/bazelbuild/bazel-gazelle/issues/1602))"
by [@&#8203;sluongng](https://togithub.com/sluongng) in
[bazelbuild/bazel-gazelle#1609
- Upgrade `golang.org/x/mod` Vendor to Support Go 1.21 by
[@&#8203;alan910127](https://togithub.com/alan910127) in
[bazelbuild/bazel-gazelle#1611
- fix: go_repository: never shadow a module with a compatibility mapping
for major versions. by [@&#8203;reltuk](https://togithub.com/reltuk) in
[bazelbuild/bazel-gazelle#1608
- bug fix: don't generate invalid go_binary rules for empty main
packages by [@&#8203;andyscott](https://togithub.com/andyscott) in
[bazelbuild/bazel-gazelle#1618
- Fix wrong Kotlin Support link in README. by
[@&#8203;duckladydinh](https://togithub.com/duckladydinh) in
[bazelbuild/bazel-gazelle#1619
- bzlmod: Verify that the lockfile is platform-independent by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1617
- Add gazelle_rust under supported languages by
[@&#8203;Calsign](https://togithub.com/Calsign) in
[bazelbuild/bazel-gazelle#1620
- replace golang.org/x/tools with
golang.org/x/tools/go/vcs@v0.1.0-deprecated by
[@&#8203;malt3](https://togithub.com/malt3) in
[bazelbuild/bazel-gazelle#1603
- Implement Merger interface by
[@&#8203;Whoaa512](https://togithub.com/Whoaa512) in
[bazelbuild/bazel-gazelle#1569
- Improve Gazelle launcher's runfiles discovery on Windows by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1604
- Add an entry for "github.com/googleapis/gax-go/v2" to
default_gazelle_overrides.bzl by
[@&#8203;andrewmbenton](https://togithub.com/andrewmbenton) in
[bazelbuild/bazel-gazelle#1623
- add a go_test directive to enable generating go_test targets per
\_test.go file by [@&#8203;shahms](https://togithub.com/shahms) in
[bazelbuild/bazel-gazelle#1597
- Detect whether Gazelle itself is a Bazel module by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1624
- prepare release 0.33 by
[@&#8203;tyler-french](https://togithub.com/tyler-french) in
[bazelbuild/bazel-gazelle#1615

#### New Contributors

- [@&#8203;sfc-gh-ptabor](https://togithub.com/sfc-gh-ptabor) made their
first contribution in
[bazelbuild/bazel-gazelle#1582
- [@&#8203;kolloch](https://togithub.com/kolloch) made their first
contribution in
[bazelbuild/bazel-gazelle#1590
- [@&#8203;shahms](https://togithub.com/shahms) made their first
contribution in
[bazelbuild/bazel-gazelle#1596
- [@&#8203;michaellzc](https://togithub.com/michaellzc) made their first
contribution in
[bazelbuild/bazel-gazelle#1606
- [@&#8203;alan910127](https://togithub.com/alan910127) made their first
contribution in
[bazelbuild/bazel-gazelle#1611
- [@&#8203;reltuk](https://togithub.com/reltuk) made their first
contribution in
[bazelbuild/bazel-gazelle#1608
- [@&#8203;andyscott](https://togithub.com/andyscott) made their first
contribution in
[bazelbuild/bazel-gazelle#1618
- [@&#8203;duckladydinh](https://togithub.com/duckladydinh) made their
first contribution in
[bazelbuild/bazel-gazelle#1619
- [@&#8203;Calsign](https://togithub.com/Calsign) made their first
contribution in
[bazelbuild/bazel-gazelle#1620
- [@&#8203;malt3](https://togithub.com/malt3) made their first
contribution in
[bazelbuild/bazel-gazelle#1603
- [@&#8203;andrewmbenton](https://togithub.com/andrewmbenton) made their
first contribution in
[bazelbuild/bazel-gazelle#1623

**Full Changelog**:
bazelbuild/bazel-gazelle@v0.32.0...v0.33.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:eyJjcmVhdGVkSW5WZXIiOiIzNi44Ny4wIiwidXBkYXRlZEluVmVyIjoiMzYuODcuMCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: Self-hosted Renovate Bot <361546+cgrindel-self-hosted-renovate[bot]@users.noreply.github.enterprise.com>
renovate bot added a commit to kreempuff/rules_unreal_engine that referenced this pull request Sep 8, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [bazel_gazelle](https://togithub.com/bazelbuild/bazel-gazelle) |
http_archive | minor | `v0.32.0` -> `v0.33.0` |

---

### ⚠ Dependency Lookup Warnings ⚠

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

---

### Release Notes

<details>
<summary>bazelbuild/bazel-gazelle (bazel_gazelle)</summary>

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

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

#### What's Changed

- Generate BUILD files for grpc-gateway by default by
[@&#8203;seh](https://togithub.com/seh) in
[bazelbuild/bazel-gazelle#1578
- Remove temporary workaround after rules_go 0.41.0 release by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1577
- bzlmod: Use first host-compatible SDK to bootstrap Gazelle by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1581
- Update: golang.org/x/exp & golang.org/x/oauth2 deps. by
[@&#8203;sfc-gh-ptabor](https://togithub.com/sfc-gh-ptabor) in
[bazelbuild/bazel-gazelle#1582
- \[README.rst] Mention kotlin PoC by
[@&#8203;kolloch](https://togithub.com/kolloch) in
[bazelbuild/bazel-gazelle#1590
- Fix and let `# gazelle:follow` accept a glob by
[@&#8203;shahms](https://togithub.com/shahms) in
[bazelbuild/bazel-gazelle#1596
- Add support for isolated `go_deps` usages by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1584
- feat(bzlmod): support archive_override in go_deps by
[@&#8203;tyler-french](https://togithub.com/tyler-french) in
[bazelbuild/bazel-gazelle#1559
- fix: avoid updating `WORKSPACE` file when running `update-repos` when
bzlmod is enabled by [@&#8203;cgrindel](https://togithub.com/cgrindel)
in
[bazelbuild/bazel-gazelle#1589
- Make `go_deps.from_file` compatible with Go 1.21 by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1605
- go_repository: fix missing default GOPROXY by
[@&#8203;sluongng](https://togithub.com/sluongng) in
[bazelbuild/bazel-gazelle#1602
- fix: patch support for dir named workspace by
[@&#8203;michaellzc](https://togithub.com/michaellzc) in
[bazelbuild/bazel-gazelle#1606
- Revert "go_repository: fix missing default GOPROXY
([#&#8203;1602](https://togithub.com/bazelbuild/bazel-gazelle/issues/1602))"
by [@&#8203;sluongng](https://togithub.com/sluongng) in
[bazelbuild/bazel-gazelle#1609
- Upgrade `golang.org/x/mod` Vendor to Support Go 1.21 by
[@&#8203;alan910127](https://togithub.com/alan910127) in
[bazelbuild/bazel-gazelle#1611
- fix: go_repository: never shadow a module with a compatibility mapping
for major versions. by [@&#8203;reltuk](https://togithub.com/reltuk) in
[bazelbuild/bazel-gazelle#1608
- bug fix: don't generate invalid go_binary rules for empty main
packages by [@&#8203;andyscott](https://togithub.com/andyscott) in
[bazelbuild/bazel-gazelle#1618
- Fix wrong Kotlin Support link in README. by
[@&#8203;duckladydinh](https://togithub.com/duckladydinh) in
[bazelbuild/bazel-gazelle#1619
- bzlmod: Verify that the lockfile is platform-independent by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1617
- Add gazelle_rust under supported languages by
[@&#8203;Calsign](https://togithub.com/Calsign) in
[bazelbuild/bazel-gazelle#1620
- replace golang.org/x/tools with
golang.org/x/tools/go/vcs@v0.1.0-deprecated by
[@&#8203;malt3](https://togithub.com/malt3) in
[bazelbuild/bazel-gazelle#1603
- Implement Merger interface by
[@&#8203;Whoaa512](https://togithub.com/Whoaa512) in
[bazelbuild/bazel-gazelle#1569
- Improve Gazelle launcher's runfiles discovery on Windows by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1604
- Add an entry for "github.com/googleapis/gax-go/v2" to
default_gazelle_overrides.bzl by
[@&#8203;andrewmbenton](https://togithub.com/andrewmbenton) in
[bazelbuild/bazel-gazelle#1623
- add a go_test directive to enable generating go_test targets per
\_test.go file by [@&#8203;shahms](https://togithub.com/shahms) in
[bazelbuild/bazel-gazelle#1597
- Detect whether Gazelle itself is a Bazel module by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1624
- prepare release 0.33 by
[@&#8203;tyler-french](https://togithub.com/tyler-french) in
[bazelbuild/bazel-gazelle#1615

#### New Contributors

- [@&#8203;sfc-gh-ptabor](https://togithub.com/sfc-gh-ptabor) made their
first contribution in
[bazelbuild/bazel-gazelle#1582
- [@&#8203;kolloch](https://togithub.com/kolloch) made their first
contribution in
[bazelbuild/bazel-gazelle#1590
- [@&#8203;shahms](https://togithub.com/shahms) made their first
contribution in
[bazelbuild/bazel-gazelle#1596
- [@&#8203;michaellzc](https://togithub.com/michaellzc) made their first
contribution in
[bazelbuild/bazel-gazelle#1606
- [@&#8203;alan910127](https://togithub.com/alan910127) made their first
contribution in
[bazelbuild/bazel-gazelle#1611
- [@&#8203;reltuk](https://togithub.com/reltuk) made their first
contribution in
[bazelbuild/bazel-gazelle#1608
- [@&#8203;andyscott](https://togithub.com/andyscott) made their first
contribution in
[bazelbuild/bazel-gazelle#1618
- [@&#8203;duckladydinh](https://togithub.com/duckladydinh) made their
first contribution in
[bazelbuild/bazel-gazelle#1619
- [@&#8203;Calsign](https://togithub.com/Calsign) made their first
contribution in
[bazelbuild/bazel-gazelle#1620
- [@&#8203;malt3](https://togithub.com/malt3) made their first
contribution in
[bazelbuild/bazel-gazelle#1603
- [@&#8203;andrewmbenton](https://togithub.com/andrewmbenton) made their
first contribution in
[bazelbuild/bazel-gazelle#1623

**Full Changelog**:
bazelbuild/bazel-gazelle@v0.32.0...v0.33.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:eyJjcmVhdGVkSW5WZXIiOiIzNi44My4wIiwidXBkYXRlZEluVmVyIjoiMzYuODMuMCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->
fmeum pushed a commit to shahms/bazel-gazelle that referenced this pull request Sep 15, 2023
fmeum pushed a commit that referenced this pull request Sep 15, 2023
alexeagle pushed a commit to aspect-build/rules_py that referenced this pull request Nov 14, 2023
[![Mend Renovate logo
banner](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [bazel_gazelle](https://togithub.com/bazelbuild/bazel-gazelle) |
http_archive | minor | `v0.32.0` -> `v0.34.0` |

---

### Release Notes

<details>
<summary>bazelbuild/bazel-gazelle (bazel_gazelle)</summary>

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

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

#### What's Changed

- update readme for v0.33.0 by
[@&#8203;tyler-french](https://togithub.com/tyler-french) in
[bazelbuild/bazel-gazelle#1627
- Remove golang.org/x/crypto dep by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1631
- Fix map_kind with empty rules by
[@&#8203;lbcjbb](https://togithub.com/lbcjbb) in
[bazelbuild/bazel-gazelle#1441
- fix: add missing bzl_library declaration and dep by
[@&#8203;cgrindel](https://togithub.com/cgrindel) in
[bazelbuild/bazel-gazelle#1633
- chore: add bzl_test to ensure that bzl_library declarations exist by
[@&#8203;cgrindel](https://togithub.com/cgrindel) in
[bazelbuild/bazel-gazelle#1634
- Set runfiles environment variables for Gazelle by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1632
- address comments from
[#&#8203;1597](https://togithub.com/bazelbuild/bazel-gazelle/issues/1597)
by [@&#8203;shahms](https://togithub.com/shahms) in
[bazelbuild/bazel-gazelle#1628
- Fix kinds and stmt by [@&#8203;birunts](https://togithub.com/birunts)
in
[bazelbuild/bazel-gazelle#1613
- Export workspace file in go_repository_config.bzl by
[@&#8203;mortenmj](https://togithub.com/mortenmj) in
[bazelbuild/bazel-gazelle#1641
- Add github.com/google/gnostic-models to default_gazelle_overrides.bzl
by [@&#8203;mortenmj](https://togithub.com/mortenmj) in
[bazelbuild/bazel-gazelle#1645
- Support parsing labels that begin '@&#8203;@&#8203;' by
[@&#8203;mark-thm](https://togithub.com/mark-thm) in
[bazelbuild/bazel-gazelle#1651
- Fix path for google/gnostic-models by
[@&#8203;mortenmj](https://togithub.com/mortenmj) in
[bazelbuild/bazel-gazelle#1652
- fix(bzlmod): allow passing build_extra_args in gazelle_override by
[@&#8203;casuallyhostile](https://togithub.com/casuallyhostile) in
[bazelbuild/bazel-gazelle#1648
- prepare release 0.34.0 by
[@&#8203;tyler-french](https://togithub.com/tyler-french) in
[bazelbuild/bazel-gazelle#1656

#### New Contributors

- [@&#8203;casuallyhostile](https://togithub.com/casuallyhostile) made
their first contribution in
[bazelbuild/bazel-gazelle#1648

**Full Changelog**:
bazelbuild/bazel-gazelle@v0.33.0...v0.34.0

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

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

#### What's Changed

- Generate BUILD files for grpc-gateway by default by
[@&#8203;seh](https://togithub.com/seh) in
[bazelbuild/bazel-gazelle#1578
- Remove temporary workaround after rules_go 0.41.0 release by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1577
- bzlmod: Use first host-compatible SDK to bootstrap Gazelle by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1581
- Update: golang.org/x/exp & golang.org/x/oauth2 deps. by
[@&#8203;sfc-gh-ptabor](https://togithub.com/sfc-gh-ptabor) in
[bazelbuild/bazel-gazelle#1582
- \[README.rst] Mention kotlin PoC by
[@&#8203;kolloch](https://togithub.com/kolloch) in
[bazelbuild/bazel-gazelle#1590
- Fix and let `# gazelle:follow` accept a glob by
[@&#8203;shahms](https://togithub.com/shahms) in
[bazelbuild/bazel-gazelle#1596
- Add support for isolated `go_deps` usages by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1584
- feat(bzlmod): support archive_override in go_deps by
[@&#8203;tyler-french](https://togithub.com/tyler-french) in
[bazelbuild/bazel-gazelle#1559
- fix: avoid updating `WORKSPACE` file when running `update-repos` when
bzlmod is enabled by [@&#8203;cgrindel](https://togithub.com/cgrindel)
in
[bazelbuild/bazel-gazelle#1589
- Make `go_deps.from_file` compatible with Go 1.21 by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1605
- go_repository: fix missing default GOPROXY by
[@&#8203;sluongng](https://togithub.com/sluongng) in
[bazelbuild/bazel-gazelle#1602
- fix: patch support for dir named workspace by
[@&#8203;michaellzc](https://togithub.com/michaellzc) in
[bazelbuild/bazel-gazelle#1606
- Revert "go_repository: fix missing default GOPROXY
([#&#8203;1602](https://togithub.com/bazelbuild/bazel-gazelle/issues/1602))"
by [@&#8203;sluongng](https://togithub.com/sluongng) in
[bazelbuild/bazel-gazelle#1609
- Upgrade `golang.org/x/mod` Vendor to Support Go 1.21 by
[@&#8203;alan910127](https://togithub.com/alan910127) in
[bazelbuild/bazel-gazelle#1611
- fix: go_repository: never shadow a module with a compatibility mapping
for major versions. by [@&#8203;reltuk](https://togithub.com/reltuk) in
[bazelbuild/bazel-gazelle#1608
- bug fix: don't generate invalid go_binary rules for empty main
packages by [@&#8203;andyscott](https://togithub.com/andyscott) in
[bazelbuild/bazel-gazelle#1618
- Fix wrong Kotlin Support link in README. by
[@&#8203;duckladydinh](https://togithub.com/duckladydinh) in
[bazelbuild/bazel-gazelle#1619
- bzlmod: Verify that the lockfile is platform-independent by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1617
- Add gazelle_rust under supported languages by
[@&#8203;Calsign](https://togithub.com/Calsign) in
[bazelbuild/bazel-gazelle#1620
- replace golang.org/x/tools with
golang.org/x/tools/go/vcs@v0.1.0-deprecated by
[@&#8203;malt3](https://togithub.com/malt3) in
[bazelbuild/bazel-gazelle#1603
- Implement Merger interface by
[@&#8203;Whoaa512](https://togithub.com/Whoaa512) in
[bazelbuild/bazel-gazelle#1569
- Improve Gazelle launcher's runfiles discovery on Windows by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1604
- Add an entry for "github.com/googleapis/gax-go/v2" to
default_gazelle_overrides.bzl by
[@&#8203;andrewmbenton](https://togithub.com/andrewmbenton) in
[bazelbuild/bazel-gazelle#1623
- add a go_test directive to enable generating go_test targets per
\_test.go file by [@&#8203;shahms](https://togithub.com/shahms) in
[bazelbuild/bazel-gazelle#1597
- Detect whether Gazelle itself is a Bazel module by
[@&#8203;fmeum](https://togithub.com/fmeum) in
[bazelbuild/bazel-gazelle#1624
- prepare release 0.33 by
[@&#8203;tyler-french](https://togithub.com/tyler-french) in
[bazelbuild/bazel-gazelle#1615

#### New Contributors

- [@&#8203;sfc-gh-ptabor](https://togithub.com/sfc-gh-ptabor) made their
first contribution in
[bazelbuild/bazel-gazelle#1582
- [@&#8203;kolloch](https://togithub.com/kolloch) made their first
contribution in
[bazelbuild/bazel-gazelle#1590
- [@&#8203;shahms](https://togithub.com/shahms) made their first
contribution in
[bazelbuild/bazel-gazelle#1596
- [@&#8203;michaellzc](https://togithub.com/michaellzc) made their first
contribution in
[bazelbuild/bazel-gazelle#1606
- [@&#8203;alan910127](https://togithub.com/alan910127) made their first
contribution in
[bazelbuild/bazel-gazelle#1611
- [@&#8203;reltuk](https://togithub.com/reltuk) made their first
contribution in
[bazelbuild/bazel-gazelle#1608
- [@&#8203;andyscott](https://togithub.com/andyscott) made their first
contribution in
[bazelbuild/bazel-gazelle#1618
- [@&#8203;duckladydinh](https://togithub.com/duckladydinh) made their
first contribution in
[bazelbuild/bazel-gazelle#1619
- [@&#8203;Calsign](https://togithub.com/Calsign) made their first
contribution in
[bazelbuild/bazel-gazelle#1620
- [@&#8203;malt3](https://togithub.com/malt3) made their first
contribution in
[bazelbuild/bazel-gazelle#1603
- [@&#8203;andrewmbenton](https://togithub.com/andrewmbenton) made their
first contribution in
[bazelbuild/bazel-gazelle#1623

**Full Changelog**:
bazelbuild/bazel-gazelle@v0.32.0...v0.33.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **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/aspect-build/rules_py).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
jeromep-stripe pushed a commit to jeromep-stripe/bazel-gazelle that referenced this pull request Mar 22, 2024
…t.go file (bazelbuild#1597)

* add a go_test directive to enable generating go_test targets per _test.go file

* address comments

* add new tests for updating to per-file mode

---------

Co-authored-by: Fabian Meumertzheim <fabian@meumertzhe.im>
jeromep-stripe pushed a commit to jeromep-stripe/bazel-gazelle that referenced this pull request Mar 22, 2024
jeromep-stripe pushed a commit to jeromep-stripe/bazel-gazelle that referenced this pull request Mar 25, 2024
…t.go file (bazelbuild#1597)

* add a go_test directive to enable generating go_test targets per _test.go file

* address comments

* add new tests for updating to per-file mode

---------

Co-authored-by: Fabian Meumertzheim <fabian@meumertzhe.im>
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.

Enable generating go_test targets per _test.go file in a directory
5 participants