@@ -81,48 +81,51 @@ install-test: clean-build clean-pyc ## install the package and test dependencies
8181install-develop : clean-build clean-pyc # # install the package in editable mode and dependencies for development
8282 pip install -e .[dev]
8383
84- MINIMUM := $(shell sed -n '/install_requires = \[/,/]/p' setup.py | head -n-1 | tail -n+2 | sed 's/ * \(.* \) ,$? $$/\1/g' | tr '>' '=')
85-
86- .PHONY : install-minimum
87- install-minimum : # # install the minimum supported versions of the package dependencies
88- pip install $(MINIMUM )
8984
9085# LINT TARGETS
9186
9287.PHONY : lint
9388lint : # # check style with flake8 and isort
94- flake8 sigpro
95- flake8 tests --ignore=D
96- isort -c --recursive sigpro tests
97- pylint sigpro --rcfile=setup.cfg
89+ invoke lint
9890
9991.PHONY : fix-lint
10092fix-lint : # # fix lint issues using autoflake, autopep8, and isort
101- find sigpro tests -name ' *.py' | xargs autoflake --in-place --remove-all-unused-imports --remove-unused-variables
102- autopep8 --in-place --recursive --aggressive sigpro tests
103- isort --apply --atomic --recursive sigpro tests
93+ find sigpro -name ' *.py' | xargs autoflake --in-place --remove-all-unused-imports --remove-unused-variables
94+ autopep8 --in-place --recursive --aggressive sigpro
95+ isort --apply --atomic --recursive sigpro
10496
97+ find tests -name '*.py' | xargs autoflake --in-place --remove-all-unused-imports --remove-unused-variables
98+ autopep8 --in-place --recursive --aggressive tests
99+ isort --apply --atomic --recursive tests
105100
106101# TEST TARGETS
107102
108103.PHONY : test-unit
109104test-unit : # # run tests quickly with the default Python
110- python -m pytest --cov=sigpro
105+ invoke pytest
111106
112107.PHONY : test-readme
113108test-readme : # # run the readme snippets
114- rm -rf tests/readme_test && mkdir tests/readme_test
115- cd tests/readme_test && rundoc run --single-session python3 -t python3 ../../README.md
116- rm -rf tests/readme_test
109+ invoke readme
110+
111+
112+ .PHONY : test-tutorials
113+ test-tutorials : # # run the tutorial notebooks
114+ invoke tutorials
115+
117116
118117.PHONY : test
119- test : test-unit test-readme # # test everything that needs test dependencies
118+ test : test-unit test-readme test-tutorials # # test everything that needs test dependencies
119+
120+ .PHONY : check-dependencies
121+ check-dependencies : # # test if there are any broken dependencies
122+ pip check
120123
121124.PHONY : test-devel
122- test-devel : lint docs # # test everything that needs development dependencies
125+ test-devel : check-dependencies lint docs # # test everything that needs development dependencies
123126
124127.PHONY : test-all
125- test-all : # # test using tox
128+ test-all :
126129 tox -r
127130
128131.PHONY : coverage
@@ -132,12 +135,11 @@ coverage: ## check code coverage quickly with the default Python
132135 coverage html
133136 $(BROWSER ) htmlcov/index.html
134137
135-
136138# DOCS TARGETS
137139
138140.PHONY : docs
139141docs : clean-docs # # generate Sphinx HTML documentation, including API docs
140- sphinx-apidoc --separate --no-toc -o docs/api/ sigpro
142+ sphinx-apidoc --module-first --separate -T -o docs/api/ sigpro
141143 $(MAKE ) -C docs html
142144
143145.PHONY : view-docs
@@ -146,7 +148,7 @@ view-docs: docs ## view docs in browser
146148
147149.PHONY : serve-docs
148150serve-docs : view-docs # # compile the docs watching for changes
149- watchmedo shell-command -W -R -D -p ' *.rst;*.md' -c ' $(MAKE) -C docs html' docs
151+ watchmedo shell-command -W -R -D -p ' *.rst;*.md' -c ' $(MAKE) -C docs html' .
150152
151153
152154# RELEASE TARGETS
@@ -170,7 +172,7 @@ publish-test: dist publish-confirm ## package and upload a release on TestPyPI
170172
171173.PHONY : publish
172174publish : dist publish-confirm # # package and upload a release
173- twine upload --repository-url https://pypi.dailab.ml:8080 dist/*
175+ twine upload dist/*
174176
175177.PHONY : bumpversion-release
176178bumpversion-release : # # Merge master to stable and bumpversion release
0 commit comments