| load("@bazel_skylib//:bzl_library.bzl", "bzl_library") |
| load("@python_versions//3.12:defs.bzl", "py_binary") |
| load("@rules_mypy_pip//:requirements.bzl", "requirement") |
| load("@rules_uv//uv:pip.bzl", "pip_compile") |
| load("@rules_uv//uv:venv.bzl", "create_venv") |
| load(":mypy.bzl", "mypy_cli") |
| |
| exports_files([ |
| "mypy.py", |
| "default_mypy.ini", |
| ]) |
| |
| bzl_library( |
| name = "mypy_rules", |
| srcs = ["mypy.bzl"], |
| visibility = ["//mypy:__subpackages__"], |
| ) |
| |
| bzl_library( |
| name = "py_type_library_rules", |
| srcs = ["py_type_library.bzl"], |
| visibility = ["//mypy:__subpackages__"], |
| ) |
| |
| bzl_library( |
| name = "types_rules", |
| srcs = ["types.bzl"], |
| visibility = ["//mypy:__subpackages__"], |
| ) |
| |
| pip_compile( |
| name = "generate_requirements_lock", |
| requirements_in = "requirements.in", |
| requirements_txt = "requirements.txt", |
| ) |
| |
| create_venv( |
| name = "venv", |
| requirements_txt = "requirements.txt", |
| ) |
| |
| mypy_cli(name = "mypy") |
| |
| py_binary( |
| name = "py_type_library", |
| srcs = ["py_type_library.py"], |
| main = "py_type_library.py", |
| visibility = ["//visibility:public"], |
| deps = [ |
| requirement("click"), |
| ], |
| ) |