@@ -25,7 +25,7 @@ release: $(TOWNCRIER) $(HATCH) $(PY)
2525 $(PY ) ../scripts/make_release.py vscode
2626
2727# Ensures the version of esbonio in ../lib/esbonio is used.
28- dev-deps : node_modules/.installed bundled/libs/.installed
28+ dev-deps : node_modules/.installed bundled/libs/.installed bundled/env/.installed
2929 -test -d bundled/libs/esbonio-* .dist-info && rm -r bundled/libs/esbonio-* .dist-info
3030 -test -L bundled/libs/esbonio || rm -r bundled/libs/esbonio
3131 if [ ! -f bundled/libs/esbonio/__main__.py ]; then \
@@ -34,17 +34,28 @@ dev-deps: node_modules/.installed bundled/libs/.installed
3434 fi
3535
3636# Ensures the latest version of esbonio from PyPi is used.
37- release-deps : node_modules/.installed bundled/libs/.installed
37+ release-deps : node_modules/.installed bundled/libs/.installed bundled/env/.installed
3838 -test -L bundled/libs/esbonio && rm bundled/libs/esbonio
3939 test -d bundled/libs/esbonio-* .dist-info || $(PY39 ) -m pip install -t ./bundled/libs --no-cache-dir --implementation py --no-deps --upgrade $(ESBONIO )
4040
41- requirements.txt : $(HATCH ) requirements.in
42- $(HATCH ) run deps:update
41+ # Hatch is only required to exist, don't rebuild this target if it happens to be newer!
42+ # https://www.gnu.org/software/make/manual/html_node/Prerequisite-Types.html
43+ requirements-libs.txt : requirements-libs.in | $(HATCH )
44+ $(HATCH ) run deps:update-libs
4345
44- bundled/libs/.installed : $(PY39 ) requirements.txt
46+ requirements-env.txt : requirements-env.in | $(HATCH )
47+ $(HATCH ) run deps:update-env
48+
49+ bundled/libs/.installed : $(PY39 ) requirements-libs.txt
4550 -test -d bundled/libs && rm -r bundled/libs
4651 $(PY39 ) --version
47- $(PY39 ) -m pip install -t ./bundled/libs --no-cache-dir --implementation py --no-deps --upgrade -r ./requirements.txt
52+ $(PY39 ) -m pip install -t ./bundled/libs --no-cache-dir --implementation py --no-deps --upgrade -r ./requirements-libs.txt
53+ touch $@
54+
55+ bundled/env/.installed : $(PY39 ) requirements-env.txt
56+ -test -d bundled/env && rm -r bundled/env
57+ $(PY39 ) --version
58+ $(PY39 ) -m pip install -t ./bundled/env --no-cache-dir --implementation py --no-deps --upgrade -r ./requirements-env.txt
4859 touch $@
4960
5061node_modules/.installed : package.json package-lock.json $(NPM )
0 commit comments