Skip to content

Commit

Permalink
Merge pull request #23 from edx/BOM-1076
Browse files Browse the repository at this point in the history
Added Support for Django 2.2
  • Loading branch information
mraarif authored Dec 4, 2019
2 parents 4b0ef23 + 84a9910 commit 2005312
Show file tree
Hide file tree
Showing 18 changed files with 167 additions and 137 deletions.
25 changes: 16 additions & 9 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,31 +1,38 @@
language: python

python:
- 2.7
- 3.5
- 2.7
- 3.5
env:
- TOXENV=django18-celery3
- TOXENV=django19-celery3
- TOXENV=django110-celery3
- TOXENV=django111
matrix:
include:
- python: 3.5
env: TOXENV=django20
- python: 3.5
env: TOXENV=django21
- python: 3.5
env: TOXENV=django22
- python: 3.5
env: TOXENV=quality
- python: 3.5
env: TOXENV=docs

cache:
- pip
- pip
install:
- pip install -r requirements/travis.txt
- pip install -r requirements/travis.txt
script:
- tox
- tox
after_success:
- codecov
- codecov
deploy:
provider: pypi
user: edx
distributions: sdist bdist_wheel
on:
tags: true
python: 3.5
condition: '$TOXENV = quality'
password:
secure: iFcUH/SUDI36SMA9XxhIT565J99PBP7k3dnyk+Bx8/rUfac8e7IkmxA0S9Lh+aRdbXIxnxSEjxtsmvOeU2876+S2NSMsxt4YAaWHNISwxIlrLg5yJ3fnT5ZjnZYDaFoLS3Z/Ye7wM5TvYGZYHqJBXXbdBkDFzAnZhYDVTneTeDQZ3gGrmph/tFK5QXpCLtU0Wmx5eCN/y6p9JhBHu/d3bCH2pU1+rgzDzJwcQg7tbZTh+ZzwaD3gWXPLsmHL8RdqRWIJJ6Wto13AOOoenJCIc5YUoZCxmS3Ywhlmy2sVeRmCrT95Jq1I1rGcf9HrBDV324BmxFbPVGCaApH3e2tofnPeFZIidVxTgmuh9XlIDR0CcYCfxfCttxLA8b/Fr6kpBbwvfEHsJL5g0mbOc++/pchJ5sgcW5aR5Hv8+4QPXSc0GNCkzII5nznV5unS78jnj6U5/x5iXd1OxiBN4p7rGwn39BN5ExL5neK/A0NRyUamRp0JNbBM2tZeOZadzbm44u9s94JHdqucbON3GZIVuoyXHAfaLMCNfHP4MHaOy7X9pW2H60/gGiQgCMgdSXBd15dXxYcEpjhZ+dR3wf+Z78tX3U50m4fr/ddthlHm7dfX4x+j8varQOSmIP/v5aPPRsf75s8owqSwyLoEV4rtioEylK9m548IvlcocOFf8GI=
12 changes: 6 additions & 6 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,12 @@ docs: ## generate Sphinx HTML documentation, including API docs
upgrade: export CUSTOM_COMPILE_COMMAND=make upgrade
upgrade: ## update the requirements/*.txt files with the latest packages satisfying requirements/*.in
pip install -q pip-tools
pip-compile --upgrade -o requirements/base.txt requirements/base.in
pip-compile --upgrade -o requirements/dev.txt requirements/dev.in requirements/quality.in
pip-compile --upgrade -o requirements/doc.txt requirements/base.in requirements/doc.in
pip-compile --upgrade -o requirements/quality.txt requirements/quality.in
pip-compile --upgrade -o requirements/test.txt requirements/base.in requirements/test.in
pip-compile --upgrade -o requirements/travis.txt requirements/travis.in
pip-compile --rebuild --upgrade -o requirements/base.txt requirements/base.in
pip-compile --rebuild --upgrade -o requirements/dev.txt requirements/dev.in requirements/quality.in
pip-compile --rebuild --upgrade -o requirements/doc.txt requirements/base.in requirements/doc.in
pip-compile --rebuild --upgrade -o requirements/quality.txt requirements/quality.in
pip-compile --rebuild --upgrade -o requirements/test.txt requirements/base.in requirements/test.in
pip-compile --rebuild --upgrade -o requirements/travis.txt requirements/travis.in
# Workaround for packages that break pip-tools due to python version specifiers somewhere upstream
# See https://github.com/nvie/pip-tools/issues/206
cat requirements/dev-extra.txt >> requirements/dev.txt
Expand Down
2 changes: 1 addition & 1 deletion celery_utils/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,6 @@

