tox: try using uv for CI, should result in speedup

see https://github.com/karlicoss/HPI/issues/391
This commit is contained in:
Dima Gerasimov 2024-09-22 22:32:34 +01:00 committed by karlicoss
parent 8ed9e1947e
commit bf8af6c598
3 changed files with 17 additions and 9 deletions

10
tox.ini
View file

@ -17,6 +17,9 @@ passenv =
PYTHONPYCACHEPREFIX
MYPY_CACHE_DIR
RUFF_CACHE_DIR
setenv =
HPI_MODULE_INSTALL_USE_UV=true
uv_seed = true # seems necessary so uv creates separate venvs per tox env?
# note: --use-pep517 below is necessary for tox --parallel flag to work properly
@ -24,7 +27,6 @@ passenv =
[testenv:ruff]
install_command = {envpython} -m pip install --use-pep517 {opts} {packages}
deps =
-e .[testing]
commands =
@ -33,7 +35,6 @@ commands =
# just the very core tests with minimal dependencies
[testenv:tests-core]
install_command = {envpython} -m pip install --use-pep517 {opts} {packages}
deps =
-e .[testing]
commands =
@ -56,9 +57,9 @@ setenv =
# TODO not sure if need it?
MY_CONFIG=nonexistent
HPI_TESTS_USES_OPTIONAL_DEPS=true
install_command = {envpython} -m pip install --use-pep517 {opts} {packages}
deps =
-e .[testing]
uv # for hpi module install
cachew
ijson # optional dependency for various modules
commands =
@ -93,7 +94,6 @@ commands =
[testenv:mypy-core]
install_command = {envpython} -m pip install --use-pep517 {opts} {packages}
deps =
-e .[testing,optional]
orgparse # for core.orgmode
@ -109,9 +109,9 @@ commands =
# specific modules that are known to be mypy compliant (to avoid false negatives)
# todo maybe split into separate jobs? need to add comment how to run
[testenv:mypy-misc]
install_command = {envpython} -m pip install --use-pep517 {opts} {packages}
deps =
-e .[testing,optional]
uv # for hpi module install
lxml-stubs # for my.smscalls
types-protobuf # for my.google.maps.android
types-Pillow # for my.photos