@@ -11,11 +11,14 @@ perm_checks = ./* .gitignore .vscode .github
1111# The user can change the following on the command line:
1212PYTHON3BIN = python
1313
14- .PHONY : help tasklist installdeps test build-check
15- .PHONY : smoke-checks nix-checks shellcheck ver-checks other-checks coverage unittest
16- test : smoke-checks nix-checks shellcheck ver-checks other-checks coverage # # Run all tests
14+ .PHONY : help tasklist installdeps test build-check outdated
15+ .PHONY : smoke-checks nix-checks shellcheck ver-checks coverage unittest
16+ test : smoke-checks nix-checks shellcheck ver-checks coverage # # Run all tests
1717# Reminder: If the `test` target changes, make the appropriate changes to .github/workflows/tests.yml
1818
19+ # spell-checker: ignore txts tasklist installdeps shellcheck FSTYPE MJSON OSTYPE devpod euxo pythonpath rcfile sdist
20+ # spell-checker: ignore igbpyutils ipynb msys mypy noheadings notruncate pipefail pycache pylint pyproject venv vfat
21+
1922SHELL = /bin/bash
2023.ONESHELL : # each recipe is executed as a single script
2124
@@ -36,11 +39,18 @@ build-check: smoke-checks
3639 echo " $$ {dist_files[@]}"
3740
3841tasklist : # # List open tasks.
39- @grep --color=auto \
42+ @set -uo pipefail
43+ command grep --color=auto \
4044 --exclude-dir=.git --exclude-dir=__pycache__ --exclude-dir=.ipynb_checkpoints --exclude-dir=' .venv*' \
4145 --exclude-dir=' .*cache' --exclude-dir=node_modules --exclude=' LICENSE*' --exclude=' .*.swp' \
4246 -Eri ' \bto.?do\b'
43- true # ignore nonzero exit code from grep
47+ set -e
48+ for gh_proj in $$ ( git remote -v | perl -wM5.014 -ne ' say $$1 while m{(?:\s|^)https?://(?:www\.)?github\.com/([^/\s]+/[^/\s]+)\.git(?:\s|$$)}ig' | sort -u ); do
49+ gh_count=" $$ (curl -sL https://api.github.com/repos/" $$ gh_proj" | jq .open_issues_count)"
50+ if [ -n " $$ gh_count" ] && [ " $$ gh_count" != " 0" ] && [ " $$ gh_count" != " null" ]; then
51+ echo " There are $$ gh_count open issues on GitHub $$ gh_proj"
52+ fi
53+ done
4454
4555installdeps : # # Install project dependencies
4656 @set -euxo pipefail
@@ -90,10 +100,10 @@ ver-checks: ## Checks that depend on the Python version
90100 $(PYTHON3BIN ) -m flake8 --toml-config=pyproject.toml $(py_code_locs )
91101 $(PYTHON3BIN ) -m pylint --rcfile=pyproject.toml --recursive=y $(py_code_locs )
92102
93- other-checks : # # Checks not depending on the Python version
94- @set -euxo pipefail
103+ outdated : # # Check the dependency versions
104+ @set -euo pipefail
95105 # note the following is on one line b/c GitHub macOS Action Runners are running bash 3.2 and the multiline version didn't work there...
96- for REQ in $( requirement_txts) ; do $( PYTHON3BIN) -m pur --skip-gt -- dry-run-changed --nonzero-exit-code -r " $$ REQ" ; done
106+ for REQ in $( requirement_txts) ; do $( PYTHON3BIN) -m pur --dry-run-changed -r " $$ REQ" ; done
97107
98108unittest : # # Run unit tests
99109 $(PYTHON3BIN ) -X dev -X warn_default_encoding -W error -m unittest -v
0 commit comments