from __future__ import absolute_import, unicode_literals

__version__ = '0.3.0'
__version__ = '0.3.1'

default_app_config = 'celery_utils.apps.CeleryUtilsConfig' # pylint: disable=invalid-name
3 changes: 1 addition & 2 deletions celery_utils/chordable_django_backend.py
Original file line number Diff line number Diff line change
Expand Up @@ -226,5 +226,4 @@ def get_suitable_app(cls, given_app):
return_app = deepcopy(given_app)
return_app.backend = ChordableDjangoBackend(return_app)
return return_app
else:
return given_app
return given_app
2 changes: 1 addition & 1 deletion celery_utils/migrations/0002_chordable_django_backend.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ class Migration(migrations.Migration):
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('serialized_callback', models.TextField()),
('callback_result', models.OneToOneField(related_name='chorddata_callback_result', to='djcelery.TaskMeta')),
('callback_result', models.OneToOneField(related_name='chorddata_callback_result', to='djcelery.TaskMeta', on_delete=models.CASCADE)),
('completed_results', models.ManyToManyField(related_name='chorddata_sub_results', to='djcelery.TaskMeta')),
],
),
Expand Down
2 changes: 1 addition & 1 deletion celery_utils/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ class ChordData(models.Model):

completed_results = models.ManyToManyField(TaskMeta, related_name='chorddata_sub_results')
serialized_callback = models.TextField() # A frozen, serialized callback signature
callback_result = models.OneToOneField(TaskMeta, related_name='chorddata_callback_result')
callback_result = models.OneToOneField(TaskMeta, related_name='chorddata_callback_result', on_delete=models.CASCADE)

