Holger Frey
7 years ago
5 changed files with 115 additions and 1 deletions
@ -0,0 +1,77 @@
@@ -0,0 +1,77 @@
|
||||
.PHONY: clean clean-test clean-pyc clean-build help |
||||
.DEFAULT_GOAL := help |
||||
|
||||
define BROWSER_PYSCRIPT |
||||
import os, webbrowser, sys |
||||
|
||||
try: |
||||
from urllib import pathname2url |
||||
except: |
||||
from urllib.request import pathname2url |
||||
|
||||
webbrowser.open("file://" + pathname2url(os.path.abspath(sys.argv[1]))) |
||||
endef |
||||
export BROWSER_PYSCRIPT |
||||
|
||||
define PRINT_HELP_PYSCRIPT |
||||
import re, sys |
||||
|
||||
for line in sys.stdin: |
||||
match = re.match(r'^([a-zA-Z_-]+):.*?## (.*)$$', line) |
||||
if match: |
||||
target, help = match.groups() |
||||
print("%-20s %s" % (target, help)) |
||||
endef |
||||
export PRINT_HELP_PYSCRIPT |
||||
|
||||
BROWSER := python -c "$$BROWSER_PYSCRIPT" |
||||
|
||||
help: |
||||
@python -c "$$PRINT_HELP_PYSCRIPT" < $(MAKEFILE_LIST) |
||||
|
||||
clean: clean-build clean-pyc clean-test ## remove all build, test, coverage and Python artifacts
|
||||
|
||||
clean-build: ## remove build artifacts
|
||||
rm -fr build/ |
||||
rm -fr dist/ |
||||
rm -fr .eggs/ |
||||
find . -name '*.egg-info' -exec rm -fr {} + |
||||
find . -name '*.egg' -exec rm -f {} + |
||||
|
||||
clean-pyc: ## remove Python file artifacts
|
||||
find . -name '*.pyc' -exec rm -f {} + |
||||
find . -name '*.pyo' -exec rm -f {} + |
||||
find . -name '*~' -exec rm -f {} + |
||||
find . -name '__pycache__' -exec rm -fr {} + |
||||
|
||||
clean-test: ## remove test and coverage artifacts
|
||||
rm -fr .tox/ |
||||
rm -f .coverage |
||||
rm -fr htmlcov/ |
||||
|
||||
lint: ## check style with flake8
|
||||
flake8 ordr |
||||
|
||||
test: ## run tests quickly with the default Python
|
||||
py.test |
||||
|
||||
test-all: ## run tests on every Python version with tox
|
||||
tox |
||||
|
||||
coverage: ## check code coverage quickly with the default Python
|
||||
coverage run --source ordr -m pytest |
||||
coverage report -m |
||||
coverage html |
||||
$(BROWSER) htmlcov/index.html |
||||
|
||||
release: clean ## package and upload a release
|
||||
python setup.py sdist upload |
||||
python setup.py bdist_wheel upload |
||||
|
||||
dist: clean ## builds source and wheel package
|
||||
python setup.py sdist |
||||
python setup.py bdist_wheel |
||||
ls -l dist |
||||
|
||||
install: clean ## install the package to the active Python's site-packages
|
||||
python setup.py install |
@ -0,0 +1,8 @@
@@ -0,0 +1,8 @@
|
||||
pip>=9.0.1 |
||||
bumpversion>=0.5.3 |
||||
wheel>=0.30.0 |
||||
flake8>=3.5.0 |
||||
coverage>=4.5.1 |
||||
|
||||
pytest>=3.4.1 |
||||
pytest-runner>=2.11.1 |
@ -0,0 +1,27 @@
@@ -0,0 +1,27 @@
|
||||
[bumpversion] |
||||
current_version = 0.0.1 |
||||
commit = True |
||||
tag = True |
||||
|
||||
[bumpversion:file:setup.py] |
||||
search = version='{current_version}' |
||||
replace = version='{new_version}' |
||||
|
||||
[bumpversion:file:ordr/__init__.py] |
||||
search = __version__ = '{current_version}' |
||||
replace = __version__ = '{new_version}' |
||||
|
||||
[bdist_wheel] |
||||
universal = 1 |
||||
|
||||
[flake8] |
||||
exclude = docs |
||||
ignore = W293 |
||||
hang_closing = True |
||||
|
||||
[aliases] |
||||
test = pytest |
||||
|
||||
[tool:pytest] |
||||
collect_ignore = ['setup.py'] |
||||
|
Reference in new issue