From 47e689a89b3f5f0969595b17d2ec59ea3caffb3b Mon Sep 17 00:00:00 2001 From: Simon Willison Date: Sat, 23 Jun 2018 18:03:46 -0700 Subject: [PATCH] Speed up Travis by reusing pip wheel cache across builds (#324) * Cache pip wheels between runs in Travis, refs #323 * Run pytest manually - "python setup.py test" appeared to still download a bunch of stuff: https://travis-ci.org/simonw/datasette/jobs/395306188 * Use extras_require so pip can install test dependencies: https://github.com/pypa/pip/issues/1197#issuecomment-228939212 --- .travis.yml | 8 +++++++- setup.py | 11 ++++++++--- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index 91009165..f272ab38 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,7 +7,13 @@ python: # Executed for 3.5 AND 3.5 as the first "test" stage: script: - - python setup.py test + - pip install -U pip wheel + - pip install .[test] + - pytest + +cache: + directories: + - $HOME/.cache/pip # This defines further stages that execute after the tests jobs: diff --git a/setup.py b/setup.py index 79b1a519..67253a7f 100644 --- a/setup.py +++ b/setup.py @@ -47,10 +47,15 @@ setup( datasette=datasette.cli:cli ''', setup_requires=['pytest-runner'], + extras_require={ + 'test': [ + 'pytest==3.6.0', + 'aiohttp==2.3.2', + 'beautifulsoup4==4.6.0', + ] + }, tests_require=[ - 'pytest==3.6.0', - 'aiohttp==2.3.2', - 'beautifulsoup4==4.6.0', + 'datasette[test]', ], classifiers=[ 'Development Status :: 4 - Beta',