@@ -4,9 +4,6 @@ sources = python/pydantic_core tests generate_self_schema.py wasm-preview/run_te
4
4
# using pip install cargo (via maturin via pip) doesn't get the tty handle
5
5
# so doesn't render color without some help
6
6
export CARGO_TERM_COLOR =$(shell (test -t 0 && echo "always") || echo "auto")
7
- # maturin develop only makes sense inside a virtual env, is otherwise
8
- # more or less equivalent to pip install -e just a little nicer
9
- USE_MATURIN = $(shell [ "$$VIRTUAL_ENV" != "" ] && (which maturin) )
10
7
11
8
.PHONY : .uv # # Check that uv is installed
12
9
.uv :
@@ -19,7 +16,7 @@ USE_MATURIN = $(shell [ "$$VIRTUAL_ENV" != "" ] && (which maturin))
19
16
.PHONY : install
20
17
install : .uv .pre-commit
21
18
uv pip install -U wheel
22
- uv sync --frozen --group all
19
+ uv sync --frozen --group all --no-install-project
23
20
uv pip install -v -e .
24
21
pre-commit install
25
22
@@ -38,56 +35,37 @@ install-rust-coverage:
38
35
.PHONY : build-dev
39
36
build-dev :
40
37
@rm -f python/pydantic_core/* .so
41
- ifneq ($(USE_MATURIN ) ,)
42
- uv run maturin develop
43
- else
44
- uv pip install --force-reinstall -v -e . --config-settings=build-args='--profile dev'
45
- endif
38
+ uv sync --frozen --group maturin --no-install-project
39
+ uv run --no-sync maturin develop
46
40
47
41
.PHONY : build-prod
48
42
build-prod :
49
43
@rm -f python/pydantic_core/* .so
50
- ifneq ($(USE_MATURIN ) ,)
51
- uv run maturin develop --release
52
- else
53
- uv pip install -v -e .
54
- endif
44
+ uv sync --frozen --group maturin --no-install-project
45
+ uv run --no-sync maturin develop --release
55
46
56
47
.PHONY : build-profiling
57
48
build-profiling :
58
49
@rm -f python/pydantic_core/* .so
59
- ifneq ($(USE_MATURIN ) ,)
60
- uv run maturin develop --profile profiling
61
- else
62
- uv pip install --force-reinstall -v -e . --config-settings=build-args='--profile profiling'
63
- endif
50
+ uv sync --frozen --group maturin --no-install-project
51
+ uv run --no-sync maturin develop --profile profiling
64
52
65
53
.PHONY : build-coverage
66
54
build-coverage :
67
55
@rm -f python/pydantic_core/* .so
68
- ifneq ($(USE_MATURIN ) ,)
69
- RUSTFLAGS='-C instrument-coverage' uv run maturin develop --release
70
- else
71
- RUSTFLAGS='-C instrument-coverage' uv pip install -v -e .
72
- endif
56
+ uv sync --frozen --group maturin --no-install-project
57
+ RUSTFLAGS=' -C instrument-coverage' uv run --no-sync maturin develop --release
73
58
74
59
.PHONY : build-pgo
75
60
build-pgo :
76
61
@rm -f python/pydantic_core/* .so
77
62
$(eval PROFDATA := $(shell mktemp -d) )
78
- ifneq ( $( USE_MATURIN ) ,)
63
+ uv sync --frozen --group maturin --no-install-project
79
64
RUSTFLAGS=' -Cprofile-generate=$(PROFDATA)' uv run maturin develop --release
80
- else
81
- RUSTFLAGS='-Cprofile-generate=$(PROFDATA)' uv pip install --force-reinstall -v -e .
82
- endif
83
65
pytest tests/benchmarks
84
66
$(eval LLVM_PROFDATA := $(shell rustup run stable bash -c 'echo $$RUSTUP_HOME/toolchains/$$RUSTUP_TOOLCHAIN/lib/rustlib/$$(rustc -Vv | grep host | cut -d " " -f 2 ) /bin/llvm-profdata') )
85
67
$(LLVM_PROFDATA ) merge -o $(PROFDATA ) /merged.profdata $(PROFDATA )
86
- ifneq ($(USE_MATURIN ) ,)
87
68
RUSTFLAGS=' -Cprofile-use=$(PROFDATA)/merged.profdata' uv run maturin develop --release
88
- else
89
- RUSTFLAGS='-Cprofile-use=$(PROFDATA)/merged.profdata' uv pip install --force-reinstall -v -e .
90
- endif
91
69
@rm -rf $(PROFDATA )
92
70
93
71
0 commit comments