Skip to content

Commit

Permalink
update python versions, Circle image (#287)
Browse files Browse the repository at this point in the history
* update Python, Django and DRF versions, upgrade Circle image
  • Loading branch information
Ryo Chijiiwa authored Jul 31, 2019
1 parent f5d3fee commit 045a3f7
Show file tree
Hide file tree
Showing 12 changed files with 38 additions and 113 deletions.
4 changes: 2 additions & 2 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ jobs:
parallelism: 1

docker:
- image: circleci/python:2.7.15-jessie
- image: circleci/python:2.7.16-stretch
steps:
- checkout
- run:
Expand Down Expand Up @@ -54,7 +54,7 @@ jobs:
command: ENABLE_INTEGRATION_TESTS=True py.test tests/integration
- run:
name: Run Tox Tests
command: tox
command: tox --parallel=4

workflows:
version: 2
Expand Down
2 changes: 1 addition & 1 deletion .circleci/python-versions.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2.7.15 3.4.9 3.5.6 3.6.6
2.7.16 3.5.7 3.6.9 3.7.4
93 changes: 11 additions & 82 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ See http://dynamic-rest.readthedocs.org for full documentation.
- [Directory panel](#directory-panel)
- [Optimizations](#optimizations)
- [Settings](#settings)
- [Compatibility table](#compatibility-table)
- [Compatibility](#compatibility)
- [Contributing](#contributing)
- [License](#license)

Expand Down Expand Up @@ -625,87 +625,16 @@ DYNAMIC_REST = {
}
```

# Compatibility table

Not all versions of Python, Django, and DRF are compatible. Here are the combinations you can use reliably with DREST (all tested by our tox configuration):

| Python | Django | DRF | OK |
| ------ | ------ | --- | --- |
| 2.7 | 1.8 | 3.1 | YES |
| 2.7 | 1.8 | 3.2 | YES |
| 2.7 | 1.8 | 3.3 | YES |
| 2.7 | 1.8 | 3.4 | YES |
| 2.7 | 1.9 | 3.1 | NO<sup>1</sup> |
| 2.7 | 1.9 | 3.2 | YES |
| 2.7 | 1.9 | 3.3 | YES |
| 2.7 | 1.9 | 3.4 | YES |
| 2.7 | 1.10 | 3.2 | NO<sup>3</sup> |
| 2.7 | 1.10 | 3.3 | NO<sup>3</sup> |
| 2.7 | 1.10 | 3.4 | YES |
| 2.7 | 1.10 | 3.5 | YES |
| 2.7 | 1.10 | 3.6 | YES |
| 2.7 | 1.11 | 3.4 | YES |
| 2.7 | 1.11 | 3.5 | YES |
| 2.7 | 1.11 | 3.6 | YES |
| 3.3 | 1.8 | 3.1 | YES |
| 3.3 | 1.8 | 3.2 | YES |
| 3.3 | 1.8 | 3.3 | YES |
| 3.3 | 1.8 | 3.4 | YES |
| 3.3 | 1.9 | x.x | NO<sup>2</sup> |
| 3.3 | 1.10 | x.x | NO<sup>4</sup> |
| 3.3 | 1.11 | x.x | NO<sup>5</sup> |
| 3.4 | 1.8 | 3.1 | YES |
| 3.4 | 1.8 | 3.2 | YES |
| 3.4 | 1.8 | 3.3 | YES |
| 3.4 | 1.8 | 3.4 | YES |
| 3.4 | 1.9 | 3.1 | NO<sup>1</sup> |
| 3.4 | 1.9 | 3.2 | YES |
| 3.4 | 1.9 | 3.3 | YES |
| 3.4 | 1.9 | 3.4 | YES |
| 3.4 | 1.10 | 3.2 | NO<sup>3</sup> |
| 3.4 | 1.10 | 3.3 | NO<sup>3</sup> |
| 3.4 | 1.10 | 3.4 | YES |
| 3.4 | 1.10 | 3.5 | YES |
| 3.4 | 1.10 | 3.6 | YES |
| 3.4 | 1.11 | 3.3 | NO<sup>3</sup> |
| 3.4 | 1.11 | 3.4 | YES |
| 3.4 | 1.11 | 3.5 | YES |
| 3.5 | 1.8 | 3.1 | YES |
| 3.5 | 1.8 | 3.2 | YES |
| 3.5 | 1.8 | 3.3 | YES |
| 3.5 | 1.8 | 3.4 | YES |
| 3.5 | 1.9 | 3.1 | NO<sup>1</sup> |
| 3.5 | 1.9 | 3.2 | YES |
| 3.5 | 1.9 | 3.3 | YES |
| 3.5 | 1.9 | 3.4 | YES |
| 3.5 | 1.10 | 3.2 | NO<sup>3</sup> |
| 3.5 | 1.10 | 3.3 | NO<sup>3</sup> |
| 3.5 | 1.10 | 3.4 | YES |
| 3.5 | 1.10 | 3.5 | YES |
| 3.5 | 1.10 | 3.6 | YES |
| 3.5 | 1.11 | 3.4 | YES |
| 3.5 | 1.11 | 3.5 | YES |
| 3.5 | 1.11 | 3.6 | YES |
| 3.5 | 2.0 | 3.7 | YES |
| 3.5 | 2.0 | 3.8 | YES |
| 3.5 | 2.0 | 3.9 | YES |
| 3.5 | 2.1 | 3.7 | YES |
| 3.5 | 2.1 | 3.8 | YES |
| 3.5 | 2.1 | 3.9 | YES |
| 3.6 | 1.11 | 3.7 | YES |
| 3.6 | 2.0 | 3.7 | YES |
| 3.6 | 2.1 | 3.7 | YES |
| 3.6 | 1.11 | 3.8 | YES |
| 3.6 | 2.0 | 3.8 | YES |
| 3.6 | 2.1 | 3.8 | YES |
| 3.6 | 2.0 | 3.9 | YES |
| 3.6 | 2.1 | 3.9 | YES |

* 1: Django 1.9 is not compatible with DRF 3.1
* 2: Django 1.9 is not compatible with Python 3.3
* 3: Django 1.10 is only compatible with DRF 3.4+
* 4: Django 1.10 requires Python 2.7, 3.4, 3.5
* 5: Django 1.11 requires Python 2.7, 3.4, 3.5, 3.6
# Compatibility

We actively support the following:

* Python: 2.7, 3.5, 3.6, 3.7
* Django: 1.11, 2.0, 2.2
* Django Rest Framework: 3.4 ~ 3.10

**Note:** Some combinations are not supported. For up-to-date information on actively supported/tested combinations, see the tox.ini file.

# Contributing

See [Contributing](CONTRIBUTING.md).
Expand Down
6 changes: 3 additions & 3 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,6 @@ Maintainers
Requirements
============

- Python (2.7, 3.4, 3.5, 3.6)
- Django (1.8, 1.9, 1.10, 1.11, 2.0, 2.1)
- Django REST Framework (3.1, 3.2, 3.3, 3.4, 3.5, 3.6, 3.7, 3.8, 3.9)
- Python (2.7, 3.5, 3.6, 3.7)
- Django (1.11, 2.0, 2.1, 2.2)
- Django REST Framework (3.1, 3.2, 3.3, 3.4, 3.5, 3.6, 3.7, 3.8, 3.9, 3.10)
3 changes: 2 additions & 1 deletion install_requires.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
Django>=1.8,<2.0
djangorestframework>=3.1.0,<3.8
djangorestframework>=3.1.0,<3.10
inflection==0.3.1
requests
pytz
4 changes: 2 additions & 2 deletions install_requires_python3.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Django>=1.8,<2.2
djangorestframework>=3.1.0,<3.10
Django>=1.8,<2.3
djangorestframework>=3.1.0,<3.11
inflection==0.3.1
requests
2 changes: 1 addition & 1 deletion requirements.benchmark.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ pytest==2.7.2
psycopg2==2.5.1
tox-pyenv==1.0.2
tox==2.3.1
djay==0.0.4
djay==0.0.8
2 changes: 1 addition & 1 deletion requirements.test.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ pytest==3.7.1
psycopg2==2.7.5
tox-pyenv==1.1.0
tox==3.2.1
djay==0.0.4
djay==0.0.8
4 changes: 2 additions & 2 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,5 @@ pytest-sugar==0.9.0
pytest==3.2.5 # last supported version python 2
psycopg2==2.7.3.2
tox-pyenv==1.1.0
tox==2.9.1
djay==0.0.4
tox==3.13.2
djay==0.0.8
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
NAME = 'dynamic-rest'
DESCRIPTION = 'Adds Dynamic API support to Django REST Framework.'
URL = 'http://github.com/AltSchool/dynamic-rest'
VERSION = '1.9.4'
VERSION = '1.9.5'
SCRIPTS = ['manage.py']

setup(
Expand Down
2 changes: 1 addition & 1 deletion tests/integration/test_blueprints.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ def test_blueprints(self):
# generate an API endpoint for the generated model
application.execute('generate api v0 foo --not-interactive')
# start the server
server = application.execute('serve 9123', async=True)
server = application.execute('serve 9123', run_async=True)
time.sleep(2)

# verify a simple POST flow for the "foo" resource
Expand Down
27 changes: 11 additions & 16 deletions tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -4,31 +4,26 @@ addopts=--tb=short
[tox]
envlist =
py27-lint,
{py27,py34,py35}-django18-drf{31,32,33,34},
{py27,py34,py35}-django111-drf{34,35,36,37},
{py35}-django{20,21}-drf{37,38,39},
{py36}-django{20,21}-drf{38,39},
{py27,py35,py36}-django111-drf{34,35,36,37,39},
{py35}-django{20,21,22}-drf{37,38,39,310},
{py36,py37}-django{20,21,22}-drf{38,39,310},

[testenv]
commands = ./runtests.py --fast {posargs} --coverage -rw
setenv =
PYTHONDONTWRITEBYTECODE=1
deps =
django18: Django==1.8.14
django19: Django==1.9.9
django110: Django==1.10.0
django111: Django==1.11.2
django20: Django==2.0.1
django21: Django==2.1.8
drf31: djangorestframework==3.1.0
drf32: djangorestframework==3.2.0
drf33: djangorestframework==3.3.0
drf34: djangorestframework==3.4.0
drf35: djangorestframework==3.5.0
django111: Django==1.11.7
django20: Django==2.0.13
django21: Django==2.1.10
django22: Django==2.2.3
drf34: djangorestframework==3.4.7
drf35: djangorestframework==3.5.4
drf36: djangorestframework==3.6.2
drf37: djangorestframework==3.7.7
drf38: djangorestframework==3.8.2
drf39: djangorestframework==3.9.2
drf39: djangorestframework==3.9.4
drf310: djangorestframework==3.10.2
-rrequirements.test.txt

[testenv:py27-lint]
Expand Down

0 comments on commit 045a3f7

Please sign in to comment.