cli: add 'hpi module install' and 'hpi module requires'

ci: use hpi module install; remove explicit module links

relevant:

- https://github.com/karlicoss/HPI/issues/12
- https://github.com/karlicoss/HPI/issues/79
This commit is contained in:
Dima Gerasimov 2021-02-18 01:48:27 +00:00 committed by karlicoss
parent 97650adf3b
commit 0534c5c57d
3 changed files with 86 additions and 24 deletions

52
tox.ini
View file

@ -4,28 +4,34 @@ minversion = 3.5
[testenv]
passenv = CI CI_*
# TODO ugh. unclear how to reuse setup.cfg deps in tox
[testenv:tests]
# just the very core tests with minimal dependencies
[testenv:tests-core]
commands =
pip install -e .[testing]
python3 -m pytest \
tests/core.py \
tests/get_files.py \
{posargs}
# todo maybe also have core tests and misc tests? since ideally want them without dependencies
[testenv:tests-all]
# deliberately set to nonexistent path to check the fallback logic
# TODO not sure if need it?
setenv = MY_CONFIG = nonexistent
commands =
# TODO core & modules should be tested separately?
pip install -e .[testing]
# python -m pytest {posargs}
# TODO install via helper script..
# my.location.google deps
pip install geopy ijson
hpi module install my.location.google
pip install ijson # optional dependency
# my.time.tz.via_location dep
pip install timezonefinder
hpi module install my.time.tz.via_location
# my.calendar.holidays dep
pip install workalendar
hpi module install my.calendar.holidays
# my.body.weight dep
pip install orgparse
hpi module install my.orgmode
python3 -m pytest tests \
# ignore some tests which might take a while to run on ci..
@ -45,7 +51,7 @@ commands =
whitelist_externals = cat
commands =
pip install -e .[testing,optional]
pip install orgparse # used it core.orgparse?
pip install orgparse # used it core.orgmode?
# todo add tests?
python3 -m mypy -p my.core \
--txt-report .coverage.mypy-core \
@ -56,18 +62,18 @@ 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
# and install dependencies via AST thing?
[testenv:mypy-misc]
commands =
pip install -e .[testing,optional]
pip install orgparse
pip install git+https://github.com/karlicoss/endoexport
pip install git+https://github.com/karlicoss/ghexport
pip install git+https://github.com/karlicoss/hypexport
pip install git+https://github.com/karlicoss/instapexport
pip install git+https://github.com/karlicoss/pockexport
pip install git+https://github.com/karlicoss/rexport
pip install git+https://github.com/karlicoss/stexport
hpi module install my.orgmode
hpi module install my.endomondo
hpi module install my.github.ghexport
hpi module install my.hypothesis
hpi module install my.instapaper
hpi module install my.pocket
hpi module install my.reddit
hpi module install my.stackexchange.stexport
# TODO fuck. -p my.github isn't checking the subpackages?? wtf...
python3 -m mypy \