Commit Graph

9 Commits

Author SHA1 Message Date
Vertexwahn 2f0bb4cec0
Fix spelling (#445) 2023-04-26 21:55:09 -04:00
Chuck Grindel facabc1db3
fix: allow empty glob for `testdata` in the Gazelle extension (#432)
Closes https://github.com/bazelbuild/bazel-skylib/issues/431
2023-02-08 13:08:56 -05:00
Alexandre Rostovtsev 99a6bcb240
Add gazelle plugin to CI and distribution mechanism (#424)
After #400, the gazelle plugin has been cleanly separated out into its own bazel workspace, which will soon finally allow us to mark it stable. But this means:

* we need to change our bazelci config to explicitly build and test it, since `bazel build //...` no longer includes the plugin;
* we need to add proper distribution rules for it;
* we need to update release instructions, since now we will have two distribution tarballs
2023-01-20 16:48:10 -05:00
Simon Stewart 60abca8fa2
Add the gazelle plugin to the distribution (#400)
* Add the gazelle plugin to the distribution

To avoid everyone needing to take a dep on `rules_go`, we
do the following:

1. Regular Bazel users need to load `bazel_skylib_gazelle_plugin_workspace`
   and call that, and then `bazel_skylib_gazelle_plugin_setup`

2. `bzlmod` users need do nothing, but we now include the
   `rules_go` dep in the `MODULE.bazel` shipped in the release.
    This is fine, because `bzlmod` will lazily load
    dependencies.

* Run buildifier

* Add docstring to `gazelle_setup.bzl`

* Move "internal only" marker

* Make @com_github_bazelbuild_buildtools visible in the deployed module

* Respond to review comments

* Move plugin to a nested workspace

* Run buildifier

* Restore the module declaration from `main`

* Bump versions of rules_go and gazelle used in the top-level module to match the ones in gazelle

* Respond to review comments and add gazelle to ignored directories so //... works as expected

* Add missing descriptor for stardoc

* Move gazelle hints into workspace files
2022-11-07 11:25:38 +01:00
hchsiao c1dfc324fb
Fixing typo: allocate slice with the correct size (#383) 2022-08-16 12:00:42 -04:00
Andrew Z Allen 182046f090
Handle "internal" directory visibility (#274)
Both "internal" and "private" directories should be treated the same way
and have visibility restrictions be placed upon them.
2020-10-21 23:52:14 -06:00
Andrew Z Allen b2ffc94b17
Gazelle now handles imports from `@bazel_tools` (#273)
`@bazel_tools` is tricky since it is effectively a part of the standard
library that can not have a `bzl_library` attached to it. As a simple
fix for this, `bzl_library` can have a srcs dependency on it so that it
includes the transitive closure of all of its dependencies.

`@bazel_tools` imports are rewritten into the `srcs` attribute since
they are `exports_files`ed from the @bazel_tools.

Co-authored-by: c-parsons <cparsons@google.com>
2020-10-19 12:49:17 -04:00
Samuel Giddins 836f1b2f56
Add support for gazelle handling relative imports (#271) 2020-09-07 15:29:39 -06:00
Ivo List bc97abb33e
Move bzl ext (#265)
* Move Gazelle extension to //gazelle/bzl and change package name

This fixes an issue with importing bazel-skylib into
google3. Currently, Glaze (internal Go build file generator) attempts
to generate a target (//gazelle:gazelle) that conflicts with one
that's already declared here.

I think the right solution is actually to move the package into a
subdirectory. In the future (bazelbuild/bazel-gazelle#5), Gazelle's Go
extension will generate target names similar to what Glaze does, so
the same conflict will happen in open source. I think it's also
logical to have a directory of packages in case more need to be added
in the future, and for the extension to have a package name matching
the language it works with.

This is an incompatible change, but the //gazelle directory isn't part
of a tagged release yet, so hopefully it won't break anyone.

* fix runfiles access in test

* Fix gazelle package names.

Co-authored-by: Jay Conrod <jayconrod@google.com>
2020-08-20 13:14:55 -04:00