tqdm/Makefile

184 lines
4.6 KiB
Makefile
Raw Normal View History

# IMPORTANT: for compatibility with `python setup.py make [alias]`, ensure:
# 1. Every alias is preceded by @[+]make (eg: @make alias)
2015-11-07 23:11:02 +00:00
# 2. A maximum of one @make alias or command per line
# see: https://github.com/tqdm/py-make/issues/1
.PHONY:
alltests
2015-10-31 11:38:53 +00:00
all
flake8
2015-10-31 11:38:53 +00:00
test
testnose
testsetup
2015-10-31 11:38:53 +00:00
testcoverage
testperf
2015-11-26 10:23:08 +00:00
testtimer
2016-04-07 21:10:09 +00:00
distclean
coverclean
2020-04-01 14:57:45 +00:00
pre-commit
2016-04-07 21:10:09 +00:00
prebuildclean
clean
toxclean
2015-10-31 11:38:53 +00:00
installdev
install
build
buildupload
2015-10-31 11:38:53 +00:00
pypi
snap
2019-03-02 21:43:13 +00:00
docker
help
2015-10-31 11:38:53 +00:00
none
run
2015-10-31 11:38:53 +00:00
2016-06-04 12:58:44 +00:00
help:
@python setup.py make -p
2016-06-04 12:58:44 +00:00
2015-10-31 11:38:53 +00:00
alltests:
@+make testcoverage
@+make testperf
@+make flake8
@+make testsetup
all:
@+make alltests
@+make build
2015-06-15 09:02:33 +00:00
flake8:
2019-08-18 19:16:17 +00:00
@+flake8 -j 8 --count --statistics --exit-zero .
2015-06-15 09:02:33 +00:00
test:
2019-08-24 22:51:14 +00:00
TOX_SKIP_ENV=perf tox --skip-missing-interpreters -p all
tox -e perf
testnose:
nosetests -d -v tqdm
2015-06-15 09:02:33 +00:00
testsetup:
2019-01-27 00:13:42 +00:00
@make README.rst
2019-03-05 22:53:35 +00:00
@make tqdm/tqdm.1
@make tqdm/completion.sh
2019-08-18 20:49:23 +00:00
python setup.py check --metadata --restructuredtext --strict
python setup.py make none
testcoverage:
2016-04-07 21:10:09 +00:00
@make coverclean
nosetests -d -v tqdm --ignore-files="tests_perf\.py" --with-coverage --cover-package=tqdm --cover-erase --cover-min-percentage=80
2016-12-27 14:24:04 +00:00
testperf:
# do not use coverage (which is extremely slow)
nosetests -d -v tqdm/tests/tests_perf.py
2015-11-26 10:23:08 +00:00
testtimer:
nosetests -d -v tqdm --with-timer
2015-11-26 10:23:08 +00:00
2016-12-27 14:24:04 +00:00
# another performance test, to check evolution across commits
2016-10-31 01:53:14 +00:00
testasv:
2016-12-27 14:24:04 +00:00
# Test only the last 3 commits (quick test)
2016-10-31 01:53:14 +00:00
asv run -j 8 HEAD~3..HEAD
@make viewasv
testasvfull:
2016-12-27 14:24:04 +00:00
# Test all the commits since the beginning (full test)
asv run --skip-existing-commits -j 8 v1.0.0..HEAD
2016-10-31 01:53:14 +00:00
@make testasv
viewasv:
asv publish
asv preview
2020-01-24 22:46:49 +00:00
tqdm/tqdm.1: .meta/.tqdm.1.md tqdm/cli.py tqdm/std.py
2019-01-27 00:13:42 +00:00
# TODO: add to mkdocs.py
2019-01-04 18:42:21 +00:00
python -m tqdm --help | tail -n+5 |\
sed -r -e 's/\\/\\\\/g' \
-e 's/^ (--.*)=<(.*)> : (.*)$$/\n\\\1=*\2*\n: \3./' \
2020-07-01 01:03:49 +00:00
-e 's/^ (--.*) : (.*)$$/\n\\\1\n: \2./' \
2019-01-04 18:42:21 +00:00
-e 's/ (-.*, )(--.*) /\n\1\\\2\n: /' |\
cat "$<" - |\
2017-07-03 23:25:22 +00:00
pandoc -o "$@" -s -t man
2020-04-26 20:50:55 +00:00
tqdm/completion.sh: .meta/mkcompletion.py tqdm/std.py tqdm/cli.py
2020-04-24 21:25:32 +00:00
@python .meta/mkcompletion.py
2020-01-24 22:46:49 +00:00
README.rst: .meta/.readme.rst tqdm/std.py tqdm/cli.py
2019-05-14 13:44:38 +00:00
@python .meta/mkdocs.py
2019-01-27 00:13:42 +00:00
2019-05-14 13:44:38 +00:00
snapcraft.yaml: .meta/.snapcraft.yml
2019-01-26 22:18:00 +00:00
cat "$<" | sed -e 's/{version}/'"`python -m tqdm --version`"'/g' \
-e 's/{commit}/'"`git describe --always`"'/g' \
-e 's/{source}/./g' -e 's/{icon}/logo.png/g' \
-e 's/{description}/https:\/\/tqdm.github.io/g' > "$@"
2019-03-02 21:43:13 +00:00
.dockerignore: .gitignore
cat $^ > "$@"
2020-02-16 13:25:38 +00:00
echo ".git" > "$@"
2019-03-02 21:43:13 +00:00
git clean -xdn | sed -nr 's/^Would remove (.*)$$/\1/p' >> "$@"
2016-04-07 21:10:09 +00:00
distclean:
@+make coverclean
@+make prebuildclean
@+make clean
2020-04-01 14:57:45 +00:00
pre-commit:
# quick sanity checks
@make testsetup
flake8 -j 8 --count --statistics tqdm/ examples/
nosetests -d tqdm --ignore-files="tests_(perf|keras)\.py" -e "pandas|monitoring"
nosetests -d tqdm/tests/tests_perf.py -m basic_overhead
2016-04-07 21:10:09 +00:00
prebuildclean:
@+python -c "import shutil; shutil.rmtree('build', True)"
@+python -c "import shutil; shutil.rmtree('dist', True)"
@+python -c "import shutil; shutil.rmtree('tqdm.egg-info', True)"
coverclean:
@+python -c "import os; os.remove('.coverage') if os.path.exists('.coverage') else None"
@+python -c "import shutil; shutil.rmtree('tqdm/__pycache__', True)"
2020-01-17 20:14:12 +00:00
@+python -c "import shutil; shutil.rmtree('tqdm/contrib/__pycache__', True)"
@+python -c "import shutil; shutil.rmtree('tqdm/tests/__pycache__', True)"
2016-04-07 21:10:09 +00:00
clean:
2017-07-03 23:25:22 +00:00
@+python -c "import os, glob; [os.remove(i) for i in glob.glob('*.py[co]')]"
@+python -c "import os, glob; [os.remove(i) for i in glob.glob('tqdm/*.py[co]')]"
2020-01-17 20:14:12 +00:00
@+python -c "import os, glob; [os.remove(i) for i in glob.glob('tqdm/contrib/*.py[co]')]"
2017-07-03 23:25:22 +00:00
@+python -c "import os, glob; [os.remove(i) for i in glob.glob('tqdm/tests/*.py[co]')]"
@+python -c "import os, glob; [os.remove(i) for i in glob.glob('tqdm/examples/*.py[co]')]"
toxclean:
@+python -c "import shutil; shutil.rmtree('.tox', True)"
2016-04-07 21:10:09 +00:00
installdev:
python setup.py develop --uninstall
python setup.py develop
2018-08-20 15:15:11 +00:00
submodules:
git clone git@github.com:tqdm/tqdm.wiki wiki
git clone git@github.com:tqdm/tqdm.github.io docs
git clone git@github.com:conda-forge/tqdm-feedstock feedstock
cd feedstock && git remote add autotick-bot git@github.com:regro-cf-autotick-bot/tqdm-feedstock
install:
python setup.py install
build:
2016-04-07 21:10:09 +00:00
@make prebuildclean
2019-01-27 00:13:42 +00:00
@make testsetup
2018-10-20 21:38:47 +00:00
python setup.py sdist bdist_wheel
# python setup.py bdist_wininst
pypi:
twine upload dist/*
buildupload:
@make build
@make pypi
snap:
2019-09-21 22:45:05 +00:00
@make -B snapcraft.yaml
snapcraft
2019-03-02 21:43:13 +00:00
docker:
@make .dockerignore
@make coverclean
@make clean
docker build . -t tqdm/tqdm
2019-03-02 22:27:19 +00:00
docker tag tqdm/tqdm:latest tqdm/tqdm:$(shell docker run -i --rm tqdm/tqdm -v)
none:
2015-10-31 11:38:53 +00:00
# used for unit testing
run:
python -Om tqdm --help