blob: 71d1cf1b401eebf26149800f00336cfb406b33c6 [file]
"aspect-build/rules_py"
module(
name = "aspect_rules_py",
compatibility_level = 1,
version = "1.8.3",
)
# NOTE: when publishing to BCR, we patch this to True, as we publish pre-built binaries along with our releases.
IS_RELEASE = True
bazel_dep(name = "bazel_features", version = "1.38.0")
bazel_dep(name = "bazel_lib", version = "3.0.0")
bazel_dep(name = "bazel_skylib", version = "1.4.2")
bazel_dep(name = "platforms", version = "1.0.0")
bazel_dep(name = "rules_python", version = "1.0.0")
bazel_dep(name = "with_cfg.bzl", version = "0.14.1")
bazel_dep(name = "rules_cc", version = "0.2.16")
bazel_dep(name = "tar.bzl", version = "0.5.5")
bazel_lib_toolchains = use_extension("@tar.bzl//tar:extensions.bzl", "toolchains")
use_repo(bazel_lib_toolchains, "bsd_tar_toolchains")
tools = use_extension("//py:extensions.bzl", "py_tools")
tools.rules_py_tools()
use_repo(tools, "rules_py_tools")
use_repo(tools, "rules_py_pex_2_3_1")
register_toolchains(
"@rules_py_tools//:all",
"@aspect_rules_py//py/private/toolchain/venv/...",
"@aspect_rules_py//py/private/toolchain/unpack/...",
"@aspect_rules_py//py/private/toolchain/shim/...",
)
toml = use_extension("//uv/private/tomltool:extension.bzl", "tomltool")
use_repo(
toml,
"toml2json_aarch64_linux_gnu",
"toml2json_aarch64_osx_libsystem",
"toml2json_x86_64_linux_gnu",
"toml2json_x86_64_osx_libsystem",
)
host = use_extension("//uv/private/host:extension.bzl", "host_platform")
use_repo(host, "aspect_rules_py_uv_host")
bazel_dep(name = "aspect_tools_telemetry", version = "0.3.3")
tel = use_extension("@aspect_tools_telemetry//:extension.bzl", "telemetry")
use_repo(tel, "aspect_tools_telemetry_report")
################################################################################
# Dev deps are the remainder of the file
# LLVM configuration
bazel_dep(name = "toolchains_llvm_bootstrapped", version = "0.2.5", dev_dependency = IS_RELEASE)
archive_override(
module_name = "toolchains_llvm_bootstrapped",
integrity = "sha256-+nddimV34BYO8YExiKLYG2kMoA2Sv+5ZoMRPQLJxNfE=",
patch_strip = 1,
patches = [
"//bazel/patches:llvm_darwin_sysroot.patch",
],
strip_prefix = "toolchains_llvm_bootstrapped-121c8419394e76b5652c161369743c564799b2e3",
urls = ["https://github.com/cerisier/toolchains_llvm_bootstrapped/archive/121c8419394e76b5652c161369743c564799b2e3/master.tar.gz"],
)
register_toolchains(
"@toolchains_llvm_bootstrapped//toolchain:all",
dev_dependency = IS_RELEASE,
)
# Rust configuration
bazel_dep(name = "rules_rust", version = "0.68.1", dev_dependency = IS_RELEASE)
rust = use_extension(
"@rules_rust//rust:extensions.bzl",
"rust",
dev_dependency = IS_RELEASE,
)
rust.toolchain(
edition = "2024",
extra_target_triples = [
"aarch64-apple-darwin",
"x86_64-apple-darwin",
"aarch64-unknown-linux-musl",
"x86_64-unknown-linux-musl",
],
versions = ["1.88.0"],
)
use_repo(rust, "rust_toolchains")
register_toolchains(
"@rust_toolchains//:all",
dev_dependency = IS_RELEASE,
)
bazel_dep(name = "bazelrc-preset.bzl", version = "1.4.0", dev_dependency = IS_RELEASE)
bazel_dep(name = "bazel_env.bzl", version = "0.5.0", dev_dependency = IS_RELEASE)
bazel_dep(name = "bzip2", version = "1.0.8.bcr.3", dev_dependency = IS_RELEASE)
bazel_dep(name = "gazelle", version = "0.45.0", dev_dependency = IS_RELEASE)
bazel_dep(name = "rules_pkg", version = "1.1.0", dev_dependency = IS_RELEASE)
bazel_dep(name = "rules_rs", version = "0.0.26", dev_dependency = IS_RELEASE)
bazel_dep(name = "xz", version = "5.4.5.bcr.7", dev_dependency = IS_RELEASE)
bazel_dep(name = "zstd", version = "1.5.7", dev_dependency = IS_RELEASE)
bazel_dep(name = "rules_multitool", version = "1.9.0", dev_dependency = IS_RELEASE)
multitool = use_extension("@rules_multitool//multitool:extension.bzl", "multitool", dev_dependency = IS_RELEASE)
multitool.hub(lockfile = "//tools:tools.lock.json")
use_repo(multitool, "multitool")
crate = use_extension(
"@rules_rs//rs:extensions.bzl",
"crate",
dev_dependency = IS_RELEASE,
)
crate.from_cargo(
name = "crates",
cargo_lock = "//:Cargo.lock",
cargo_toml = "//:Cargo.toml",
platform_triples = [
"aarch64-apple-darwin",
"aarch64-unknown-linux-musl",
"x86_64-apple-darwin",
"x86_64-unknown-linux-musl",
],
)
crate.annotation(
crate = "backtrace",
# This just compiles code on Android, we don't need it.
gen_build_script = "off",
repositories = ["crates"],
)
crate.annotation(
crate = "zstd-sys",
# This build script is naughty and tries to depend on system zstd or build it from source.
gen_build_script = "off",
repositories = ["crates"],
deps = ["@@zstd+//:zstd"],
)
crate.annotation(
crate = "bzip2-sys",
gen_build_script = "off",
repositories = ["crates"],
deps = ["@@bzip2+//:bz2"],
)
crate.annotation(
crate = "lzma-sys",
gen_build_script = "off",
repositories = ["crates"],
deps = ["@@xz+//:lzma"],
)
use_repo(crate, "crates")
# TODO: Replace with bazel_features?
# cf. https://github.com/bazel-contrib/bazelrc-preset.bzl/blob/main/MODULE.bazel#L8C1-L10C70
bazel_dep(name = "rules_shell", version = "0.6.1", dev_dependency = IS_RELEASE)
version = use_extension("@bazel_features//private:extensions.bzl", "version_extension", dev_dependency = IS_RELEASE)
use_repo(version, "bazel_features_globals", "bazel_features_version")
# rules_oci and friends
bazel_dep(name = "rules_oci", version = "2.2.6", dev_dependency = IS_RELEASE)
oci = use_extension("@rules_oci//oci:extensions.bzl", "oci", dev_dependency = IS_RELEASE)
oci.pull(
name = "ubuntu",
digest = "sha256:c35e29c9450151419d9448b0fd75374fec4fff364a27f176fb458d472dfc9e54",
image = "public.ecr.aws/docker/library/ubuntu",
platforms = [
"linux/arm64/v8",
"linux/amd64",
],
tag = "latest",
)
use_repo(oci, "ubuntu", "ubuntu_linux_amd64", "ubuntu_linux_arm64_v8")
# For building test images with py_image_layer
bazel_dep(name = "container_structure_test", version = "1.19.1", dev_dependency = IS_RELEASE)
git_override(
module_name = "container_structure_test",
commit = "63ee63e15fae64f00b1c1ace1eb5cc99251b9e02",
remote = "https://github.com/GoogleContainerTools/container-structure-test.git",
)
# rules_python and friends
bazel_dep(name = "rules_python_gazelle_plugin", version = "1.0.0", dev_dependency = IS_RELEASE)
python = use_extension("@rules_python//python/extensions:python.bzl", "python", dev_dependency = IS_RELEASE)
python.toolchain(
is_default = True,
python_version = "3.9",
)
python.toolchain(
is_default = False,
python_version = "3.12",
)
# We still use pip for testing the virtual deps machinery
pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip", dev_dependency = IS_RELEASE)
pip.parse(
hub_name = "django",
python_version = "3.9",
requirements_lock = "//py/tests/virtual/django:requirements.txt",
)
use_repo(pip, "django")
# For everything else, we use our own uv machinery
uv = use_extension("//uv/unstable:extension.bzl", "uv", dev_dependency = IS_RELEASE)
uv.declare_hub(
hub_name = "pypi",
)
uv.declare_venv(
hub_name = "pypi",
venv_name = "default",
)
uv.lockfile(
src = "//:uv.lock",
hub_name = "pypi",
venv_name = "default",
)
uv.unstable_annotate_requirements(
src = "//:annotations.toml",
hub_name = "pypi",
venv_name = "default",
)
use_repo(uv, "pypi")
http_file = use_repo_rule(
"@bazel_tools//tools/build_defs/repo:http.bzl",
"http_file",
)
http_file(
name = "django_4_2_4",
dev_dependency = IS_RELEASE,
downloaded_file_path = "Django-4.2.4-py3-none-any.whl",
sha256 = "860ae6a138a238fc4f22c99b52f3ead982bb4b1aad8c0122bcd8c8a3a02e409d",
urls = ["https://files.pythonhosted.org/packages/7f/9e/fc6bab255ae10bc57fa2f65646eace3d5405fbb7f5678b90140052d1db0f/Django-4.2.4-py3-none-any.whl"],
)
http_file(
name = "django_4_1_10",
dev_dependency = IS_RELEASE,
downloaded_file_path = "Django-4.1.10-py3-none-any.whl",
sha256 = "26d0260c2fb8121009e62ffc548b2398dea2522b6454208a852fb0ef264c206c",
urls = ["https://files.pythonhosted.org/packages/34/25/8a218de57fc9853297a1a8e4927688eff8107d5bc6dcf6c964c59801f036/Django-4.1.10-py3-none-any.whl"],
)
http_file(
name = "sqlparse_0_4_0",
dev_dependency = IS_RELEASE,
downloaded_file_path = "sqlparse-0.4.0-py3-none-any.whl",
sha256 = "0523026398aea9c8b5f7a4a6d5c0829c285b4fbd960c17b5967a369342e21e01",
urls = ["https://files.pythonhosted.org/packages/10/96/36c136013c4a6ecb8c6aa3eed66e6dcea838f85fd80e1446499f1dabfac7/sqlparse-0.4.0-py3-none-any.whl"],
)