diff --git a/.travis.yml b/.travis.yml index c64a742..4bb7507 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,8 +6,8 @@ python: - 3.8 env: - - TOXENV=django22-drf39 - - TOXENV=django22-drf310 + - TOXENV=django22-drf311 + - TOXENV=django22-drf312 - TOXENV=django22-drflatest - TOXENV=quality - TOXENV=docs diff --git a/requirements/base.in b/requirements/base.in index 821fe49..7bc47da 100644 --- a/requirements/base.in +++ b/requirements/base.in @@ -5,7 +5,10 @@ Django>=1.11,<2.3 django-model-utils>=2.3.1 -# Use the same DRF version as edx-platform -djangorestframework>=3.2.0,<3.10 jsonfield2 pytz + + +# Don't let edx-platform upgrade DRF past versions that have already been tested here +djangorestframework<3.13.0 + diff --git a/requirements/base.txt b/requirements/base.txt index 0695e96..c5b90d9 100644 --- a/requirements/base.txt +++ b/requirements/base.txt @@ -4,9 +4,9 @@ # # make upgrade # -django-model-utils==4.0.0 # via -r requirements/base.in -django==2.2.14 # via -c requirements/constraints.txt, -r requirements/base.in, django-model-utils, jsonfield2 -djangorestframework==3.9.4 # via -r requirements/base.in +django-model-utils==4.1.0 # via -r requirements/base.in +django==2.2.17 # via -c requirements/constraints.txt, -r requirements/base.in, django-model-utils, djangorestframework, jsonfield2 +djangorestframework==3.12.2 # via -r requirements/base.in jsonfield2==3.0.3 # via -c requirements/constraints.txt, -r requirements/base.in -pytz==2020.1 # via -r requirements/base.in, django -sqlparse==0.3.1 # via django +pytz==2020.4 # via -r requirements/base.in, django +sqlparse==0.4.1 # via django diff --git a/requirements/dev.txt b/requirements/dev.txt index c327390..e6e8f48 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -6,25 +6,26 @@ # alabaster==0.7.12 # via -r requirements/docs.txt, -r requirements/test.txt, sphinx astroid==2.3.3 # via -r requirements/test.txt, pylint, pylint-celery -attrs==19.3.0 # via -r requirements/test.txt, pytest -babel==2.8.0 # via -r requirements/docs.txt, -r requirements/test.txt, sphinx -certifi==2020.6.20 # via -r requirements/docs.txt, -r requirements/test.txt, requests +attrs==20.3.0 # via -r requirements/test.txt, pytest +babel==2.9.0 # via -r requirements/docs.txt, -r requirements/test.txt, sphinx +certifi==2020.11.8 # via -r requirements/docs.txt, -r requirements/test.txt, requests chardet==3.0.4 # via -r requirements/docs.txt, -r requirements/test.txt, requests click-log==0.3.2 # via -r requirements/test.txt, edx-lint click==7.1.2 # via -r requirements/test.txt, click-log, edx-lint -coverage==5.2 # via -r requirements/test.txt, pytest-cov +coverage==5.3 # via -r requirements/test.txt, pytest-cov ddt==1.4.1 # via -r requirements/test.txt -django-model-utils==4.0.0 # via -r requirements/base.txt, -r requirements/test.txt -django==2.2.14 # via -c requirements/constraints.txt, -r requirements/base.txt, -r requirements/test.txt, django-model-utils, jsonfield2 -djangorestframework==3.9.4 # via -r requirements/base.txt, -r requirements/test.txt +django-model-utils==4.1.0 # via -r requirements/base.txt, -r requirements/test.txt +django==2.2.17 # via -c requirements/constraints.txt, -r requirements/base.txt, -r requirements/test.txt, django-model-utils, djangorestframework, jsonfield2 +djangorestframework==3.12.2 # via -r requirements/base.txt, -r requirements/test.txt docutils==0.16 # via -r requirements/docs.txt, -r requirements/test.txt, sphinx -edx-lint==1.5.0 # via -r requirements/test.txt -factory-boy==2.12.0 # via -r requirements/test.txt -faker==4.1.1 # via -r requirements/test.txt, factory-boy -freezegun==0.3.15 # via -r requirements/test.txt +edx-lint==1.5.2 # via -r requirements/test.txt +factory-boy==3.1.0 # via -r requirements/test.txt +faker==4.18.0 # via -r requirements/test.txt, factory-boy +freezegun==1.0.0 # via -r requirements/test.txt idna==2.10 # via -r requirements/docs.txt, -r requirements/test.txt, requests imagesize==1.2.0 # via -r requirements/docs.txt, -r requirements/test.txt, sphinx -importlib-metadata==1.7.0 # via -r requirements/test.txt, pluggy, pytest +importlib-metadata==2.1.0 # via -r requirements/test.txt, pluggy, pytest +iniconfig==1.1.1 # via -r requirements/test.txt, pytest isort==4.3.21 # via -r requirements/test.txt, pylint jinja2==2.11.2 # via -r requirements/docs.txt, -r requirements/test.txt, sphinx jsonfield2==3.0.3 # via -c requirements/constraints.txt, -r requirements/base.txt, -r requirements/test.txt @@ -32,29 +33,28 @@ lazy-object-proxy==1.4.3 # via -r requirements/test.txt, astroid markupsafe==1.1.1 # via -r requirements/docs.txt, -r requirements/test.txt, jinja2 mccabe==0.6.1 # via -r requirements/test.txt, pylint mock==3.0.5 # via -r requirements/test.txt -more-itertools==8.4.0 # via -r requirements/test.txt, pytest -packaging==20.4 # via -r requirements/docs.txt, -r requirements/test.txt, pytest, sphinx +packaging==20.7 # via -r requirements/docs.txt, -r requirements/test.txt, pytest, sphinx pathlib2==2.3.5 # via -r requirements/test.txt, pytest pluggy==0.13.1 # via -r requirements/test.txt, pytest pockets==0.9.1 # via -r requirements/docs.txt, -r requirements/test.txt, sphinxcontrib-napoleon py==1.9.0 # via -r requirements/test.txt, pytest pycodestyle==2.6.0 # via -r requirements/test.txt -pygments==2.6.1 # via -r requirements/docs.txt, -r requirements/test.txt, sphinx +pygments==2.7.2 # via -r requirements/docs.txt, -r requirements/test.txt, sphinx pylint-celery==0.3 # via -r requirements/test.txt, edx-lint pylint-django==2.0.11 # via -r requirements/test.txt, edx-lint pylint-plugin-utils==0.6 # via -r requirements/test.txt, pylint-celery, pylint-django pylint==2.4.4 # via -r requirements/test.txt, edx-lint, pylint-celery, pylint-django, pylint-plugin-utils pyparsing==2.4.7 # via -r requirements/docs.txt, -r requirements/test.txt, packaging -pytest-cov==2.10.0 # via -r requirements/test.txt -pytest-django==3.9.0 # via -r requirements/test.txt -pytest==5.4.3 # via -r requirements/test.txt, pytest-cov, pytest-django +pytest-cov==2.10.1 # via -r requirements/test.txt +pytest-django==4.1.0 # via -r requirements/test.txt +pytest==6.1.2 # via -r requirements/test.txt, pytest-cov, pytest-django python-dateutil==2.8.1 # via -r requirements/test.txt, faker, freezegun -pytz==2020.1 # via -r requirements/base.txt, -r requirements/docs.txt, -r requirements/test.txt, babel, django -requests==2.24.0 # via -r requirements/docs.txt, -r requirements/test.txt, sphinx -six==1.15.0 # via -r requirements/docs.txt, -r requirements/test.txt, astroid, edx-lint, freezegun, mock, packaging, pathlib2, pockets, python-dateutil, sphinxcontrib-napoleon +pytz==2020.4 # via -r requirements/base.txt, -r requirements/docs.txt, -r requirements/test.txt, babel, django +requests==2.25.0 # via -r requirements/docs.txt, -r requirements/test.txt, sphinx +six==1.15.0 # via -r requirements/docs.txt, -r requirements/test.txt, astroid, edx-lint, mock, pathlib2, pockets, python-dateutil, sphinxcontrib-napoleon snowballstemmer==2.0.0 # via -r requirements/docs.txt, -r requirements/test.txt, sphinx sphinx-rtd-theme==0.5.0 # via -r requirements/docs.txt, -r requirements/test.txt -sphinx==3.1.2 # via -r requirements/docs.txt, -r requirements/test.txt, sphinx-rtd-theme +sphinx==3.3.1 # via -r requirements/docs.txt, -r requirements/test.txt, sphinx-rtd-theme sphinxcontrib-applehelp==1.0.2 # via -r requirements/docs.txt, -r requirements/test.txt, sphinx sphinxcontrib-devhelp==1.0.2 # via -r requirements/docs.txt, -r requirements/test.txt, sphinx sphinxcontrib-htmlhelp==1.0.3 # via -r requirements/docs.txt, -r requirements/test.txt, sphinx @@ -62,11 +62,11 @@ sphinxcontrib-jsmath==1.0.1 # via -r requirements/docs.txt, -r requirements/tes sphinxcontrib-napoleon==0.7 # via -r requirements/docs.txt, -r requirements/test.txt sphinxcontrib-qthelp==1.0.3 # via -r requirements/docs.txt, -r requirements/test.txt, sphinx sphinxcontrib-serializinghtml==1.1.4 # via -r requirements/docs.txt, -r requirements/test.txt, sphinx -sqlparse==0.3.1 # via -r requirements/base.txt, -r requirements/test.txt, django +sqlparse==0.4.1 # via -r requirements/base.txt, -r requirements/test.txt, django text-unidecode==1.3 # via -r requirements/test.txt, faker +toml==0.10.2 # via -r requirements/test.txt, pytest typed-ast==1.4.1 # via -r requirements/test.txt, astroid -urllib3==1.25.9 # via -r requirements/docs.txt, -r requirements/test.txt, requests -wcwidth==0.2.5 # via -r requirements/test.txt, pytest +urllib3==1.26.2 # via -r requirements/docs.txt, -r requirements/test.txt, requests wrapt==1.11.2 # via -r requirements/test.txt, astroid zipp==1.2.0 # via -c requirements/constraints.txt, -r requirements/test.txt, importlib-metadata diff --git a/requirements/docs.txt b/requirements/docs.txt index 8eded12..882509f 100644 --- a/requirements/docs.txt +++ b/requirements/docs.txt @@ -5,24 +5,24 @@ # make upgrade # alabaster==0.7.12 # via sphinx -babel==2.8.0 # via sphinx -certifi==2020.6.20 # via requests +babel==2.9.0 # via sphinx +certifi==2020.11.8 # via requests chardet==3.0.4 # via requests docutils==0.16 # via sphinx idna==2.10 # via requests imagesize==1.2.0 # via sphinx jinja2==2.11.2 # via sphinx markupsafe==1.1.1 # via jinja2 -packaging==20.4 # via sphinx +packaging==20.7 # via sphinx pockets==0.9.1 # via sphinxcontrib-napoleon -pygments==2.6.1 # via sphinx +pygments==2.7.2 # via sphinx pyparsing==2.4.7 # via packaging -pytz==2020.1 # via babel -requests==2.24.0 # via sphinx -six==1.15.0 # via packaging, pockets, sphinxcontrib-napoleon +pytz==2020.4 # via babel +requests==2.25.0 # via sphinx +six==1.15.0 # via pockets, sphinxcontrib-napoleon snowballstemmer==2.0.0 # via sphinx sphinx-rtd-theme==0.5.0 # via -r requirements/docs.in -sphinx==3.1.2 # via -r requirements/docs.in, sphinx-rtd-theme +sphinx==3.3.1 # via -r requirements/docs.in, sphinx-rtd-theme sphinxcontrib-applehelp==1.0.2 # via sphinx sphinxcontrib-devhelp==1.0.2 # via sphinx sphinxcontrib-htmlhelp==1.0.3 # via sphinx @@ -30,7 +30,7 @@ sphinxcontrib-jsmath==1.0.1 # via sphinx sphinxcontrib-napoleon==0.7 # via -r requirements/docs.in sphinxcontrib-qthelp==1.0.3 # via sphinx sphinxcontrib-serializinghtml==1.1.4 # via sphinx -urllib3==1.25.9 # via requests +urllib3==1.26.2 # via requests # The following packages are considered to be unsafe in a requirements file: # setuptools diff --git a/requirements/pip-tools.txt b/requirements/pip-tools.txt index 1ae2c19..60a230a 100644 --- a/requirements/pip-tools.txt +++ b/requirements/pip-tools.txt @@ -5,7 +5,7 @@ # make upgrade # click==7.1.2 # via pip-tools -pip-tools==5.2.1 # via -r requirements/pip-tools.in +pip-tools==5.4.0 # via -r requirements/pip-tools.in six==1.15.0 # via pip-tools # The following packages are considered to be unsafe in a requirements file: diff --git a/requirements/test.txt b/requirements/test.txt index 7f701a5..8013daa 100644 --- a/requirements/test.txt +++ b/requirements/test.txt @@ -6,23 +6,24 @@ # alabaster==0.7.12 # via -r requirements/docs.txt, sphinx astroid==2.3.3 # via pylint, pylint-celery -attrs==19.3.0 # via pytest -babel==2.8.0 # via -r requirements/docs.txt, sphinx -certifi==2020.6.20 # via -r requirements/docs.txt, requests +attrs==20.3.0 # via pytest +babel==2.9.0 # via -r requirements/docs.txt, sphinx +certifi==2020.11.8 # via -r requirements/docs.txt, requests chardet==3.0.4 # via -r requirements/docs.txt, requests click-log==0.3.2 # via edx-lint click==7.1.2 # via click-log, edx-lint -coverage==5.2 # via pytest-cov +coverage==5.3 # via pytest-cov ddt==1.4.1 # via -r requirements/test.in -django-model-utils==4.0.0 # via -r requirements/base.txt +django-model-utils==4.1.0 # via -r requirements/base.txt docutils==0.16 # via -r requirements/docs.txt, sphinx -edx-lint==1.5.0 # via -r requirements/test.in -factory-boy==2.12.0 # via -r requirements/test.in -faker==4.1.1 # via factory-boy -freezegun==0.3.15 # via -r requirements/test.in +edx-lint==1.5.2 # via -r requirements/test.in +factory-boy==3.1.0 # via -r requirements/test.in +faker==4.18.0 # via factory-boy +freezegun==1.0.0 # via -r requirements/test.in idna==2.10 # via -r requirements/docs.txt, requests imagesize==1.2.0 # via -r requirements/docs.txt, sphinx -importlib-metadata==1.7.0 # via pluggy, pytest +importlib-metadata==2.1.0 # via pluggy, pytest +iniconfig==1.1.1 # via pytest isort==4.3.21 # via -r requirements/test.in, pylint jinja2==2.11.2 # via -r requirements/docs.txt, sphinx jsonfield2==3.0.3 # via -c requirements/constraints.txt, -r requirements/base.txt @@ -30,29 +31,28 @@ lazy-object-proxy==1.4.3 # via astroid markupsafe==1.1.1 # via -r requirements/docs.txt, jinja2 mccabe==0.6.1 # via pylint mock==3.0.5 # via -r requirements/test.in -more-itertools==8.4.0 # via pytest -packaging==20.4 # via -r requirements/docs.txt, pytest, sphinx +packaging==20.7 # via -r requirements/docs.txt, pytest, sphinx pathlib2==2.3.5 # via pytest pluggy==0.13.1 # via pytest pockets==0.9.1 # via -r requirements/docs.txt, sphinxcontrib-napoleon py==1.9.0 # via pytest pycodestyle==2.6.0 # via -r requirements/test.in -pygments==2.6.1 # via -r requirements/docs.txt, sphinx +pygments==2.7.2 # via -r requirements/docs.txt, sphinx pylint-celery==0.3 # via edx-lint pylint-django==2.0.11 # via edx-lint pylint-plugin-utils==0.6 # via pylint-celery, pylint-django pylint==2.4.4 # via edx-lint, pylint-celery, pylint-django, pylint-plugin-utils pyparsing==2.4.7 # via -r requirements/docs.txt, packaging -pytest-cov==2.10.0 # via -r requirements/test.in -pytest-django==3.9.0 # via -r requirements/test.in -pytest==5.4.3 # via pytest-cov, pytest-django +pytest-cov==2.10.1 # via -r requirements/test.in +pytest-django==4.1.0 # via -r requirements/test.in +pytest==6.1.2 # via pytest-cov, pytest-django python-dateutil==2.8.1 # via -r requirements/test.in, faker, freezegun -pytz==2020.1 # via -r requirements/base.txt, -r requirements/docs.txt, babel, django -requests==2.24.0 # via -r requirements/docs.txt, sphinx -six==1.15.0 # via -r requirements/docs.txt, astroid, edx-lint, freezegun, mock, packaging, pathlib2, pockets, python-dateutil, sphinxcontrib-napoleon +pytz==2020.4 # via -r requirements/base.txt, -r requirements/docs.txt, babel, django +requests==2.25.0 # via -r requirements/docs.txt, sphinx +six==1.15.0 # via -r requirements/docs.txt, astroid, edx-lint, mock, pathlib2, pockets, python-dateutil, sphinxcontrib-napoleon snowballstemmer==2.0.0 # via -r requirements/docs.txt, sphinx sphinx-rtd-theme==0.5.0 # via -r requirements/docs.txt -sphinx==3.1.2 # via -r requirements/docs.txt, sphinx-rtd-theme +sphinx==3.3.1 # via -r requirements/docs.txt, sphinx-rtd-theme sphinxcontrib-applehelp==1.0.2 # via -r requirements/docs.txt, sphinx sphinxcontrib-devhelp==1.0.2 # via -r requirements/docs.txt, sphinx sphinxcontrib-htmlhelp==1.0.3 # via -r requirements/docs.txt, sphinx @@ -60,11 +60,11 @@ sphinxcontrib-jsmath==1.0.1 # via -r requirements/docs.txt, sphinx sphinxcontrib-napoleon==0.7 # via -r requirements/docs.txt sphinxcontrib-qthelp==1.0.3 # via -r requirements/docs.txt, sphinx sphinxcontrib-serializinghtml==1.1.4 # via -r requirements/docs.txt, sphinx -sqlparse==0.3.1 # via -r requirements/base.txt, django +sqlparse==0.4.1 # via -r requirements/base.txt, django text-unidecode==1.3 # via faker +toml==0.10.2 # via pytest typed-ast==1.4.1 # via astroid -urllib3==1.25.9 # via -r requirements/docs.txt, requests -wcwidth==0.2.5 # via pytest +urllib3==1.26.2 # via -r requirements/docs.txt, requests wrapt==1.11.2 # via astroid zipp==1.2.0 # via -c requirements/constraints.txt, importlib-metadata diff --git a/requirements/tox.txt b/requirements/tox.txt index e5e416c..f276cb1 100644 --- a/requirements/tox.txt +++ b/requirements/tox.txt @@ -7,14 +7,14 @@ appdirs==1.4.4 # via virtualenv distlib==0.3.1 # via virtualenv filelock==3.0.12 # via tox, virtualenv -importlib-metadata==1.7.0 # via pluggy, tox, virtualenv -importlib-resources==3.0.0 # via virtualenv -packaging==20.4 # via tox +importlib-metadata==2.1.0 # via pluggy, tox, virtualenv +importlib-resources==3.2.1 # via virtualenv +packaging==20.7 # via tox pluggy==0.13.1 # via tox py==1.9.0 # via tox pyparsing==2.4.7 # via packaging -six==1.15.0 # via packaging, tox, virtualenv -toml==0.10.1 # via tox -tox==3.16.1 # via -r requirements/tox.in -virtualenv==20.0.25 # via tox +six==1.15.0 # via tox, virtualenv +toml==0.10.2 # via tox +tox==3.20.1 # via -r requirements/tox.in +virtualenv==20.2.1 # via tox zipp==1.2.0 # via -c requirements/constraints.txt, importlib-metadata, importlib-resources diff --git a/requirements/travis.txt b/requirements/travis.txt index f452a1f..b49ce14 100644 --- a/requirements/travis.txt +++ b/requirements/travis.txt @@ -5,24 +5,24 @@ # make upgrade # appdirs==1.4.4 # via -r requirements/tox.txt, virtualenv -certifi==2020.6.20 # via requests +certifi==2020.11.8 # via requests chardet==3.0.4 # via requests -coverage==5.2 # via coveralls -coveralls==2.1.0 # via -r requirements/travis.in +coverage==5.3 # via coveralls +coveralls==2.2.0 # via -r requirements/travis.in distlib==0.3.1 # via -r requirements/tox.txt, virtualenv docopt==0.6.2 # via coveralls filelock==3.0.12 # via -r requirements/tox.txt, tox, virtualenv idna==2.10 # via requests -importlib-metadata==1.7.0 # via -r requirements/tox.txt, pluggy, tox, virtualenv -importlib-resources==3.0.0 # via -r requirements/tox.txt, virtualenv -packaging==20.4 # via -r requirements/tox.txt, tox +importlib-metadata==2.1.0 # via -r requirements/tox.txt, pluggy, tox, virtualenv +importlib-resources==3.2.1 # via -r requirements/tox.txt, virtualenv +packaging==20.7 # via -r requirements/tox.txt, tox pluggy==0.13.1 # via -r requirements/tox.txt, tox py==1.9.0 # via -r requirements/tox.txt, tox pyparsing==2.4.7 # via -r requirements/tox.txt, packaging -requests==2.24.0 # via coveralls -six==1.15.0 # via -r requirements/tox.txt, packaging, tox, virtualenv -toml==0.10.1 # via -r requirements/tox.txt, tox -tox==3.16.1 # via -r requirements/tox.txt -urllib3==1.25.9 # via requests -virtualenv==20.0.25 # via -r requirements/tox.txt, tox +requests==2.25.0 # via coveralls +six==1.15.0 # via -r requirements/tox.txt, tox, virtualenv +toml==0.10.2 # via -r requirements/tox.txt, tox +tox==3.20.1 # via -r requirements/tox.txt +urllib3==1.26.2 # via requests +virtualenv==20.2.1 # via -r requirements/tox.txt, tox zipp==1.2.0 # via -c requirements/constraints.txt, -r requirements/tox.txt, importlib-metadata, importlib-resources diff --git a/submissions/__init__.py b/submissions/__init__.py index 50d8344..a7254d1 100644 --- a/submissions/__init__.py +++ b/submissions/__init__.py @@ -1,2 +1,2 @@ """ API for creating submissions and scores. """ -__version__ = '3.2.2' +__version__ = '3.2.3' diff --git a/tox.ini b/tox.ini index 06fcbd9..8b8aa65 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = py{35,38}-django22-drf{39,310,latest}, py38-django30-drf{latest} +envlist = py{35,38}-django22-drf{311,312,latest}, py38-django30-drf{latest} [testenv] @@ -7,8 +7,8 @@ deps = -r{toxinidir}/requirements/test.txt django22: Django>=2.2,<2.3 django30: Django>=3.0,<3.1 - drf39: djangorestframework<3.10.0 - drf310: djangorestframework<3.11.0 + drf311: djangorestframework<3.12.0 + drf312: djangorestframework<3.13.0 drflatest: djangorestframework commands = python -Wd -m pytest {posargs}