module( name = "fire", version = "0.2.2", compatibility_level = 1, ) bazel_dep(name = "rules_python", version = "1.8.3") bazel_dep(name = "bazel_skylib", version = "1.9.0") PYTHON_VERSIONS = [ "3.10", "3.11", "3.12", "3.13", ] python = use_extension("@rules_python//python/extensions:python.bzl", "python") [ python.toolchain(python_version = PY_VER) for PY_VER in PYTHON_VERSIONS ] python.defaults(python_version = PYTHON_VERSIONS[0]) pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip") [ pip.parse( hub_name = "pip", python_version = PY_VER, requirements_lock = "//:requirements.txt", ) for PY_VER in PYTHON_VERSIONS ] use_repo(pip, "pip") bazel_dep(name = "rules_mypy", version = "0.40.0", dev_dependency = True) bazel_dep(name = "rules_cc", version = "0.2.16", dev_dependency = True) bazel_dep(name = "rules_go", version = "0.59.0", dev_dependency = True) bazel_dep(name = "rules_rust", version = "0.68.1", dev_dependency = True) bazel_dep(name = "rules_java", version = "9.3.0", dev_dependency = True) types = use_extension("@rules_mypy//mypy:types.bzl", "types", dev_dependency = True) types.requirements( name = "pip_types", # `@pip` in the next line corresponds to the `hub_name` when using # rules_python's `pip.parse(...)`. pip_requirements = "@pip//:requirements.bzl", # also legal to pass a `requirements.in` here requirements_txt = "//:requirements.txt", ) use_repo(types, "pip_types") rust = use_extension("@rules_rust//rust:extensions.bzl", "rust", dev_dependency = True) rust.toolchain(edition = "2021") use_repo(rust, "rust_toolchains") java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains", dev_dependency = True) use_repo(java_toolchains, "remote_java_tools")