diff --git a/.travis.yml b/.travis.yml index f1e5e12..1890f26 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,15 +5,99 @@ services: - redis-server env: - - TOXENV=py2.6-django1.6 - - TOXENV=py2.7-django1.6 - - TOXENV=py2.7-django1.7 - - TOXENV=py3.2-django1.6 - - TOXENV=py3.2-django1.7 - - TOXENV=py3.3-django1.6 - - TOXENV=py3.3-django1.7 - - TOXENV=py3.4-django1.6 - - TOXENV=py3.4-django1.7 + - TOXENV=py2.6-django1.6-sqlite3-locmem + - TOXENV=py2.6-django1.6-sqlite3-redis + - TOXENV=py2.6-django1.6-sqlite3-memcached + - TOXENV=py2.6-django1.6-postgresql-locmem + - TOXENV=py2.6-django1.6-postgresql-redis + - TOXENV=py2.6-django1.6-postgresql-memcached + - TOXENV=py2.6-django1.6-mysql-locmem + - TOXENV=py2.6-django1.6-mysql-redis + - TOXENV=py2.6-django1.6-mysql-memcached + - TOXENV=py2.7-django1.7-sqlite3-filebased + - TOXENV=py2.7-django1.7-postgresql-filebased + - TOXENV=py2.7-django1.7-mysql-filebased + - TOXENV=py3.2-django1.7-sqlite3-filebased + - TOXENV=py3.2-django1.7-postgresql-filebased + - TOXENV=py3.2-django1.7-mysql-filebased + - TOXENV=py3.3-django1.7-sqlite3-filebased + - TOXENV=py3.3-django1.7-postgresql-filebased + - TOXENV=py3.3-django1.7-mysql-filebased + - TOXENV=py3.4-django1.7-sqlite3-filebased + - TOXENV=py3.4-django1.7-postgresql-filebased + - TOXENV=py3.4-django1.7-mysql-filebased + - TOXENV=py2.7-django1.6-sqlite3-locmem + - TOXENV=py2.7-django1.6-sqlite3-redis + - TOXENV=py2.7-django1.6-sqlite3-memcached + - TOXENV=py2.7-django1.6-postgresql-locmem + - TOXENV=py2.7-django1.6-postgresql-redis + - TOXENV=py2.7-django1.6-postgresql-memcached + - TOXENV=py2.7-django1.6-mysql-locmem + - TOXENV=py2.7-django1.6-mysql-redis + - TOXENV=py2.7-django1.6-mysql-memcached + - TOXENV=py2.7-django1.7-sqlite3-locmem + - TOXENV=py2.7-django1.7-sqlite3-redis + - TOXENV=py2.7-django1.7-sqlite3-memcached + - TOXENV=py2.7-django1.7-postgresql-locmem + - TOXENV=py2.7-django1.7-postgresql-redis + - TOXENV=py2.7-django1.7-postgresql-memcached + - TOXENV=py2.7-django1.7-mysql-locmem + - TOXENV=py2.7-django1.7-mysql-redis + - TOXENV=py2.7-django1.7-mysql-memcached + - TOXENV=py3.2-django1.6-sqlite3-locmem + - TOXENV=py3.2-django1.6-sqlite3-redis + - TOXENV=py3.2-django1.6-sqlite3-memcached + - TOXENV=py3.2-django1.6-postgresql-locmem + - TOXENV=py3.2-django1.6-postgresql-redis + - TOXENV=py3.2-django1.6-postgresql-memcached + - TOXENV=py3.2-django1.6-mysql-locmem + - TOXENV=py3.2-django1.6-mysql-redis + - TOXENV=py3.2-django1.6-mysql-memcached + - TOXENV=py3.2-django1.7-sqlite3-locmem + - TOXENV=py3.2-django1.7-sqlite3-redis + - TOXENV=py3.2-django1.7-sqlite3-memcached + - TOXENV=py3.2-django1.7-postgresql-locmem + - TOXENV=py3.2-django1.7-postgresql-redis + - TOXENV=py3.2-django1.7-postgresql-memcached + - TOXENV=py3.2-django1.7-mysql-locmem + - TOXENV=py3.2-django1.7-mysql-redis + - TOXENV=py3.2-django1.7-mysql-memcached + - TOXENV=py3.3-django1.6-sqlite3-locmem + - TOXENV=py3.3-django1.6-sqlite3-redis + - TOXENV=py3.3-django1.6-sqlite3-memcached + - TOXENV=py3.3-django1.6-postgresql-locmem + - TOXENV=py3.3-django1.6-postgresql-redis + - TOXENV=py3.3-django1.6-postgresql-memcached + - TOXENV=py3.3-django1.6-mysql-locmem + - TOXENV=py3.3-django1.6-mysql-redis + - TOXENV=py3.3-django1.6-mysql-memcached + - TOXENV=py3.3-django1.7-sqlite3-locmem + - TOXENV=py3.3-django1.7-sqlite3-redis + - TOXENV=py3.3-django1.7-sqlite3-memcached + - TOXENV=py3.3-django1.7-postgresql-locmem + - TOXENV=py3.3-django1.7-postgresql-redis + - TOXENV=py3.3-django1.7-postgresql-memcached + - TOXENV=py3.3-django1.7-mysql-locmem + - TOXENV=py3.3-django1.7-mysql-redis + - TOXENV=py3.3-django1.7-mysql-memcached + - TOXENV=py3.4-django1.6-sqlite3-locmem + - TOXENV=py3.4-django1.6-sqlite3-redis + - TOXENV=py3.4-django1.6-sqlite3-memcached + - TOXENV=py3.4-django1.6-postgresql-locmem + - TOXENV=py3.4-django1.6-postgresql-redis + - TOXENV=py3.4-django1.6-postgresql-memcached + - TOXENV=py3.4-django1.6-mysql-locmem + - TOXENV=py3.4-django1.6-mysql-redis + - TOXENV=py3.4-django1.6-mysql-memcached + - TOXENV=py3.4-django1.7-sqlite3-locmem + - TOXENV=py3.4-django1.7-sqlite3-redis + - TOXENV=py3.4-django1.7-sqlite3-memcached + - TOXENV=py3.4-django1.7-postgresql-locmem + - TOXENV=py3.4-django1.7-postgresql-redis + - TOXENV=py3.4-django1.7-postgresql-memcached + - TOXENV=py3.4-django1.7-mysql-locmem + - TOXENV=py3.4-django1.7-mysql-redis + - TOXENV=py3.4-django1.7-mysql-memcached install: pip install tox coveralls @@ -21,22 +105,8 @@ before_script: - psql -c 'CREATE USER cachalot CREATEDB;' -U postgres - psql -c 'CREATE DATABASE cachalot OWNER cachalot;' -U postgres - mysql -u root -e 'CREATE DATABASE cachalot;' - # Caches pip downloads - - mkdir ~/.pip - - printf '[global]\ndownload_cache = ~/.cache/pip\n' >> ~/.pip/pip.conf script: - - tox -e $TOXENV-sqlite3-locmem - - tox -e $TOXENV-sqlite3-filebased - - tox -e $TOXENV-sqlite3-redis - - tox -e $TOXENV-sqlite3-memcached - - tox -e $TOXENV-postgresql-locmem - - tox -e $TOXENV-postgresql-filebased - - tox -e $TOXENV-postgresql-redis - - tox -e $TOXENV-postgresql-memcached - - tox -e $TOXENV-mysql-locmem - - tox -e $TOXENV-mysql-filebased - - tox -e $TOXENV-mysql-redis - - tox -e $TOXENV-mysql-memcached + - tox -e $TOXENV after_success: coveralls diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 23299a6..5a2c9dc 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -16,6 +16,7 @@ master - Fixes a stale cache issue occurring after concurrent transactions - Adds 2 settings to customize how cache keys are generated - Adds a benchmark +- Adds file-based cache support for Django 1.7 0.8.1 diff --git a/docs/quickstart.rst b/docs/quickstart.rst index 5bac383..2144392 100644 --- a/docs/quickstart.rst +++ b/docs/quickstart.rst @@ -8,9 +8,10 @@ Requirements - Python 2.6, 2.7, 3.2, 3.3, or 3.4 - `django-redis `_, `memcached `_, - `filebased `_, - (or `locmem `_, - but it’s not shared between processes, so don’t use it with RQ or Celery) + `filebased `_ + (only with Django >= 1.7 as it is not thread-safe before), + or `locmem `_ + (but it’s not shared between processes, so don’t use it with RQ or Celery) - PostgreSQL, MySQL or SQLite Usage diff --git a/tox.ini b/tox.ini index 9bd3e01..d8ebdfa 100644 --- a/tox.ini +++ b/tox.ini @@ -1,7 +1,8 @@ [tox] envlist = - py2.6-django1.6-{sqlite3,postgresql,mysql}-{locmem,filebased,redis,memcached}, - py{2.7,3.2,3.3,3.4}-django{1.6,1.7}-{sqlite3,postgresql,mysql}-{locmem,filebased,redis,memcached}, + py2.6-django1.6-{sqlite3,postgresql,mysql}-{locmem,redis,memcached}, + py{2.7,3.2,3.3,3.4}-django1.7-{sqlite3,postgresql,mysql}-filebased, + py{2.7,3.2,3.3,3.4}-django{1.6,1.7}-{sqlite3,postgresql,mysql}-{locmem,redis,memcached}, [testenv] basepython =