def __str__(self):
return "{} depends on {} subtasks, status {}".format(
Expand Down
2 changes: 1 addition & 1 deletion requirements/base.in
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,6 @@
django-celery
future
celery>= 3.1.25,<4.0
Django >= 1.8,<2.0
Django >= 1.11
django-model-utils==3.0.0
jsonfield
8 changes: 4 additions & 4 deletions requirements/base.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,10 @@ amqp==1.4.9 # via kombu
anyjson==0.3.3 # via kombu
billiard==3.3.0.23 # via celery
celery==3.1.26.post2
django-celery==3.3.0
django-celery==3.3.1
django-model-utils==3.0.0
django==1.11.22
future==0.17.1
django==1.11.26
future==0.18.2
jsonfield==2.0.2
kombu==3.0.37 # via celery
pytz==2019.1 # via celery, django
pytz==2019.3 # via celery, django
79 changes: 47 additions & 32 deletions requirements/dev.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,59 +5,74 @@
# make upgrade
#
argparse==1.4.0 # via caniusepython3
backports.functools-lru-cache==1.5 # via caniusepython3, isort
astroid==1.6.6 # via pylint, pylint-celery
backports.functools-lru-cache==1.6.1 # via astroid, caniusepython3, isort, pylint
backports.os==0.1.1 # via path.py
bleach==3.1.0 # via readme-renderer
caniusepython3==7.1.0
certifi==2019.6.16 # via requests
caniusepython3==7.2.0
certifi==2019.11.28 # via requests
chardet==3.0.4 # via requests
click==7.0 # via pip-tools
configparser==3.7.4 # via importlib-metadata, pydocstyle
contextlib2==0.5.5 # via importlib-metadata
diff-cover==2.3.0
distlib==0.2.9.post0 # via caniusepython3
django==1.11.22 # via edx-i18n-tools
docutils==0.14 # via readme-renderer
click-log==0.3.2 # via edx-lint
click==7.0 # via click-log, edx-lint, pip-tools
configparser==4.0.2 # via importlib-metadata, pydocstyle, pylint
contextlib2==0.6.0.post1 # via importlib-metadata
diff-cover==2.4.1
distlib==0.3.0 # via caniusepython3
django==1.11.26 # via edx-i18n-tools
docutils==0.15.2 # via readme-renderer
edx-i18n-tools==0.4.8
edx-lint==1.4.1
enum34==1.1.6 # via astroid
filelock==3.0.12 # via tox
futures==3.2.0 ; python_version == "2.7" # via caniusepython3, isort
future==0.18.2 # via backports.os
futures==3.3.0 ; python_version == "2.7" # via caniusepython3, isort
idna==2.8 # via requests
importlib-metadata==0.18 # via pluggy, tox
inflect==2.1.0 # via jinja2-pluralize
importlib-metadata==1.1.0 # via inflect, path.py, pluggy, tox
inflect==3.0.2 # via jinja2-pluralize
isort==4.3.21
jinja2-pluralize==0.3.0 # via diff-cover
jinja2==2.10.1 # via diff-cover, jinja2-pluralize
jinja2==2.10.3 # via diff-cover, jinja2-pluralize
lazy-object-proxy==1.4.3 # via astroid
markupsafe==1.1.1 # via jinja2
packaging==19.0 # via caniusepython3, tox
mccabe==0.6.1 # via pylint
more-itertools==5.0.0 # via zipp
packaging==19.2 # via caniusepython3, tox
path.py==11.5.2 # via edx-i18n-tools
pathlib2==2.3.4 # via importlib-metadata
pip-tools==3.8.0
pathlib2==2.3.5 # via importlib-metadata
pip-tools==4.3.0
pkginfo==1.5.0.1 # via twine
pluggy==0.12.0 # via tox
pluggy==0.13.1 # via tox
polib==1.1.0 # via edx-i18n-tools
py==1.8.0 # via tox
pycodestyle==2.5.0
pydocstyle==3.0.0
pygments==2.4.2 # via diff-cover, readme-renderer
pyparsing==2.4.0 # via packaging
pytz==2019.1 # via django
pyyaml==5.1.1 # via edx-i18n-tools
pygments==2.5.2 # via diff-cover, readme-renderer
pylint-celery==0.3 # via edx-lint
pylint-django==0.11.1 # via edx-lint
pylint-plugin-utils==0.6 # via pylint-celery, pylint-django
pylint==1.9.5 # via edx-lint, pylint-celery, pylint-django, pylint-plugin-utils
pyparsing==2.4.5 # via packaging
pytz==2019.3 # via django
pyyaml==5.2 # via edx-i18n-tools
readme-renderer==24.0 # via twine
requests-toolbelt==0.9.1 # via twine
requests==2.22.0 # via caniusepython3, requests-toolbelt, twine
scandir==1.10.0 # via pathlib2
six==1.12.0 # via bleach, diff-cover, edx-i18n-tools, packaging, pathlib2, pip-tools, pydocstyle, readme-renderer, tox
snowballstemmer==1.9.0 # via pydocstyle
singledispatch==3.4.0.3 # via astroid, pylint
six==1.13.0 # via astroid, bleach, diff-cover, edx-i18n-tools, edx-lint, more-itertools, packaging, pathlib2, pip-tools, pydocstyle, pylint, readme-renderer, singledispatch, tox
snowballstemmer==2.0.0 # via pydocstyle
toml==0.10.0 # via tox
tox-battery==0.5.1
tox==3.13.2
tqdm==4.32.2 # via twine
twine==1.13.0
urllib3==1.25.3 # via requests
virtualenv==16.6.1 # via tox
tox==3.14.2
tqdm==4.40.0 # via twine
twine==1.15.0
urllib3==1.25.7 # via requests
virtualenv==16.7.8 # via tox
webencodings==0.5.1 # via bleach
wheel==0.33.4
zipp==0.5.1 # via importlib-metadata
wheel==0.33.6
wrapt==1.11.2 # via astroid
zipp==0.6.0 # via importlib-metadata

# The following packages are considered to be unsafe in a requirements file:
# setuptools==41.0.1 # via caniusepython3, twine
# setuptools
edx-lint # For updating pylintrc
36 changes: 18 additions & 18 deletions requirements/doc.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,39 +11,39 @@ babel==2.7.0 # via sphinx
billiard==3.3.0.23 # via celery
bleach==3.1.0 # via readme-renderer
celery==3.1.26.post2
certifi==2019.6.16 # via requests
certifi==2019.11.28 # via requests
chardet==3.0.4 # via doc8, requests
django-celery==3.3.0
django-celery==3.3.1
django-model-utils==3.0.0
django==1.11.22
django==1.11.26
doc8==0.8.0
docutils==0.14 # via doc8, readme-renderer, restructuredtext-lint, sphinx
docutils==0.15.2 # via doc8, readme-renderer, restructuredtext-lint, sphinx
edx-sphinx-theme==1.5.0
future==0.17.1
future==0.18.2
idna==2.8 # via requests
imagesize==1.1.0 # via sphinx
jinja2==2.10.1 # via sphinx
jinja2==2.10.3 # via sphinx
jsonfield==2.0.2
kombu==3.0.37 # via celery
markupsafe==1.1.1 # via jinja2
packaging==19.0 # via sphinx
pbr==5.3.1 # via stevedore
pockets==0.7.2 # via sphinxcontrib-napoleon
pygments==2.4.2 # via readme-renderer, sphinx
pyparsing==2.4.0 # via packaging
pytz==2019.1 # via babel, celery, django
packaging==19.2 # via sphinx
pbr==5.4.4 # via stevedore
pockets==0.9.1 # via sphinxcontrib-napoleon
pygments==2.5.2 # via readme-renderer, sphinx
pyparsing==2.4.5 # via packaging
pytz==2019.3 # via babel, celery, django
readme-renderer==24.0
requests==2.22.0 # via sphinx
restructuredtext-lint==1.3.0 # via doc8
six==1.12.0 # via bleach, doc8, edx-sphinx-theme, packaging, pockets, readme-renderer, sphinx, sphinxcontrib-napoleon, stevedore
snowballstemmer==1.9.0 # via sphinx
six==1.13.0 # via bleach, doc8, edx-sphinx-theme, packaging, pockets, readme-renderer, sphinx, sphinxcontrib-napoleon, stevedore
snowballstemmer==2.0.0 # via sphinx
sphinx==1.8.5
sphinxcontrib-napoleon==0.7
sphinxcontrib-websupport==1.1.2 # via sphinx
stevedore==1.30.1 # via doc8
typing==3.7.4 # via sphinx
urllib3==1.25.3 # via requests
stevedore==1.31.0 # via doc8
typing==3.7.4.1 # via sphinx
urllib3==1.25.7 # via requests
webencodings==0.5.1 # via bleach

# The following packages are considered to be unsafe in a requirements file:
# setuptools==41.0.1 # via sphinx
# setuptools
2 changes: 2 additions & 0 deletions requirements/quality.in
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
-c constraints.txt

caniusepython3 # Additional Python 3 compatibility pylint checks
edx-lint # edX pylint rules and plugins
isort # to standardize order of imports
pycodestyle # PEP 8 compliance validation
pydocstyle # PEP 257 compliance validation

40 changes: 24 additions & 16 deletions requirements/quality.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,25 +5,33 @@
# make upgrade
#
argparse==1.4.0 # via caniusepython3
backports.functools-lru-cache==1.5 # via caniusepython3, isort
caniusepython3==7.1.0
certifi==2019.6.16 # via requests
astroid==1.6.6 # via pylint, pylint-celery
backports.functools-lru-cache==1.6.1 # via astroid, caniusepython3, isort, pylint
caniusepython3==7.2.0
certifi==2019.11.28 # via requests
chardet==3.0.4 # via requests
configparser==3.7.4 # via pydocstyle
distlib==0.2.9.post0 # via caniusepython3
futures==3.2.0 ; python_version == "2.7" # via caniusepython3, isort
click-log==0.3.2 # via edx-lint
click==7.0 # via click-log, edx-lint
configparser==4.0.2 # via pydocstyle, pylint
distlib==0.3.0 # via caniusepython3
edx-lint==1.4.1
enum34==1.1.6 # via astroid
futures==3.3.0 ; python_version == "2.7" # via caniusepython3, isort
idna==2.8 # via requests
isort==4.3.21
packaging==19.0 # via caniusepython3
lazy-object-proxy==1.4.3 # via astroid
mccabe==0.6.1 # via pylint
packaging==19.2 # via caniusepython3
pycodestyle==2.5.0
pydocstyle==3.0.0
pyparsing==2.4.0 # via packaging
pylint-celery==0.3 # via edx-lint
pylint-django==0.11.1 # via edx-lint
pylint-plugin-utils==0.6 # via pylint-celery, pylint-django
pylint==1.9.5 # via edx-lint, pylint-celery, pylint-django, pylint-plugin-utils
pyparsing==2.4.5 # via packaging
requests==2.22.0 # via caniusepython3
six==1.12.0 # via packaging, pydocstyle
snowballstemmer==1.9.0 # via pydocstyle
urllib3==1.25.3 # via requests

# The following packages are considered to be unsafe in a requirements file:
# setuptools==41.0.1 # via caniusepython3
pylint==1.6.4
edx-lint==0.5.2 # edX pylint rules and plugins
singledispatch==3.4.0.3 # via astroid, pylint
six==1.13.0 # via astroid, edx-lint, packaging, pydocstyle, pylint, singledispatch
snowballstemmer==2.0.0 # via pydocstyle
urllib3==1.25.7 # via requests
wrapt==1.11.2 # via astroid
1 change: 0 additions & 1 deletion requirements/test.in
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@

ddt
freezegun
pytest-catchlog # Show log output for test failures
pytest-cov # pytest extension for code coverage statistics
pytest-django # pytest extension for better Django support
python-memcached
Loading

0 comments on commit 2005312

Please sign in to comment.