2
2
set shell := [" bash" , " -c" ]
3
3
4
4
# Commonly used command segments.
5
- uv_run := " uv run --isolated -- frozen "
5
+ uv_run := " uv run --frozen "
6
6
typing_run := uv_run + " --group typing --extra aws --extra encryption --extra ocsp --extra snappy --extra test --extra zstd"
7
7
docs_run := uv_run + " --extra docs"
8
8
doc_build := " ./doc/_build"
@@ -13,51 +13,55 @@ mypy_args := "--install-types --non-interactive"
13
13
default :
14
14
@ just --list
15
15
16
+ [private ]
17
+ resync :
18
+ @ uv sync --quiet --frozen
19
+
16
20
install :
17
21
bash .evergreen/ scripts/ setup-dev-env .sh
18
22
19
23
[group (' docs' )]
20
- docs :
24
+ docs : && resync
21
25
{{ docs_run}} sphinx-build -W -b html doc {{ doc_build}} / html
22
26
23
27
[group (' docs' )]
24
- docs-serve :
28
+ docs-serve : && resync
25
29
{{ docs_run}} sphinx-autobuild -W -b html doc --watch ./ pymongo --watch ./ bson --watch ./ gridfs {{ doc_build}} / serve
26
30
27
31
[group (' docs' )]
28
- docs-linkcheck :
32
+ docs-linkcheck : && resync
29
33
{{ docs_run}} sphinx-build -E -b linkcheck doc {{ doc_build}} / linkcheck
30
34
31
35
[group (' typing' )]
32
- typing :
36
+ typing : && resync
33
37
just typing-mypy
34
38
just typing-pyright
35
39
36
40
[group (' typing' )]
37
- typing-mypy :
41
+ typing-mypy : && resync
38
42
{{ typing_run}} mypy {{ mypy_args}} bson gridfs tools pymongo
39
43
{{ typing_run}} mypy {{ mypy_args}} --config-file mypy_test.ini test
40
44
{{ typing_run}} mypy {{ mypy_args}} test/ test_typing.py test/ test_typing_strict.py
41
45
42
46
[group (' typing' )]
43
- typing-pyright :
47
+ typing-pyright : && resync
44
48
{{ typing_run}} pyright test/ test_typing.py test/ test_typing_strict.py
45
49
{{ typing_run}} pyright -p strict_pyrightconfig.json test/ test_typing_strict.py
46
50
47
51
[group (' lint' )]
48
- lint :
52
+ lint : && resync
49
53
{{ uv_run}} pre-commit run --all-files
50
54
51
55
[group (' lint' )]
52
- lint-manual :
56
+ lint-manual : && resync
53
57
{{ uv_run}} pre-commit run --all-files --hook-stage manual
54
58
55
59
[group (' test' )]
56
- test * args = " -v --durations=5 --maxfail=10":
60
+ test * args = " -v --durations=5 --maxfail=10": && resync
57
61
{{ uv_run}} --extra test pytest {{ args}}
58
62
59
63
[group (' test' )]
60
- run-tests * args :
64
+ run-tests * args : && resync
61
65
bash ./ .evergreen/ run-tests.sh {{ args}}
62
66
63
67
[group (' test' )]
0 commit comments