Update tested versions of Python and Django (#24006)
Cleaned up a few more things about the testing configuration now that we've deployed Django 2.2 to production: * Go back to a single version of django-oauth-toolkit, tox doesn't need to vary it anymore * Go back to PyPI release of django-method-override * Remove no longer needed dependency on python-oauth2 (we already removed the package it was used by) * Update prepare_xdist_nodes.sh with new Django requirements file options
This commit is contained in:
6
Makefile
6
Makefile
@@ -96,7 +96,7 @@ upgrade: ## update the pip requirements files to use the latest releases satisfy
|
||||
done
|
||||
# Post process all of the files generated above to work around open pip-tools issues
|
||||
scripts/post-pip-compile.sh $(REQ_FILES:=.txt)
|
||||
# Let tox control the Django version & django-oauth-toolkit version for tests
|
||||
grep -e "^django==" -e "^django-oauth-toolkit==" requirements/edx/base.txt > requirements/edx/django.txt
|
||||
sed '/^[dD]jango==/d;/^django-oauth-toolkit==/d' requirements/edx/testing.txt > requirements/edx/testing.tmp
|
||||
# Let tox control the Django version for tests
|
||||
grep -e "^django==" requirements/edx/base.txt > requirements/edx/django.txt
|
||||
sed '/^[dD]jango==/d' requirements/edx/testing.txt > requirements/edx/testing.tmp
|
||||
mv requirements/edx/testing.tmp requirements/edx/testing.txt
|
||||
|
||||
@@ -32,7 +32,7 @@ django-countries==5.5
|
||||
# django-storages version 1.9 drops support for boto storage backend.
|
||||
django-storages<1.9
|
||||
|
||||
# Support was dropped for Python 3.5, Django 2.0, Django 2.1, DRF 3.7
|
||||
# Support was dropped for Python 3.5
|
||||
drf-yasg<1.17.1
|
||||
|
||||
# Not properly supporting latest changing of drf-jwt
|
||||
|
||||
@@ -46,6 +46,7 @@ django-crum # Middleware that stores the current request
|
||||
django-fernet-fields # via edx-enterprise (should be added to its setup.py)
|
||||
django-filter # Allows users to filter Django querysets dynamically
|
||||
django-ipware # Get the client's real IP address
|
||||
django-method-override # Allow use of HTTP methods normally not supported by browsers via the X-HTTP-Method-Override header
|
||||
django-model-utils
|
||||
django-mptt
|
||||
django-mysql
|
||||
|
||||
@@ -65,7 +65,7 @@ django-fernet-fields==0.6 # via -r requirements/edx/base.in, edx-enterprise, ed
|
||||
django-filter==2.2.0 # via -r requirements/edx/base.in, edx-enterprise
|
||||
django-ipware==2.1.0 # via -r requirements/edx/base.in, edx-enterprise, edx-proctoring
|
||||
django-js-asset==1.2.2 # via django-mptt
|
||||
git+https://gitlab.com/Ayub-khan/django-method-override.git@5270af321be2e576d8e8b3c4191711a19975c356#egg=django-method-override==1.0.4 # via -r requirements/edx/github.in
|
||||
django-method-override==1.0.4 # via -r requirements/edx/base.in
|
||||
django-model-utils==4.0.0 # via -r requirements/edx/base.in, django-user-tasks, edx-bulk-grades, edx-celeryutils, edx-completion, edx-enterprise, edx-milestones, edx-organizations, edx-proctoring, edx-rbac, edx-submissions, edx-when, edxval, ora2, super-csv
|
||||
django-mptt==0.11.0 # via -r requirements/edx/base.in, django-wiki
|
||||
django-multi-email-field==0.6.1 # via edx-enterprise
|
||||
@@ -130,7 +130,6 @@ glob2==0.7 # via -r requirements/edx/base.in
|
||||
gunicorn==20.0.4 # via -r requirements/edx/base.in
|
||||
help-tokens==1.1.2 # via -r requirements/edx/base.in
|
||||
html5lib==1.0.1 # via -r requirements/edx/base.in, ora2
|
||||
httplib2==0.17.3 # via oauth2
|
||||
icalendar==4.0.6 # via -r requirements/edx/base.in
|
||||
idna==2.9 # via -r requirements/edx/paver.txt, requests
|
||||
importlib-metadata==1.6.0 # via -r requirements/edx/paver.txt, path
|
||||
@@ -167,7 +166,6 @@ newrelic==5.12.1.141 # via -r requirements/edx/base.in, edx-django-utils
|
||||
nltk==3.5 # via -r requirements/edx/../edx-sandbox/shared.txt, chem
|
||||
nodeenv==1.3.5 # via -r requirements/edx/base.in
|
||||
numpy==1.18.4 # via chem, openedx-calc, scipy
|
||||
git+https://github.com/joestump/python-oauth2.git@b94f69b1ad195513547924e380d9265133e995fa#egg=oauth2 # via -r requirements/edx/github.in
|
||||
oauthlib==3.0.1 # via -c requirements/edx/../constraints.txt, -r requirements/edx/base.in, django-oauth-toolkit, lti-consumer-xblock, requests-oauthlib, social-auth-core
|
||||
openedx-calc==1.0.9 # via -r requirements/edx/base.in
|
||||
git+https://github.com/edx/edx-ora2.git@2.6.25#egg=ora2==2.6.25 # via -r requirements/edx/github.in
|
||||
|
||||
@@ -77,7 +77,7 @@ django-fernet-fields==0.6 # via -r requirements/edx/testing.txt, edx-enterprise
|
||||
django-filter==2.2.0 # via -r requirements/edx/testing.txt, edx-enterprise
|
||||
django-ipware==2.1.0 # via -r requirements/edx/testing.txt, edx-enterprise, edx-proctoring
|
||||
django-js-asset==1.2.2 # via -r requirements/edx/testing.txt, django-mptt
|
||||
git+https://gitlab.com/Ayub-khan/django-method-override.git@5270af321be2e576d8e8b3c4191711a19975c356#egg=django-method-override==1.0.4 # via -r requirements/edx/testing.txt
|
||||
django-method-override==1.0.4 # via -r requirements/edx/testing.txt
|
||||
django-model-utils==4.0.0 # via -r requirements/edx/testing.txt, django-user-tasks, edx-bulk-grades, edx-celeryutils, edx-completion, edx-enterprise, edx-milestones, edx-organizations, edx-proctoring, edx-rbac, edx-submissions, edx-when, edxval, ora2, super-csv
|
||||
django-mptt==0.11.0 # via -r requirements/edx/testing.txt, django-wiki
|
||||
django-multi-email-field==0.6.1 # via -r requirements/edx/testing.txt, edx-enterprise
|
||||
@@ -151,7 +151,6 @@ glob2==0.7 # via -r requirements/edx/testing.txt
|
||||
gunicorn==20.0.4 # via -r requirements/edx/testing.txt
|
||||
help-tokens==1.1.2 # via -r requirements/edx/testing.txt
|
||||
html5lib==1.0.1 # via -r requirements/edx/testing.txt, ora2
|
||||
httplib2==0.17.3 # via -r requirements/edx/testing.txt, oauth2
|
||||
httpretty==0.9.7 # via -c requirements/edx/../constraints.txt, -r requirements/edx/testing.txt
|
||||
icalendar==4.0.6 # via -r requirements/edx/testing.txt
|
||||
idna==2.9 # via -r requirements/edx/testing.txt, requests
|
||||
@@ -200,7 +199,6 @@ newrelic==5.12.1.141 # via -r requirements/edx/testing.txt, edx-django-util
|
||||
nltk==3.5 # via -r requirements/edx/testing.txt, chem
|
||||
nodeenv==1.3.5 # via -r requirements/edx/testing.txt
|
||||
numpy==1.18.4 # via -r requirements/edx/testing.txt, chem, openedx-calc, pandas, scipy
|
||||
git+https://github.com/joestump/python-oauth2.git@b94f69b1ad195513547924e380d9265133e995fa#egg=oauth2 # via -r requirements/edx/testing.txt
|
||||
oauthlib==3.0.1 # via -c requirements/edx/../constraints.txt, -r requirements/edx/testing.txt, django-oauth-toolkit, lti-consumer-xblock, requests-oauthlib, social-auth-core
|
||||
openedx-calc==1.0.9 # via -r requirements/edx/testing.txt
|
||||
git+https://github.com/edx/edx-ora2.git@2.6.25#egg=ora2==2.6.25 # via -r requirements/edx/testing.txt
|
||||
|
||||
@@ -1,2 +1 @@
|
||||
django-oauth-toolkit==1.3.2 # via -r requirements/edx/base.in
|
||||
django==2.2.12 # via -c requirements/edx/../constraints.txt, -r requirements/edx/base.in, code-annotations, django-appconf, django-babel, django-babel-underscore, django-celery, django-classy-tags, django-config-models, django-cors-headers, django-crum, django-fernet-fields, django-filter, django-method-override, django-model-utils, django-mptt, django-multi-email-field, django-mysql, django-oauth-toolkit, django-pyfs, django-ratelimit-backend, django-sekizai, django-splash, django-statici18n, django-storages, django-user-tasks, django-wiki, drf-jwt, drf-yasg, edx-ace, edx-api-doc-tools, edx-bulk-grades, edx-celeryutils, edx-completion, edx-django-release-util, edx-django-sites-extensions, edx-django-utils, edx-drf-extensions, edx-enterprise, edx-i18n-tools, edx-milestones, edx-opaque-keys, edx-organizations, edx-proctoring, edx-rbac, edx-search, edx-submissions, edx-when, edxval, event-tracking, help-tokens, jsonfield2, ora2, rest-condition, super-csv, xss-utils
|
||||
|
||||
@@ -1,3 +1 @@
|
||||
Django>=3.0,<3.1
|
||||
django-oauth-toolkit==1.3.2
|
||||
|
||||
|
||||
@@ -59,20 +59,23 @@ git+https://github.com/edx/openedx-chem.git@ff4e3a03d3c7610e47a9af08eb648d8aabe2
|
||||
git+https://github.com/edx/MongoDBProxy.git@d92bafe9888d2940f647a7b2b2383b29c752f35a#egg=MongoDBProxy==0.1.0+edx.2
|
||||
-e git+https://github.com/dementrock/pystache_custom.git@776973740bdaad83a3b029f96e415a7d1e8bec2f#egg=pystache_custom-dev
|
||||
-e git+https://github.com/jazkarta/edx-jsme.git@690dbf75441fa91c7c4899df0b83d77f7deb5458#egg=edx-jsme
|
||||
|
||||
# The latest 2.0.0 release doesn't yet support Django 2.2, this commit from master does
|
||||
-e git+https://github.com/jsocol/django-ratelimit.git@72edbe8949fbf6699848e5847645a1998f121d46#egg=ratelimit
|
||||
|
||||
# This fork adds django>1.11 and django<3 compatibility for django-babel-underscore. Enmerkar is
|
||||
# being installed from github to add backward compatibility for django1.11 as named versions are not
|
||||
# backward compatible.
|
||||
# Underscore template extractor for django-babel/enmerkar
|
||||
# This fork adds django>1.11 and django<3 compatibility.
|
||||
git+https://github.com/edx/django-babel-underscore.git@37705f7377a4d0a4e673f1431895ce28a8860cd7#egg=django-babel-underscore==0.6.0
|
||||
|
||||
# Internationalization utilities
|
||||
# Our django-babel-underscore fork above does not yet work with the newer enmerkar PyPI releases (BOM-1637)
|
||||
git+https://github.com/Zegocover/enmerkar.git@dbc113798aa4beabdfa2d00e6fef48248eb0f185#egg=django-babel==0.6.3.dev0
|
||||
|
||||
# Forked to get Django 2.2 support from unreleased master branch from social-app-django repo.
|
||||
# This can be removed once an official social-auth-app-django Pypi release with Django 2.2 support is available in the future.
|
||||
-e git+https://github.com/python-social-auth/social-app-django.git@c00d23c2b45c3317bd35b15ad1b959338689cef8#egg=social-auth-app-django
|
||||
|
||||
# Why install sorl-thumbnail directly from github? To use the latest, Django 2.2 compatible version that is not available on PyPi yet.
|
||||
# This dependency will be removed after package is updated at PyPi
|
||||
# Why install sorl-thumbnail directly from github? To use a Django 2.2 compatible version before Python 3.5 support was dropped
|
||||
git+https://github.com/jazzband/sorl-thumbnail.git@13bedfb7d2970809eda597e3ef79318a6fa80ac2#egg=sorl-thumbnail
|
||||
|
||||
# Forked to fix predicate inversion and keep support for Django 1.1 alive
|
||||
@@ -80,10 +83,6 @@ git+https://github.com/jazzband/sorl-thumbnail.git@13bedfb7d2970809eda597e3ef793
|
||||
# remove this fork
|
||||
git+https://github.com/edx/bridgekeeper.git@2423e8d8788c2132ebeec509e1a7b17e1f5b9364#egg=bridgekeeper==0.0
|
||||
|
||||
# Forked to get Django 1.11 new style middleware support from django-method-override.
|
||||
# This can be removed once edx-platform is using django>=2.x.
|
||||
git+https://gitlab.com/Ayub-khan/django-method-override.git@5270af321be2e576d8e8b3c4191711a19975c356#egg=django-method-override==1.0.4
|
||||
|
||||
# Our libraries:
|
||||
-e git+https://github.com/edx/codejail.git@4127fc4bd5775cc72aee8d7f0a70e31405e22439#egg=codejail
|
||||
-e git+https://github.com/edx/acid-block.git@98aecba94ecbfa934e2d00262741c0ea9f557fc9#egg=acid-xblock
|
||||
@@ -97,7 +96,6 @@ git+https://github.com/edx/xblock-lti-consumer.git@v1.2.6#egg=lti_consumer-xbloc
|
||||
|
||||
# Third Party XBlocks
|
||||
|
||||
git+https://github.com/joestump/python-oauth2.git@b94f69b1ad195513547924e380d9265133e995fa#egg=oauth2
|
||||
git+https://github.com/open-craft/xblock-poll@da2d8fd21791a7af128595cf82bee83ee579e00f#egg=xblock-poll==1.9.6
|
||||
git+https://github.com/edx-solutions/xblock-drag-and-drop-v2@v2.2.10#egg=xblock-drag-and-drop-v2==2.2.10
|
||||
git+https://github.com/django-compressor/django-appconf@1526a842ee084b791aa66c931b3822091a442853#egg=django-appconf
|
||||
|
||||
@@ -75,11 +75,12 @@ django-fernet-fields==0.6 # via -r requirements/edx/base.txt, edx-enterprise, e
|
||||
django-filter==2.2.0 # via -r requirements/edx/base.txt, edx-enterprise
|
||||
django-ipware==2.1.0 # via -r requirements/edx/base.txt, edx-enterprise, edx-proctoring
|
||||
django-js-asset==1.2.2 # via -r requirements/edx/base.txt, django-mptt
|
||||
git+https://gitlab.com/Ayub-khan/django-method-override.git@5270af321be2e576d8e8b3c4191711a19975c356#egg=django-method-override==1.0.4 # via -r requirements/edx/base.txt
|
||||
django-method-override==1.0.4 # via -r requirements/edx/base.txt
|
||||
django-model-utils==4.0.0 # via -r requirements/edx/base.txt, django-user-tasks, edx-bulk-grades, edx-celeryutils, edx-completion, edx-enterprise, edx-milestones, edx-organizations, edx-proctoring, edx-rbac, edx-submissions, edx-when, edxval, ora2, super-csv
|
||||
django-mptt==0.11.0 # via -r requirements/edx/base.txt, django-wiki
|
||||
django-multi-email-field==0.6.1 # via -r requirements/edx/base.txt, edx-enterprise
|
||||
django-mysql==3.5.0 # via -r requirements/edx/base.txt
|
||||
django-oauth-toolkit==1.3.2 # via -r requirements/edx/base.txt
|
||||
django-object-actions==2.0.0 # via -r requirements/edx/base.txt, edx-enterprise
|
||||
django-pipeline==1.7.0 # via -r requirements/edx/base.txt
|
||||
django-pyfs==2.1 # via -r requirements/edx/base.txt
|
||||
@@ -146,7 +147,6 @@ glob2==0.7 # via -r requirements/edx/base.txt
|
||||
gunicorn==20.0.4 # via -r requirements/edx/base.txt
|
||||
help-tokens==1.1.2 # via -r requirements/edx/base.txt
|
||||
html5lib==1.0.1 # via -r requirements/edx/base.txt, ora2
|
||||
httplib2==0.17.3 # via -r requirements/edx/base.txt, oauth2
|
||||
httpretty==0.9.7 # via -c requirements/edx/../constraints.txt, -r requirements/edx/testing.in
|
||||
icalendar==4.0.6 # via -r requirements/edx/base.txt
|
||||
idna==2.9 # via -r requirements/edx/base.txt, requests
|
||||
@@ -191,7 +191,6 @@ newrelic==5.12.1.141 # via -r requirements/edx/base.txt, edx-django-utils
|
||||
nltk==3.5 # via -r requirements/edx/base.txt, chem
|
||||
nodeenv==1.3.5 # via -r requirements/edx/base.txt
|
||||
numpy==1.18.4 # via -r requirements/edx/base.txt, -r requirements/edx/coverage.txt, chem, openedx-calc, pandas, scipy
|
||||
git+https://github.com/joestump/python-oauth2.git@b94f69b1ad195513547924e380d9265133e995fa#egg=oauth2 # via -r requirements/edx/base.txt
|
||||
oauthlib==3.0.1 # via -c requirements/edx/../constraints.txt, -r requirements/edx/base.txt, django-oauth-toolkit, lti-consumer-xblock, requests-oauthlib, social-auth-core
|
||||
openedx-calc==1.0.9 # via -r requirements/edx/base.txt
|
||||
git+https://github.com/edx/edx-ora2.git@2.6.25#egg=ora2==2.6.25 # via -r requirements/edx/base.txt
|
||||
|
||||
@@ -13,12 +13,8 @@ python scripts/xdist/pytest_worker_manager.py -a up -n ${XDIST_NUM_WORKERS} \
|
||||
# Install the correct version of Django depending on which tox environment (if any) is in use
|
||||
if [[ -z ${TOXENV+x} ]] || [[ ${TOXENV} == 'null' ]]; then
|
||||
DJANGO_REQUIREMENT="requirements/edx/django.txt"
|
||||
elif [[ ${TOXENV} == *'django20'* ]]; then
|
||||
DJANGO_REQUIREMENT="requirements/edx/django20.txt"
|
||||
elif [[ ${TOXENV} == *'django21'* ]]; then
|
||||
DJANGO_REQUIREMENT="requirements/edx/django21.txt"
|
||||
elif [[ ${TOXENV} == *'django22'* ]]; then
|
||||
DJANGO_REQUIREMENT="requirements/edx/django.txt"
|
||||
elif [[ ${TOXENV} == *'django30'* ]]; then
|
||||
DJANGO_REQUIREMENT="requirements/edx/django30.txt"
|
||||
fi
|
||||
|
||||
ip_list=$(<pytest_worker_ips.txt)
|
||||
|
||||
Reference in New Issue
Block a user