diff --git a/.travis.yml b/.travis.yml index 9e1eb7cd..d8481cdb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,4 +1,5 @@ language: python + python: - '2.6' - '2.7' @@ -7,35 +8,50 @@ python: - '3.5' - pypy - pypy3 + env: - PYMONGO=2.7 - PYMONGO=2.8 - PYMONGO=3.0 - PYMONGO=dev + matrix: fast_finish: true + before_install: - travis_retry sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10 - echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list - travis_retry sudo apt-get update - travis_retry sudo apt-get install mongodb-org-server + install: - sudo apt-get install python-dev python3-dev libopenjpeg-dev zlib1g-dev libjpeg-turbo8-dev libtiff4-dev libjpeg8-dev libfreetype6-dev liblcms2-dev libwebp-dev tcl8.5-dev tk8.5-dev python-tk -# virtualenv>=14.0.0 has dropped Python 3.2 support -- travis_retry pip install "virtualenv<14.0.0" "tox>=1.9" coveralls +- travis_retry pip install --upgrade pip +- travis_retry pip install coveralls +- travis_retry pip install flake8 +- travis_retry pip install tox>=1.9 - travis_retry tox -e $(echo py$TRAVIS_PYTHON_VERSION-mg$PYMONGO | tr -d . | sed -e 's/pypypy/pypy/') -- -e test + +# Run flake8 for py27 +before_script: +- if [[ $TRAVIS_PYTHON_VERSION == '2.7' ]]; then tox -e flake8; fi + script: - tox -e $(echo py$TRAVIS_PYTHON_VERSION-mg$PYMONGO | tr -d . | sed -e 's/pypypy/pypy/') -- --with-coverage + after_script: coveralls --verbose + notifications: irc: irc.freenode.org#mongoengine + branches: only: - master - /^v.*$/ + deploy: provider: pypi user: the_drow diff --git a/requirements.txt b/requirements.txt index b6a5b06c..854ed26d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,5 @@ nose pymongo>=2.7.1 six==1.10.0 +flake8 +flake8-import-order diff --git a/setup.cfg b/setup.cfg index a946c175..ab5f06a3 100644 --- a/setup.cfg +++ b/setup.cfg @@ -5,3 +5,9 @@ cover-erase = 1 cover-branches = 1 cover-package = mongoengine tests = tests + +[flake8] +ignore=E501,F401,F403,F405,I201 +exclude=build,dist,docs,venv,.tox,.eggs +max-complexity=10 +application-import-names=mongoengine,tests diff --git a/tox.ini b/tox.ini index 8eef60cb..d6052edf 100644 --- a/tox.ini +++ b/tox.ini @@ -1,6 +1,5 @@ [tox] -envlist = {py26,py27,py33,py34,py35,pypy,pypy3}-{mg27,mg28} -#envlist = {py26,py27,py33,py34,pypy,pypy3}-{mg27,mg28,mg30,mgdev} +envlist = {py26,py27,py33,py34,py35,pypy,pypy3}-{mg27,mg28},flake8 [testenv] commands = @@ -14,3 +13,10 @@ deps = setenv = PYTHON_EGG_CACHE = {envdir}/python-eggs passenv = windir + +[testenv:flake8] +deps = + flake8 + flake8-import-order +commands = + flake8