Turn `//python/private` into a package. (#555)
diff --git a/docs/BUILD b/docs/BUILD
index 1cc82d2..9fedb72 100644
--- a/docs/BUILD
+++ b/docs/BUILD
@@ -54,7 +54,7 @@
name = "defs",
srcs = [
"//python:defs.bzl",
- "//python:private/reexports.bzl",
+ "//python/private:reexports.bzl",
],
deps = [":bazel_python_tools"],
)
diff --git a/python/BUILD b/python/BUILD
index 88ee4dc..972bf9e 100644
--- a/python/BUILD
+++ b/python/BUILD
@@ -36,6 +36,7 @@
"//python/constraints:distribution",
"//python/legacy_pip_import:distribution",
"//python/runfiles:distribution",
+ "//python/private:distribution",
],
visibility = ["//:__pkg__"],
)
@@ -48,8 +49,8 @@
"defs.bzl",
"packaging.bzl",
"pip.bzl",
- "private/reexports.bzl",
"whl.bzl",
+ "//python/private:bzl",
],
visibility = ["//:__pkg__"],
)
@@ -61,14 +62,6 @@
"python.bzl", # Deprecated, please use defs.bzl
])
-# Needed to define bzl_library targets for docgen. (We don't define the
-# bzl_library target here because it'd give our users a transitive dependency
-# on Skylib.)
-exports_files(
- ["private/reexports.bzl"],
- visibility = ["//docs:__pkg__"],
-)
-
# This target can be used to inspect the current Python major version. To use,
# put it in the `flag_values` attribute of a `config_setting` and test it
# against the values "PY2" or "PY3". It will always match one or the other.
diff --git a/python/defs.bzl b/python/defs.bzl
index 28073d4..39c26eb 100644
--- a/python/defs.bzl
+++ b/python/defs.bzl
@@ -21,7 +21,7 @@
load("@bazel_tools//tools/python:srcs_version.bzl", _find_requirements = "find_requirements")
load("@bazel_tools//tools/python:toolchain.bzl", _py_runtime_pair = "py_runtime_pair")
-load(":private/reexports.bzl", "internal_PyInfo", "internal_PyRuntimeInfo")
+load("//python/private:reexports.bzl", "internal_PyInfo", "internal_PyRuntimeInfo")
# Exports of native-defined providers.
diff --git a/python/private/BUILD b/python/private/BUILD
new file mode 100644
index 0000000..90fcd3b
--- /dev/null
+++ b/python/private/BUILD
@@ -0,0 +1,41 @@
+# Copyright 2021 The Bazel Authors. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+licenses(["notice"]) # Apache 2.0
+
+filegroup(
+ name = "distribution",
+ srcs = glob(["**"]),
+ visibility = ["//python:__pkg__"],
+)
+
+# Filegroup of bzl files that can be used by downstream rules for documentation generation
+# Using a filegroup rather than bzl_library to not give a transitive dependency on Skylib
+filegroup(
+ name = "bzl",
+ srcs = [
+ "reexports.bzl",
+ ],
+ visibility = ["//python:__pkg__"],
+)
+
+# Needed to define bzl_library targets for docgen. (We don't define the
+# bzl_library target here because it'd give our users a transitive dependency
+# on Skylib.)
+exports_files(
+ [
+ "reexports.bzl",
+ ],
+ visibility = ["//docs:__pkg__"],
+)