From 30aa673fba833fb9ed6f0624f3ae5ee810567447 Mon Sep 17 00:00:00 2001 From: Omer Katz Date: Mon, 15 Sep 2014 12:52:24 +0300 Subject: [PATCH 1/5] Added pypy3 to the build matrix. --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index 55afe4db..3d689ca4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,6 +7,7 @@ python: - 3.2 - 3.3 - 3.4 + - pypy3 env: - DEPS=true From 3af4823a0dd533921722f731b654458f4e9c8dba Mon Sep 17 00:00:00 2001 From: Omer Katz Date: Mon, 15 Sep 2014 12:54:12 +0300 Subject: [PATCH 2/5] Any pypy version probably shouldn't be installing/running those tests. Correct me if I'm wrong. --- .travis.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index 3d689ca4..07b845a8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -17,14 +17,14 @@ install: # always install unittest2 on py26 even if $DEPS is unset - if [[ $TRAVIS_PYTHON_VERSION == '2.6' ]]; then pip install unittest2; fi - if [[ $TRAVIS_PYTHON_VERSION == 2* && $DEPS == true ]]; then pip install futures mock Monotime==1.0; fi - - if [[ $TRAVIS_PYTHON_VERSION == 'pypy' && $DEPS == true ]]; then pip install futures mock; fi - - if [[ $TRAVIS_PYTHON_VERSION != 'pypy' && $DEPS == true ]]; then pip install pycares pycurl; fi + - if [[ $TRAVIS_PYTHON_VERSION == 'pypy'* && $DEPS == true ]]; then pip install futures mock; fi + - if [[ $TRAVIS_PYTHON_VERSION != 'pypy'* && $DEPS == true ]]; then pip install pycares pycurl; fi - if [[ $TRAVIS_PYTHON_VERSION == '3.2' && $DEPS == true ]]; then pip install mock; fi # Twisted runs on 2.x and 3.3+, but is flaky on pypy. - if [[ $TRAVIS_PYTHON_VERSION != '3.2' && $TRAVIS_PYTHON_VERSION != 'pypy' && $DEPS == true ]]; then pip install Twisted; fi - if [[ $TRAVIS_PYTHON_VERSION == '3.4' && $DEPS == true ]]; then pip install sphinx==1.2.2 sphinx_rtd_theme; fi # On travis the extension should always be built - - if [[ $TRAVIS_PYTHON_VERSION != 'pypy' ]]; then export TORNADO_EXTENSION=1; fi + - if [[ $TRAVIS_PYTHON_VERSION != 'pypy'* ]]; then export TORNADO_EXTENSION=1; fi - python setup.py install - pip install coveralls @@ -50,12 +50,12 @@ script: - LANG=C python $TARGET - LANG=en_US.utf-8 python $TARGET - if [[ $TRAVIS_PYTHON_VERSION == 3* ]]; then python -bb $TARGET; fi - - if [[ $TRAVIS_PYTHON_VERSION != pypy && $DEPS == true ]]; then python $TARGET --resolver=tornado.netutil.ThreadedResolver; fi + - if [[ $TRAVIS_PYTHON_VERSION != pypy* && $DEPS == true ]]; then python $TARGET --resolver=tornado.netutil.ThreadedResolver; fi - if [[ $TRAVIS_PYTHON_VERSION == 2* && $DEPS == true ]]; then python $TARGET --httpclient=tornado.curl_httpclient.CurlAsyncHTTPClient; fi - if [[ $TRAVIS_PYTHON_VERSION == 2* && $DEPS == true ]]; then python $TARGET --ioloop_time_monotonic; fi - if [[ $TRAVIS_PYTHON_VERSION != '3.2' && $TRAVIS_PYTHON_VERSION != 'pypy' && $DEPS == true ]]; then python $TARGET --ioloop=tornado.platform.twisted.TwistedIOLoop; fi - if [[ $TRAVIS_PYTHON_VERSION == 2* && $DEPS == true ]]; then python $TARGET --resolver=tornado.platform.twisted.TwistedResolver; fi - - if [[ $TRAVIS_PYTHON_VERSION != pypy && $DEPS == true ]]; then python $TARGET --resolver=tornado.platform.caresresolver.CaresResolver; fi + - if [[ $TRAVIS_PYTHON_VERSION != pypy* && $DEPS == true ]]; then python $TARGET --resolver=tornado.platform.caresresolver.CaresResolver; fi - if [[ $TRAVIS_PYTHON_VERSION == '3.3' ]]; then python $TARGET --ioloop_time_monotonic; fi - if [[ $TRAVIS_PYTHON_VERSION == '3.4' ]]; then python $TARGET --ioloop_time_monotonic; fi - export TORNADO_EXTENSION=0 From db881d6e1e82782485e6d9696b61cd0cee4a0abe Mon Sep 17 00:00:00 2001 From: Omer Katz Date: Mon, 15 Sep 2014 12:56:15 +0300 Subject: [PATCH 3/5] Added travis_retry to all network operations in order to avoid build errors due to connections being dropped. --- .travis.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.travis.yml b/.travis.yml index 07b845a8..ef377261 100644 --- a/.travis.yml +++ b/.travis.yml @@ -15,18 +15,18 @@ env: install: # always install unittest2 on py26 even if $DEPS is unset - - if [[ $TRAVIS_PYTHON_VERSION == '2.6' ]]; then pip install unittest2; fi - - if [[ $TRAVIS_PYTHON_VERSION == 2* && $DEPS == true ]]; then pip install futures mock Monotime==1.0; fi - - if [[ $TRAVIS_PYTHON_VERSION == 'pypy'* && $DEPS == true ]]; then pip install futures mock; fi - - if [[ $TRAVIS_PYTHON_VERSION != 'pypy'* && $DEPS == true ]]; then pip install pycares pycurl; fi - - if [[ $TRAVIS_PYTHON_VERSION == '3.2' && $DEPS == true ]]; then pip install mock; fi + - if [[ $TRAVIS_PYTHON_VERSION == '2.6' ]]; then travis_retry pip install unittest2; fi + - if [[ $TRAVIS_PYTHON_VERSION == 2* && $DEPS == true ]]; then travis_retry pip install futures mock Monotime==1.0; fi + - if [[ $TRAVIS_PYTHON_VERSION == 'pypy'* && $DEPS == true ]]; then travis_retry pip install futures mock; fi + - if [[ $TRAVIS_PYTHON_VERSION != 'pypy'* && $DEPS == true ]]; then travis_retry pip install pycares pycurl; fi + - if [[ $TRAVIS_PYTHON_VERSION == '3.2' && $DEPS == true ]]; then travis_retry pip install mock; fi # Twisted runs on 2.x and 3.3+, but is flaky on pypy. - - if [[ $TRAVIS_PYTHON_VERSION != '3.2' && $TRAVIS_PYTHON_VERSION != 'pypy' && $DEPS == true ]]; then pip install Twisted; fi - - if [[ $TRAVIS_PYTHON_VERSION == '3.4' && $DEPS == true ]]; then pip install sphinx==1.2.2 sphinx_rtd_theme; fi + - if [[ $TRAVIS_PYTHON_VERSION != '3.2' && $TRAVIS_PYTHON_VERSION != 'pypy' && $DEPS == true ]]; then travis_retry pip install Twisted; fi + - if [[ $TRAVIS_PYTHON_VERSION == '3.4' && $DEPS == true ]]; then travis_retry pip install sphinx==1.2.2 sphinx_rtd_theme; fi # On travis the extension should always be built - if [[ $TRAVIS_PYTHON_VERSION != 'pypy'* ]]; then export TORNADO_EXTENSION=1; fi - python setup.py install - - pip install coveralls + - travis_retry pip install coveralls script: # Get out of the source directory before running tests to avoid PYTHONPATH From 5ddf3c3480d7d1776552cbd6e6a643e2c8657e08 Mon Sep 17 00:00:00 2001 From: Omer Katz Date: Mon, 15 Sep 2014 12:57:15 +0300 Subject: [PATCH 4/5] Build should fast finish since matrix is large. --- .travis.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.travis.yml b/.travis.yml index ef377261..fa050e0b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -68,3 +68,6 @@ after_success: # travis. Consider removing this after the underlying issue is fixed. # https://github.com/travis-ci/travis-ci/issues/2389 sudo: false + +matrix: + fast_finish: true From bbd1f90107c08582828f579d551e02045202c002 Mon Sep 17 00:00:00 2001 From: Omer Katz Date: Mon, 15 Sep 2014 13:12:14 +0300 Subject: [PATCH 5/5] Excluded more non-PyPy related build steps that I missed. --- .travis.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index fa050e0b..b135fd89 100644 --- a/.travis.yml +++ b/.travis.yml @@ -21,7 +21,7 @@ install: - if [[ $TRAVIS_PYTHON_VERSION != 'pypy'* && $DEPS == true ]]; then travis_retry pip install pycares pycurl; fi - if [[ $TRAVIS_PYTHON_VERSION == '3.2' && $DEPS == true ]]; then travis_retry pip install mock; fi # Twisted runs on 2.x and 3.3+, but is flaky on pypy. - - if [[ $TRAVIS_PYTHON_VERSION != '3.2' && $TRAVIS_PYTHON_VERSION != 'pypy' && $DEPS == true ]]; then travis_retry pip install Twisted; fi + - if [[ $TRAVIS_PYTHON_VERSION != '3.2' && $TRAVIS_PYTHON_VERSION != 'pypy'* && $DEPS == true ]]; then travis_retry pip install Twisted; fi - if [[ $TRAVIS_PYTHON_VERSION == '3.4' && $DEPS == true ]]; then travis_retry pip install sphinx==1.2.2 sphinx_rtd_theme; fi # On travis the extension should always be built - if [[ $TRAVIS_PYTHON_VERSION != 'pypy'* ]]; then export TORNADO_EXTENSION=1; fi @@ -35,7 +35,7 @@ script: - cd maint # Copy the coveragerc down so coveralls can find it. - cp ../.coveragerc . - - if [[ $TRAVIS_PYTHON_VERSION != 'pypy' ]]; then export TORNADO_EXTENSION=1; fi + - if [[ $TRAVIS_PYTHON_VERSION != 'pypy'* ]]; then export TORNADO_EXTENSION=1; fi - export TARGET="-m tornado.test.runtests" # Travis workers are often overloaded and cause our tests to exceed # the default timeout of 5s. @@ -53,7 +53,7 @@ script: - if [[ $TRAVIS_PYTHON_VERSION != pypy* && $DEPS == true ]]; then python $TARGET --resolver=tornado.netutil.ThreadedResolver; fi - if [[ $TRAVIS_PYTHON_VERSION == 2* && $DEPS == true ]]; then python $TARGET --httpclient=tornado.curl_httpclient.CurlAsyncHTTPClient; fi - if [[ $TRAVIS_PYTHON_VERSION == 2* && $DEPS == true ]]; then python $TARGET --ioloop_time_monotonic; fi - - if [[ $TRAVIS_PYTHON_VERSION != '3.2' && $TRAVIS_PYTHON_VERSION != 'pypy' && $DEPS == true ]]; then python $TARGET --ioloop=tornado.platform.twisted.TwistedIOLoop; fi + - if [[ $TRAVIS_PYTHON_VERSION != '3.2' && $TRAVIS_PYTHON_VERSION != 'pypy'* && $DEPS == true ]]; then python $TARGET --ioloop=tornado.platform.twisted.TwistedIOLoop; fi - if [[ $TRAVIS_PYTHON_VERSION == 2* && $DEPS == true ]]; then python $TARGET --resolver=tornado.platform.twisted.TwistedResolver; fi - if [[ $TRAVIS_PYTHON_VERSION != pypy* && $DEPS == true ]]; then python $TARGET --resolver=tornado.platform.caresresolver.CaresResolver; fi - if [[ $TRAVIS_PYTHON_VERSION == '3.3' ]]; then python $TARGET --ioloop_time_monotonic; fi