Source

wheezy.validation / Makefile

Andriy Kornatsky… a1dcfb2 

Andriy Kornatsky… 1615a42 
Andriy Kornatsky… 4e71ba1 
Andriy Kornatsky… 7f2eabb 
Andriy Kornatsky… cafd14e 
Andriy Kornatsky… 7f2eabb 
Andriy Kornatsky… 1615a42 



Andriy Kornatsky… 3ee2134 
Andriy Kornatsky… 1615a42 
Andriy Kornatsky… 7f2eabb 
Andriy Kornatsky… 1615a42 

Andriy Kornatsky… 7f2eabb 

Andriy Kornatsky… 1615a42 

Andriy Kornatsky… 7f2eabb 
Andriy Kornatsky… 1615a42 







Andriy Kornatsky… 59b03bb 

Andriy Kornatsky… 1615a42 

Andriy Kornatsky… 1151d55 





Andriy Kornatsky… 7f2eabb 
Andriy Kornatsky… 4e71ba1 
Andriy Kornatsky… 1615a42 
Andriy Kornatsky… 7f2eabb 

Andriy Kornatsky… 3ee2134 

Andriy Kornatsky… 1615a42 



Andriy Kornatsky… 7f2eabb 
Andriy Kornatsky… 656d024 
Andriy Kornatsky… 1615a42 



Andriy Kornatsky… cafd14e 
Andriy Kornatsky… 86d6f2f 

Andriy Kornatsky… cafd14e 


Andriy Kornatsky… 68214a2 


Andriy Kornatsky… cafd14e 






Andriy Kornatsky… a1dcfb2 





Andriy Kornatsky… 1615a42 

















Andriy Kornatsky… 023e97d 


Andriy Kornatsky… c30ccb5 
Andriy Kornatsky… 023e97d 





.SILENT: clean env po doctest-cover qa test doc release upload
.PHONY: clean env po doctest-cover qa test doc release upload

VERSION=2.7
PYPI=http://pypi.python.org/simple
DIST_DIR=dist

PYTHON=env/bin/python$(VERSION)
EASY_INSTALL=env/bin/easy_install-$(VERSION)
PYTEST=env/bin/py.test-$(VERSION)
NOSE=env/bin/nosetests-$(VERSION)
SPHINX=/usr/bin/python /usr/bin/sphinx-build

all: clean po doctest-cover test release

debian:
	apt-get -y update
	apt-get -y dist-upgrade
	# How to Compile Python from Source
	# http://mindref.blogspot.com/2011/09/compile-python-from-source.html
	apt-get -y install libbz2-dev build-essential python \
		python-dev python-setuptools python-virtualenv \
		mercurial

env:
	PYTHON_EXE=/usr/local/bin/python$(VERSION); \
	if [ ! -x $$PYTHON_EXE ]; then \
		PYTHON_EXE=/usr/bin/python$(VERSION); \
	fi;\
	VIRTUALENV_USE_SETUPTOOLS=1; \
	export VIRTUALENV_USE_SETUPTOOLS; \
	virtualenv --python=$$PYTHON_EXE \
		--no-site-packages env
	if [ "$$(echo $(VERSION) | sed 's/\.//')" -ge 30 ]; then \
		echo -n 'Upgrading distribute...'; \
		$(EASY_INSTALL) -i $(PYPI) -U -O2 distribute \
			> /dev/null 2>/dev/null; \
		echo 'done.'; \
	fi
	$(EASY_INSTALL) -i $(PYPI) -O2 coverage nose pytest \
		pytest-pep8 pytest-cov
	# The following packages available for python < 3.0
	#if [ "$$(echo $(VERSION) | sed 's/\.//')" -lt 30 ]; then \
	#	$(EASY_INSTALL) sphinx; \
	#fi
	$(PYTHON) setup.py develop -i $(PYPI)

clean:
	find src/ -type d -name __pycache__ | xargs rm -rf
	find src/ -name '*.py[co]' -delete
	find src/ -name '*.mo' -delete
	rm -rf dist/ build/ MANIFEST src/*.egg-info .cache .coverage

release:
	$(PYTHON) setup.py -q bdist_egg

upload:
	REV=$$(hg head --template '{rev}') ; \
	sed -i "s/'0.1'/'0.1.$$REV'/" src/wheezy/validation/__init__.py ; \
	if [ "$$(echo $(VERSION) | sed 's/\.//')" -eq 27 ]; then \
		$(PYTHON) setup.py -q egg_info --tag-build .$$REV \
			sdist register upload; \
		$(EASY_INSTALL) -i $(PYPI) sphinx; \
		$(PYTHON) env/bin/sphinx-build -D release=0.1.$$REV \
			-a -b html doc/ doc/_build/;\
		python setup.py upload_docs; \
	fi; \
	$(PYTHON) setup.py -q egg_info --tag-build .$$REV \
		bdist_egg --dist-dir=$(DIST_DIR) \
		rotate --match=$(VERSION).egg --keep=1 --dist-dir=$(DIST_DIR) \
		upload;

qa:
	if [ "$$(echo $(VERSION) | sed 's/\.//')" -eq 27 ]; then \
		flake8 --max-complexity 10 doc src setup.py && \
		pep8 doc src setup.py ; \
	fi

test:
	$(PYTEST) -q -x --pep8 --doctest-modules \
		src/wheezy/validation

doctest-cover:
	$(NOSE) --stop --with-doctest --detailed-errors \
		--with-coverage --cover-package=wheezy.validation

test-cover:
	$(PYTEST) -q --cov wheezy.validation \
		--cov-report term-missing \
		src/wheezy/validation/tests

doc:
	$(SPHINX) -a -b html doc/ doc/_build/

test-demos:
	$(PYTEST) -q -x --pep8 demos/

po:
	xgettext --join-existing --sort-by-file --omit-header \
		--add-comments \
		-o i18n/validation.po src/wheezy/validation/*.py
	cp i18n/validation.po i18n/en/LC_MESSAGES
	for l in `ls --hide *.po i18n`; do \
		echo -n "$$l => "; \
		msgfmt -v i18n/$$l/LC_MESSAGES/validation.po \
			-o i18n/$$l/LC_MESSAGES/validation.mo; \
	done