Skip to content

Commit cea35b6

Browse files
committed
feat(uv): Create a UV driver
1 parent b2abc99 commit cea35b6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

66 files changed

+5399
-52
lines changed

Cargo.lock

Lines changed: 6 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

MODULE.bazel

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@ register_toolchains(
2424
"@aspect_rules_py//py/private/toolchain/shim/...",
2525
)
2626

27+
host = use_extension("//uv/private/host:extension.bzl", "host_platform")
28+
use_repo(host, "aspect_rules_py_uv_host")
29+
2730
################################################################################
2831
# Dev deps
2932
#

docs/pip.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# <!-- Generated with Stardoc: http://skydoc.bazel.build -->

docs/unstable.md

Whitespace-only changes.

e2e/MODULE.bazel

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,3 +68,27 @@ local_repository(
6868
# For cases/repository-rule-deps-299
6969
importer = use_extension("//cases/repository-rule-deps-299/rules:import.bzl", "importer")
7070
use_repo(importer, "myrepo")
71+
72+
# For cases/uv-deps-650
73+
uv = use_extension("@aspect_rules_py//uv:extension.bzl", "uv")
74+
uv.declare_hub(hub_name = "pip")
75+
uv.declare_venv(
76+
hub_name = "pip",
77+
venv_name = "default",
78+
)
79+
uv.lockfile(
80+
hub_name = "pip",
81+
lockfile = "//cases/uv-deps-650:uv-default.lock",
82+
venv_name = "default",
83+
)
84+
uv.declare_venv(
85+
hub_name = "pip",
86+
venv_name = "airflow",
87+
)
88+
uv.lockfile(
89+
hub_name = "pip",
90+
lockfile = "//cases/uv-deps-650:uv-airflow.lock",
91+
venv_name = "airflow",
92+
)
93+
use_repo(uv, "pip")
94+

e2e/cases/uv-deps-650/BUILD.bazel

Whitespace-only changes.
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
#
2+
# This file is autogenerated by pip-compile with Python 3.11
3+
# by the following command:
4+
#
5+
# bazel run //:requirements.update
6+
#
7+
cowsay==6.1 \
8+
--hash=sha256:274b1e6fc1b966d53976333eb90ac94cb07a450a700b455af9fbdf882244b30a
9+
# via -r requirements.in
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
load("@aspect_rules_py//py/unstable:defs.bzl", "py_venv_test")
2+
3+
py_venv_test(
4+
name = "airflow",
5+
srcs = [
6+
"__test__.py",
7+
],
8+
main = "__test__.py",
9+
python_version = "3.13",
10+
venv = "airflow",
11+
deps = [
12+
"@pip//apache_airflow",
13+
],
14+
)
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
#!/usr/bin/env python3
2+
3+
# TODO: Deprecated API, need an alternative
4+
import pkgutil
5+
assert "_main/tests/airflow/.airflow/" in pkgutil.get_loader("airflow").get_filename()
6+
7+
import sys
8+
assert sys.version_info.major == 3
9+
assert sys.version_info.minor == 13
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
load("@aspect_rules_py//py/unstable:defs.bzl", "py_venv_test")
2+
3+
py_venv_test(
4+
name = "say",
5+
srcs = [
6+
"__test__.py",
7+
],
8+
main = "__test__.py",
9+
python_version = "3.11",
10+
venv = "default",
11+
deps = [
12+
"@pip//cowsay",
13+
],
14+
)

0 commit comments

Comments
 (0)