diff --git a/.bazelci/presubmit.yml b/.bazelci/presubmit.yml index 41c75b7f6c..085a873001 100644 --- a/.bazelci/presubmit.yml +++ b/.bazelci/presubmit.yml @@ -10,17 +10,11 @@ buildifier: # As a regression test for #225, check that wheel targets still build when # their package path is qualified with the repo name. - "@rules_python//examples/wheel/..." - - "-//gazelle/..." build_flags: - "--keep_going" test_targets: - "--" - "..." - # The gazelle tests are not compatible with Windows, so we only test them - # on Linux. The build file generation, which uses this Gazelle extension, - # runs on all platforms, and is asserted by the build_file_generation - # integration tests below. - - "-//gazelle/..." test_flags: - "--test_tag_filters=-integration-test" .reusable_build_test_all: &reusable_build_test_all @@ -30,8 +24,9 @@ tasks: gazelle_extension: name: Test the Gazelle extension platform: ubuntu2004 - build_targets: ["//gazelle/..."] - test_targets: ["//gazelle/..."] + build_targets: ["//..."] + test_targets: ["//..."] + working_directory: gazelle ubuntu: <<: *reusable_config name: Default test on Ubuntu diff --git a/.bazelrc b/.bazelrc index 2ad0284c3b..36d2fa37dc 100644 --- a/.bazelrc +++ b/.bazelrc @@ -3,8 +3,8 @@ # This lets us glob() up all the files inside the examples to make them inputs to tests # (Note, we cannot use `common --deleted_packages` because the bazel version command doesn't support it) # To update these lines, run tools/bazel_integration_test/update_deleted_packages.sh -build --deleted_packages=examples/build_file_generation,examples/build_file_generation/get_url,examples/bzlmod,examples/multi_python_versions,examples/multi_python_versions/libs/my_lib,examples/multi_python_versions/requirements,examples/multi_python_versions/tests,examples/pip_install,examples/pip_parse,examples/pip_parse_vendored,examples/pip_repository_annotations,examples/py_import,examples/relative_requirements,tests/compile_pip_requirements,tests/pip_repository_entry_points,tests/pip_deps -query --deleted_packages=examples/build_file_generation,examples/build_file_generation/get_url,examples/bzlmod,examples/multi_python_versions,examples/multi_python_versions/libs/my_lib,examples/multi_python_versions/requirements,examples/multi_python_versions/tests,examples/pip_install,examples/pip_parse,examples/pip_parse_vendored,examples/pip_repository_annotations,examples/py_import,examples/relative_requirements,tests/compile_pip_requirements,tests/pip_repository_entry_points,tests/pip_deps +build --deleted_packages=examples/build_file_generation,examples/build_file_generation/random_number_generator,examples/bzlmod,examples/multi_python_versions/libs/my_lib,examples/multi_python_versions/requirements,examples/multi_python_versions/tests,examples/pip_install,examples/pip_parse,examples/pip_parse_vendored,examples/pip_repository_annotations,examples/wheel,examples/wheel/lib,examples/wheel/private,tests/compile_pip_requirements,tests/load_from_macro,tests/pip_repository_entry_points +query --deleted_packages=examples/build_file_generation,examples/build_file_generation/random_number_generator,examples/bzlmod,examples/multi_python_versions/libs/my_lib,examples/multi_python_versions/requirements,examples/multi_python_versions/tests,examples/pip_install,examples/pip_parse,examples/pip_parse_vendored,examples/pip_repository_annotations,examples/wheel,examples/wheel/lib,examples/wheel/private,tests/compile_pip_requirements,tests/load_from_macro,tests/pip_repository_entry_points test --test_output=errors diff --git a/BUILD.bazel b/BUILD.bazel index 654e0149b4..432b525f74 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -12,7 +12,6 @@ # See the License for the specific language governing permissions and # limitations under the License. -load("@bazel_gazelle//:def.bzl", "gazelle") load(":version.bzl", "BAZEL_VERSION") package(default_visibility = ["//visibility:public"]) @@ -32,13 +31,13 @@ filegroup( "WORKSPACE", "internal_deps.bzl", "internal_setup.bzl", - "//gazelle:distribution", "//python:distribution", "//python/pip_install:distribution", "//third_party/github.com/bazelbuild/bazel-skylib/lib:distribution", "//third_party/github.com/bazelbuild/bazel-skylib/rules:distribution", "//third_party/github.com/bazelbuild/bazel-skylib/rules/private:distribution", "//tools:distribution", + "@rules_python_gazelle_plugin//:distribution", ], visibility = [ "//examples:__pkg__", @@ -64,23 +63,6 @@ filegroup( visibility = ["//visibility:public"], ) -# Gazelle configuration options. -# See https://github.com/bazelbuild/bazel-gazelle#running-gazelle-with-bazel -# gazelle:prefix github.com/bazelbuild/rules_python -# gazelle:exclude bazel-out -# gazelle:exclude examples/** -gazelle(name = "gazelle") - -gazelle( - name = "gazelle_update_repos", - args = [ - "-from_file=go.mod", - "-to_macro=gazelle/deps.bzl%gazelle_deps", - "-prune", - ], - command = "update-repos", -) - genrule( name = "assert_bazelversion", srcs = [".bazelversion"], diff --git a/WORKSPACE b/WORKSPACE index 1d9d5e4e48..b7059b6271 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -34,11 +34,6 @@ python_register_multi_toolchains( python_versions = MINOR_MAPPING.values(), ) -load("//gazelle:deps.bzl", "gazelle_deps") - -# gazelle:repository_macro gazelle/deps.bzl%gazelle_deps -gazelle_deps() - load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") # Used for Bazel CI @@ -58,3 +53,17 @@ rbe_preconfig( name = "buildkite_config", toolchain = "ubuntu1804-bazel-java11", ) + +local_repository( + name = "rules_python_gazelle_plugin", + path = "gazelle", +) + +# The rules_python gazelle extension has some third-party go dependencies +# which we need to fetch in order to compile it. +load("@rules_python_gazelle_plugin//:deps.bzl", _py_gazelle_deps = "gazelle_deps") + +# See: https://github.com/bazelbuild/rules_python/blob/main/gazelle/README.md +# This rule loads and compiles various go dependencies that running gazelle +# for python requirements. +_py_gazelle_deps() diff --git a/examples/build_file_generation/BUILD.bazel b/examples/build_file_generation/BUILD.bazel index 6bd1a929de..6419ef2c70 100644 --- a/examples/build_file_generation/BUILD.bazel +++ b/examples/build_file_generation/BUILD.bazel @@ -4,11 +4,11 @@ # ruleset. When the symbol is loaded you can use the rule. load("@bazel_gazelle//:def.bzl", "gazelle") load("@pip//:requirements.bzl", "all_whl_requirements") -load("@rules_python//gazelle:def.bzl", "GAZELLE_PYTHON_RUNTIME_DEPS") -load("@rules_python//gazelle/manifest:defs.bzl", "gazelle_python_manifest") -load("@rules_python//gazelle/modules_mapping:def.bzl", "modules_mapping") load("@rules_python//python:defs.bzl", "py_binary", "py_library", "py_test") load("@rules_python//python:pip.bzl", "compile_pip_requirements") +load("@rules_python_gazelle_plugin//:def.bzl", "GAZELLE_PYTHON_RUNTIME_DEPS") +load("@rules_python_gazelle_plugin//manifest:defs.bzl", "gazelle_python_manifest") +load("@rules_python_gazelle_plugin//modules_mapping:def.bzl", "modules_mapping") compile_pip_requirements( name = "requirements", @@ -53,7 +53,7 @@ gazelle_python_manifest( gazelle( name = "gazelle", data = GAZELLE_PYTHON_RUNTIME_DEPS, - gazelle = "@rules_python//gazelle:gazelle_python_binary", + gazelle = "@rules_python_gazelle_plugin//python:gazelle_binary", ) # This rule is auto-generated and managed by Gazelle, diff --git a/examples/build_file_generation/WORKSPACE b/examples/build_file_generation/WORKSPACE index 1f411d6cb9..717d523db1 100644 --- a/examples/build_file_generation/WORKSPACE +++ b/examples/build_file_generation/WORKSPACE @@ -67,6 +67,11 @@ local_repository( path = "../..", ) +local_repository( + name = "rules_python_gazelle_plugin", + path = "../../gazelle", +) + # When not using this example in the rules_python git repo you would load the python # ruleset using the following StarLark. # See https://github.com/bazelbuild/rules_python#getting-started for the latest @@ -81,6 +86,14 @@ local_repository( # strip_prefix = "rules_python-0.16.1", # url = "https://github.com/bazelbuild/rules_python/archive/refs/tags/0.16.1.tar.gz", # ) +# +# load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") +# http_archive( +# name = "rules_python_gazelle_plugin", +# sha256 = "497ca47374f48c8b067d786b512ac10a276211810f4a580178ee9b9ad139323a", +# strip_prefix = "rules_python-0.16.1/gazelle", +# url = "https://github.com/bazelbuild/rules_python/archive/refs/tags/0.16.1.tar.gz", +# ) # Next we load the toolchain from rules_python. load("@rules_python//python:repositories.bzl", "python_register_toolchains") @@ -124,7 +137,7 @@ install_deps() # The rules_python gazelle extension has some third-party go dependencies # which we need to fetch in order to compile it. -load("@rules_python//gazelle:deps.bzl", _py_gazelle_deps = "gazelle_deps") +load("@rules_python_gazelle_plugin//:deps.bzl", _py_gazelle_deps = "gazelle_deps") # See: https://github.com/bazelbuild/rules_python/blob/main/gazelle/README.md # This rule loads and compiles various go dependencies that running gazelle diff --git a/examples/build_file_generation/gazelle_python.yaml b/examples/build_file_generation/gazelle_python.yaml index 0be959a67e..847d1ecc55 100644 --- a/examples/build_file_generation/gazelle_python.yaml +++ b/examples/build_file_generation/gazelle_python.yaml @@ -114,4 +114,4 @@ manifest: zipp.py310compat: zipp pip_repository: name: pip -integrity: 4153df7683d64d7d6ad56c14ea1c7f7bec84a2ddf9ef8f075d1bb9313b8d11aa +integrity: 2c84a3cabeaff134a1d045e5a173a3178086f236ab20f895ffbd7f3b7a6e5bb0 diff --git a/gazelle/.bazelrc b/gazelle/.bazelrc new file mode 100644 index 0000000000..f48d0a97ee --- /dev/null +++ b/gazelle/.bazelrc @@ -0,0 +1,13 @@ +test --test_output=errors + +# Do NOT implicitly create empty __init__.py files in the runfiles tree. +# By default, these are created in every directory containing Python source code +# or shared libraries, and every parent directory of those directories, +# excluding the repo root directory. With this flag set, we are responsible for +# creating (possibly empty) __init__.py files and adding them to the srcs of +# Python targets as required. +build --incompatible_default_to_explicit_init_py + +# Windows makes use of runfiles for some rules +build --enable_runfiles +startup --windows_enable_symlinks diff --git a/gazelle/.gitignore b/gazelle/.gitignore new file mode 100644 index 0000000000..a68c6f05cc --- /dev/null +++ b/gazelle/.gitignore @@ -0,0 +1,52 @@ +# Compiled Object files +*.slo +*.lo +*.o +*.obj + +# Precompiled Headers +*.gch +*.pch + +# Compiled Dynamic libraries +*.so +*.dylib +*.dll + +# Fortran module files +*.mod +*.smod + +# Compiled Static libraries +*.lai +*.la +*.a +*.lib + +# Executables +*.exe +*.out +*.app + +# Emacs garbage +*~ + +# Bazel directories +/bazel-* +/bazel-bin +/bazel-genfiles +/bazel-out +/bazel-testlogs +user.bazelrc + +# vim swap files +*.swp +*.swo + +# Go/Gazelle files +# These otherwise match patterns above +!go.mod +!BUILD.out + +# Python cache +**/__pycache__/ diff --git a/gazelle/BUILD.bazel b/gazelle/BUILD.bazel index 593831db46..6016145516 100644 --- a/gazelle/BUILD.bazel +++ b/gazelle/BUILD.bazel @@ -1,81 +1,35 @@ -load("@bazel_gazelle//:def.bzl", "gazelle_binary") -load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") -load("@rules_python//python:defs.bzl", "py_binary") +load("@bazel_gazelle//:def.bzl", "gazelle") -go_library( - name = "gazelle", - srcs = [ - "configure.go", - "fix.go", - "generate.go", - "kinds.go", - "language.go", - "parser.go", - "resolve.go", - "std_modules.go", - "target.go", - ], - importpath = "github.com/bazelbuild/rules_python/gazelle", - visibility = ["//visibility:public"], - deps = [ - "//gazelle/manifest", - "//gazelle/pythonconfig", - "@bazel_gazelle//config:go_default_library", - "@bazel_gazelle//label:go_default_library", - "@bazel_gazelle//language:go_default_library", - "@bazel_gazelle//repo:go_default_library", - "@bazel_gazelle//resolve:go_default_library", - "@bazel_gazelle//rule:go_default_library", - "@com_github_bazelbuild_buildtools//build:go_default_library", - "@com_github_bmatcuk_doublestar//:doublestar", - "@com_github_emirpasic_gods//lists/singlylinkedlist", - "@com_github_emirpasic_gods//sets/treeset", - "@com_github_emirpasic_gods//utils", - "@com_github_google_uuid//:uuid", - "@io_bazel_rules_go//go/tools/bazel:go_default_library", - ], -) - -py_binary( - name = "parse", - srcs = ["parse.py"], - visibility = ["//visibility:public"], -) +# Gazelle configuration options. +# See https://github.com/bazelbuild/bazel-gazelle#running-gazelle-with-bazel +# gazelle:prefix github.com/bazelbuild/rules_python/gazelle +# gazelle:exclude bazel-out +gazelle(name = "gazelle") -py_binary( - name = "std_modules", - srcs = ["std_modules.py"], - visibility = ["//visibility:public"], -) - -go_test( - name = "gazelle_test", - srcs = ["python_test.go"], - data = [ - ":gazelle_python_binary", - ":parse", - ":std_modules", - ] + glob(["testdata/**"]), - deps = [ - "@bazel_gazelle//testtools:go_default_library", - "@com_github_emirpasic_gods//lists/singlylinkedlist", - "@com_github_ghodss_yaml//:yaml", - "@io_bazel_rules_go//go/tools/bazel:go_default_library", +gazelle( + name = "gazelle_update_repos", + args = [ + "-from_file=go.mod", + "-to_macro=deps.bzl%gazelle_deps", + "-prune", ], -) - -gazelle_binary( - name = "gazelle_python_binary", - languages = ["//gazelle"], - visibility = ["//visibility:public"], + command = "update-repos", ) filegroup( name = "distribution", - srcs = glob(["**"]) + [ - "//gazelle/manifest:distribution", - "//gazelle/modules_mapping:distribution", - "//gazelle/pythonconfig:distribution", + srcs = [ + ":BUILD.bazel", + ":README.md", + ":WORKSPACE", + ":def.bzl", + ":deps.bzl", + ":go.mod", + ":go.sum", + "//manifest:distribution", + "//modules_mapping:distribution", + "//python:distribution", + "//pythonconfig:distribution", ], - visibility = ["//:__pkg__"], + visibility = ["@rules_python//:__pkg__"], ) diff --git a/gazelle/README.md b/gazelle/README.md index a54db64ed8..c0237c925a 100644 --- a/gazelle/README.md +++ b/gazelle/README.md @@ -19,7 +19,7 @@ Add this to your `WORKSPACE`: ```starlark # To compile the rules_python gazelle extension from source, # we must fetch some third-party go dependencies that it uses. -load("@rules_python//gazelle:deps.bzl", _py_gazelle_deps = "gazelle_deps") +load("@rules_python_gazelle_plugin//:deps.bzl", _py_gazelle_deps = "gazelle_deps") _py_gazelle_deps() ``` @@ -40,8 +40,8 @@ To keep the metadata updated, put this in your `BUILD.bazel` file next to `gazel ```starlark load("@pip//:requirements.bzl", "all_whl_requirements") -load("@rules_python//gazelle/manifest:defs.bzl", "gazelle_python_manifest") -load("@rules_python//gazelle/modules_mapping:def.bzl", "modules_mapping") +load("@rules_python_gazelle_plugin//manifest:defs.bzl", "gazelle_python_manifest") +load("@rules_python_gazelle_plugin//modules_mapping:def.bzl", "modules_mapping") # This rule fetches the metadata for python packages we depend on. That data is # required for the gazelle_python_manifest rule to update our manifest file. @@ -75,7 +75,7 @@ with the rules_python extension included. This typically goes in your root ``` load("@bazel_gazelle//:def.bzl", "gazelle") -load("@rules_python//gazelle:def.bzl", "GAZELLE_PYTHON_RUNTIME_DEPS") +load("@rules_python_gazelle_plugin//:def.bzl", "GAZELLE_PYTHON_RUNTIME_DEPS") # Our gazelle target points to the python gazelle binary. # This is the simple case where we only need one language supported. @@ -85,7 +85,7 @@ load("@rules_python//gazelle:def.bzl", "GAZELLE_PYTHON_RUNTIME_DEPS") gazelle( name = "gazelle", data = GAZELLE_PYTHON_RUNTIME_DEPS, - gazelle = "@rules_python//gazelle:gazelle_python_binary", + gazelle = "@rules_python_gazelle_plugin//python:gazelle_binary", ) ``` diff --git a/gazelle/WORKSPACE b/gazelle/WORKSPACE new file mode 100644 index 0000000000..55cf1b0d40 --- /dev/null +++ b/gazelle/WORKSPACE @@ -0,0 +1,47 @@ +workspace(name = "rules_python_gazelle_plugin") + +load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") + +http_archive( + name = "io_bazel_rules_go", + sha256 = "099a9fb96a376ccbbb7d291ed4ecbdfd42f6bc822ab77ae6f1b5cb9e914e94fa", + urls = [ + "https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.35.0/rules_go-v0.35.0.zip", + "https://github.com/bazelbuild/rules_go/releases/download/v0.35.0/rules_go-v0.35.0.zip", + ], +) + +http_archive( + name = "bazel_gazelle", + sha256 = "448e37e0dbf61d6fa8f00aaa12d191745e14f07c31cabfa731f0c8e8a4f41b97", + urls = [ + "https://mirror.bazel.build/github.com/bazelbuild/bazel-gazelle/releases/download/v0.28.0/bazel-gazelle-v0.28.0.tar.gz", + "https://github.com/bazelbuild/bazel-gazelle/releases/download/v0.28.0/bazel-gazelle-v0.28.0.tar.gz", + ], +) + +load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") + +go_rules_dependencies() + +go_register_toolchains(version = "1.19.4") + +gazelle_dependencies() + +local_repository( + name = "rules_python", + path = "..", +) + +load("@rules_python//python:repositories.bzl", "python_register_toolchains") + +python_register_toolchains( + name = "python39", + python_version = "3.9", +) + +load("//:deps.bzl", _py_gazelle_deps = "gazelle_deps") + +# gazelle:repository_macro deps.bzl%gazelle_deps +_py_gazelle_deps() diff --git a/gazelle/def.bzl b/gazelle/def.bzl index a402fc74c4..bb53c30276 100644 --- a/gazelle/def.bzl +++ b/gazelle/def.bzl @@ -2,6 +2,6 @@ """ GAZELLE_PYTHON_RUNTIME_DEPS = [ - "@rules_python//gazelle:parse", - "@rules_python//gazelle:std_modules", + "@rules_python_gazelle_plugin//python:parse", + "@rules_python_gazelle_plugin//python:std_modules", ] diff --git a/go.mod b/gazelle/go.mod similarity index 90% rename from go.mod rename to gazelle/go.mod index 0afdf52445..322cf0db98 100644 --- a/go.mod +++ b/gazelle/go.mod @@ -1,4 +1,4 @@ -module github.com/bazelbuild/rules_python +module github.com/bazelbuild/rules_python/gazelle go 1.19 diff --git a/go.sum b/gazelle/go.sum similarity index 100% rename from go.sum rename to gazelle/go.sum diff --git a/gazelle/manifest/BUILD.bazel b/gazelle/manifest/BUILD.bazel index a769d0d64d..fc7fa09632 100644 --- a/gazelle/manifest/BUILD.bazel +++ b/gazelle/manifest/BUILD.bazel @@ -21,8 +21,9 @@ go_test( filegroup( name = "distribution", srcs = glob(["**"]) + [ - "//gazelle/manifest/generate:distribution", - "//gazelle/manifest/test:distribution", + "//manifest/generate:distribution", + "//manifest/hasher:distribution", + "//manifest/test:distribution", ], - visibility = ["//gazelle:__pkg__"], + visibility = ["//:__pkg__"], ) diff --git a/gazelle/manifest/defs.bzl b/gazelle/manifest/defs.bzl index 57f52f986e..3bbcf99701 100644 --- a/gazelle/manifest/defs.bzl +++ b/gazelle/manifest/defs.bzl @@ -36,7 +36,7 @@ def gazelle_python_manifest( update_target = "{}.update".format(name) update_target_label = "//{}:{}".format(native.package_name(), update_target) - manifest_generator_hash = Label("//gazelle/manifest/generate:generate_lib_sources_hash") + manifest_generator_hash = Label("//manifest/generate:generate_lib_sources_hash") update_args = [ "--manifest-generator-hash", @@ -55,7 +55,7 @@ def gazelle_python_manifest( go_binary( name = update_target, - embed = [Label("//gazelle/manifest/generate:generate_lib")], + embed = [Label("//manifest/generate:generate_lib")], data = [ manifest, modules_mapping, @@ -71,13 +71,13 @@ def gazelle_python_manifest( go_binary( name = test_binary, - embed = [Label("//gazelle/manifest/test:test_lib")], + embed = [Label("//manifest/test:test_lib")], visibility = ["//visibility:private"], ) native.sh_test( name = "{}.test".format(name), - srcs = [Label("//gazelle/manifest/test:run.sh")], + srcs = [Label("//manifest/test:run.sh")], data = [ ":{}".format(test_binary), manifest, @@ -104,7 +104,7 @@ def gazelle_python_manifest( # buildifier: disable=provider-params AllSourcesInfo = provider(fields = {"all_srcs": "All sources collected from the target and dependencies."}) -_rules_python_workspace = Label("//:WORKSPACE") +_rules_python_workspace = Label("@rules_python//:WORKSPACE") def _get_all_sources_impl(target, ctx): is_rules_python = target.label.workspace_name == _rules_python_workspace.workspace_name @@ -148,7 +148,7 @@ sources_hash = rule( ), "_hasher": attr.label( cfg = "exec", - default = Label("//gazelle/manifest/hasher"), + default = Label("//manifest/hasher"), executable = True, ), }, diff --git a/gazelle/manifest/generate/BUILD.bazel b/gazelle/manifest/generate/BUILD.bazel index 7a5d27ff24..96248f4e08 100644 --- a/gazelle/manifest/generate/BUILD.bazel +++ b/gazelle/manifest/generate/BUILD.bazel @@ -1,12 +1,12 @@ load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library") -load("//gazelle/manifest:defs.bzl", "sources_hash") +load("//manifest:defs.bzl", "sources_hash") go_library( name = "generate_lib", srcs = ["generate.go"], importpath = "github.com/bazelbuild/rules_python/gazelle/manifest/generate", visibility = ["//visibility:public"], - deps = ["//gazelle/manifest"], + deps = ["//manifest"], ) sources_hash( @@ -24,5 +24,5 @@ go_binary( filegroup( name = "distribution", srcs = glob(["**"]), - visibility = ["//gazelle/manifest:__pkg__"], + visibility = ["//manifest:__pkg__"], ) diff --git a/gazelle/manifest/hasher/BUILD.bazel b/gazelle/manifest/hasher/BUILD.bazel index 5e67b2f549..2e7b125cc0 100644 --- a/gazelle/manifest/hasher/BUILD.bazel +++ b/gazelle/manifest/hasher/BUILD.bazel @@ -12,3 +12,9 @@ go_binary( embed = [":hasher_lib"], visibility = ["//visibility:public"], ) + +filegroup( + name = "distribution", + srcs = glob(["**"]), + visibility = ["//manifest:__pkg__"], +) diff --git a/gazelle/manifest/test/BUILD.bazel b/gazelle/manifest/test/BUILD.bazel index 3f4a535957..c8b28286f3 100644 --- a/gazelle/manifest/test/BUILD.bazel +++ b/gazelle/manifest/test/BUILD.bazel @@ -5,7 +5,7 @@ go_library( srcs = ["test.go"], importpath = "github.com/bazelbuild/rules_python/gazelle/manifest/test", visibility = ["//visibility:public"], - deps = ["//gazelle/manifest"], + deps = ["//manifest"], ) go_binary( @@ -19,5 +19,5 @@ exports_files(["run.sh"]) filegroup( name = "distribution", srcs = glob(["**"]), - visibility = ["//gazelle/manifest:__pkg__"], + visibility = ["//manifest:__pkg__"], ) diff --git a/gazelle/modules_mapping/BUILD.bazel b/gazelle/modules_mapping/BUILD.bazel index d4b35c8a45..1855551a80 100644 --- a/gazelle/modules_mapping/BUILD.bazel +++ b/gazelle/modules_mapping/BUILD.bazel @@ -9,5 +9,5 @@ py_binary( filegroup( name = "distribution", srcs = glob(["**"]), - visibility = ["//gazelle:__pkg__"], + visibility = ["//:__pkg__"], ) diff --git a/gazelle/modules_mapping/def.bzl b/gazelle/modules_mapping/def.bzl index 9b1352c5e4..8cffb31cbf 100644 --- a/gazelle/modules_mapping/def.bzl +++ b/gazelle/modules_mapping/def.bzl @@ -44,7 +44,7 @@ modules_mapping = rule( ), "_generator": attr.label( cfg = "exec", - default = "//gazelle/modules_mapping:generator", + default = "//modules_mapping:generator", executable = True, ), }, diff --git a/gazelle/python/BUILD.bazel b/gazelle/python/BUILD.bazel new file mode 100644 index 0000000000..84fa4a75b7 --- /dev/null +++ b/gazelle/python/BUILD.bazel @@ -0,0 +1,77 @@ +load("@bazel_gazelle//:def.bzl", "gazelle_binary") +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") +load("@rules_python//python:defs.bzl", "py_binary") + +go_library( + name = "python", + srcs = [ + "configure.go", + "fix.go", + "generate.go", + "kinds.go", + "language.go", + "parser.go", + "resolve.go", + "std_modules.go", + "target.go", + ], + importpath = "github.com/bazelbuild/rules_python/gazelle/python", + visibility = ["//visibility:public"], + deps = [ + "//manifest", + "//pythonconfig", + "@bazel_gazelle//config:go_default_library", + "@bazel_gazelle//label:go_default_library", + "@bazel_gazelle//language:go_default_library", + "@bazel_gazelle//repo:go_default_library", + "@bazel_gazelle//resolve:go_default_library", + "@bazel_gazelle//rule:go_default_library", + "@com_github_bazelbuild_buildtools//build:go_default_library", + "@com_github_bmatcuk_doublestar//:doublestar", + "@com_github_emirpasic_gods//lists/singlylinkedlist", + "@com_github_emirpasic_gods//sets/treeset", + "@com_github_emirpasic_gods//utils", + "@com_github_google_uuid//:uuid", + "@io_bazel_rules_go//go/tools/bazel:go_default_library", + ], +) + +py_binary( + name = "parse", + srcs = ["parse.py"], + visibility = ["//visibility:public"], +) + +py_binary( + name = "std_modules", + srcs = ["std_modules.py"], + visibility = ["//visibility:public"], +) + +go_test( + name = "python_test", + srcs = ["python_test.go"], + data = [ + ":gazelle_binary", + ":parse", + ":std_modules", + ] + glob(["testdata/**"]), + deps = [ + "@bazel_gazelle//testtools:go_default_library", + "@com_github_emirpasic_gods//lists/singlylinkedlist", + "@com_github_ghodss_yaml//:yaml", + "@io_bazel_rules_go//go/tools/bazel:go_default_library", + ], +) + +gazelle_binary( + name = "gazelle_binary", + languages = [":python"], + visibility = ["//visibility:public"], +) + +filegroup( + name = "distribution", + srcs = glob(["**"]), + visibility = ["//:__pkg__"], +) diff --git a/gazelle/configure.go b/gazelle/python/configure.go similarity index 100% rename from gazelle/configure.go rename to gazelle/python/configure.go diff --git a/gazelle/fix.go b/gazelle/python/fix.go similarity index 100% rename from gazelle/fix.go rename to gazelle/python/fix.go diff --git a/gazelle/generate.go b/gazelle/python/generate.go similarity index 100% rename from gazelle/generate.go rename to gazelle/python/generate.go diff --git a/gazelle/kinds.go b/gazelle/python/kinds.go similarity index 100% rename from gazelle/kinds.go rename to gazelle/python/kinds.go diff --git a/gazelle/language.go b/gazelle/python/language.go similarity index 100% rename from gazelle/language.go rename to gazelle/python/language.go diff --git a/gazelle/parse.py b/gazelle/python/parse.py similarity index 100% rename from gazelle/parse.py rename to gazelle/python/parse.py diff --git a/gazelle/parser.go b/gazelle/python/parser.go similarity index 99% rename from gazelle/parser.go rename to gazelle/python/parser.go index 6158d38ecf..fdb34f76c1 100644 --- a/gazelle/parser.go +++ b/gazelle/python/parser.go @@ -25,7 +25,7 @@ var ( ) func init() { - parseScriptRunfile, err := bazel.Runfile("gazelle/parse") + parseScriptRunfile, err := bazel.Runfile("python/parse") if err != nil { log.Printf("failed to initialize parser: %v\n", err) os.Exit(1) diff --git a/gazelle/python_test.go b/gazelle/python/python_test.go similarity index 98% rename from gazelle/python_test.go rename to gazelle/python/python_test.go index 4fac7c003a..7fe4362e5c 100644 --- a/gazelle/python_test.go +++ b/gazelle/python/python_test.go @@ -38,9 +38,9 @@ import ( ) const ( - extensionDir = "gazelle/" + extensionDir = "python/" testDataPath = extensionDir + "testdata/" - gazelleBinaryName = "gazelle_python_binary" + gazelleBinaryName = "gazelle_binary" ) var gazellePath = mustFindGazelle() diff --git a/gazelle/resolve.go b/gazelle/python/resolve.go similarity index 100% rename from gazelle/resolve.go rename to gazelle/python/resolve.go diff --git a/gazelle/std_modules.go b/gazelle/python/std_modules.go similarity index 96% rename from gazelle/std_modules.go rename to gazelle/python/std_modules.go index f7d0c243d5..22b0837663 100644 --- a/gazelle/std_modules.go +++ b/gazelle/python/std_modules.go @@ -26,7 +26,7 @@ var ( func init() { stdModulesSeen = make(map[string]struct{}) - stdModulesScriptRunfile, err := bazel.Runfile("gazelle/std_modules") + stdModulesScriptRunfile, err := bazel.Runfile("python/std_modules") if err != nil { log.Printf("failed to initialize std_modules: %v\n", err) os.Exit(1) diff --git a/gazelle/std_modules.py b/gazelle/python/std_modules.py similarity index 100% rename from gazelle/std_modules.py rename to gazelle/python/std_modules.py diff --git a/gazelle/target.go b/gazelle/python/target.go similarity index 100% rename from gazelle/target.go rename to gazelle/python/target.go diff --git a/gazelle/testdata/README.md b/gazelle/python/testdata/README.md similarity index 100% rename from gazelle/testdata/README.md rename to gazelle/python/testdata/README.md diff --git a/gazelle/testdata/dependency_resolution_order/BUILD.in b/gazelle/python/testdata/dependency_resolution_order/BUILD.in similarity index 100% rename from gazelle/testdata/dependency_resolution_order/BUILD.in rename to gazelle/python/testdata/dependency_resolution_order/BUILD.in diff --git a/gazelle/testdata/dependency_resolution_order/BUILD.out b/gazelle/python/testdata/dependency_resolution_order/BUILD.out similarity index 100% rename from gazelle/testdata/dependency_resolution_order/BUILD.out rename to gazelle/python/testdata/dependency_resolution_order/BUILD.out diff --git a/gazelle/testdata/dependency_resolution_order/README.md b/gazelle/python/testdata/dependency_resolution_order/README.md similarity index 100% rename from gazelle/testdata/dependency_resolution_order/README.md rename to gazelle/python/testdata/dependency_resolution_order/README.md diff --git a/gazelle/testdata/dependency_resolution_order/WORKSPACE b/gazelle/python/testdata/dependency_resolution_order/WORKSPACE similarity index 100% rename from gazelle/testdata/dependency_resolution_order/WORKSPACE rename to gazelle/python/testdata/dependency_resolution_order/WORKSPACE diff --git a/gazelle/testdata/dependency_resolution_order/__init__.py b/gazelle/python/testdata/dependency_resolution_order/__init__.py similarity index 100% rename from gazelle/testdata/dependency_resolution_order/__init__.py rename to gazelle/python/testdata/dependency_resolution_order/__init__.py diff --git a/gazelle/testdata/dependency_resolution_order/bar/BUILD.in b/gazelle/python/testdata/dependency_resolution_order/bar/BUILD.in similarity index 100% rename from gazelle/testdata/dependency_resolution_order/bar/BUILD.in rename to gazelle/python/testdata/dependency_resolution_order/bar/BUILD.in diff --git a/gazelle/testdata/dependency_resolution_order/bar/BUILD.out b/gazelle/python/testdata/dependency_resolution_order/bar/BUILD.out similarity index 100% rename from gazelle/testdata/dependency_resolution_order/bar/BUILD.out rename to gazelle/python/testdata/dependency_resolution_order/bar/BUILD.out diff --git a/gazelle/testdata/dependency_resolution_order/bar/__init__.py b/gazelle/python/testdata/dependency_resolution_order/bar/__init__.py similarity index 100% rename from gazelle/testdata/dependency_resolution_order/bar/__init__.py rename to gazelle/python/testdata/dependency_resolution_order/bar/__init__.py diff --git a/gazelle/testdata/dependency_resolution_order/baz/BUILD.in b/gazelle/python/testdata/dependency_resolution_order/baz/BUILD.in similarity index 100% rename from gazelle/testdata/dependency_resolution_order/baz/BUILD.in rename to gazelle/python/testdata/dependency_resolution_order/baz/BUILD.in diff --git a/gazelle/testdata/dependency_resolution_order/baz/BUILD.out b/gazelle/python/testdata/dependency_resolution_order/baz/BUILD.out similarity index 100% rename from gazelle/testdata/dependency_resolution_order/baz/BUILD.out rename to gazelle/python/testdata/dependency_resolution_order/baz/BUILD.out diff --git a/gazelle/testdata/dependency_resolution_order/baz/__init__.py b/gazelle/python/testdata/dependency_resolution_order/baz/__init__.py similarity index 100% rename from gazelle/testdata/dependency_resolution_order/baz/__init__.py rename to gazelle/python/testdata/dependency_resolution_order/baz/__init__.py diff --git a/gazelle/testdata/dependency_resolution_order/foo/BUILD.in b/gazelle/python/testdata/dependency_resolution_order/foo/BUILD.in similarity index 100% rename from gazelle/testdata/dependency_resolution_order/foo/BUILD.in rename to gazelle/python/testdata/dependency_resolution_order/foo/BUILD.in diff --git a/gazelle/testdata/dependency_resolution_order/foo/BUILD.out b/gazelle/python/testdata/dependency_resolution_order/foo/BUILD.out similarity index 100% rename from gazelle/testdata/dependency_resolution_order/foo/BUILD.out rename to gazelle/python/testdata/dependency_resolution_order/foo/BUILD.out diff --git a/gazelle/testdata/dependency_resolution_order/foo/__init__.py b/gazelle/python/testdata/dependency_resolution_order/foo/__init__.py similarity index 100% rename from gazelle/testdata/dependency_resolution_order/foo/__init__.py rename to gazelle/python/testdata/dependency_resolution_order/foo/__init__.py diff --git a/gazelle/testdata/dependency_resolution_order/gazelle_python.yaml b/gazelle/python/testdata/dependency_resolution_order/gazelle_python.yaml similarity index 100% rename from gazelle/testdata/dependency_resolution_order/gazelle_python.yaml rename to gazelle/python/testdata/dependency_resolution_order/gazelle_python.yaml diff --git a/gazelle/testdata/dependency_resolution_order/somewhere/bar/BUILD.in b/gazelle/python/testdata/dependency_resolution_order/somewhere/bar/BUILD.in similarity index 100% rename from gazelle/testdata/dependency_resolution_order/somewhere/bar/BUILD.in rename to gazelle/python/testdata/dependency_resolution_order/somewhere/bar/BUILD.in diff --git a/gazelle/testdata/dependency_resolution_order/somewhere/bar/BUILD.out b/gazelle/python/testdata/dependency_resolution_order/somewhere/bar/BUILD.out similarity index 100% rename from gazelle/testdata/dependency_resolution_order/somewhere/bar/BUILD.out rename to gazelle/python/testdata/dependency_resolution_order/somewhere/bar/BUILD.out diff --git a/gazelle/testdata/dependency_resolution_order/somewhere/bar/__init__.py b/gazelle/python/testdata/dependency_resolution_order/somewhere/bar/__init__.py similarity index 100% rename from gazelle/testdata/dependency_resolution_order/somewhere/bar/__init__.py rename to gazelle/python/testdata/dependency_resolution_order/somewhere/bar/__init__.py diff --git a/gazelle/testdata/dependency_resolution_order/test.yaml b/gazelle/python/testdata/dependency_resolution_order/test.yaml similarity index 100% rename from gazelle/testdata/dependency_resolution_order/test.yaml rename to gazelle/python/testdata/dependency_resolution_order/test.yaml diff --git a/gazelle/testdata/disable_import_statements_validation/BUILD.in b/gazelle/python/testdata/disable_import_statements_validation/BUILD.in similarity index 100% rename from gazelle/testdata/disable_import_statements_validation/BUILD.in rename to gazelle/python/testdata/disable_import_statements_validation/BUILD.in diff --git a/gazelle/testdata/disable_import_statements_validation/BUILD.out b/gazelle/python/testdata/disable_import_statements_validation/BUILD.out similarity index 100% rename from gazelle/testdata/disable_import_statements_validation/BUILD.out rename to gazelle/python/testdata/disable_import_statements_validation/BUILD.out diff --git a/gazelle/testdata/disable_import_statements_validation/README.md b/gazelle/python/testdata/disable_import_statements_validation/README.md similarity index 100% rename from gazelle/testdata/disable_import_statements_validation/README.md rename to gazelle/python/testdata/disable_import_statements_validation/README.md diff --git a/gazelle/testdata/disable_import_statements_validation/WORKSPACE b/gazelle/python/testdata/disable_import_statements_validation/WORKSPACE similarity index 100% rename from gazelle/testdata/disable_import_statements_validation/WORKSPACE rename to gazelle/python/testdata/disable_import_statements_validation/WORKSPACE diff --git a/gazelle/testdata/disable_import_statements_validation/__init__.py b/gazelle/python/testdata/disable_import_statements_validation/__init__.py similarity index 100% rename from gazelle/testdata/disable_import_statements_validation/__init__.py rename to gazelle/python/testdata/disable_import_statements_validation/__init__.py diff --git a/gazelle/testdata/disable_import_statements_validation/test.yaml b/gazelle/python/testdata/disable_import_statements_validation/test.yaml similarity index 100% rename from gazelle/testdata/disable_import_statements_validation/test.yaml rename to gazelle/python/testdata/disable_import_statements_validation/test.yaml diff --git a/gazelle/testdata/dont_rename_target/BUILD.in b/gazelle/python/testdata/dont_rename_target/BUILD.in similarity index 100% rename from gazelle/testdata/dont_rename_target/BUILD.in rename to gazelle/python/testdata/dont_rename_target/BUILD.in diff --git a/gazelle/testdata/dont_rename_target/BUILD.out b/gazelle/python/testdata/dont_rename_target/BUILD.out similarity index 100% rename from gazelle/testdata/dont_rename_target/BUILD.out rename to gazelle/python/testdata/dont_rename_target/BUILD.out diff --git a/gazelle/testdata/dont_rename_target/README.md b/gazelle/python/testdata/dont_rename_target/README.md similarity index 100% rename from gazelle/testdata/dont_rename_target/README.md rename to gazelle/python/testdata/dont_rename_target/README.md diff --git a/gazelle/testdata/dont_rename_target/WORKSPACE b/gazelle/python/testdata/dont_rename_target/WORKSPACE similarity index 100% rename from gazelle/testdata/dont_rename_target/WORKSPACE rename to gazelle/python/testdata/dont_rename_target/WORKSPACE diff --git a/gazelle/testdata/dont_rename_target/__init__.py b/gazelle/python/testdata/dont_rename_target/__init__.py similarity index 100% rename from gazelle/testdata/dont_rename_target/__init__.py rename to gazelle/python/testdata/dont_rename_target/__init__.py diff --git a/gazelle/testdata/dont_rename_target/test.yaml b/gazelle/python/testdata/dont_rename_target/test.yaml similarity index 100% rename from gazelle/testdata/dont_rename_target/test.yaml rename to gazelle/python/testdata/dont_rename_target/test.yaml diff --git a/gazelle/testdata/file_name_matches_import_statement/BUILD.in b/gazelle/python/testdata/file_name_matches_import_statement/BUILD.in similarity index 100% rename from gazelle/testdata/file_name_matches_import_statement/BUILD.in rename to gazelle/python/testdata/file_name_matches_import_statement/BUILD.in diff --git a/gazelle/testdata/file_name_matches_import_statement/BUILD.out b/gazelle/python/testdata/file_name_matches_import_statement/BUILD.out similarity index 100% rename from gazelle/testdata/file_name_matches_import_statement/BUILD.out rename to gazelle/python/testdata/file_name_matches_import_statement/BUILD.out diff --git a/gazelle/testdata/file_name_matches_import_statement/README.md b/gazelle/python/testdata/file_name_matches_import_statement/README.md similarity index 100% rename from gazelle/testdata/file_name_matches_import_statement/README.md rename to gazelle/python/testdata/file_name_matches_import_statement/README.md diff --git a/gazelle/testdata/file_name_matches_import_statement/WORKSPACE b/gazelle/python/testdata/file_name_matches_import_statement/WORKSPACE similarity index 100% rename from gazelle/testdata/file_name_matches_import_statement/WORKSPACE rename to gazelle/python/testdata/file_name_matches_import_statement/WORKSPACE diff --git a/gazelle/testdata/file_name_matches_import_statement/__init__.py b/gazelle/python/testdata/file_name_matches_import_statement/__init__.py similarity index 100% rename from gazelle/testdata/file_name_matches_import_statement/__init__.py rename to gazelle/python/testdata/file_name_matches_import_statement/__init__.py diff --git a/gazelle/testdata/file_name_matches_import_statement/gazelle_python.yaml b/gazelle/python/testdata/file_name_matches_import_statement/gazelle_python.yaml similarity index 100% rename from gazelle/testdata/file_name_matches_import_statement/gazelle_python.yaml rename to gazelle/python/testdata/file_name_matches_import_statement/gazelle_python.yaml diff --git a/gazelle/testdata/file_name_matches_import_statement/rest_framework.py b/gazelle/python/testdata/file_name_matches_import_statement/rest_framework.py similarity index 100% rename from gazelle/testdata/file_name_matches_import_statement/rest_framework.py rename to gazelle/python/testdata/file_name_matches_import_statement/rest_framework.py diff --git a/gazelle/testdata/file_name_matches_import_statement/test.yaml b/gazelle/python/testdata/file_name_matches_import_statement/test.yaml similarity index 100% rename from gazelle/testdata/file_name_matches_import_statement/test.yaml rename to gazelle/python/testdata/file_name_matches_import_statement/test.yaml diff --git a/gazelle/testdata/first_party_dependencies/BUILD.in b/gazelle/python/testdata/first_party_dependencies/BUILD.in similarity index 100% rename from gazelle/testdata/first_party_dependencies/BUILD.in rename to gazelle/python/testdata/first_party_dependencies/BUILD.in diff --git a/gazelle/testdata/first_party_dependencies/BUILD.out b/gazelle/python/testdata/first_party_dependencies/BUILD.out similarity index 100% rename from gazelle/testdata/first_party_dependencies/BUILD.out rename to gazelle/python/testdata/first_party_dependencies/BUILD.out diff --git a/gazelle/testdata/first_party_dependencies/README.md b/gazelle/python/testdata/first_party_dependencies/README.md similarity index 100% rename from gazelle/testdata/first_party_dependencies/README.md rename to gazelle/python/testdata/first_party_dependencies/README.md diff --git a/gazelle/testdata/first_party_dependencies/WORKSPACE b/gazelle/python/testdata/first_party_dependencies/WORKSPACE similarity index 100% rename from gazelle/testdata/first_party_dependencies/WORKSPACE rename to gazelle/python/testdata/first_party_dependencies/WORKSPACE diff --git a/gazelle/testdata/first_party_dependencies/one/BUILD.in b/gazelle/python/testdata/first_party_dependencies/one/BUILD.in similarity index 100% rename from gazelle/testdata/first_party_dependencies/one/BUILD.in rename to gazelle/python/testdata/first_party_dependencies/one/BUILD.in diff --git a/gazelle/testdata/first_party_dependencies/one/BUILD.out b/gazelle/python/testdata/first_party_dependencies/one/BUILD.out similarity index 100% rename from gazelle/testdata/first_party_dependencies/one/BUILD.out rename to gazelle/python/testdata/first_party_dependencies/one/BUILD.out diff --git a/gazelle/testdata/first_party_dependencies/one/__main__.py b/gazelle/python/testdata/first_party_dependencies/one/__main__.py similarity index 100% rename from gazelle/testdata/first_party_dependencies/one/__main__.py rename to gazelle/python/testdata/first_party_dependencies/one/__main__.py diff --git a/gazelle/testdata/first_party_dependencies/one/bar/BUILD.in b/gazelle/python/testdata/first_party_dependencies/one/bar/BUILD.in similarity index 100% rename from gazelle/testdata/first_party_dependencies/one/bar/BUILD.in rename to gazelle/python/testdata/first_party_dependencies/one/bar/BUILD.in diff --git a/gazelle/testdata/first_party_dependencies/one/bar/BUILD.out b/gazelle/python/testdata/first_party_dependencies/one/bar/BUILD.out similarity index 100% rename from gazelle/testdata/first_party_dependencies/one/bar/BUILD.out rename to gazelle/python/testdata/first_party_dependencies/one/bar/BUILD.out diff --git a/gazelle/testdata/first_party_dependencies/one/bar/__init__.py b/gazelle/python/testdata/first_party_dependencies/one/bar/__init__.py similarity index 100% rename from gazelle/testdata/first_party_dependencies/one/bar/__init__.py rename to gazelle/python/testdata/first_party_dependencies/one/bar/__init__.py diff --git a/gazelle/testdata/first_party_dependencies/one/bar/baz/BUILD.in b/gazelle/python/testdata/first_party_dependencies/one/bar/baz/BUILD.in similarity index 100% rename from gazelle/testdata/first_party_dependencies/one/bar/baz/BUILD.in rename to gazelle/python/testdata/first_party_dependencies/one/bar/baz/BUILD.in diff --git a/gazelle/testdata/first_party_dependencies/one/bar/baz/BUILD.out b/gazelle/python/testdata/first_party_dependencies/one/bar/baz/BUILD.out similarity index 100% rename from gazelle/testdata/first_party_dependencies/one/bar/baz/BUILD.out rename to gazelle/python/testdata/first_party_dependencies/one/bar/baz/BUILD.out diff --git a/gazelle/testdata/first_party_dependencies/one/bar/baz/__init__.py b/gazelle/python/testdata/first_party_dependencies/one/bar/baz/__init__.py similarity index 100% rename from gazelle/testdata/first_party_dependencies/one/bar/baz/__init__.py rename to gazelle/python/testdata/first_party_dependencies/one/bar/baz/__init__.py diff --git a/gazelle/testdata/first_party_dependencies/one/foo/BUILD.in b/gazelle/python/testdata/first_party_dependencies/one/foo/BUILD.in similarity index 100% rename from gazelle/testdata/first_party_dependencies/one/foo/BUILD.in rename to gazelle/python/testdata/first_party_dependencies/one/foo/BUILD.in diff --git a/gazelle/testdata/first_party_dependencies/one/foo/BUILD.out b/gazelle/python/testdata/first_party_dependencies/one/foo/BUILD.out similarity index 100% rename from gazelle/testdata/first_party_dependencies/one/foo/BUILD.out rename to gazelle/python/testdata/first_party_dependencies/one/foo/BUILD.out diff --git a/gazelle/testdata/first_party_dependencies/one/foo/__init__.py b/gazelle/python/testdata/first_party_dependencies/one/foo/__init__.py similarity index 100% rename from gazelle/testdata/first_party_dependencies/one/foo/__init__.py rename to gazelle/python/testdata/first_party_dependencies/one/foo/__init__.py diff --git a/gazelle/testdata/first_party_dependencies/test.yaml b/gazelle/python/testdata/first_party_dependencies/test.yaml similarity index 100% rename from gazelle/testdata/first_party_dependencies/test.yaml rename to gazelle/python/testdata/first_party_dependencies/test.yaml diff --git a/gazelle/testdata/first_party_dependencies/three/BUILD.in b/gazelle/python/testdata/first_party_dependencies/three/BUILD.in similarity index 100% rename from gazelle/testdata/first_party_dependencies/three/BUILD.in rename to gazelle/python/testdata/first_party_dependencies/three/BUILD.in diff --git a/gazelle/testdata/first_party_dependencies/three/BUILD.out b/gazelle/python/testdata/first_party_dependencies/three/BUILD.out similarity index 100% rename from gazelle/testdata/first_party_dependencies/three/BUILD.out rename to gazelle/python/testdata/first_party_dependencies/three/BUILD.out diff --git a/gazelle/testdata/first_party_dependencies/three/__init__.py b/gazelle/python/testdata/first_party_dependencies/three/__init__.py similarity index 100% rename from gazelle/testdata/first_party_dependencies/three/__init__.py rename to gazelle/python/testdata/first_party_dependencies/three/__init__.py diff --git a/gazelle/testdata/first_party_dependencies/two/BUILD.in b/gazelle/python/testdata/first_party_dependencies/two/BUILD.in similarity index 100% rename from gazelle/testdata/first_party_dependencies/two/BUILD.in rename to gazelle/python/testdata/first_party_dependencies/two/BUILD.in diff --git a/gazelle/testdata/first_party_dependencies/two/BUILD.out b/gazelle/python/testdata/first_party_dependencies/two/BUILD.out similarity index 100% rename from gazelle/testdata/first_party_dependencies/two/BUILD.out rename to gazelle/python/testdata/first_party_dependencies/two/BUILD.out diff --git a/gazelle/testdata/first_party_dependencies/two/__init__.py b/gazelle/python/testdata/first_party_dependencies/two/__init__.py similarity index 100% rename from gazelle/testdata/first_party_dependencies/two/__init__.py rename to gazelle/python/testdata/first_party_dependencies/two/__init__.py diff --git a/gazelle/testdata/first_party_file_and_directory_modules/BUILD.in b/gazelle/python/testdata/first_party_file_and_directory_modules/BUILD.in similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/BUILD.in rename to gazelle/python/testdata/first_party_file_and_directory_modules/BUILD.in diff --git a/gazelle/testdata/first_party_file_and_directory_modules/BUILD.out b/gazelle/python/testdata/first_party_file_and_directory_modules/BUILD.out similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/BUILD.out rename to gazelle/python/testdata/first_party_file_and_directory_modules/BUILD.out diff --git a/gazelle/testdata/first_party_file_and_directory_modules/README.md b/gazelle/python/testdata/first_party_file_and_directory_modules/README.md similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/README.md rename to gazelle/python/testdata/first_party_file_and_directory_modules/README.md diff --git a/gazelle/testdata/first_party_file_and_directory_modules/WORKSPACE b/gazelle/python/testdata/first_party_file_and_directory_modules/WORKSPACE similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/WORKSPACE rename to gazelle/python/testdata/first_party_file_and_directory_modules/WORKSPACE diff --git a/gazelle/testdata/first_party_file_and_directory_modules/__main__.py b/gazelle/python/testdata/first_party_file_and_directory_modules/__main__.py similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/__main__.py rename to gazelle/python/testdata/first_party_file_and_directory_modules/__main__.py diff --git a/gazelle/testdata/first_party_file_and_directory_modules/baz.py b/gazelle/python/testdata/first_party_file_and_directory_modules/baz.py similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/baz.py rename to gazelle/python/testdata/first_party_file_and_directory_modules/baz.py diff --git a/gazelle/testdata/first_party_file_and_directory_modules/foo.py b/gazelle/python/testdata/first_party_file_and_directory_modules/foo.py similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/foo.py rename to gazelle/python/testdata/first_party_file_and_directory_modules/foo.py diff --git a/gazelle/testdata/first_party_file_and_directory_modules/foo/BUILD.in b/gazelle/python/testdata/first_party_file_and_directory_modules/foo/BUILD.in similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/foo/BUILD.in rename to gazelle/python/testdata/first_party_file_and_directory_modules/foo/BUILD.in diff --git a/gazelle/testdata/first_party_file_and_directory_modules/foo/BUILD.out b/gazelle/python/testdata/first_party_file_and_directory_modules/foo/BUILD.out similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/foo/BUILD.out rename to gazelle/python/testdata/first_party_file_and_directory_modules/foo/BUILD.out diff --git a/gazelle/testdata/first_party_file_and_directory_modules/foo/__init__.py b/gazelle/python/testdata/first_party_file_and_directory_modules/foo/__init__.py similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/foo/__init__.py rename to gazelle/python/testdata/first_party_file_and_directory_modules/foo/__init__.py diff --git a/gazelle/testdata/first_party_file_and_directory_modules/foo/bar.py b/gazelle/python/testdata/first_party_file_and_directory_modules/foo/bar.py similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/foo/bar.py rename to gazelle/python/testdata/first_party_file_and_directory_modules/foo/bar.py diff --git a/gazelle/testdata/first_party_file_and_directory_modules/one/BUILD.in b/gazelle/python/testdata/first_party_file_and_directory_modules/one/BUILD.in similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/one/BUILD.in rename to gazelle/python/testdata/first_party_file_and_directory_modules/one/BUILD.in diff --git a/gazelle/testdata/first_party_file_and_directory_modules/one/BUILD.out b/gazelle/python/testdata/first_party_file_and_directory_modules/one/BUILD.out similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/one/BUILD.out rename to gazelle/python/testdata/first_party_file_and_directory_modules/one/BUILD.out diff --git a/gazelle/testdata/first_party_file_and_directory_modules/one/__init__.py b/gazelle/python/testdata/first_party_file_and_directory_modules/one/__init__.py similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/one/__init__.py rename to gazelle/python/testdata/first_party_file_and_directory_modules/one/__init__.py diff --git a/gazelle/testdata/first_party_file_and_directory_modules/one/two.py b/gazelle/python/testdata/first_party_file_and_directory_modules/one/two.py similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/one/two.py rename to gazelle/python/testdata/first_party_file_and_directory_modules/one/two.py diff --git a/gazelle/testdata/first_party_file_and_directory_modules/test.yaml b/gazelle/python/testdata/first_party_file_and_directory_modules/test.yaml similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/test.yaml rename to gazelle/python/testdata/first_party_file_and_directory_modules/test.yaml diff --git a/gazelle/testdata/first_party_file_and_directory_modules/undiscoverable/BUILD.in b/gazelle/python/testdata/first_party_file_and_directory_modules/undiscoverable/BUILD.in similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/undiscoverable/BUILD.in rename to gazelle/python/testdata/first_party_file_and_directory_modules/undiscoverable/BUILD.in diff --git a/gazelle/testdata/first_party_file_and_directory_modules/undiscoverable/BUILD.out b/gazelle/python/testdata/first_party_file_and_directory_modules/undiscoverable/BUILD.out similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/undiscoverable/BUILD.out rename to gazelle/python/testdata/first_party_file_and_directory_modules/undiscoverable/BUILD.out diff --git a/gazelle/testdata/first_party_file_and_directory_modules/undiscoverable/package1/subpackage1/BUILD.in b/gazelle/python/testdata/first_party_file_and_directory_modules/undiscoverable/package1/subpackage1/BUILD.in similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/undiscoverable/package1/subpackage1/BUILD.in rename to gazelle/python/testdata/first_party_file_and_directory_modules/undiscoverable/package1/subpackage1/BUILD.in diff --git a/gazelle/testdata/first_party_file_and_directory_modules/undiscoverable/package1/subpackage1/BUILD.out b/gazelle/python/testdata/first_party_file_and_directory_modules/undiscoverable/package1/subpackage1/BUILD.out similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/undiscoverable/package1/subpackage1/BUILD.out rename to gazelle/python/testdata/first_party_file_and_directory_modules/undiscoverable/package1/subpackage1/BUILD.out diff --git a/gazelle/testdata/first_party_file_and_directory_modules/undiscoverable/package1/subpackage1/__init__.py b/gazelle/python/testdata/first_party_file_and_directory_modules/undiscoverable/package1/subpackage1/__init__.py similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/undiscoverable/package1/subpackage1/__init__.py rename to gazelle/python/testdata/first_party_file_and_directory_modules/undiscoverable/package1/subpackage1/__init__.py diff --git a/gazelle/testdata/first_party_file_and_directory_modules/undiscoverable/package1/subpackage1/module1.py b/gazelle/python/testdata/first_party_file_and_directory_modules/undiscoverable/package1/subpackage1/module1.py similarity index 100% rename from gazelle/testdata/first_party_file_and_directory_modules/undiscoverable/package1/subpackage1/module1.py rename to gazelle/python/testdata/first_party_file_and_directory_modules/undiscoverable/package1/subpackage1/module1.py diff --git a/gazelle/testdata/from_imports/BUILD.in b/gazelle/python/testdata/from_imports/BUILD.in similarity index 100% rename from gazelle/testdata/from_imports/BUILD.in rename to gazelle/python/testdata/from_imports/BUILD.in diff --git a/gazelle/testdata/from_imports/BUILD.out b/gazelle/python/testdata/from_imports/BUILD.out similarity index 100% rename from gazelle/testdata/from_imports/BUILD.out rename to gazelle/python/testdata/from_imports/BUILD.out diff --git a/gazelle/testdata/from_imports/README.md b/gazelle/python/testdata/from_imports/README.md similarity index 100% rename from gazelle/testdata/from_imports/README.md rename to gazelle/python/testdata/from_imports/README.md diff --git a/gazelle/testdata/from_imports/WORKSPACE b/gazelle/python/testdata/from_imports/WORKSPACE similarity index 100% rename from gazelle/testdata/from_imports/WORKSPACE rename to gazelle/python/testdata/from_imports/WORKSPACE diff --git a/gazelle/testdata/from_imports/foo/BUILD.in b/gazelle/python/testdata/from_imports/foo/BUILD.in similarity index 100% rename from gazelle/testdata/from_imports/foo/BUILD.in rename to gazelle/python/testdata/from_imports/foo/BUILD.in diff --git a/gazelle/testdata/from_imports/foo/BUILD.out b/gazelle/python/testdata/from_imports/foo/BUILD.out similarity index 100% rename from gazelle/testdata/from_imports/foo/BUILD.out rename to gazelle/python/testdata/from_imports/foo/BUILD.out diff --git a/gazelle/testdata/from_imports/foo/__init__.py b/gazelle/python/testdata/from_imports/foo/__init__.py similarity index 100% rename from gazelle/testdata/from_imports/foo/__init__.py rename to gazelle/python/testdata/from_imports/foo/__init__.py diff --git a/gazelle/testdata/from_imports/foo/bar/BUILD.in b/gazelle/python/testdata/from_imports/foo/bar/BUILD.in similarity index 100% rename from gazelle/testdata/from_imports/foo/bar/BUILD.in rename to gazelle/python/testdata/from_imports/foo/bar/BUILD.in diff --git a/gazelle/testdata/from_imports/foo/bar/BUILD.out b/gazelle/python/testdata/from_imports/foo/bar/BUILD.out similarity index 100% rename from gazelle/testdata/from_imports/foo/bar/BUILD.out rename to gazelle/python/testdata/from_imports/foo/bar/BUILD.out diff --git a/gazelle/testdata/from_imports/foo/bar/__init__.py b/gazelle/python/testdata/from_imports/foo/bar/__init__.py similarity index 100% rename from gazelle/testdata/from_imports/foo/bar/__init__.py rename to gazelle/python/testdata/from_imports/foo/bar/__init__.py diff --git a/gazelle/testdata/from_imports/foo/bar/baz.py b/gazelle/python/testdata/from_imports/foo/bar/baz.py similarity index 100% rename from gazelle/testdata/from_imports/foo/bar/baz.py rename to gazelle/python/testdata/from_imports/foo/bar/baz.py diff --git a/gazelle/testdata/from_imports/gazelle_python.yaml b/gazelle/python/testdata/from_imports/gazelle_python.yaml similarity index 100% rename from gazelle/testdata/from_imports/gazelle_python.yaml rename to gazelle/python/testdata/from_imports/gazelle_python.yaml diff --git a/gazelle/testdata/from_imports/import_from_init_py/BUILD.in b/gazelle/python/testdata/from_imports/import_from_init_py/BUILD.in similarity index 100% rename from gazelle/testdata/from_imports/import_from_init_py/BUILD.in rename to gazelle/python/testdata/from_imports/import_from_init_py/BUILD.in diff --git a/gazelle/testdata/from_imports/import_from_init_py/BUILD.out b/gazelle/python/testdata/from_imports/import_from_init_py/BUILD.out similarity index 100% rename from gazelle/testdata/from_imports/import_from_init_py/BUILD.out rename to gazelle/python/testdata/from_imports/import_from_init_py/BUILD.out diff --git a/gazelle/testdata/from_imports/import_from_init_py/__init__.py b/gazelle/python/testdata/from_imports/import_from_init_py/__init__.py similarity index 100% rename from gazelle/testdata/from_imports/import_from_init_py/__init__.py rename to gazelle/python/testdata/from_imports/import_from_init_py/__init__.py diff --git a/gazelle/testdata/from_imports/import_from_multiple/BUILD.in b/gazelle/python/testdata/from_imports/import_from_multiple/BUILD.in similarity index 100% rename from gazelle/testdata/from_imports/import_from_multiple/BUILD.in rename to gazelle/python/testdata/from_imports/import_from_multiple/BUILD.in diff --git a/gazelle/testdata/from_imports/import_from_multiple/BUILD.out b/gazelle/python/testdata/from_imports/import_from_multiple/BUILD.out similarity index 100% rename from gazelle/testdata/from_imports/import_from_multiple/BUILD.out rename to gazelle/python/testdata/from_imports/import_from_multiple/BUILD.out diff --git a/gazelle/testdata/from_imports/import_from_multiple/__init__.py b/gazelle/python/testdata/from_imports/import_from_multiple/__init__.py similarity index 100% rename from gazelle/testdata/from_imports/import_from_multiple/__init__.py rename to gazelle/python/testdata/from_imports/import_from_multiple/__init__.py diff --git a/gazelle/testdata/from_imports/import_nested_file/BUILD.in b/gazelle/python/testdata/from_imports/import_nested_file/BUILD.in similarity index 100% rename from gazelle/testdata/from_imports/import_nested_file/BUILD.in rename to gazelle/python/testdata/from_imports/import_nested_file/BUILD.in diff --git a/gazelle/testdata/from_imports/import_nested_file/BUILD.out b/gazelle/python/testdata/from_imports/import_nested_file/BUILD.out similarity index 100% rename from gazelle/testdata/from_imports/import_nested_file/BUILD.out rename to gazelle/python/testdata/from_imports/import_nested_file/BUILD.out diff --git a/gazelle/testdata/from_imports/import_nested_file/__init__.py b/gazelle/python/testdata/from_imports/import_nested_file/__init__.py similarity index 100% rename from gazelle/testdata/from_imports/import_nested_file/__init__.py rename to gazelle/python/testdata/from_imports/import_nested_file/__init__.py diff --git a/gazelle/testdata/from_imports/import_nested_module/BUILD.in b/gazelle/python/testdata/from_imports/import_nested_module/BUILD.in similarity index 100% rename from gazelle/testdata/from_imports/import_nested_module/BUILD.in rename to gazelle/python/testdata/from_imports/import_nested_module/BUILD.in diff --git a/gazelle/testdata/from_imports/import_nested_module/BUILD.out b/gazelle/python/testdata/from_imports/import_nested_module/BUILD.out similarity index 100% rename from gazelle/testdata/from_imports/import_nested_module/BUILD.out rename to gazelle/python/testdata/from_imports/import_nested_module/BUILD.out diff --git a/gazelle/testdata/from_imports/import_nested_module/__init__.py b/gazelle/python/testdata/from_imports/import_nested_module/__init__.py similarity index 100% rename from gazelle/testdata/from_imports/import_nested_module/__init__.py rename to gazelle/python/testdata/from_imports/import_nested_module/__init__.py diff --git a/gazelle/testdata/from_imports/import_nested_var/BUILD.in b/gazelle/python/testdata/from_imports/import_nested_var/BUILD.in similarity index 100% rename from gazelle/testdata/from_imports/import_nested_var/BUILD.in rename to gazelle/python/testdata/from_imports/import_nested_var/BUILD.in diff --git a/gazelle/testdata/from_imports/import_nested_var/BUILD.out b/gazelle/python/testdata/from_imports/import_nested_var/BUILD.out similarity index 100% rename from gazelle/testdata/from_imports/import_nested_var/BUILD.out rename to gazelle/python/testdata/from_imports/import_nested_var/BUILD.out diff --git a/gazelle/testdata/from_imports/import_nested_var/__init__.py b/gazelle/python/testdata/from_imports/import_nested_var/__init__.py similarity index 100% rename from gazelle/testdata/from_imports/import_nested_var/__init__.py rename to gazelle/python/testdata/from_imports/import_nested_var/__init__.py diff --git a/gazelle/testdata/from_imports/import_top_level_var/BUILD.in b/gazelle/python/testdata/from_imports/import_top_level_var/BUILD.in similarity index 100% rename from gazelle/testdata/from_imports/import_top_level_var/BUILD.in rename to gazelle/python/testdata/from_imports/import_top_level_var/BUILD.in diff --git a/gazelle/testdata/from_imports/import_top_level_var/BUILD.out b/gazelle/python/testdata/from_imports/import_top_level_var/BUILD.out similarity index 100% rename from gazelle/testdata/from_imports/import_top_level_var/BUILD.out rename to gazelle/python/testdata/from_imports/import_top_level_var/BUILD.out diff --git a/gazelle/testdata/from_imports/import_top_level_var/__init__.py b/gazelle/python/testdata/from_imports/import_top_level_var/__init__.py similarity index 100% rename from gazelle/testdata/from_imports/import_top_level_var/__init__.py rename to gazelle/python/testdata/from_imports/import_top_level_var/__init__.py diff --git a/gazelle/testdata/from_imports/std_module/BUILD.in b/gazelle/python/testdata/from_imports/std_module/BUILD.in similarity index 100% rename from gazelle/testdata/from_imports/std_module/BUILD.in rename to gazelle/python/testdata/from_imports/std_module/BUILD.in diff --git a/gazelle/testdata/from_imports/std_module/BUILD.out b/gazelle/python/testdata/from_imports/std_module/BUILD.out similarity index 100% rename from gazelle/testdata/from_imports/std_module/BUILD.out rename to gazelle/python/testdata/from_imports/std_module/BUILD.out diff --git a/gazelle/testdata/from_imports/std_module/__init__.py b/gazelle/python/testdata/from_imports/std_module/__init__.py similarity index 100% rename from gazelle/testdata/from_imports/std_module/__init__.py rename to gazelle/python/testdata/from_imports/std_module/__init__.py diff --git a/gazelle/testdata/from_imports/test.yaml b/gazelle/python/testdata/from_imports/test.yaml similarity index 100% rename from gazelle/testdata/from_imports/test.yaml rename to gazelle/python/testdata/from_imports/test.yaml diff --git a/gazelle/testdata/generated_test_entrypoint/BUILD.in b/gazelle/python/testdata/generated_test_entrypoint/BUILD.in similarity index 100% rename from gazelle/testdata/generated_test_entrypoint/BUILD.in rename to gazelle/python/testdata/generated_test_entrypoint/BUILD.in diff --git a/gazelle/testdata/generated_test_entrypoint/BUILD.out b/gazelle/python/testdata/generated_test_entrypoint/BUILD.out similarity index 100% rename from gazelle/testdata/generated_test_entrypoint/BUILD.out rename to gazelle/python/testdata/generated_test_entrypoint/BUILD.out diff --git a/gazelle/testdata/generated_test_entrypoint/README.md b/gazelle/python/testdata/generated_test_entrypoint/README.md similarity index 100% rename from gazelle/testdata/generated_test_entrypoint/README.md rename to gazelle/python/testdata/generated_test_entrypoint/README.md diff --git a/gazelle/testdata/generated_test_entrypoint/WORKSPACE b/gazelle/python/testdata/generated_test_entrypoint/WORKSPACE similarity index 100% rename from gazelle/testdata/generated_test_entrypoint/WORKSPACE rename to gazelle/python/testdata/generated_test_entrypoint/WORKSPACE diff --git a/gazelle/testdata/generated_test_entrypoint/__init__.py b/gazelle/python/testdata/generated_test_entrypoint/__init__.py similarity index 100% rename from gazelle/testdata/generated_test_entrypoint/__init__.py rename to gazelle/python/testdata/generated_test_entrypoint/__init__.py diff --git a/gazelle/testdata/generated_test_entrypoint/foo.py b/gazelle/python/testdata/generated_test_entrypoint/foo.py similarity index 100% rename from gazelle/testdata/generated_test_entrypoint/foo.py rename to gazelle/python/testdata/generated_test_entrypoint/foo.py diff --git a/gazelle/testdata/generated_test_entrypoint/test.yaml b/gazelle/python/testdata/generated_test_entrypoint/test.yaml similarity index 100% rename from gazelle/testdata/generated_test_entrypoint/test.yaml rename to gazelle/python/testdata/generated_test_entrypoint/test.yaml diff --git a/gazelle/testdata/ignored_invalid_imported_module/BUILD.in b/gazelle/python/testdata/ignored_invalid_imported_module/BUILD.in similarity index 100% rename from gazelle/testdata/ignored_invalid_imported_module/BUILD.in rename to gazelle/python/testdata/ignored_invalid_imported_module/BUILD.in diff --git a/gazelle/testdata/ignored_invalid_imported_module/BUILD.out b/gazelle/python/testdata/ignored_invalid_imported_module/BUILD.out similarity index 100% rename from gazelle/testdata/ignored_invalid_imported_module/BUILD.out rename to gazelle/python/testdata/ignored_invalid_imported_module/BUILD.out diff --git a/gazelle/testdata/ignored_invalid_imported_module/README.md b/gazelle/python/testdata/ignored_invalid_imported_module/README.md similarity index 100% rename from gazelle/testdata/ignored_invalid_imported_module/README.md rename to gazelle/python/testdata/ignored_invalid_imported_module/README.md diff --git a/gazelle/testdata/ignored_invalid_imported_module/WORKSPACE b/gazelle/python/testdata/ignored_invalid_imported_module/WORKSPACE similarity index 100% rename from gazelle/testdata/ignored_invalid_imported_module/WORKSPACE rename to gazelle/python/testdata/ignored_invalid_imported_module/WORKSPACE diff --git a/gazelle/testdata/ignored_invalid_imported_module/__init__.py b/gazelle/python/testdata/ignored_invalid_imported_module/__init__.py similarity index 100% rename from gazelle/testdata/ignored_invalid_imported_module/__init__.py rename to gazelle/python/testdata/ignored_invalid_imported_module/__init__.py diff --git a/gazelle/testdata/ignored_invalid_imported_module/gazelle_python.yaml b/gazelle/python/testdata/ignored_invalid_imported_module/gazelle_python.yaml similarity index 100% rename from gazelle/testdata/ignored_invalid_imported_module/gazelle_python.yaml rename to gazelle/python/testdata/ignored_invalid_imported_module/gazelle_python.yaml diff --git a/gazelle/testdata/ignored_invalid_imported_module/test.yaml b/gazelle/python/testdata/ignored_invalid_imported_module/test.yaml similarity index 100% rename from gazelle/testdata/ignored_invalid_imported_module/test.yaml rename to gazelle/python/testdata/ignored_invalid_imported_module/test.yaml diff --git a/gazelle/testdata/invalid_annotation/BUILD.in b/gazelle/python/testdata/invalid_annotation/BUILD.in similarity index 100% rename from gazelle/testdata/invalid_annotation/BUILD.in rename to gazelle/python/testdata/invalid_annotation/BUILD.in diff --git a/gazelle/testdata/invalid_annotation/BUILD.out b/gazelle/python/testdata/invalid_annotation/BUILD.out similarity index 100% rename from gazelle/testdata/invalid_annotation/BUILD.out rename to gazelle/python/testdata/invalid_annotation/BUILD.out diff --git a/gazelle/testdata/invalid_annotation/README.md b/gazelle/python/testdata/invalid_annotation/README.md similarity index 100% rename from gazelle/testdata/invalid_annotation/README.md rename to gazelle/python/testdata/invalid_annotation/README.md diff --git a/gazelle/testdata/invalid_annotation/WORKSPACE b/gazelle/python/testdata/invalid_annotation/WORKSPACE similarity index 100% rename from gazelle/testdata/invalid_annotation/WORKSPACE rename to gazelle/python/testdata/invalid_annotation/WORKSPACE diff --git a/gazelle/testdata/invalid_annotation/__init__.py b/gazelle/python/testdata/invalid_annotation/__init__.py similarity index 100% rename from gazelle/testdata/invalid_annotation/__init__.py rename to gazelle/python/testdata/invalid_annotation/__init__.py diff --git a/gazelle/testdata/invalid_annotation/test.yaml b/gazelle/python/testdata/invalid_annotation/test.yaml similarity index 100% rename from gazelle/testdata/invalid_annotation/test.yaml rename to gazelle/python/testdata/invalid_annotation/test.yaml diff --git a/gazelle/testdata/invalid_imported_module/BUILD.in b/gazelle/python/testdata/invalid_imported_module/BUILD.in similarity index 100% rename from gazelle/testdata/invalid_imported_module/BUILD.in rename to gazelle/python/testdata/invalid_imported_module/BUILD.in diff --git a/gazelle/testdata/invalid_imported_module/BUILD.out b/gazelle/python/testdata/invalid_imported_module/BUILD.out similarity index 100% rename from gazelle/testdata/invalid_imported_module/BUILD.out rename to gazelle/python/testdata/invalid_imported_module/BUILD.out diff --git a/gazelle/testdata/invalid_imported_module/README.md b/gazelle/python/testdata/invalid_imported_module/README.md similarity index 100% rename from gazelle/testdata/invalid_imported_module/README.md rename to gazelle/python/testdata/invalid_imported_module/README.md diff --git a/gazelle/testdata/invalid_imported_module/WORKSPACE b/gazelle/python/testdata/invalid_imported_module/WORKSPACE similarity index 100% rename from gazelle/testdata/invalid_imported_module/WORKSPACE rename to gazelle/python/testdata/invalid_imported_module/WORKSPACE diff --git a/gazelle/testdata/invalid_imported_module/__init__.py b/gazelle/python/testdata/invalid_imported_module/__init__.py similarity index 100% rename from gazelle/testdata/invalid_imported_module/__init__.py rename to gazelle/python/testdata/invalid_imported_module/__init__.py diff --git a/gazelle/testdata/invalid_imported_module/test.yaml b/gazelle/python/testdata/invalid_imported_module/test.yaml similarity index 100% rename from gazelle/testdata/invalid_imported_module/test.yaml rename to gazelle/python/testdata/invalid_imported_module/test.yaml diff --git a/gazelle/testdata/monorepo/BUILD.in b/gazelle/python/testdata/monorepo/BUILD.in similarity index 100% rename from gazelle/testdata/monorepo/BUILD.in rename to gazelle/python/testdata/monorepo/BUILD.in diff --git a/gazelle/testdata/monorepo/BUILD.out b/gazelle/python/testdata/monorepo/BUILD.out similarity index 100% rename from gazelle/testdata/monorepo/BUILD.out rename to gazelle/python/testdata/monorepo/BUILD.out diff --git a/gazelle/testdata/monorepo/README.md b/gazelle/python/testdata/monorepo/README.md similarity index 100% rename from gazelle/testdata/monorepo/README.md rename to gazelle/python/testdata/monorepo/README.md diff --git a/gazelle/testdata/monorepo/WORKSPACE b/gazelle/python/testdata/monorepo/WORKSPACE similarity index 100% rename from gazelle/testdata/monorepo/WORKSPACE rename to gazelle/python/testdata/monorepo/WORKSPACE diff --git a/gazelle/testdata/monorepo/coarse_grained/BUILD.in b/gazelle/python/testdata/monorepo/coarse_grained/BUILD.in similarity index 100% rename from gazelle/testdata/monorepo/coarse_grained/BUILD.in rename to gazelle/python/testdata/monorepo/coarse_grained/BUILD.in diff --git a/gazelle/testdata/monorepo/coarse_grained/BUILD.out b/gazelle/python/testdata/monorepo/coarse_grained/BUILD.out similarity index 100% rename from gazelle/testdata/monorepo/coarse_grained/BUILD.out rename to gazelle/python/testdata/monorepo/coarse_grained/BUILD.out diff --git a/gazelle/testdata/monorepo/coarse_grained/__init__.py b/gazelle/python/testdata/monorepo/coarse_grained/__init__.py similarity index 100% rename from gazelle/testdata/monorepo/coarse_grained/__init__.py rename to gazelle/python/testdata/monorepo/coarse_grained/__init__.py diff --git a/gazelle/testdata/monorepo/coarse_grained/_boundary/BUILD.in b/gazelle/python/testdata/monorepo/coarse_grained/_boundary/BUILD.in similarity index 100% rename from gazelle/testdata/monorepo/coarse_grained/_boundary/BUILD.in rename to gazelle/python/testdata/monorepo/coarse_grained/_boundary/BUILD.in diff --git a/gazelle/testdata/monorepo/coarse_grained/_boundary/BUILD.out b/gazelle/python/testdata/monorepo/coarse_grained/_boundary/BUILD.out similarity index 100% rename from gazelle/testdata/monorepo/coarse_grained/_boundary/BUILD.out rename to gazelle/python/testdata/monorepo/coarse_grained/_boundary/BUILD.out diff --git a/gazelle/testdata/monorepo/coarse_grained/_boundary/README.md b/gazelle/python/testdata/monorepo/coarse_grained/_boundary/README.md similarity index 100% rename from gazelle/testdata/monorepo/coarse_grained/_boundary/README.md rename to gazelle/python/testdata/monorepo/coarse_grained/_boundary/README.md diff --git a/gazelle/testdata/monorepo/coarse_grained/_boundary/__init__.py b/gazelle/python/testdata/monorepo/coarse_grained/_boundary/__init__.py similarity index 100% rename from gazelle/testdata/monorepo/coarse_grained/_boundary/__init__.py rename to gazelle/python/testdata/monorepo/coarse_grained/_boundary/__init__.py diff --git a/gazelle/testdata/monorepo/coarse_grained/bar/__init__.py b/gazelle/python/testdata/monorepo/coarse_grained/bar/__init__.py similarity index 100% rename from gazelle/testdata/monorepo/coarse_grained/bar/__init__.py rename to gazelle/python/testdata/monorepo/coarse_grained/bar/__init__.py diff --git a/gazelle/testdata/monorepo/coarse_grained/bar/baz/__init__.py b/gazelle/python/testdata/monorepo/coarse_grained/bar/baz/__init__.py similarity index 100% rename from gazelle/testdata/monorepo/coarse_grained/bar/baz/__init__.py rename to gazelle/python/testdata/monorepo/coarse_grained/bar/baz/__init__.py diff --git a/gazelle/testdata/monorepo/coarse_grained/bar/baz/first_excluded.py b/gazelle/python/testdata/monorepo/coarse_grained/bar/baz/first_excluded.py similarity index 100% rename from gazelle/testdata/monorepo/coarse_grained/bar/baz/first_excluded.py rename to gazelle/python/testdata/monorepo/coarse_grained/bar/baz/first_excluded.py diff --git a/gazelle/testdata/monorepo/coarse_grained/bar/baz/hue.py b/gazelle/python/testdata/monorepo/coarse_grained/bar/baz/hue.py similarity index 100% rename from gazelle/testdata/monorepo/coarse_grained/bar/baz/hue.py rename to gazelle/python/testdata/monorepo/coarse_grained/bar/baz/hue.py diff --git a/gazelle/testdata/monorepo/coarse_grained/bar/baz/second_excluded.py b/gazelle/python/testdata/monorepo/coarse_grained/bar/baz/second_excluded.py similarity index 100% rename from gazelle/testdata/monorepo/coarse_grained/bar/baz/second_excluded.py rename to gazelle/python/testdata/monorepo/coarse_grained/bar/baz/second_excluded.py diff --git a/gazelle/testdata/monorepo/coarse_grained/foo/__init__.py b/gazelle/python/testdata/monorepo/coarse_grained/foo/__init__.py similarity index 100% rename from gazelle/testdata/monorepo/coarse_grained/foo/__init__.py rename to gazelle/python/testdata/monorepo/coarse_grained/foo/__init__.py diff --git a/gazelle/testdata/monorepo/gazelle_python.yaml b/gazelle/python/testdata/monorepo/gazelle_python.yaml similarity index 100% rename from gazelle/testdata/monorepo/gazelle_python.yaml rename to gazelle/python/testdata/monorepo/gazelle_python.yaml diff --git a/gazelle/testdata/monorepo/one/BUILD.in b/gazelle/python/testdata/monorepo/one/BUILD.in similarity index 100% rename from gazelle/testdata/monorepo/one/BUILD.in rename to gazelle/python/testdata/monorepo/one/BUILD.in diff --git a/gazelle/testdata/monorepo/one/BUILD.out b/gazelle/python/testdata/monorepo/one/BUILD.out similarity index 100% rename from gazelle/testdata/monorepo/one/BUILD.out rename to gazelle/python/testdata/monorepo/one/BUILD.out diff --git a/gazelle/testdata/monorepo/one/__main__.py b/gazelle/python/testdata/monorepo/one/__main__.py similarity index 100% rename from gazelle/testdata/monorepo/one/__main__.py rename to gazelle/python/testdata/monorepo/one/__main__.py diff --git a/gazelle/testdata/monorepo/one/bar/BUILD.in b/gazelle/python/testdata/monorepo/one/bar/BUILD.in similarity index 100% rename from gazelle/testdata/monorepo/one/bar/BUILD.in rename to gazelle/python/testdata/monorepo/one/bar/BUILD.in diff --git a/gazelle/testdata/monorepo/one/bar/BUILD.out b/gazelle/python/testdata/monorepo/one/bar/BUILD.out similarity index 100% rename from gazelle/testdata/monorepo/one/bar/BUILD.out rename to gazelle/python/testdata/monorepo/one/bar/BUILD.out diff --git a/gazelle/testdata/monorepo/one/bar/__init__.py b/gazelle/python/testdata/monorepo/one/bar/__init__.py similarity index 100% rename from gazelle/testdata/monorepo/one/bar/__init__.py rename to gazelle/python/testdata/monorepo/one/bar/__init__.py diff --git a/gazelle/testdata/monorepo/one/bar/baz/BUILD.in b/gazelle/python/testdata/monorepo/one/bar/baz/BUILD.in similarity index 100% rename from gazelle/testdata/monorepo/one/bar/baz/BUILD.in rename to gazelle/python/testdata/monorepo/one/bar/baz/BUILD.in diff --git a/gazelle/testdata/monorepo/one/bar/baz/BUILD.out b/gazelle/python/testdata/monorepo/one/bar/baz/BUILD.out similarity index 100% rename from gazelle/testdata/monorepo/one/bar/baz/BUILD.out rename to gazelle/python/testdata/monorepo/one/bar/baz/BUILD.out diff --git a/gazelle/testdata/monorepo/one/bar/baz/__init__.py b/gazelle/python/testdata/monorepo/one/bar/baz/__init__.py similarity index 100% rename from gazelle/testdata/monorepo/one/bar/baz/__init__.py rename to gazelle/python/testdata/monorepo/one/bar/baz/__init__.py diff --git a/gazelle/testdata/monorepo/one/foo/BUILD.in b/gazelle/python/testdata/monorepo/one/foo/BUILD.in similarity index 100% rename from gazelle/testdata/monorepo/one/foo/BUILD.in rename to gazelle/python/testdata/monorepo/one/foo/BUILD.in diff --git a/gazelle/testdata/monorepo/one/foo/BUILD.out b/gazelle/python/testdata/monorepo/one/foo/BUILD.out similarity index 100% rename from gazelle/testdata/monorepo/one/foo/BUILD.out rename to gazelle/python/testdata/monorepo/one/foo/BUILD.out diff --git a/gazelle/testdata/monorepo/one/foo/__init__.py b/gazelle/python/testdata/monorepo/one/foo/__init__.py similarity index 100% rename from gazelle/testdata/monorepo/one/foo/__init__.py rename to gazelle/python/testdata/monorepo/one/foo/__init__.py diff --git a/gazelle/testdata/monorepo/one/gazelle_python.yaml b/gazelle/python/testdata/monorepo/one/gazelle_python.yaml similarity index 100% rename from gazelle/testdata/monorepo/one/gazelle_python.yaml rename to gazelle/python/testdata/monorepo/one/gazelle_python.yaml diff --git a/gazelle/testdata/monorepo/test.yaml b/gazelle/python/testdata/monorepo/test.yaml similarity index 100% rename from gazelle/testdata/monorepo/test.yaml rename to gazelle/python/testdata/monorepo/test.yaml diff --git a/gazelle/testdata/monorepo/three/BUILD.in b/gazelle/python/testdata/monorepo/three/BUILD.in similarity index 100% rename from gazelle/testdata/monorepo/three/BUILD.in rename to gazelle/python/testdata/monorepo/three/BUILD.in diff --git a/gazelle/testdata/monorepo/three/BUILD.out b/gazelle/python/testdata/monorepo/three/BUILD.out similarity index 100% rename from gazelle/testdata/monorepo/three/BUILD.out rename to gazelle/python/testdata/monorepo/three/BUILD.out diff --git a/gazelle/testdata/monorepo/three/__init__.py b/gazelle/python/testdata/monorepo/three/__init__.py similarity index 100% rename from gazelle/testdata/monorepo/three/__init__.py rename to gazelle/python/testdata/monorepo/three/__init__.py diff --git a/gazelle/testdata/monorepo/three/gazelle_python.yaml b/gazelle/python/testdata/monorepo/three/gazelle_python.yaml similarity index 100% rename from gazelle/testdata/monorepo/three/gazelle_python.yaml rename to gazelle/python/testdata/monorepo/three/gazelle_python.yaml diff --git a/gazelle/testdata/monorepo/two/BUILD.in b/gazelle/python/testdata/monorepo/two/BUILD.in similarity index 100% rename from gazelle/testdata/monorepo/two/BUILD.in rename to gazelle/python/testdata/monorepo/two/BUILD.in diff --git a/gazelle/testdata/monorepo/two/BUILD.out b/gazelle/python/testdata/monorepo/two/BUILD.out similarity index 100% rename from gazelle/testdata/monorepo/two/BUILD.out rename to gazelle/python/testdata/monorepo/two/BUILD.out diff --git a/gazelle/testdata/monorepo/two/__init__.py b/gazelle/python/testdata/monorepo/two/__init__.py similarity index 100% rename from gazelle/testdata/monorepo/two/__init__.py rename to gazelle/python/testdata/monorepo/two/__init__.py diff --git a/gazelle/testdata/monorepo/two/gazelle_python.yaml b/gazelle/python/testdata/monorepo/two/gazelle_python.yaml similarity index 100% rename from gazelle/testdata/monorepo/two/gazelle_python.yaml rename to gazelle/python/testdata/monorepo/two/gazelle_python.yaml diff --git a/gazelle/testdata/monorepo/wont_generate/BUILD.in b/gazelle/python/testdata/monorepo/wont_generate/BUILD.in similarity index 100% rename from gazelle/testdata/monorepo/wont_generate/BUILD.in rename to gazelle/python/testdata/monorepo/wont_generate/BUILD.in diff --git a/gazelle/testdata/monorepo/wont_generate/BUILD.out b/gazelle/python/testdata/monorepo/wont_generate/BUILD.out similarity index 100% rename from gazelle/testdata/monorepo/wont_generate/BUILD.out rename to gazelle/python/testdata/monorepo/wont_generate/BUILD.out diff --git a/gazelle/testdata/monorepo/wont_generate/__main__.py b/gazelle/python/testdata/monorepo/wont_generate/__main__.py similarity index 100% rename from gazelle/testdata/monorepo/wont_generate/__main__.py rename to gazelle/python/testdata/monorepo/wont_generate/__main__.py diff --git a/gazelle/testdata/monorepo/wont_generate/bar/BUILD.in b/gazelle/python/testdata/monorepo/wont_generate/bar/BUILD.in similarity index 100% rename from gazelle/testdata/monorepo/wont_generate/bar/BUILD.in rename to gazelle/python/testdata/monorepo/wont_generate/bar/BUILD.in diff --git a/gazelle/testdata/monorepo/wont_generate/bar/BUILD.out b/gazelle/python/testdata/monorepo/wont_generate/bar/BUILD.out similarity index 100% rename from gazelle/testdata/monorepo/wont_generate/bar/BUILD.out rename to gazelle/python/testdata/monorepo/wont_generate/bar/BUILD.out diff --git a/gazelle/testdata/monorepo/wont_generate/bar/__init__.py b/gazelle/python/testdata/monorepo/wont_generate/bar/__init__.py similarity index 100% rename from gazelle/testdata/monorepo/wont_generate/bar/__init__.py rename to gazelle/python/testdata/monorepo/wont_generate/bar/__init__.py diff --git a/gazelle/testdata/monorepo/wont_generate/bar/baz/BUILD.in b/gazelle/python/testdata/monorepo/wont_generate/bar/baz/BUILD.in similarity index 100% rename from gazelle/testdata/monorepo/wont_generate/bar/baz/BUILD.in rename to gazelle/python/testdata/monorepo/wont_generate/bar/baz/BUILD.in diff --git a/gazelle/testdata/monorepo/wont_generate/bar/baz/BUILD.out b/gazelle/python/testdata/monorepo/wont_generate/bar/baz/BUILD.out similarity index 100% rename from gazelle/testdata/monorepo/wont_generate/bar/baz/BUILD.out rename to gazelle/python/testdata/monorepo/wont_generate/bar/baz/BUILD.out diff --git a/gazelle/testdata/monorepo/wont_generate/bar/baz/__init__.py b/gazelle/python/testdata/monorepo/wont_generate/bar/baz/__init__.py similarity index 100% rename from gazelle/testdata/monorepo/wont_generate/bar/baz/__init__.py rename to gazelle/python/testdata/monorepo/wont_generate/bar/baz/__init__.py diff --git a/gazelle/testdata/monorepo/wont_generate/foo/BUILD.in b/gazelle/python/testdata/monorepo/wont_generate/foo/BUILD.in similarity index 100% rename from gazelle/testdata/monorepo/wont_generate/foo/BUILD.in rename to gazelle/python/testdata/monorepo/wont_generate/foo/BUILD.in diff --git a/gazelle/testdata/monorepo/wont_generate/foo/BUILD.out b/gazelle/python/testdata/monorepo/wont_generate/foo/BUILD.out similarity index 100% rename from gazelle/testdata/monorepo/wont_generate/foo/BUILD.out rename to gazelle/python/testdata/monorepo/wont_generate/foo/BUILD.out diff --git a/gazelle/testdata/monorepo/wont_generate/foo/__init__.py b/gazelle/python/testdata/monorepo/wont_generate/foo/__init__.py similarity index 100% rename from gazelle/testdata/monorepo/wont_generate/foo/__init__.py rename to gazelle/python/testdata/monorepo/wont_generate/foo/__init__.py diff --git a/gazelle/testdata/naming_convention/BUILD.in b/gazelle/python/testdata/naming_convention/BUILD.in similarity index 100% rename from gazelle/testdata/naming_convention/BUILD.in rename to gazelle/python/testdata/naming_convention/BUILD.in diff --git a/gazelle/testdata/naming_convention/BUILD.out b/gazelle/python/testdata/naming_convention/BUILD.out similarity index 100% rename from gazelle/testdata/naming_convention/BUILD.out rename to gazelle/python/testdata/naming_convention/BUILD.out diff --git a/gazelle/testdata/naming_convention/README.md b/gazelle/python/testdata/naming_convention/README.md similarity index 100% rename from gazelle/testdata/naming_convention/README.md rename to gazelle/python/testdata/naming_convention/README.md diff --git a/gazelle/testdata/naming_convention/WORKSPACE b/gazelle/python/testdata/naming_convention/WORKSPACE similarity index 100% rename from gazelle/testdata/naming_convention/WORKSPACE rename to gazelle/python/testdata/naming_convention/WORKSPACE diff --git a/gazelle/testdata/naming_convention/__init__.py b/gazelle/python/testdata/naming_convention/__init__.py similarity index 100% rename from gazelle/testdata/naming_convention/__init__.py rename to gazelle/python/testdata/naming_convention/__init__.py diff --git a/gazelle/testdata/naming_convention/__main__.py b/gazelle/python/testdata/naming_convention/__main__.py similarity index 100% rename from gazelle/testdata/naming_convention/__main__.py rename to gazelle/python/testdata/naming_convention/__main__.py diff --git a/gazelle/testdata/naming_convention/__test__.py b/gazelle/python/testdata/naming_convention/__test__.py similarity index 100% rename from gazelle/testdata/naming_convention/__test__.py rename to gazelle/python/testdata/naming_convention/__test__.py diff --git a/gazelle/testdata/naming_convention/dont_rename/BUILD.in b/gazelle/python/testdata/naming_convention/dont_rename/BUILD.in similarity index 100% rename from gazelle/testdata/naming_convention/dont_rename/BUILD.in rename to gazelle/python/testdata/naming_convention/dont_rename/BUILD.in diff --git a/gazelle/testdata/naming_convention/dont_rename/BUILD.out b/gazelle/python/testdata/naming_convention/dont_rename/BUILD.out similarity index 100% rename from gazelle/testdata/naming_convention/dont_rename/BUILD.out rename to gazelle/python/testdata/naming_convention/dont_rename/BUILD.out diff --git a/gazelle/testdata/naming_convention/dont_rename/__init__.py b/gazelle/python/testdata/naming_convention/dont_rename/__init__.py similarity index 100% rename from gazelle/testdata/naming_convention/dont_rename/__init__.py rename to gazelle/python/testdata/naming_convention/dont_rename/__init__.py diff --git a/gazelle/testdata/naming_convention/dont_rename/__main__.py b/gazelle/python/testdata/naming_convention/dont_rename/__main__.py similarity index 100% rename from gazelle/testdata/naming_convention/dont_rename/__main__.py rename to gazelle/python/testdata/naming_convention/dont_rename/__main__.py diff --git a/gazelle/testdata/naming_convention/dont_rename/__test__.py b/gazelle/python/testdata/naming_convention/dont_rename/__test__.py similarity index 100% rename from gazelle/testdata/naming_convention/dont_rename/__test__.py rename to gazelle/python/testdata/naming_convention/dont_rename/__test__.py diff --git a/gazelle/testdata/naming_convention/resolve_conflict/BUILD.in b/gazelle/python/testdata/naming_convention/resolve_conflict/BUILD.in similarity index 100% rename from gazelle/testdata/naming_convention/resolve_conflict/BUILD.in rename to gazelle/python/testdata/naming_convention/resolve_conflict/BUILD.in diff --git a/gazelle/testdata/naming_convention/resolve_conflict/BUILD.out b/gazelle/python/testdata/naming_convention/resolve_conflict/BUILD.out similarity index 100% rename from gazelle/testdata/naming_convention/resolve_conflict/BUILD.out rename to gazelle/python/testdata/naming_convention/resolve_conflict/BUILD.out diff --git a/gazelle/testdata/naming_convention/resolve_conflict/__init__.py b/gazelle/python/testdata/naming_convention/resolve_conflict/__init__.py similarity index 100% rename from gazelle/testdata/naming_convention/resolve_conflict/__init__.py rename to gazelle/python/testdata/naming_convention/resolve_conflict/__init__.py diff --git a/gazelle/testdata/naming_convention/resolve_conflict/__main__.py b/gazelle/python/testdata/naming_convention/resolve_conflict/__main__.py similarity index 100% rename from gazelle/testdata/naming_convention/resolve_conflict/__main__.py rename to gazelle/python/testdata/naming_convention/resolve_conflict/__main__.py diff --git a/gazelle/testdata/naming_convention/resolve_conflict/__test__.py b/gazelle/python/testdata/naming_convention/resolve_conflict/__test__.py similarity index 100% rename from gazelle/testdata/naming_convention/resolve_conflict/__test__.py rename to gazelle/python/testdata/naming_convention/resolve_conflict/__test__.py diff --git a/gazelle/testdata/naming_convention/test.yaml b/gazelle/python/testdata/naming_convention/test.yaml similarity index 100% rename from gazelle/testdata/naming_convention/test.yaml rename to gazelle/python/testdata/naming_convention/test.yaml diff --git a/gazelle/testdata/naming_convention_binary_fail/BUILD.in b/gazelle/python/testdata/naming_convention_binary_fail/BUILD.in similarity index 100% rename from gazelle/testdata/naming_convention_binary_fail/BUILD.in rename to gazelle/python/testdata/naming_convention_binary_fail/BUILD.in diff --git a/gazelle/testdata/naming_convention_binary_fail/BUILD.out b/gazelle/python/testdata/naming_convention_binary_fail/BUILD.out similarity index 100% rename from gazelle/testdata/naming_convention_binary_fail/BUILD.out rename to gazelle/python/testdata/naming_convention_binary_fail/BUILD.out diff --git a/gazelle/testdata/naming_convention_binary_fail/README.md b/gazelle/python/testdata/naming_convention_binary_fail/README.md similarity index 100% rename from gazelle/testdata/naming_convention_binary_fail/README.md rename to gazelle/python/testdata/naming_convention_binary_fail/README.md diff --git a/gazelle/testdata/naming_convention_binary_fail/WORKSPACE b/gazelle/python/testdata/naming_convention_binary_fail/WORKSPACE similarity index 100% rename from gazelle/testdata/naming_convention_binary_fail/WORKSPACE rename to gazelle/python/testdata/naming_convention_binary_fail/WORKSPACE diff --git a/gazelle/testdata/naming_convention_binary_fail/__main__.py b/gazelle/python/testdata/naming_convention_binary_fail/__main__.py similarity index 100% rename from gazelle/testdata/naming_convention_binary_fail/__main__.py rename to gazelle/python/testdata/naming_convention_binary_fail/__main__.py diff --git a/gazelle/testdata/naming_convention_binary_fail/test.yaml b/gazelle/python/testdata/naming_convention_binary_fail/test.yaml similarity index 100% rename from gazelle/testdata/naming_convention_binary_fail/test.yaml rename to gazelle/python/testdata/naming_convention_binary_fail/test.yaml diff --git a/gazelle/testdata/naming_convention_library_fail/BUILD.in b/gazelle/python/testdata/naming_convention_library_fail/BUILD.in similarity index 100% rename from gazelle/testdata/naming_convention_library_fail/BUILD.in rename to gazelle/python/testdata/naming_convention_library_fail/BUILD.in diff --git a/gazelle/testdata/naming_convention_library_fail/BUILD.out b/gazelle/python/testdata/naming_convention_library_fail/BUILD.out similarity index 100% rename from gazelle/testdata/naming_convention_library_fail/BUILD.out rename to gazelle/python/testdata/naming_convention_library_fail/BUILD.out diff --git a/gazelle/testdata/naming_convention_library_fail/README.md b/gazelle/python/testdata/naming_convention_library_fail/README.md similarity index 100% rename from gazelle/testdata/naming_convention_library_fail/README.md rename to gazelle/python/testdata/naming_convention_library_fail/README.md diff --git a/gazelle/testdata/naming_convention_library_fail/WORKSPACE b/gazelle/python/testdata/naming_convention_library_fail/WORKSPACE similarity index 100% rename from gazelle/testdata/naming_convention_library_fail/WORKSPACE rename to gazelle/python/testdata/naming_convention_library_fail/WORKSPACE diff --git a/gazelle/testdata/naming_convention_library_fail/__init__.py b/gazelle/python/testdata/naming_convention_library_fail/__init__.py similarity index 100% rename from gazelle/testdata/naming_convention_library_fail/__init__.py rename to gazelle/python/testdata/naming_convention_library_fail/__init__.py diff --git a/gazelle/testdata/naming_convention_library_fail/test.yaml b/gazelle/python/testdata/naming_convention_library_fail/test.yaml similarity index 100% rename from gazelle/testdata/naming_convention_library_fail/test.yaml rename to gazelle/python/testdata/naming_convention_library_fail/test.yaml diff --git a/gazelle/testdata/naming_convention_test_fail/BUILD.in b/gazelle/python/testdata/naming_convention_test_fail/BUILD.in similarity index 100% rename from gazelle/testdata/naming_convention_test_fail/BUILD.in rename to gazelle/python/testdata/naming_convention_test_fail/BUILD.in diff --git a/gazelle/testdata/naming_convention_test_fail/BUILD.out b/gazelle/python/testdata/naming_convention_test_fail/BUILD.out similarity index 100% rename from gazelle/testdata/naming_convention_test_fail/BUILD.out rename to gazelle/python/testdata/naming_convention_test_fail/BUILD.out diff --git a/gazelle/testdata/naming_convention_test_fail/README.md b/gazelle/python/testdata/naming_convention_test_fail/README.md similarity index 100% rename from gazelle/testdata/naming_convention_test_fail/README.md rename to gazelle/python/testdata/naming_convention_test_fail/README.md diff --git a/gazelle/testdata/naming_convention_test_fail/WORKSPACE b/gazelle/python/testdata/naming_convention_test_fail/WORKSPACE similarity index 100% rename from gazelle/testdata/naming_convention_test_fail/WORKSPACE rename to gazelle/python/testdata/naming_convention_test_fail/WORKSPACE diff --git a/gazelle/testdata/naming_convention_test_fail/__test__.py b/gazelle/python/testdata/naming_convention_test_fail/__test__.py similarity index 100% rename from gazelle/testdata/naming_convention_test_fail/__test__.py rename to gazelle/python/testdata/naming_convention_test_fail/__test__.py diff --git a/gazelle/testdata/naming_convention_test_fail/test.yaml b/gazelle/python/testdata/naming_convention_test_fail/test.yaml similarity index 100% rename from gazelle/testdata/naming_convention_test_fail/test.yaml rename to gazelle/python/testdata/naming_convention_test_fail/test.yaml diff --git a/gazelle/testdata/python_ignore_dependencies_directive/BUILD.in b/gazelle/python/testdata/python_ignore_dependencies_directive/BUILD.in similarity index 100% rename from gazelle/testdata/python_ignore_dependencies_directive/BUILD.in rename to gazelle/python/testdata/python_ignore_dependencies_directive/BUILD.in diff --git a/gazelle/testdata/python_ignore_dependencies_directive/BUILD.out b/gazelle/python/testdata/python_ignore_dependencies_directive/BUILD.out similarity index 100% rename from gazelle/testdata/python_ignore_dependencies_directive/BUILD.out rename to gazelle/python/testdata/python_ignore_dependencies_directive/BUILD.out diff --git a/gazelle/testdata/python_ignore_dependencies_directive/README.md b/gazelle/python/testdata/python_ignore_dependencies_directive/README.md similarity index 100% rename from gazelle/testdata/python_ignore_dependencies_directive/README.md rename to gazelle/python/testdata/python_ignore_dependencies_directive/README.md diff --git a/gazelle/testdata/python_ignore_dependencies_directive/WORKSPACE b/gazelle/python/testdata/python_ignore_dependencies_directive/WORKSPACE similarity index 100% rename from gazelle/testdata/python_ignore_dependencies_directive/WORKSPACE rename to gazelle/python/testdata/python_ignore_dependencies_directive/WORKSPACE diff --git a/gazelle/testdata/python_ignore_dependencies_directive/__init__.py b/gazelle/python/testdata/python_ignore_dependencies_directive/__init__.py similarity index 100% rename from gazelle/testdata/python_ignore_dependencies_directive/__init__.py rename to gazelle/python/testdata/python_ignore_dependencies_directive/__init__.py diff --git a/gazelle/testdata/python_ignore_dependencies_directive/gazelle_python.yaml b/gazelle/python/testdata/python_ignore_dependencies_directive/gazelle_python.yaml similarity index 100% rename from gazelle/testdata/python_ignore_dependencies_directive/gazelle_python.yaml rename to gazelle/python/testdata/python_ignore_dependencies_directive/gazelle_python.yaml diff --git a/gazelle/testdata/python_ignore_dependencies_directive/test.yaml b/gazelle/python/testdata/python_ignore_dependencies_directive/test.yaml similarity index 100% rename from gazelle/testdata/python_ignore_dependencies_directive/test.yaml rename to gazelle/python/testdata/python_ignore_dependencies_directive/test.yaml diff --git a/gazelle/testdata/python_ignore_files_directive/BUILD.in b/gazelle/python/testdata/python_ignore_files_directive/BUILD.in similarity index 100% rename from gazelle/testdata/python_ignore_files_directive/BUILD.in rename to gazelle/python/testdata/python_ignore_files_directive/BUILD.in diff --git a/gazelle/testdata/python_ignore_files_directive/BUILD.out b/gazelle/python/testdata/python_ignore_files_directive/BUILD.out similarity index 100% rename from gazelle/testdata/python_ignore_files_directive/BUILD.out rename to gazelle/python/testdata/python_ignore_files_directive/BUILD.out diff --git a/gazelle/testdata/python_ignore_files_directive/README.md b/gazelle/python/testdata/python_ignore_files_directive/README.md similarity index 100% rename from gazelle/testdata/python_ignore_files_directive/README.md rename to gazelle/python/testdata/python_ignore_files_directive/README.md diff --git a/gazelle/testdata/python_ignore_files_directive/WORKSPACE b/gazelle/python/testdata/python_ignore_files_directive/WORKSPACE similarity index 100% rename from gazelle/testdata/python_ignore_files_directive/WORKSPACE rename to gazelle/python/testdata/python_ignore_files_directive/WORKSPACE diff --git a/gazelle/testdata/python_ignore_files_directive/__init__.py b/gazelle/python/testdata/python_ignore_files_directive/__init__.py similarity index 100% rename from gazelle/testdata/python_ignore_files_directive/__init__.py rename to gazelle/python/testdata/python_ignore_files_directive/__init__.py diff --git a/gazelle/testdata/python_ignore_files_directive/bar/BUILD.in b/gazelle/python/testdata/python_ignore_files_directive/bar/BUILD.in similarity index 100% rename from gazelle/testdata/python_ignore_files_directive/bar/BUILD.in rename to gazelle/python/testdata/python_ignore_files_directive/bar/BUILD.in diff --git a/gazelle/testdata/python_ignore_files_directive/bar/BUILD.out b/gazelle/python/testdata/python_ignore_files_directive/bar/BUILD.out similarity index 100% rename from gazelle/testdata/python_ignore_files_directive/bar/BUILD.out rename to gazelle/python/testdata/python_ignore_files_directive/bar/BUILD.out diff --git a/gazelle/testdata/python_ignore_files_directive/bar/baz.py b/gazelle/python/testdata/python_ignore_files_directive/bar/baz.py similarity index 100% rename from gazelle/testdata/python_ignore_files_directive/bar/baz.py rename to gazelle/python/testdata/python_ignore_files_directive/bar/baz.py diff --git a/gazelle/testdata/python_ignore_files_directive/bar/some_other.py b/gazelle/python/testdata/python_ignore_files_directive/bar/some_other.py similarity index 100% rename from gazelle/testdata/python_ignore_files_directive/bar/some_other.py rename to gazelle/python/testdata/python_ignore_files_directive/bar/some_other.py diff --git a/gazelle/testdata/python_ignore_files_directive/foo/BUILD.in b/gazelle/python/testdata/python_ignore_files_directive/foo/BUILD.in similarity index 100% rename from gazelle/testdata/python_ignore_files_directive/foo/BUILD.in rename to gazelle/python/testdata/python_ignore_files_directive/foo/BUILD.in diff --git a/gazelle/testdata/python_ignore_files_directive/foo/BUILD.out b/gazelle/python/testdata/python_ignore_files_directive/foo/BUILD.out similarity index 100% rename from gazelle/testdata/python_ignore_files_directive/foo/BUILD.out rename to gazelle/python/testdata/python_ignore_files_directive/foo/BUILD.out diff --git a/gazelle/testdata/python_ignore_files_directive/foo/baz.py b/gazelle/python/testdata/python_ignore_files_directive/foo/baz.py similarity index 100% rename from gazelle/testdata/python_ignore_files_directive/foo/baz.py rename to gazelle/python/testdata/python_ignore_files_directive/foo/baz.py diff --git a/gazelle/testdata/python_ignore_files_directive/setup.py b/gazelle/python/testdata/python_ignore_files_directive/setup.py similarity index 100% rename from gazelle/testdata/python_ignore_files_directive/setup.py rename to gazelle/python/testdata/python_ignore_files_directive/setup.py diff --git a/gazelle/testdata/python_ignore_files_directive/some_other.py b/gazelle/python/testdata/python_ignore_files_directive/some_other.py similarity index 100% rename from gazelle/testdata/python_ignore_files_directive/some_other.py rename to gazelle/python/testdata/python_ignore_files_directive/some_other.py diff --git a/gazelle/testdata/python_ignore_files_directive/test.yaml b/gazelle/python/testdata/python_ignore_files_directive/test.yaml similarity index 100% rename from gazelle/testdata/python_ignore_files_directive/test.yaml rename to gazelle/python/testdata/python_ignore_files_directive/test.yaml diff --git a/gazelle/testdata/python_target_with_test_in_name/BUILD.in b/gazelle/python/testdata/python_target_with_test_in_name/BUILD.in similarity index 100% rename from gazelle/testdata/python_target_with_test_in_name/BUILD.in rename to gazelle/python/testdata/python_target_with_test_in_name/BUILD.in diff --git a/gazelle/testdata/python_target_with_test_in_name/BUILD.out b/gazelle/python/testdata/python_target_with_test_in_name/BUILD.out similarity index 100% rename from gazelle/testdata/python_target_with_test_in_name/BUILD.out rename to gazelle/python/testdata/python_target_with_test_in_name/BUILD.out diff --git a/gazelle/testdata/python_target_with_test_in_name/README.md b/gazelle/python/testdata/python_target_with_test_in_name/README.md similarity index 100% rename from gazelle/testdata/python_target_with_test_in_name/README.md rename to gazelle/python/testdata/python_target_with_test_in_name/README.md diff --git a/gazelle/testdata/python_target_with_test_in_name/WORKSPACE b/gazelle/python/testdata/python_target_with_test_in_name/WORKSPACE similarity index 100% rename from gazelle/testdata/python_target_with_test_in_name/WORKSPACE rename to gazelle/python/testdata/python_target_with_test_in_name/WORKSPACE diff --git a/gazelle/testdata/python_target_with_test_in_name/__init__.py b/gazelle/python/testdata/python_target_with_test_in_name/__init__.py similarity index 100% rename from gazelle/testdata/python_target_with_test_in_name/__init__.py rename to gazelle/python/testdata/python_target_with_test_in_name/__init__.py diff --git a/gazelle/testdata/python_target_with_test_in_name/gazelle_python.yaml b/gazelle/python/testdata/python_target_with_test_in_name/gazelle_python.yaml similarity index 100% rename from gazelle/testdata/python_target_with_test_in_name/gazelle_python.yaml rename to gazelle/python/testdata/python_target_with_test_in_name/gazelle_python.yaml diff --git a/gazelle/testdata/python_target_with_test_in_name/not_a_real_test.py b/gazelle/python/testdata/python_target_with_test_in_name/not_a_real_test.py similarity index 100% rename from gazelle/testdata/python_target_with_test_in_name/not_a_real_test.py rename to gazelle/python/testdata/python_target_with_test_in_name/not_a_real_test.py diff --git a/gazelle/testdata/python_target_with_test_in_name/test.yaml b/gazelle/python/testdata/python_target_with_test_in_name/test.yaml similarity index 100% rename from gazelle/testdata/python_target_with_test_in_name/test.yaml rename to gazelle/python/testdata/python_target_with_test_in_name/test.yaml diff --git a/gazelle/testdata/python_target_with_test_in_name/test_not_a_real.py b/gazelle/python/testdata/python_target_with_test_in_name/test_not_a_real.py similarity index 100% rename from gazelle/testdata/python_target_with_test_in_name/test_not_a_real.py rename to gazelle/python/testdata/python_target_with_test_in_name/test_not_a_real.py diff --git a/gazelle/testdata/relative_imports/BUILD.in b/gazelle/python/testdata/relative_imports/BUILD.in similarity index 100% rename from gazelle/testdata/relative_imports/BUILD.in rename to gazelle/python/testdata/relative_imports/BUILD.in diff --git a/gazelle/testdata/relative_imports/BUILD.out b/gazelle/python/testdata/relative_imports/BUILD.out similarity index 100% rename from gazelle/testdata/relative_imports/BUILD.out rename to gazelle/python/testdata/relative_imports/BUILD.out diff --git a/gazelle/testdata/relative_imports/README.md b/gazelle/python/testdata/relative_imports/README.md similarity index 100% rename from gazelle/testdata/relative_imports/README.md rename to gazelle/python/testdata/relative_imports/README.md diff --git a/gazelle/testdata/relative_imports/WORKSPACE b/gazelle/python/testdata/relative_imports/WORKSPACE similarity index 100% rename from gazelle/testdata/relative_imports/WORKSPACE rename to gazelle/python/testdata/relative_imports/WORKSPACE diff --git a/gazelle/testdata/relative_imports/__main__.py b/gazelle/python/testdata/relative_imports/__main__.py similarity index 100% rename from gazelle/testdata/relative_imports/__main__.py rename to gazelle/python/testdata/relative_imports/__main__.py diff --git a/gazelle/testdata/relative_imports/package1/module1.py b/gazelle/python/testdata/relative_imports/package1/module1.py similarity index 100% rename from gazelle/testdata/relative_imports/package1/module1.py rename to gazelle/python/testdata/relative_imports/package1/module1.py diff --git a/gazelle/testdata/relative_imports/package1/module2.py b/gazelle/python/testdata/relative_imports/package1/module2.py similarity index 100% rename from gazelle/testdata/relative_imports/package1/module2.py rename to gazelle/python/testdata/relative_imports/package1/module2.py diff --git a/gazelle/testdata/relative_imports/package2/BUILD.in b/gazelle/python/testdata/relative_imports/package2/BUILD.in similarity index 100% rename from gazelle/testdata/relative_imports/package2/BUILD.in rename to gazelle/python/testdata/relative_imports/package2/BUILD.in diff --git a/gazelle/testdata/relative_imports/package2/BUILD.out b/gazelle/python/testdata/relative_imports/package2/BUILD.out similarity index 100% rename from gazelle/testdata/relative_imports/package2/BUILD.out rename to gazelle/python/testdata/relative_imports/package2/BUILD.out diff --git a/gazelle/testdata/relative_imports/package2/__init__.py b/gazelle/python/testdata/relative_imports/package2/__init__.py similarity index 100% rename from gazelle/testdata/relative_imports/package2/__init__.py rename to gazelle/python/testdata/relative_imports/package2/__init__.py diff --git a/gazelle/testdata/relative_imports/package2/module3.py b/gazelle/python/testdata/relative_imports/package2/module3.py similarity index 100% rename from gazelle/testdata/relative_imports/package2/module3.py rename to gazelle/python/testdata/relative_imports/package2/module3.py diff --git a/gazelle/testdata/relative_imports/package2/module4.py b/gazelle/python/testdata/relative_imports/package2/module4.py similarity index 100% rename from gazelle/testdata/relative_imports/package2/module4.py rename to gazelle/python/testdata/relative_imports/package2/module4.py diff --git a/gazelle/testdata/relative_imports/package2/subpackage1/module5.py b/gazelle/python/testdata/relative_imports/package2/subpackage1/module5.py similarity index 100% rename from gazelle/testdata/relative_imports/package2/subpackage1/module5.py rename to gazelle/python/testdata/relative_imports/package2/subpackage1/module5.py diff --git a/gazelle/testdata/relative_imports/test.yaml b/gazelle/python/testdata/relative_imports/test.yaml similarity index 100% rename from gazelle/testdata/relative_imports/test.yaml rename to gazelle/python/testdata/relative_imports/test.yaml diff --git a/gazelle/testdata/simple_binary/BUILD.in b/gazelle/python/testdata/simple_binary/BUILD.in similarity index 100% rename from gazelle/testdata/simple_binary/BUILD.in rename to gazelle/python/testdata/simple_binary/BUILD.in diff --git a/gazelle/testdata/simple_binary/BUILD.out b/gazelle/python/testdata/simple_binary/BUILD.out similarity index 100% rename from gazelle/testdata/simple_binary/BUILD.out rename to gazelle/python/testdata/simple_binary/BUILD.out diff --git a/gazelle/testdata/simple_binary/README.md b/gazelle/python/testdata/simple_binary/README.md similarity index 100% rename from gazelle/testdata/simple_binary/README.md rename to gazelle/python/testdata/simple_binary/README.md diff --git a/gazelle/testdata/simple_binary/WORKSPACE b/gazelle/python/testdata/simple_binary/WORKSPACE similarity index 100% rename from gazelle/testdata/simple_binary/WORKSPACE rename to gazelle/python/testdata/simple_binary/WORKSPACE diff --git a/gazelle/testdata/simple_binary/__main__.py b/gazelle/python/testdata/simple_binary/__main__.py similarity index 100% rename from gazelle/testdata/simple_binary/__main__.py rename to gazelle/python/testdata/simple_binary/__main__.py diff --git a/gazelle/testdata/simple_binary/test.yaml b/gazelle/python/testdata/simple_binary/test.yaml similarity index 100% rename from gazelle/testdata/simple_binary/test.yaml rename to gazelle/python/testdata/simple_binary/test.yaml diff --git a/gazelle/testdata/simple_binary_with_library/BUILD.in b/gazelle/python/testdata/simple_binary_with_library/BUILD.in similarity index 100% rename from gazelle/testdata/simple_binary_with_library/BUILD.in rename to gazelle/python/testdata/simple_binary_with_library/BUILD.in diff --git a/gazelle/testdata/simple_binary_with_library/BUILD.out b/gazelle/python/testdata/simple_binary_with_library/BUILD.out similarity index 100% rename from gazelle/testdata/simple_binary_with_library/BUILD.out rename to gazelle/python/testdata/simple_binary_with_library/BUILD.out diff --git a/gazelle/testdata/simple_binary_with_library/README.md b/gazelle/python/testdata/simple_binary_with_library/README.md similarity index 100% rename from gazelle/testdata/simple_binary_with_library/README.md rename to gazelle/python/testdata/simple_binary_with_library/README.md diff --git a/gazelle/testdata/simple_binary_with_library/WORKSPACE b/gazelle/python/testdata/simple_binary_with_library/WORKSPACE similarity index 100% rename from gazelle/testdata/simple_binary_with_library/WORKSPACE rename to gazelle/python/testdata/simple_binary_with_library/WORKSPACE diff --git a/gazelle/testdata/simple_binary_with_library/__init__.py b/gazelle/python/testdata/simple_binary_with_library/__init__.py similarity index 100% rename from gazelle/testdata/simple_binary_with_library/__init__.py rename to gazelle/python/testdata/simple_binary_with_library/__init__.py diff --git a/gazelle/testdata/simple_binary_with_library/__main__.py b/gazelle/python/testdata/simple_binary_with_library/__main__.py similarity index 100% rename from gazelle/testdata/simple_binary_with_library/__main__.py rename to gazelle/python/testdata/simple_binary_with_library/__main__.py diff --git a/gazelle/testdata/simple_binary_with_library/bar.py b/gazelle/python/testdata/simple_binary_with_library/bar.py similarity index 100% rename from gazelle/testdata/simple_binary_with_library/bar.py rename to gazelle/python/testdata/simple_binary_with_library/bar.py diff --git a/gazelle/testdata/simple_binary_with_library/foo.py b/gazelle/python/testdata/simple_binary_with_library/foo.py similarity index 100% rename from gazelle/testdata/simple_binary_with_library/foo.py rename to gazelle/python/testdata/simple_binary_with_library/foo.py diff --git a/gazelle/testdata/simple_binary_with_library/test.yaml b/gazelle/python/testdata/simple_binary_with_library/test.yaml similarity index 100% rename from gazelle/testdata/simple_binary_with_library/test.yaml rename to gazelle/python/testdata/simple_binary_with_library/test.yaml diff --git a/gazelle/testdata/simple_library/BUILD.in b/gazelle/python/testdata/simple_library/BUILD.in similarity index 100% rename from gazelle/testdata/simple_library/BUILD.in rename to gazelle/python/testdata/simple_library/BUILD.in diff --git a/gazelle/testdata/simple_library/BUILD.out b/gazelle/python/testdata/simple_library/BUILD.out similarity index 100% rename from gazelle/testdata/simple_library/BUILD.out rename to gazelle/python/testdata/simple_library/BUILD.out diff --git a/gazelle/testdata/simple_library/README.md b/gazelle/python/testdata/simple_library/README.md similarity index 100% rename from gazelle/testdata/simple_library/README.md rename to gazelle/python/testdata/simple_library/README.md diff --git a/gazelle/testdata/simple_library/WORKSPACE b/gazelle/python/testdata/simple_library/WORKSPACE similarity index 100% rename from gazelle/testdata/simple_library/WORKSPACE rename to gazelle/python/testdata/simple_library/WORKSPACE diff --git a/gazelle/testdata/simple_library/__init__.py b/gazelle/python/testdata/simple_library/__init__.py similarity index 100% rename from gazelle/testdata/simple_library/__init__.py rename to gazelle/python/testdata/simple_library/__init__.py diff --git a/gazelle/testdata/simple_library/test.yaml b/gazelle/python/testdata/simple_library/test.yaml similarity index 100% rename from gazelle/testdata/simple_library/test.yaml rename to gazelle/python/testdata/simple_library/test.yaml diff --git a/gazelle/testdata/simple_library_without_init/BUILD.in b/gazelle/python/testdata/simple_library_without_init/BUILD.in similarity index 100% rename from gazelle/testdata/simple_library_without_init/BUILD.in rename to gazelle/python/testdata/simple_library_without_init/BUILD.in diff --git a/gazelle/testdata/simple_library_without_init/BUILD.out b/gazelle/python/testdata/simple_library_without_init/BUILD.out similarity index 100% rename from gazelle/testdata/simple_library_without_init/BUILD.out rename to gazelle/python/testdata/simple_library_without_init/BUILD.out diff --git a/gazelle/testdata/simple_library_without_init/README.md b/gazelle/python/testdata/simple_library_without_init/README.md similarity index 100% rename from gazelle/testdata/simple_library_without_init/README.md rename to gazelle/python/testdata/simple_library_without_init/README.md diff --git a/gazelle/testdata/simple_library_without_init/WORKSPACE b/gazelle/python/testdata/simple_library_without_init/WORKSPACE similarity index 100% rename from gazelle/testdata/simple_library_without_init/WORKSPACE rename to gazelle/python/testdata/simple_library_without_init/WORKSPACE diff --git a/gazelle/testdata/simple_library_without_init/foo/BUILD.in b/gazelle/python/testdata/simple_library_without_init/foo/BUILD.in similarity index 100% rename from gazelle/testdata/simple_library_without_init/foo/BUILD.in rename to gazelle/python/testdata/simple_library_without_init/foo/BUILD.in diff --git a/gazelle/testdata/simple_library_without_init/foo/BUILD.out b/gazelle/python/testdata/simple_library_without_init/foo/BUILD.out similarity index 100% rename from gazelle/testdata/simple_library_without_init/foo/BUILD.out rename to gazelle/python/testdata/simple_library_without_init/foo/BUILD.out diff --git a/gazelle/testdata/simple_library_without_init/foo/foo.py b/gazelle/python/testdata/simple_library_without_init/foo/foo.py similarity index 100% rename from gazelle/testdata/simple_library_without_init/foo/foo.py rename to gazelle/python/testdata/simple_library_without_init/foo/foo.py diff --git a/gazelle/testdata/simple_library_without_init/test.yaml b/gazelle/python/testdata/simple_library_without_init/test.yaml similarity index 100% rename from gazelle/testdata/simple_library_without_init/test.yaml rename to gazelle/python/testdata/simple_library_without_init/test.yaml diff --git a/gazelle/testdata/simple_test/BUILD.in b/gazelle/python/testdata/simple_test/BUILD.in similarity index 100% rename from gazelle/testdata/simple_test/BUILD.in rename to gazelle/python/testdata/simple_test/BUILD.in diff --git a/gazelle/testdata/simple_test/BUILD.out b/gazelle/python/testdata/simple_test/BUILD.out similarity index 100% rename from gazelle/testdata/simple_test/BUILD.out rename to gazelle/python/testdata/simple_test/BUILD.out diff --git a/gazelle/testdata/simple_test/README.md b/gazelle/python/testdata/simple_test/README.md similarity index 100% rename from gazelle/testdata/simple_test/README.md rename to gazelle/python/testdata/simple_test/README.md diff --git a/gazelle/testdata/simple_test/WORKSPACE b/gazelle/python/testdata/simple_test/WORKSPACE similarity index 100% rename from gazelle/testdata/simple_test/WORKSPACE rename to gazelle/python/testdata/simple_test/WORKSPACE diff --git a/gazelle/testdata/simple_test/__init__.py b/gazelle/python/testdata/simple_test/__init__.py similarity index 100% rename from gazelle/testdata/simple_test/__init__.py rename to gazelle/python/testdata/simple_test/__init__.py diff --git a/gazelle/testdata/simple_test/__test__.py b/gazelle/python/testdata/simple_test/__test__.py similarity index 100% rename from gazelle/testdata/simple_test/__test__.py rename to gazelle/python/testdata/simple_test/__test__.py diff --git a/gazelle/testdata/simple_test/foo.py b/gazelle/python/testdata/simple_test/foo.py similarity index 100% rename from gazelle/testdata/simple_test/foo.py rename to gazelle/python/testdata/simple_test/foo.py diff --git a/gazelle/testdata/simple_test/test.yaml b/gazelle/python/testdata/simple_test/test.yaml similarity index 100% rename from gazelle/testdata/simple_test/test.yaml rename to gazelle/python/testdata/simple_test/test.yaml diff --git a/gazelle/testdata/simple_test_with_conftest/BUILD.in b/gazelle/python/testdata/simple_test_with_conftest/BUILD.in similarity index 100% rename from gazelle/testdata/simple_test_with_conftest/BUILD.in rename to gazelle/python/testdata/simple_test_with_conftest/BUILD.in diff --git a/gazelle/testdata/simple_test_with_conftest/BUILD.out b/gazelle/python/testdata/simple_test_with_conftest/BUILD.out similarity index 100% rename from gazelle/testdata/simple_test_with_conftest/BUILD.out rename to gazelle/python/testdata/simple_test_with_conftest/BUILD.out diff --git a/gazelle/testdata/simple_test_with_conftest/README.md b/gazelle/python/testdata/simple_test_with_conftest/README.md similarity index 100% rename from gazelle/testdata/simple_test_with_conftest/README.md rename to gazelle/python/testdata/simple_test_with_conftest/README.md diff --git a/gazelle/testdata/simple_test_with_conftest/WORKSPACE b/gazelle/python/testdata/simple_test_with_conftest/WORKSPACE similarity index 100% rename from gazelle/testdata/simple_test_with_conftest/WORKSPACE rename to gazelle/python/testdata/simple_test_with_conftest/WORKSPACE diff --git a/gazelle/testdata/simple_test_with_conftest/__init__.py b/gazelle/python/testdata/simple_test_with_conftest/__init__.py similarity index 100% rename from gazelle/testdata/simple_test_with_conftest/__init__.py rename to gazelle/python/testdata/simple_test_with_conftest/__init__.py diff --git a/gazelle/testdata/simple_test_with_conftest/__test__.py b/gazelle/python/testdata/simple_test_with_conftest/__test__.py similarity index 100% rename from gazelle/testdata/simple_test_with_conftest/__test__.py rename to gazelle/python/testdata/simple_test_with_conftest/__test__.py diff --git a/gazelle/testdata/simple_test_with_conftest/conftest.py b/gazelle/python/testdata/simple_test_with_conftest/conftest.py similarity index 100% rename from gazelle/testdata/simple_test_with_conftest/conftest.py rename to gazelle/python/testdata/simple_test_with_conftest/conftest.py diff --git a/gazelle/testdata/simple_test_with_conftest/foo.py b/gazelle/python/testdata/simple_test_with_conftest/foo.py similarity index 100% rename from gazelle/testdata/simple_test_with_conftest/foo.py rename to gazelle/python/testdata/simple_test_with_conftest/foo.py diff --git a/gazelle/testdata/simple_test_with_conftest/test.yaml b/gazelle/python/testdata/simple_test_with_conftest/test.yaml similarity index 100% rename from gazelle/testdata/simple_test_with_conftest/test.yaml rename to gazelle/python/testdata/simple_test_with_conftest/test.yaml diff --git a/gazelle/testdata/subdir_sources/BUILD.in b/gazelle/python/testdata/subdir_sources/BUILD.in similarity index 100% rename from gazelle/testdata/subdir_sources/BUILD.in rename to gazelle/python/testdata/subdir_sources/BUILD.in diff --git a/gazelle/testdata/subdir_sources/BUILD.out b/gazelle/python/testdata/subdir_sources/BUILD.out similarity index 100% rename from gazelle/testdata/subdir_sources/BUILD.out rename to gazelle/python/testdata/subdir_sources/BUILD.out diff --git a/gazelle/testdata/subdir_sources/README.md b/gazelle/python/testdata/subdir_sources/README.md similarity index 100% rename from gazelle/testdata/subdir_sources/README.md rename to gazelle/python/testdata/subdir_sources/README.md diff --git a/gazelle/testdata/subdir_sources/WORKSPACE b/gazelle/python/testdata/subdir_sources/WORKSPACE similarity index 100% rename from gazelle/testdata/subdir_sources/WORKSPACE rename to gazelle/python/testdata/subdir_sources/WORKSPACE diff --git a/gazelle/testdata/subdir_sources/__main__.py b/gazelle/python/testdata/subdir_sources/__main__.py similarity index 100% rename from gazelle/testdata/subdir_sources/__main__.py rename to gazelle/python/testdata/subdir_sources/__main__.py diff --git a/gazelle/testdata/subdir_sources/foo/BUILD.in b/gazelle/python/testdata/subdir_sources/foo/BUILD.in similarity index 100% rename from gazelle/testdata/subdir_sources/foo/BUILD.in rename to gazelle/python/testdata/subdir_sources/foo/BUILD.in diff --git a/gazelle/testdata/subdir_sources/foo/BUILD.out b/gazelle/python/testdata/subdir_sources/foo/BUILD.out similarity index 100% rename from gazelle/testdata/subdir_sources/foo/BUILD.out rename to gazelle/python/testdata/subdir_sources/foo/BUILD.out diff --git a/gazelle/testdata/subdir_sources/foo/__init__.py b/gazelle/python/testdata/subdir_sources/foo/__init__.py similarity index 100% rename from gazelle/testdata/subdir_sources/foo/__init__.py rename to gazelle/python/testdata/subdir_sources/foo/__init__.py diff --git a/gazelle/testdata/subdir_sources/foo/bar/bar.py b/gazelle/python/testdata/subdir_sources/foo/bar/bar.py similarity index 100% rename from gazelle/testdata/subdir_sources/foo/bar/bar.py rename to gazelle/python/testdata/subdir_sources/foo/bar/bar.py diff --git a/gazelle/testdata/subdir_sources/foo/baz/baz.py b/gazelle/python/testdata/subdir_sources/foo/baz/baz.py similarity index 100% rename from gazelle/testdata/subdir_sources/foo/baz/baz.py rename to gazelle/python/testdata/subdir_sources/foo/baz/baz.py diff --git a/gazelle/testdata/subdir_sources/foo/foo.py b/gazelle/python/testdata/subdir_sources/foo/foo.py similarity index 100% rename from gazelle/testdata/subdir_sources/foo/foo.py rename to gazelle/python/testdata/subdir_sources/foo/foo.py diff --git a/gazelle/testdata/subdir_sources/foo/has_build/BUILD.in b/gazelle/python/testdata/subdir_sources/foo/has_build/BUILD.in similarity index 100% rename from gazelle/testdata/subdir_sources/foo/has_build/BUILD.in rename to gazelle/python/testdata/subdir_sources/foo/has_build/BUILD.in diff --git a/gazelle/testdata/subdir_sources/foo/has_build/BUILD.out b/gazelle/python/testdata/subdir_sources/foo/has_build/BUILD.out similarity index 100% rename from gazelle/testdata/subdir_sources/foo/has_build/BUILD.out rename to gazelle/python/testdata/subdir_sources/foo/has_build/BUILD.out diff --git a/gazelle/testdata/subdir_sources/foo/has_build/python/my_module.py b/gazelle/python/testdata/subdir_sources/foo/has_build/python/my_module.py similarity index 100% rename from gazelle/testdata/subdir_sources/foo/has_build/python/my_module.py rename to gazelle/python/testdata/subdir_sources/foo/has_build/python/my_module.py diff --git a/gazelle/testdata/subdir_sources/foo/has_build_bazel/BUILD.bazel.in b/gazelle/python/testdata/subdir_sources/foo/has_build_bazel/BUILD.bazel.in similarity index 100% rename from gazelle/testdata/subdir_sources/foo/has_build_bazel/BUILD.bazel.in rename to gazelle/python/testdata/subdir_sources/foo/has_build_bazel/BUILD.bazel.in diff --git a/gazelle/testdata/subdir_sources/foo/has_build_bazel/python/my_module.py b/gazelle/python/testdata/subdir_sources/foo/has_build_bazel/python/my_module.py similarity index 100% rename from gazelle/testdata/subdir_sources/foo/has_build_bazel/python/my_module.py rename to gazelle/python/testdata/subdir_sources/foo/has_build_bazel/python/my_module.py diff --git a/gazelle/testdata/subdir_sources/foo/has_init/BUILD.in b/gazelle/python/testdata/subdir_sources/foo/has_init/BUILD.in similarity index 100% rename from gazelle/testdata/subdir_sources/foo/has_init/BUILD.in rename to gazelle/python/testdata/subdir_sources/foo/has_init/BUILD.in diff --git a/gazelle/testdata/subdir_sources/foo/has_init/BUILD.out b/gazelle/python/testdata/subdir_sources/foo/has_init/BUILD.out similarity index 100% rename from gazelle/testdata/subdir_sources/foo/has_init/BUILD.out rename to gazelle/python/testdata/subdir_sources/foo/has_init/BUILD.out diff --git a/gazelle/testdata/subdir_sources/foo/has_init/__init__.py b/gazelle/python/testdata/subdir_sources/foo/has_init/__init__.py similarity index 100% rename from gazelle/testdata/subdir_sources/foo/has_init/__init__.py rename to gazelle/python/testdata/subdir_sources/foo/has_init/__init__.py diff --git a/gazelle/testdata/subdir_sources/foo/has_init/python/my_module.py b/gazelle/python/testdata/subdir_sources/foo/has_init/python/my_module.py similarity index 100% rename from gazelle/testdata/subdir_sources/foo/has_init/python/my_module.py rename to gazelle/python/testdata/subdir_sources/foo/has_init/python/my_module.py diff --git a/gazelle/testdata/subdir_sources/foo/has_main/BUILD.in b/gazelle/python/testdata/subdir_sources/foo/has_main/BUILD.in similarity index 100% rename from gazelle/testdata/subdir_sources/foo/has_main/BUILD.in rename to gazelle/python/testdata/subdir_sources/foo/has_main/BUILD.in diff --git a/gazelle/testdata/subdir_sources/foo/has_main/BUILD.out b/gazelle/python/testdata/subdir_sources/foo/has_main/BUILD.out similarity index 100% rename from gazelle/testdata/subdir_sources/foo/has_main/BUILD.out rename to gazelle/python/testdata/subdir_sources/foo/has_main/BUILD.out diff --git a/gazelle/testdata/subdir_sources/foo/has_main/__main__.py b/gazelle/python/testdata/subdir_sources/foo/has_main/__main__.py similarity index 100% rename from gazelle/testdata/subdir_sources/foo/has_main/__main__.py rename to gazelle/python/testdata/subdir_sources/foo/has_main/__main__.py diff --git a/gazelle/testdata/subdir_sources/foo/has_main/python/my_module.py b/gazelle/python/testdata/subdir_sources/foo/has_main/python/my_module.py similarity index 100% rename from gazelle/testdata/subdir_sources/foo/has_main/python/my_module.py rename to gazelle/python/testdata/subdir_sources/foo/has_main/python/my_module.py diff --git a/gazelle/testdata/subdir_sources/foo/has_test/BUILD.in b/gazelle/python/testdata/subdir_sources/foo/has_test/BUILD.in similarity index 100% rename from gazelle/testdata/subdir_sources/foo/has_test/BUILD.in rename to gazelle/python/testdata/subdir_sources/foo/has_test/BUILD.in diff --git a/gazelle/testdata/subdir_sources/foo/has_test/BUILD.out b/gazelle/python/testdata/subdir_sources/foo/has_test/BUILD.out similarity index 100% rename from gazelle/testdata/subdir_sources/foo/has_test/BUILD.out rename to gazelle/python/testdata/subdir_sources/foo/has_test/BUILD.out diff --git a/gazelle/testdata/subdir_sources/foo/has_test/__test__.py b/gazelle/python/testdata/subdir_sources/foo/has_test/__test__.py similarity index 100% rename from gazelle/testdata/subdir_sources/foo/has_test/__test__.py rename to gazelle/python/testdata/subdir_sources/foo/has_test/__test__.py diff --git a/gazelle/testdata/subdir_sources/foo/has_test/python/my_module.py b/gazelle/python/testdata/subdir_sources/foo/has_test/python/my_module.py similarity index 100% rename from gazelle/testdata/subdir_sources/foo/has_test/python/my_module.py rename to gazelle/python/testdata/subdir_sources/foo/has_test/python/my_module.py diff --git a/gazelle/testdata/subdir_sources/one/BUILD.in b/gazelle/python/testdata/subdir_sources/one/BUILD.in similarity index 100% rename from gazelle/testdata/subdir_sources/one/BUILD.in rename to gazelle/python/testdata/subdir_sources/one/BUILD.in diff --git a/gazelle/testdata/subdir_sources/one/BUILD.out b/gazelle/python/testdata/subdir_sources/one/BUILD.out similarity index 100% rename from gazelle/testdata/subdir_sources/one/BUILD.out rename to gazelle/python/testdata/subdir_sources/one/BUILD.out diff --git a/gazelle/testdata/subdir_sources/one/__init__.py b/gazelle/python/testdata/subdir_sources/one/__init__.py similarity index 100% rename from gazelle/testdata/subdir_sources/one/__init__.py rename to gazelle/python/testdata/subdir_sources/one/__init__.py diff --git a/gazelle/testdata/subdir_sources/one/two/BUILD.in b/gazelle/python/testdata/subdir_sources/one/two/BUILD.in similarity index 100% rename from gazelle/testdata/subdir_sources/one/two/BUILD.in rename to gazelle/python/testdata/subdir_sources/one/two/BUILD.in diff --git a/gazelle/testdata/subdir_sources/one/two/BUILD.out b/gazelle/python/testdata/subdir_sources/one/two/BUILD.out similarity index 100% rename from gazelle/testdata/subdir_sources/one/two/BUILD.out rename to gazelle/python/testdata/subdir_sources/one/two/BUILD.out diff --git a/gazelle/testdata/subdir_sources/one/two/__init__.py b/gazelle/python/testdata/subdir_sources/one/two/__init__.py similarity index 100% rename from gazelle/testdata/subdir_sources/one/two/__init__.py rename to gazelle/python/testdata/subdir_sources/one/two/__init__.py diff --git a/gazelle/testdata/subdir_sources/one/two/three.py b/gazelle/python/testdata/subdir_sources/one/two/three.py similarity index 100% rename from gazelle/testdata/subdir_sources/one/two/three.py rename to gazelle/python/testdata/subdir_sources/one/two/three.py diff --git a/gazelle/testdata/subdir_sources/test.yaml b/gazelle/python/testdata/subdir_sources/test.yaml similarity index 100% rename from gazelle/testdata/subdir_sources/test.yaml rename to gazelle/python/testdata/subdir_sources/test.yaml diff --git a/gazelle/testdata/with_nested_import_statements/BUILD.in b/gazelle/python/testdata/with_nested_import_statements/BUILD.in similarity index 100% rename from gazelle/testdata/with_nested_import_statements/BUILD.in rename to gazelle/python/testdata/with_nested_import_statements/BUILD.in diff --git a/gazelle/testdata/with_nested_import_statements/BUILD.out b/gazelle/python/testdata/with_nested_import_statements/BUILD.out similarity index 100% rename from gazelle/testdata/with_nested_import_statements/BUILD.out rename to gazelle/python/testdata/with_nested_import_statements/BUILD.out diff --git a/gazelle/testdata/with_nested_import_statements/README.md b/gazelle/python/testdata/with_nested_import_statements/README.md similarity index 100% rename from gazelle/testdata/with_nested_import_statements/README.md rename to gazelle/python/testdata/with_nested_import_statements/README.md diff --git a/gazelle/testdata/with_nested_import_statements/WORKSPACE b/gazelle/python/testdata/with_nested_import_statements/WORKSPACE similarity index 100% rename from gazelle/testdata/with_nested_import_statements/WORKSPACE rename to gazelle/python/testdata/with_nested_import_statements/WORKSPACE diff --git a/gazelle/testdata/with_nested_import_statements/__init__.py b/gazelle/python/testdata/with_nested_import_statements/__init__.py similarity index 100% rename from gazelle/testdata/with_nested_import_statements/__init__.py rename to gazelle/python/testdata/with_nested_import_statements/__init__.py diff --git a/gazelle/testdata/with_nested_import_statements/gazelle_python.yaml b/gazelle/python/testdata/with_nested_import_statements/gazelle_python.yaml similarity index 100% rename from gazelle/testdata/with_nested_import_statements/gazelle_python.yaml rename to gazelle/python/testdata/with_nested_import_statements/gazelle_python.yaml diff --git a/gazelle/testdata/with_nested_import_statements/test.yaml b/gazelle/python/testdata/with_nested_import_statements/test.yaml similarity index 100% rename from gazelle/testdata/with_nested_import_statements/test.yaml rename to gazelle/python/testdata/with_nested_import_statements/test.yaml diff --git a/gazelle/testdata/with_std_requirements/BUILD.in b/gazelle/python/testdata/with_std_requirements/BUILD.in similarity index 100% rename from gazelle/testdata/with_std_requirements/BUILD.in rename to gazelle/python/testdata/with_std_requirements/BUILD.in diff --git a/gazelle/testdata/with_std_requirements/BUILD.out b/gazelle/python/testdata/with_std_requirements/BUILD.out similarity index 100% rename from gazelle/testdata/with_std_requirements/BUILD.out rename to gazelle/python/testdata/with_std_requirements/BUILD.out diff --git a/gazelle/testdata/with_std_requirements/README.md b/gazelle/python/testdata/with_std_requirements/README.md similarity index 100% rename from gazelle/testdata/with_std_requirements/README.md rename to gazelle/python/testdata/with_std_requirements/README.md diff --git a/gazelle/testdata/with_std_requirements/WORKSPACE b/gazelle/python/testdata/with_std_requirements/WORKSPACE similarity index 100% rename from gazelle/testdata/with_std_requirements/WORKSPACE rename to gazelle/python/testdata/with_std_requirements/WORKSPACE diff --git a/gazelle/testdata/with_std_requirements/__init__.py b/gazelle/python/testdata/with_std_requirements/__init__.py similarity index 100% rename from gazelle/testdata/with_std_requirements/__init__.py rename to gazelle/python/testdata/with_std_requirements/__init__.py diff --git a/gazelle/testdata/with_std_requirements/test.yaml b/gazelle/python/testdata/with_std_requirements/test.yaml similarity index 100% rename from gazelle/testdata/with_std_requirements/test.yaml rename to gazelle/python/testdata/with_std_requirements/test.yaml diff --git a/gazelle/testdata/with_third_party_requirements/BUILD.in b/gazelle/python/testdata/with_third_party_requirements/BUILD.in similarity index 100% rename from gazelle/testdata/with_third_party_requirements/BUILD.in rename to gazelle/python/testdata/with_third_party_requirements/BUILD.in diff --git a/gazelle/testdata/with_third_party_requirements/BUILD.out b/gazelle/python/testdata/with_third_party_requirements/BUILD.out similarity index 100% rename from gazelle/testdata/with_third_party_requirements/BUILD.out rename to gazelle/python/testdata/with_third_party_requirements/BUILD.out diff --git a/gazelle/testdata/with_third_party_requirements/README.md b/gazelle/python/testdata/with_third_party_requirements/README.md similarity index 100% rename from gazelle/testdata/with_third_party_requirements/README.md rename to gazelle/python/testdata/with_third_party_requirements/README.md diff --git a/gazelle/testdata/with_third_party_requirements/WORKSPACE b/gazelle/python/testdata/with_third_party_requirements/WORKSPACE similarity index 100% rename from gazelle/testdata/with_third_party_requirements/WORKSPACE rename to gazelle/python/testdata/with_third_party_requirements/WORKSPACE diff --git a/gazelle/testdata/with_third_party_requirements/__init__.py b/gazelle/python/testdata/with_third_party_requirements/__init__.py similarity index 100% rename from gazelle/testdata/with_third_party_requirements/__init__.py rename to gazelle/python/testdata/with_third_party_requirements/__init__.py diff --git a/gazelle/testdata/with_third_party_requirements/__main__.py b/gazelle/python/testdata/with_third_party_requirements/__main__.py similarity index 100% rename from gazelle/testdata/with_third_party_requirements/__main__.py rename to gazelle/python/testdata/with_third_party_requirements/__main__.py diff --git a/gazelle/testdata/with_third_party_requirements/bar.py b/gazelle/python/testdata/with_third_party_requirements/bar.py similarity index 100% rename from gazelle/testdata/with_third_party_requirements/bar.py rename to gazelle/python/testdata/with_third_party_requirements/bar.py diff --git a/gazelle/testdata/with_third_party_requirements/foo.py b/gazelle/python/testdata/with_third_party_requirements/foo.py similarity index 100% rename from gazelle/testdata/with_third_party_requirements/foo.py rename to gazelle/python/testdata/with_third_party_requirements/foo.py diff --git a/gazelle/testdata/with_third_party_requirements/gazelle_python.yaml b/gazelle/python/testdata/with_third_party_requirements/gazelle_python.yaml similarity index 100% rename from gazelle/testdata/with_third_party_requirements/gazelle_python.yaml rename to gazelle/python/testdata/with_third_party_requirements/gazelle_python.yaml diff --git a/gazelle/testdata/with_third_party_requirements/test.yaml b/gazelle/python/testdata/with_third_party_requirements/test.yaml similarity index 100% rename from gazelle/testdata/with_third_party_requirements/test.yaml rename to gazelle/python/testdata/with_third_party_requirements/test.yaml diff --git a/gazelle/testdata/with_third_party_requirements_from_imports/BUILD.in b/gazelle/python/testdata/with_third_party_requirements_from_imports/BUILD.in similarity index 100% rename from gazelle/testdata/with_third_party_requirements_from_imports/BUILD.in rename to gazelle/python/testdata/with_third_party_requirements_from_imports/BUILD.in diff --git a/gazelle/testdata/with_third_party_requirements_from_imports/BUILD.out b/gazelle/python/testdata/with_third_party_requirements_from_imports/BUILD.out similarity index 100% rename from gazelle/testdata/with_third_party_requirements_from_imports/BUILD.out rename to gazelle/python/testdata/with_third_party_requirements_from_imports/BUILD.out diff --git a/gazelle/testdata/with_third_party_requirements_from_imports/README.md b/gazelle/python/testdata/with_third_party_requirements_from_imports/README.md similarity index 100% rename from gazelle/testdata/with_third_party_requirements_from_imports/README.md rename to gazelle/python/testdata/with_third_party_requirements_from_imports/README.md diff --git a/gazelle/testdata/with_third_party_requirements_from_imports/WORKSPACE b/gazelle/python/testdata/with_third_party_requirements_from_imports/WORKSPACE similarity index 100% rename from gazelle/testdata/with_third_party_requirements_from_imports/WORKSPACE rename to gazelle/python/testdata/with_third_party_requirements_from_imports/WORKSPACE diff --git a/gazelle/testdata/with_third_party_requirements_from_imports/__init__.py b/gazelle/python/testdata/with_third_party_requirements_from_imports/__init__.py similarity index 100% rename from gazelle/testdata/with_third_party_requirements_from_imports/__init__.py rename to gazelle/python/testdata/with_third_party_requirements_from_imports/__init__.py diff --git a/gazelle/testdata/with_third_party_requirements_from_imports/__main__.py b/gazelle/python/testdata/with_third_party_requirements_from_imports/__main__.py similarity index 100% rename from gazelle/testdata/with_third_party_requirements_from_imports/__main__.py rename to gazelle/python/testdata/with_third_party_requirements_from_imports/__main__.py diff --git a/gazelle/testdata/with_third_party_requirements_from_imports/bar.py b/gazelle/python/testdata/with_third_party_requirements_from_imports/bar.py similarity index 100% rename from gazelle/testdata/with_third_party_requirements_from_imports/bar.py rename to gazelle/python/testdata/with_third_party_requirements_from_imports/bar.py diff --git a/gazelle/testdata/with_third_party_requirements_from_imports/gazelle_python.yaml b/gazelle/python/testdata/with_third_party_requirements_from_imports/gazelle_python.yaml similarity index 100% rename from gazelle/testdata/with_third_party_requirements_from_imports/gazelle_python.yaml rename to gazelle/python/testdata/with_third_party_requirements_from_imports/gazelle_python.yaml diff --git a/gazelle/testdata/with_third_party_requirements_from_imports/test.yaml b/gazelle/python/testdata/with_third_party_requirements_from_imports/test.yaml similarity index 100% rename from gazelle/testdata/with_third_party_requirements_from_imports/test.yaml rename to gazelle/python/testdata/with_third_party_requirements_from_imports/test.yaml diff --git a/gazelle/pythonconfig/BUILD.bazel b/gazelle/pythonconfig/BUILD.bazel index 9472fd49f5..79b512163d 100644 --- a/gazelle/pythonconfig/BUILD.bazel +++ b/gazelle/pythonconfig/BUILD.bazel @@ -9,7 +9,7 @@ go_library( importpath = "github.com/bazelbuild/rules_python/gazelle/pythonconfig", visibility = ["//visibility:public"], deps = [ - "//gazelle/manifest", + "//manifest", "@bazel_gazelle//label:go_default_library", "@com_github_emirpasic_gods//lists/singlylinkedlist", ], @@ -18,5 +18,5 @@ go_library( filegroup( name = "distribution", srcs = glob(["**"]), - visibility = ["//gazelle:__pkg__"], + visibility = ["//:__pkg__"], ) diff --git a/gazelle/testdata/subdir_sources/foo/has_build_bazel/BUILD.bazel.out b/gazelle/testdata/subdir_sources/foo/has_build_bazel/BUILD.bazel.out deleted file mode 100644 index 79bd70a258..0000000000 --- a/gazelle/testdata/subdir_sources/foo/has_build_bazel/BUILD.bazel.out +++ /dev/null @@ -1,8 +0,0 @@ -load("@rules_python//python:defs.bzl", "py_library") - -py_library( - name = "has_build_bazel", - srcs = ["python/my_module.py"], - imports = ["../.."], - visibility = ["//:__subpackages__"], -) diff --git a/internal_deps.bzl b/internal_deps.bzl index a41d5fb34b..8fd6b0ad63 100644 --- a/internal_deps.bzl +++ b/internal_deps.bzl @@ -34,26 +34,6 @@ def rules_python_internal_deps(): strip_prefix = "stardoc-6f274e903009158504a9d9130d7f7d5f3e9421ed", ) - maybe( - http_archive, - name = "io_bazel_rules_go", - sha256 = "099a9fb96a376ccbbb7d291ed4ecbdfd42f6bc822ab77ae6f1b5cb9e914e94fa", - urls = [ - "https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.35.0/rules_go-v0.35.0.zip", - "https://github.com/bazelbuild/rules_go/releases/download/v0.35.0/rules_go-v0.35.0.zip", - ], - ) - - maybe( - http_archive, - name = "bazel_gazelle", - sha256 = "efbbba6ac1a4fd342d5122cbdfdb82aeb2cf2862e35022c752eaddffada7c3f3", - urls = [ - "https://mirror.bazel.build/github.com/bazelbuild/bazel-gazelle/releases/download/v0.27.0/bazel-gazelle-v0.27.0.tar.gz", - "https://github.com/bazelbuild/bazel-gazelle/releases/download/v0.27.0/bazel-gazelle-v0.27.0.tar.gz", - ], - ) - # Test data for WHL tool testing. maybe( http_file, diff --git a/internal_setup.bzl b/internal_setup.bzl index f4d3a1a8db..93565edb80 100644 --- a/internal_setup.bzl +++ b/internal_setup.bzl @@ -14,12 +14,9 @@ """Setup for rules_python tests and tools.""" -load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies") load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace") load("@build_bazel_integration_testing//tools:repositories.bzl", "bazel_binaries") -load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") load("//:version.bzl", "SUPPORTED_BAZEL_VERSIONS") -load("//gazelle:deps.bzl", _go_repositories = "gazelle_deps") load("//python/pip_install:repositories.bzl", "pip_install_dependencies") def rules_python_internal_setup(): @@ -32,12 +29,3 @@ def rules_python_internal_setup(): bazel_binaries(versions = SUPPORTED_BAZEL_VERSIONS) bazel_skylib_workspace() - - # gazelle:repository_macro gazelle/deps.bzl%gazelle_deps - _go_repositories() - - go_rules_dependencies() - - go_register_toolchains(version = "1.19.2") - - gazelle_dependencies() diff --git a/tools/bazel_integration_test/test_runner.py b/tools/bazel_integration_test/test_runner.py index fbc27e4d4b..27abf1fa9e 100644 --- a/tools/bazel_integration_test/test_runner.py +++ b/tools/bazel_integration_test/test_runner.py @@ -52,6 +52,10 @@ def main(conf_file): "--override_repository=rules_python=%s/rules_python" % os.environ["TEST_SRCDIR"] ) + bazel_args.append( + "--override_repository=rules_python_gazelle_plugin=%s/rules_python_gazelle_plugin" + % os.environ["TEST_SRCDIR"] + ) # TODO: --override_module isn't supported in the current BAZEL_VERSION (5.2.0) # This condition and attribute can be removed when bazel is updated for