aboutsummaryrefslogtreecommitdiff
path: root/WORKSPACE
diff options
context:
space:
mode:
Diffstat (limited to 'WORKSPACE')
-rw-r--r--WORKSPACE65
1 files changed, 62 insertions, 3 deletions
diff --git a/WORKSPACE b/WORKSPACE
index a833de8..5631dce 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -21,6 +21,22 @@ load("//:internal_deps.bzl", "rules_python_internal_deps")
rules_python_internal_deps()
+load("@rules_jvm_external//:repositories.bzl", "rules_jvm_external_deps")
+
+rules_jvm_external_deps()
+
+load("@rules_jvm_external//:setup.bzl", "rules_jvm_external_setup")
+
+rules_jvm_external_setup()
+
+load("@io_bazel_stardoc//:deps.bzl", "stardoc_external_deps")
+
+stardoc_external_deps()
+
+load("@stardoc_maven//:defs.bzl", stardoc_pinned_maven_install = "pinned_maven_install")
+
+stardoc_pinned_maven_install()
+
load("//:internal_setup.bzl", "rules_python_internal_setup")
rules_python_internal_setup()
@@ -30,11 +46,11 @@ load("//python:versions.bzl", "MINOR_MAPPING")
python_register_multi_toolchains(
name = "python",
- default_version = MINOR_MAPPING.values()[-1],
+ default_version = MINOR_MAPPING.values()[-2],
python_versions = MINOR_MAPPING.values(),
)
-load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
+load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive", "http_file")
# Used for Bazel CI
http_archive(
@@ -68,11 +84,13 @@ load("@rules_python_gazelle_plugin//:deps.bzl", _py_gazelle_deps = "gazelle_deps
# for python requirements.
_py_gazelle_deps()
+# This interpreter is used for various rules_python dev-time tools
+load("@python//3.11.6:defs.bzl", "interpreter")
+
#####################
# Install twine for our own runfiles wheel publishing.
# Eventually we might want to install twine automatically for users too, see:
# https://github.com/bazelbuild/rules_python/issues/1016.
-load("@python//3.11.1:defs.bzl", "interpreter")
load("@rules_python//python:pip.bzl", "pip_parse")
pip_parse(
@@ -86,3 +104,44 @@ pip_parse(
load("@publish_deps//:requirements.bzl", "install_deps")
install_deps()
+
+#####################
+# Install sphinx for doc generation.
+
+pip_parse(
+ name = "dev_pip",
+ experimental_requirement_cycles = {
+ "sphinx": [
+ "sphinx",
+ "sphinxcontrib-serializinghtml",
+ "sphinxcontrib-qthelp",
+ "sphinxcontrib-htmlhelp",
+ "sphinxcontrib-devhelp",
+ "sphinxcontrib-applehelp",
+ ],
+ },
+ incompatible_generate_aliases = True,
+ python_interpreter_target = interpreter,
+ requirements_lock = "//docs/sphinx:requirements.txt",
+)
+
+load("@dev_pip//:requirements.bzl", docs_install_deps = "install_deps")
+
+docs_install_deps()
+
+# This wheel is purely here to validate the wheel extraction code. It's not
+# intended for anything else.
+http_file(
+ name = "wheel_for_testing",
+ downloaded_file_path = "numpy-1.25.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
+ sha256 = "0d60fbae8e0019865fc4784745814cff1c421df5afee233db6d88ab4f14655a2",
+ urls = [
+ "https://files.pythonhosted.org/packages/50/67/3e966d99a07d60a21a21d7ec016e9e4c2642a86fea251ec68677daf71d4d/numpy-1.25.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
+ ],
+)
+
+# rules_proto expects //external:python_headers to point at the python headers.
+bind(
+ name = "python_headers",
+ actual = "//python/cc:current_py_cc_headers",
+)