diff --git a/cms/djangoapps/contentstore/views/item.py b/cms/djangoapps/contentstore/views/item.py index 22542848f4..2e65e83532 100644 --- a/cms/djangoapps/contentstore/views/item.py +++ b/cms/djangoapps/contentstore/views/item.py @@ -20,6 +20,7 @@ from edx_proctoring.api import ( ) from edx_proctoring.exceptions import ProctoredExamNotFoundException from help_tokens.core import HelpUrlExpert +from lti_consumer.models import CourseEditLTIFieldsEnabledFlag from opaque_keys.edx.keys import CourseKey from opaque_keys.edx.locator import LibraryUsageLocator from pytz import UTC @@ -29,7 +30,6 @@ from xblock.fields import Scope from cms.djangoapps.contentstore.config.waffle import SHOW_REVIEW_RULES_FLAG from cms.djangoapps.models.settings.course_grading import CourseGradingModel -from cms.djangoapps.xblock_config.models import CourseEditLTIFieldsEnabledFlag from cms.lib.xblock.authoring_mixin import VISIBILITY_VIEW from common.djangoapps.edxmako.shortcuts import render_to_string from common.djangoapps.static_replace import replace_static_urls diff --git a/cms/djangoapps/xblock_config/admin.py b/cms/djangoapps/xblock_config/admin.py index 4a3bed82e3..6fa0afdfb9 100644 --- a/cms/djangoapps/xblock_config/admin.py +++ b/cms/djangoapps/xblock_config/admin.py @@ -3,26 +3,10 @@ Django admin dashboard configuration for LMS XBlock infrastructure. """ -from config_models.admin import ConfigurationModelAdmin, KeyedConfigurationModelAdmin +from config_models.admin import ConfigurationModelAdmin from django.contrib import admin -from cms.djangoapps.xblock_config.forms import CourseEditLTIFieldsEnabledAdminForm -from cms.djangoapps.xblock_config.models import CourseEditLTIFieldsEnabledFlag, StudioConfig +from cms.djangoapps.xblock_config.models import StudioConfig -class CourseEditLTIFieldsEnabledFlagAdmin(KeyedConfigurationModelAdmin): - """ - Admin for LTI Fields Editing feature on course-by-course basis. - Allows searching by course id. - """ - form = CourseEditLTIFieldsEnabledAdminForm - search_fields = ['course_id'] - fieldsets = ( - (None, { - 'fields': ('course_id', 'enabled'), - 'description': 'Enter a valid course id. If it is invalid, an error message will be displayed.' - }), - ) - admin.site.register(StudioConfig, ConfigurationModelAdmin) -admin.site.register(CourseEditLTIFieldsEnabledFlag, CourseEditLTIFieldsEnabledFlagAdmin) diff --git a/cms/djangoapps/xblock_config/forms.py b/cms/djangoapps/xblock_config/forms.py deleted file mode 100644 index 7f2a817239..0000000000 --- a/cms/djangoapps/xblock_config/forms.py +++ /dev/null @@ -1,29 +0,0 @@ -""" -Defines a form for providing validation of LTI consumer course-specific configuration. -""" - - -import logging - -from django import forms - -from cms.djangoapps.xblock_config.models import CourseEditLTIFieldsEnabledFlag -from openedx.core.lib.courses import clean_course_id - -log = logging.getLogger(__name__) - - -class CourseEditLTIFieldsEnabledAdminForm(forms.ModelForm): - """ - Form for LTI consumer course-specific configuration to verify the course id. - """ - - class Meta: - model = CourseEditLTIFieldsEnabledFlag - fields = '__all__' - - def clean_course_id(self): - """ - Validate the course id - """ - return clean_course_id(self) diff --git a/cms/djangoapps/xblock_config/migrations/0003_move_course_edit_lti_fields_enabled_flag_model_to_lti_consumer.py b/cms/djangoapps/xblock_config/migrations/0003_move_course_edit_lti_fields_enabled_flag_model_to_lti_consumer.py new file mode 100644 index 0000000000..08b472eec8 --- /dev/null +++ b/cms/djangoapps/xblock_config/migrations/0003_move_course_edit_lti_fields_enabled_flag_model_to_lti_consumer.py @@ -0,0 +1,22 @@ +# Generated by Django 2.2.20 on 2021-05-05 12:03 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('xblock_config', '0002_courseeditltifieldsenabledflag'), + ] + + operations = [ + # Since this model only needs to be moved, we just want to + # indicate to Django that the model is no longer here without + # actually deleting any data from the database. + migrations.SeparateDatabaseAndState( + database_operations=[], + state_operations=[ + migrations.DeleteModel('CourseEditLTIFieldsEnabledFlag') + ], + ) + ] diff --git a/cms/djangoapps/xblock_config/models.py b/cms/djangoapps/xblock_config/models.py index 7a44adeef6..9c51b9073e 100644 --- a/cms/djangoapps/xblock_config/models.py +++ b/cms/djangoapps/xblock_config/models.py @@ -6,10 +6,6 @@ Includes: """ from config_models.models import ConfigurationModel from django.db.models import TextField -from django.utils.encoding import python_2_unicode_compatible -from opaque_keys.edx.django.models import CourseKeyField - -from openedx.core.lib.cache_utils import request_cached class StudioConfig(ConfigurationModel): @@ -30,57 +26,3 @@ class StudioConfig(ConfigurationModel): """ studio_config = cls.current() return studio_config.enabled and block_type not in studio_config.disabled_blocks.split() - - -# TODO: Move CourseEditLTIFieldsEnabledFlag to LTI XBlock as a part of EDUCATOR-121 -# reference: https://openedx.atlassian.net/browse/EDUCATOR-121 -@python_2_unicode_compatible -class CourseEditLTIFieldsEnabledFlag(ConfigurationModel): - """ - Enables the editing of "request username" and "request email" fields - of LTI consumer for a specific course. - - .. no_pii: - """ - KEY_FIELDS = ('course_id',) - - course_id = CourseKeyField(max_length=255, db_index=True) - - @classmethod - @request_cached() - def lti_access_to_learners_editable(cls, course_id, is_already_sharing_learner_info): - """ - Looks at the currently active configuration model to determine whether - the feature that enables editing of "request username" and "request email" - fields of LTI consumer is available or not. - - Backwards Compatibility: - Enable this feature for a course run who was sharing learner username/email - in the past. - - Arguments: - course_id (CourseKey): course id for which we need to check this configuration - is_already_sharing_learner_info (bool): indicates whether LTI consumer is - already sharing edX learner username/email. - """ - course_specific_config = (CourseEditLTIFieldsEnabledFlag.objects - .filter(course_id=course_id) - .order_by('-change_date') - .first()) - - if is_already_sharing_learner_info: - if not course_specific_config: - CourseEditLTIFieldsEnabledFlag.objects.create(course_id=course_id, enabled=True) - return True - - return course_specific_config.enabled if course_specific_config else False - - def __str__(self): - en = "Not " - if self.enabled: - en = "" - - return "Course '{course_id}': Edit LTI access to Learner information {en}Enabled".format( - course_id=str(self.course_id), - en=en, - ) diff --git a/cms/djangoapps/xblock_config/tests/__init__.py b/cms/djangoapps/xblock_config/tests/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/cms/djangoapps/xblock_config/tests/test_models.py b/cms/djangoapps/xblock_config/tests/test_models.py deleted file mode 100644 index bd2448d85b..0000000000 --- a/cms/djangoapps/xblock_config/tests/test_models.py +++ /dev/null @@ -1,93 +0,0 @@ -""" -Tests for the models that configures Edit LTI fields feature. -""" - - -from contextlib import contextmanager - -import ddt -from django.test import TestCase -from edx_django_utils.cache import RequestCache -from opaque_keys.edx.locator import CourseLocator - -from cms.djangoapps.xblock_config.models import CourseEditLTIFieldsEnabledFlag - - -@contextmanager -def lti_consumer_fields_editing_flag(course_id, enabled_for_course=False): - """ - Yields CourseEditLTIFieldsEnabledFlag record for unit tests - - Arguments: - course_id (CourseLocator): course locator to control this feature for. - enabled_for_course (bool): whether feature is enabled for 'course_id' - """ - RequestCache.clear_all_namespaces() - CourseEditLTIFieldsEnabledFlag.objects.create(course_id=course_id, enabled=enabled_for_course) - yield - - -@ddt.ddt -class TestLTIConsumerHideFieldsFlag(TestCase): - """ - Tests the behavior of the flags for lti consumer fields' editing feature. - These are set via Django admin settings. - """ - def setUp(self): - super().setUp() - self.course_id = CourseLocator(org="edx", course="course", run="run") - - @ddt.data( - (True, True), - (True, False), - (False, True), - (False, False), - ) - @ddt.unpack - def test_lti_fields_editing_feature_flags(self, enabled_for_course, is_already_sharing_learner_info): - """ - Test that feature flag works correctly with course-specific configuration in combination with - a boolean which indicates whether a course-run already sharing learner username/email - given - the course-specific configuration record is present. - """ - with lti_consumer_fields_editing_flag( - course_id=self.course_id, - enabled_for_course=enabled_for_course - ): - feature_enabled = CourseEditLTIFieldsEnabledFlag.lti_access_to_learners_editable( - self.course_id, - is_already_sharing_learner_info, - ) - self.assertEqual(feature_enabled, enabled_for_course) - - @ddt.data(True, False) - def test_lti_fields_editing_is_backwards_compatible(self, is_already_sharing_learner_info): - """ - Test that feature flag works correctly with a boolean which indicates whether a course-run already - sharing learner username/email - given the course-specific configuration record is not set previously. - - This tests the backward compatibility which currently is: if an existing course run is already - sharing learner information then this feature should be enabled for that course run by default. - """ - feature_enabled = CourseEditLTIFieldsEnabledFlag.lti_access_to_learners_editable( - self.course_id, - is_already_sharing_learner_info, - ) - feature_flag_created = CourseEditLTIFieldsEnabledFlag.objects.filter(course_id=self.course_id).exists() - self.assertEqual(feature_flag_created, is_already_sharing_learner_info) - self.assertEqual(feature_enabled, is_already_sharing_learner_info) - - def test_enable_disable_course_flag(self): - """ - Ensures that the flag, once enabled for a course, can also be disabled. - """ - with lti_consumer_fields_editing_flag( - course_id=self.course_id, - enabled_for_course=True - ): - self.assertTrue(CourseEditLTIFieldsEnabledFlag.lti_access_to_learners_editable(self.course_id, False)) - with lti_consumer_fields_editing_flag( - course_id=self.course_id, - enabled_for_course=False - ): - self.assertFalse(CourseEditLTIFieldsEnabledFlag.lti_access_to_learners_editable(self.course_id, False)) diff --git a/requirements/constraints.txt b/requirements/constraints.txt index c8f59c7d61..99f6b5408b 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -102,6 +102,3 @@ maxminddb<2.0.0 # maxminddb 2.0.0 has dropped support for Python 3.5 path<13.2.0 # path 13.2.0 drops support for Python 3.5 zipp==1.0.0 # zipp 2.0.0 requires Python >= 3.6 geoip2<4.0.1 # geoip2 requires Python 3.6 - -# There are corresponding changes in edx-platform that need to be made before we can update. -lti-consumer-xblock<2.11.0 diff --git a/requirements/edx-sandbox/py35.txt b/requirements/edx-sandbox/py35.txt index c6f607f04a..7f85b43e5b 100644 --- a/requirements/edx-sandbox/py35.txt +++ b/requirements/edx-sandbox/py35.txt @@ -1,5 +1,5 @@ # -# This file is autogenerated by pip-compile +# This file is autogenerated by pip-compile with python 3.8 # To update, run: # # make upgrade @@ -62,7 +62,6 @@ numpy==1.16.5 # chem # matplotlib # openedx-calc - # scipy openedx-calc==1.0.9 # via -r requirements/edx-sandbox/py35.in pycparser==2.20 diff --git a/requirements/edx-sandbox/py38.txt b/requirements/edx-sandbox/py38.txt index 5e763dce90..3731b7e84c 100644 --- a/requirements/edx-sandbox/py38.txt +++ b/requirements/edx-sandbox/py38.txt @@ -1,5 +1,5 @@ # -# This file is autogenerated by pip-compile +# This file is autogenerated by pip-compile with python 3.8 # To update, run: # # make upgrade diff --git a/requirements/edx/base.txt b/requirements/edx/base.txt index 061c9f485f..e6a560b688 100644 --- a/requirements/edx/base.txt +++ b/requirements/edx/base.txt @@ -1,5 +1,5 @@ # -# This file is autogenerated by pip-compile +# This file is autogenerated by pip-compile with python 3.8 # To update, run: # # make upgrade @@ -70,16 +70,16 @@ bleach==3.3.0 # ora2 # xblock-drag-and-drop-v2 # xblock-poll +boto==2.39.0 + # via + # -r requirements/edx/base.in + # edxval boto3==1.4.8 # via # -r requirements/edx/base.in # django-ses # fs-s3fs # ora2 -boto==2.39.0 - # via - # -r requirements/edx/base.in - # edxval botocore==1.8.17 # via # -r requirements/edx/base.in @@ -152,6 +152,68 @@ defusedxml==0.7.1 # python3-saml # safe-lxml # social-auth-core +django==2.2.24 + # via + # -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt + # -c requirements/edx/../constraints.txt + # -r requirements/edx/base.in + # django-appconf + # 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-ses + # django-splash + # django-statici18n + # django-storages + # django-user-tasks + # django-wiki + # djangorestframework + # 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-event-routing-backends + # edx-i18n-tools + # edx-milestones + # edx-opaque-keys + # edx-organizations + # edx-proctoring + # edx-rbac + # edx-search + # edx-submissions + # edx-toggles + # edx-when + # edxval + # enmerkar + # enmerkar-underscore + # event-tracking + # help-tokens + # jsonfield2 + # lti-consumer-xblock + # ora2 + # rest-condition + # super-csv + # xss-utils django-appconf==1.0.4 # via # -r requirements/edx/base.in @@ -170,6 +232,7 @@ django-config-models==2.1.1 # -r requirements/edx/base.in # edx-enterprise # edx-event-routing-backends + # lti-consumer-xblock django-cookies-samesite==0.9.0 # via -r requirements/edx/base.in django-cors-headers==2.5.3 @@ -245,10 +308,10 @@ django-pipeline==2.0.6 # via -r requirements/edx/base.in django-pyfs==3.0 # via -r requirements/edx/base.in -git+https://github.com/edx/django-ratelimit-backend.git@v2.0.1a5#egg=django-ratelimit-backend==2.0.1a5 - # via -r requirements/edx/github.in django-ratelimit==3.0.1 # via -r requirements/edx/base.in +git+https://github.com/edx/django-ratelimit-backend.git@v2.0.1a5#egg=django-ratelimit-backend==2.0.1a5 + # via -r requirements/edx/github.in django-require==1.0.11 # via -r requirements/edx/base.in django-sekizai==2.0.0 @@ -287,70 +350,6 @@ django-webpack-loader==0.7.0 # -c requirements/edx/../constraints.txt # -r requirements/edx/base.in # edx-proctoring -django==2.2.24 - # via - # -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt - # -c requirements/edx/../constraints.txt - # -r requirements/edx/base.in - # django-appconf - # 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-ses - # django-splash - # django-statici18n - # django-storages - # django-user-tasks - # django-wiki - # djangorestframework - # 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-event-routing-backends - # edx-i18n-tools - # edx-milestones - # edx-opaque-keys - # edx-organizations - # edx-proctoring - # edx-rbac - # edx-search - # edx-submissions - # edx-toggles - # edx-when - # edxval - # enmerkar - # enmerkar-underscore - # event-tracking - # help-tokens - # jsonfield2 - # lti-consumer-xblock - # ora2 - # rest-condition - # super-csv - # xss-utils -djangorestframework-xml==2.0.0 - # via edx-enterprise djangorestframework==3.12.4 # via # -r requirements/edx/base.in @@ -368,6 +367,8 @@ djangorestframework==3.12.4 # ora2 # rest-condition # super-csv +djangorestframework-xml==2.0.0 + # via edx-enterprise docopt==0.6.2 # via xmodule docutils==0.16 @@ -453,13 +454,13 @@ edx-opaque-keys[django]==2.2.1 # xmodule edx-organizations==6.9.0 # via -r requirements/edx/base.in -edx-proctoring-proctortrack==1.0.5 - # via -r requirements/edx/base.in edx-proctoring==3.13.2 # via # -c requirements/edx/../constraints.txt # -r requirements/edx/base.in # edx-proctoring-proctortrack +edx-proctoring-proctortrack==1.0.5 + # via -r requirements/edx/base.in edx-rbac==1.4.2 # via edx-enterprise edx-rest-api-client==5.3.0 @@ -492,28 +493,28 @@ edx-when==2.0.0 # edx-proctoring edxval==2.0.3 # via -r requirements/edx/base.in -elasticsearch==7.13.1 +elasticsearch==7.13.2 # via edx-search -enmerkar-underscore==2.0.0 - # via -r requirements/edx/base.in enmerkar==0.7.1 # via enmerkar-underscore +enmerkar-underscore==2.0.0 + # via -r requirements/edx/base.in event-tracking==1.0.4 # via # -r requirements/edx/base.in # edx-event-routing-backends # edx-proctoring # edx-search -fs-s3fs==0.1.8 - # via - # -r requirements/edx/base.in - # django-pyfs fs==2.0.18 # via # -r requirements/edx/base.in # django-pyfs # fs-s3fs # xblock +fs-s3fs==0.1.8 + # via + # -r requirements/edx/base.in + # django-pyfs future==0.18.2 # via # django-ses @@ -591,10 +592,8 @@ libsass==0.10.0 # ora2 loremipsum==1.0.5 # via ora2 -lti-consumer-xblock==2.10.1 - # via - # -c requirements/edx/../constraints.txt - # -r requirements/edx/base.in +lti-consumer-xblock==2.11.0 + # via -r requirements/edx/base.in lxml==4.5.0 # via # -c requirements/edx/../constraints.txt @@ -650,7 +649,7 @@ mpmath==1.2.1 # via sympy mysqlclient==2.0.3 # via -r requirements/edx/base.in -newrelic==6.4.2.159 +newrelic==6.4.3.160 # via # -r requirements/edx/base.in # edx-django-utils @@ -681,6 +680,11 @@ packaging==20.9 # via # bleach # drf-yasg +path==13.1.0 + # via + # -c requirements/edx/../constraints.txt + # -r requirements/edx/paver.txt + # path.py path.py==12.5.0 # via # edx-enterprise @@ -688,11 +692,6 @@ path.py==12.5.0 # ora2 # staff-graded-xblock # xmodule -path==13.1.0 - # via - # -c requirements/edx/../constraints.txt - # -r requirements/edx/paver.txt - # path.py paver==1.3.4 # via -r requirements/edx/paver.txt pbr==5.6.0 @@ -831,10 +830,6 @@ redis==3.5.3 # via -r requirements/edx/base.in regex==2021.4.4 # via nltk -requests-oauthlib==1.3.0 - # via - # -r requirements/edx/base.in - # social-auth-core requests==2.25.1 # via # -r requirements/edx/paver.txt @@ -856,14 +851,18 @@ requests==2.25.1 # slumber # social-auth-core # tableauserverclient +requests-oauthlib==1.3.0 + # via + # -r requirements/edx/base.in + # social-auth-core rest-condition==1.0.3 # via # -r requirements/edx/base.in # edx-drf-extensions -ruamel.yaml.clib==0.2.2 - # via ruamel.yaml ruamel.yaml==0.17.9 # via drf-yasg +ruamel.yaml.clib==0.2.2 + # via ruamel.yaml rules==3.0 # via # -r requirements/edx/base.in @@ -1018,18 +1017,6 @@ wrapt==1.11.2 # via # -c requirements/edx/../constraints.txt # -r requirements/edx/paver.txt -git+https://github.com/edx-solutions/xblock-drag-and-drop-v2@v2.3.5#egg=xblock-drag-and-drop-v2==2.3.5 - # via -r requirements/edx/github.in -git+https://github.com/open-craft/xblock-poll@922cd36fb1c3cfe00b4ce03b19a13185d136447d#egg=xblock-poll==1.10.2 - # via -r requirements/edx/github.in -xblock-utils==2.1.3 - # via - # -r requirements/edx/base.in - # edx-sga - # lti-consumer-xblock - # staff-graded-xblock - # xblock-drag-and-drop-v2 - # xblock-google-drive xblock==1.4.2 # via # -r requirements/edx/base.in @@ -1049,6 +1036,18 @@ xblock==1.4.2 # xblock-google-drive # xblock-poll # xblock-utils +git+https://github.com/edx-solutions/xblock-drag-and-drop-v2@v2.3.5#egg=xblock-drag-and-drop-v2==2.3.5 + # via -r requirements/edx/github.in +git+https://github.com/open-craft/xblock-poll@922cd36fb1c3cfe00b4ce03b19a13185d136447d#egg=xblock-poll==1.10.2 + # via -r requirements/edx/github.in +xblock-utils==2.1.3 + # via + # -r requirements/edx/base.in + # edx-sga + # lti-consumer-xblock + # staff-graded-xblock + # xblock-drag-and-drop-v2 + # xblock-google-drive xmlsec==1.3.11 # via python3-saml xss-utils==0.2.0 diff --git a/requirements/edx/coverage.txt b/requirements/edx/coverage.txt index 3410eadb82..af8169a835 100644 --- a/requirements/edx/coverage.txt +++ b/requirements/edx/coverage.txt @@ -1,5 +1,5 @@ # -# This file is autogenerated by pip-compile +# This file is autogenerated by pip-compile with python 3.8 # To update, run: # # make upgrade @@ -16,12 +16,12 @@ inflect==3.0.2 # via # -c requirements/edx/../constraints.txt # jinja2-pluralize -jinja2-pluralize==0.3.0 - # via diff-cover jinja2==3.0.1 # via # diff-cover # jinja2-pluralize +jinja2-pluralize==0.3.0 + # via diff-cover markupsafe==2.0.1 # via jinja2 more-itertools==8.8.0 diff --git a/requirements/edx/development.txt b/requirements/edx/development.txt index c8e721c981..9325bb910b 100644 --- a/requirements/edx/development.txt +++ b/requirements/edx/development.txt @@ -1,5 +1,5 @@ # -# This file is autogenerated by pip-compile +# This file is autogenerated by pip-compile with python 3.8 # To update, run: # # make upgrade @@ -94,16 +94,16 @@ bleach==3.3.0 # xblock-poll bok-choy==1.1.1 # via -r requirements/edx/testing.txt +boto==2.39.0 + # via + # -r requirements/edx/testing.txt + # edxval boto3==1.4.8 # via # -r requirements/edx/testing.txt # django-ses # fs-s3fs # ora2 -boto==2.39.0 - # via - # -r requirements/edx/testing.txt - # edxval botocore==1.8.17 # via # -r requirements/edx/testing.txt @@ -136,10 +136,6 @@ chardet==4.0.0 # requests chem==1.2.0 # via -r requirements/edx/testing.txt -click-log==0.3.2 - # via - # -r requirements/edx/testing.txt - # edx-lint click==7.1.2 # via # -c requirements/edx/../constraints.txt @@ -152,6 +148,10 @@ click==7.1.2 # nltk # pip-tools # user-util +click-log==0.3.2 + # via + # -r requirements/edx/testing.txt + # edx-lint code-annotations==1.1.2 # via # -r requirements/edx/testing.txt @@ -212,6 +212,70 @@ distlib==0.3.2 # via # -r requirements/edx/testing.txt # virtualenv +django==2.2.24 + # via + # -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt + # -c requirements/edx/../constraints.txt + # -r requirements/edx/testing.txt + # django-appconf + # django-classy-tags + # django-config-models + # django-cors-headers + # django-crum + # django-debug-toolbar + # 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-ses + # django-splash + # django-statici18n + # django-storages + # django-user-tasks + # django-wiki + # djangorestframework + # 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-event-routing-backends + # edx-i18n-tools + # edx-lint + # edx-milestones + # edx-opaque-keys + # edx-organizations + # edx-proctoring + # edx-rbac + # edx-search + # edx-submissions + # edx-toggles + # edx-when + # edxval + # enmerkar + # enmerkar-underscore + # event-tracking + # help-tokens + # jsonfield2 + # lti-consumer-xblock + # ora2 + # rest-condition + # super-csv + # xss-utils django-appconf==1.0.4 # via # -r requirements/edx/testing.txt @@ -234,6 +298,7 @@ django-config-models==2.1.1 # -r requirements/edx/testing.txt # edx-enterprise # edx-event-routing-backends + # lti-consumer-xblock django-cookies-samesite==0.9.0 # via -r requirements/edx/testing.txt django-cors-headers==2.5.3 @@ -317,10 +382,10 @@ django-pipeline==2.0.6 # via -r requirements/edx/testing.txt django-pyfs==3.0 # via -r requirements/edx/testing.txt -git+https://github.com/edx/django-ratelimit-backend.git@v2.0.1a5#egg=django-ratelimit-backend==2.0.1a5 - # via -r requirements/edx/testing.txt django-ratelimit==3.0.1 # via -r requirements/edx/testing.txt +git+https://github.com/edx/django-ratelimit-backend.git@v2.0.1a5#egg=django-ratelimit-backend==2.0.1a5 + # via -r requirements/edx/testing.txt django-require==1.0.11 # via -r requirements/edx/testing.txt django-sekizai==2.0.0 @@ -359,74 +424,6 @@ django-webpack-loader==0.7.0 # -c requirements/edx/../constraints.txt # -r requirements/edx/testing.txt # edx-proctoring -django==2.2.24 - # via - # -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt - # -c requirements/edx/../constraints.txt - # -r requirements/edx/testing.txt - # django-appconf - # django-classy-tags - # django-config-models - # django-cors-headers - # django-crum - # django-debug-toolbar - # 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-ses - # django-splash - # django-statici18n - # django-storages - # django-user-tasks - # django-wiki - # djangorestframework - # 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-event-routing-backends - # edx-i18n-tools - # edx-lint - # edx-milestones - # edx-opaque-keys - # edx-organizations - # edx-proctoring - # edx-rbac - # edx-search - # edx-submissions - # edx-toggles - # edx-when - # edxval - # enmerkar - # enmerkar-underscore - # event-tracking - # help-tokens - # jsonfield2 - # lti-consumer-xblock - # ora2 - # rest-condition - # super-csv - # xss-utils -djangorestframework-xml==2.0.0 - # via - # -r requirements/edx/testing.txt - # edx-enterprise djangorestframework==3.12.4 # via # -r requirements/edx/testing.txt @@ -444,6 +441,10 @@ djangorestframework==3.12.4 # ora2 # rest-condition # super-csv +djangorestframework-xml==2.0.0 + # via + # -r requirements/edx/testing.txt + # edx-enterprise docopt==0.6.2 # via # -r requirements/edx/testing.txt @@ -541,13 +542,13 @@ edx-opaque-keys[django]==2.2.1 # xmodule edx-organizations==6.9.0 # via -r requirements/edx/testing.txt -edx-proctoring-proctortrack==1.0.5 - # via -r requirements/edx/testing.txt edx-proctoring==3.13.2 # via # -c requirements/edx/../constraints.txt # -r requirements/edx/testing.txt # edx-proctoring-proctortrack +edx-proctoring-proctortrack==1.0.5 + # via -r requirements/edx/testing.txt edx-rbac==1.4.2 # via # -r requirements/edx/testing.txt @@ -586,16 +587,16 @@ edx-when==2.0.0 # edx-proctoring edxval==2.0.3 # via -r requirements/edx/testing.txt -elasticsearch==7.13.1 +elasticsearch==7.13.2 # via # -r requirements/edx/testing.txt # edx-search -enmerkar-underscore==2.0.0 - # via -r requirements/edx/testing.txt enmerkar==0.7.1 # via # -r requirements/edx/testing.txt # enmerkar-underscore +enmerkar-underscore==2.0.0 + # via -r requirements/edx/testing.txt event-tracking==1.0.4 # via # -r requirements/edx/testing.txt @@ -621,16 +622,16 @@ freezegun==0.3.12 # via # -c requirements/edx/../constraints.txt # -r requirements/edx/testing.txt -fs-s3fs==0.1.8 - # via - # -r requirements/edx/testing.txt - # django-pyfs fs==2.0.18 # via # -r requirements/edx/testing.txt # django-pyfs # fs-s3fs # xblock +fs-s3fs==0.1.8 + # via + # -r requirements/edx/testing.txt + # django-pyfs future==0.18.2 # via # -r requirements/edx/testing.txt @@ -706,10 +707,6 @@ itypes==1.2.0 # via # -r requirements/edx/testing.txt # coreapi -jinja2-pluralize==0.3.0 - # via - # -r requirements/edx/testing.txt - # diff-cover jinja2==3.0.1 # via # -r requirements/edx/testing.txt @@ -718,6 +715,10 @@ jinja2==3.0.1 # diff-cover # jinja2-pluralize # sphinx +jinja2-pluralize==0.3.0 + # via + # -r requirements/edx/testing.txt + # diff-cover jmespath==0.10.0 # via # -r requirements/edx/testing.txt @@ -751,10 +752,6 @@ kombu==4.6.11 # celery laboratory==1.0.2 # via -r requirements/edx/testing.txt -lazy-object-proxy==1.6.0 - # via - # -r requirements/edx/testing.txt - # astroid lazy==1.4 # via # -r requirements/edx/testing.txt @@ -762,6 +759,10 @@ lazy==1.4 # bok-choy # lti-consumer-xblock # ora2 +lazy-object-proxy==1.6.0 + # via + # -r requirements/edx/testing.txt + # astroid libsass==0.10.0 # via # -r requirements/edx/testing.txt @@ -770,10 +771,8 @@ loremipsum==1.0.5 # via # -r requirements/edx/testing.txt # ora2 -lti-consumer-xblock==2.10.1 - # via - # -c requirements/edx/../constraints.txt - # -r requirements/edx/testing.txt +lti-consumer-xblock==2.11.0 + # via -r requirements/edx/testing.txt lxml==4.5.0 # via # -c requirements/edx/../constraints.txt @@ -847,13 +846,13 @@ mpmath==1.2.1 # via # -r requirements/edx/testing.txt # sympy -mypy-extensions==0.4.3 - # via mypy mypy==0.910 # via -r requirements/edx/development.in +mypy-extensions==0.4.3 + # via mypy mysqlclient==2.0.3 # via -r requirements/edx/testing.txt -newrelic==6.4.2.159 +newrelic==6.4.3.160 # via # -r requirements/edx/testing.txt # edx-django-utils @@ -889,6 +888,11 @@ packaging==20.9 # pytest # sphinx # tox +path==13.1.0 + # via + # -c requirements/edx/../constraints.txt + # -r requirements/edx/testing.txt + # path.py path.py==12.5.0 # via # -r requirements/edx/testing.txt @@ -897,11 +901,6 @@ path.py==12.5.0 # ora2 # staff-graded-xblock # xmodule -path==13.1.0 - # via - # -c requirements/edx/../constraints.txt - # -r requirements/edx/testing.txt - # path.py paver==1.3.4 # via -r requirements/edx/testing.txt pbr==5.6.0 @@ -979,6 +978,14 @@ pylatexenc==2.10 # via # -r requirements/edx/testing.txt # olxcleaner +pylint==2.8.3 + # via + # -r requirements/edx/testing.txt + # edx-lint + # pylint-celery + # pylint-django + # pylint-plugin-utils + # pylint-pytest pylint-celery==0.3 # via # -r requirements/edx/testing.txt @@ -994,14 +1001,6 @@ pylint-plugin-utils==0.6 # pylint-django pylint-pytest==0.3.0 # via -r requirements/edx/testing.txt -pylint==2.8.3 - # via - # -r requirements/edx/testing.txt - # edx-lint - # pylint-celery - # pylint-django - # pylint-plugin-utils - # pylint-pytest pymongo==3.10.1 # via # -c requirements/edx/../constraints.txt @@ -1026,6 +1025,18 @@ pysrt==1.1.2 # via # -r requirements/edx/testing.txt # edxval +pytest==6.2.4 + # via + # -r requirements/edx/testing.txt + # pylint-pytest + # pytest-attrib + # pytest-cov + # pytest-django + # pytest-forked + # pytest-json-report + # pytest-metadata + # pytest-randomly + # pytest-xdist pytest-attrib==0.1.3 # via -r requirements/edx/testing.txt pytest-cov==2.12.1 @@ -1046,18 +1057,6 @@ pytest-randomly==3.8.0 # via -r requirements/edx/testing.txt pytest-xdist[psutil]==2.3.0 # via -r requirements/edx/testing.txt -pytest==6.2.4 - # via - # -r requirements/edx/testing.txt - # pylint-pytest - # pytest-attrib - # pytest-cov - # pytest-django - # pytest-forked - # pytest-json-report - # pytest-metadata - # pytest-randomly - # pytest-xdist python-dateutil==2.4.0 # via # -c requirements/edx/../constraints.txt @@ -1140,10 +1139,6 @@ regex==2021.4.4 # via # -r requirements/edx/testing.txt # nltk -requests-oauthlib==1.3.0 - # via - # -r requirements/edx/testing.txt - # social-auth-core requests==2.25.1 # via # -r requirements/edx/testing.txt @@ -1167,18 +1162,22 @@ requests==2.25.1 # sphinx # tableauserverclient # transifex-client +requests-oauthlib==1.3.0 + # via + # -r requirements/edx/testing.txt + # social-auth-core rest-condition==1.0.3 # via # -r requirements/edx/testing.txt # edx-drf-extensions -ruamel.yaml.clib==0.2.2 - # via - # -r requirements/edx/testing.txt - # ruamel.yaml ruamel.yaml==0.17.9 # via # -r requirements/edx/testing.txt # drf-yasg +ruamel.yaml.clib==0.2.2 + # via + # -r requirements/edx/testing.txt + # ruamel.yaml rules==3.0 # via # -r requirements/edx/testing.txt @@ -1358,12 +1357,12 @@ toml==0.10.2 # pytest-cov # tox # vulture -tox-battery==0.6.1 - # via -r requirements/edx/testing.txt tox==3.23.1 # via # -r requirements/edx/testing.txt # tox-battery +tox-battery==0.6.1 + # via -r requirements/edx/testing.txt tqdm==4.61.1 # via # -r requirements/edx/testing.txt @@ -1441,18 +1440,6 @@ wrapt==1.11.2 # -c requirements/edx/../constraints.txt # -r requirements/edx/testing.txt # astroid -git+https://github.com/edx-solutions/xblock-drag-and-drop-v2@v2.3.5#egg=xblock-drag-and-drop-v2==2.3.5 - # via -r requirements/edx/testing.txt -git+https://github.com/open-craft/xblock-poll@922cd36fb1c3cfe00b4ce03b19a13185d136447d#egg=xblock-poll==1.10.2 - # via -r requirements/edx/testing.txt -xblock-utils==2.1.3 - # via - # -r requirements/edx/testing.txt - # edx-sga - # lti-consumer-xblock - # staff-graded-xblock - # xblock-drag-and-drop-v2 - # xblock-google-drive xblock==1.4.2 # via # -r requirements/edx/testing.txt @@ -1472,6 +1459,18 @@ xblock==1.4.2 # xblock-google-drive # xblock-poll # xblock-utils +git+https://github.com/edx-solutions/xblock-drag-and-drop-v2@v2.3.5#egg=xblock-drag-and-drop-v2==2.3.5 + # via -r requirements/edx/testing.txt +git+https://github.com/open-craft/xblock-poll@922cd36fb1c3cfe00b4ce03b19a13185d136447d#egg=xblock-poll==1.10.2 + # via -r requirements/edx/testing.txt +xblock-utils==2.1.3 + # via + # -r requirements/edx/testing.txt + # edx-sga + # lti-consumer-xblock + # staff-graded-xblock + # xblock-drag-and-drop-v2 + # xblock-google-drive xmlsec==1.3.11 # via # -r requirements/edx/testing.txt diff --git a/requirements/edx/doc.txt b/requirements/edx/doc.txt index b0ec8fd348..f7612f88b4 100644 --- a/requirements/edx/doc.txt +++ b/requirements/edx/doc.txt @@ -1,5 +1,5 @@ # -# This file is autogenerated by pip-compile +# This file is autogenerated by pip-compile with python 3.8 # To update, run: # # make upgrade diff --git a/requirements/edx/paver.txt b/requirements/edx/paver.txt index 1abb994b79..9724aa1c4e 100644 --- a/requirements/edx/paver.txt +++ b/requirements/edx/paver.txt @@ -1,5 +1,5 @@ # -# This file is autogenerated by pip-compile +# This file is autogenerated by pip-compile with python 3.8 # To update, run: # # make upgrade diff --git a/requirements/edx/pip-tools.txt b/requirements/edx/pip-tools.txt index 76c71f6bfe..fb0c36dc11 100644 --- a/requirements/edx/pip-tools.txt +++ b/requirements/edx/pip-tools.txt @@ -1,5 +1,5 @@ # -# This file is autogenerated by pip-compile +# This file is autogenerated by pip-compile with python 3.8 # To update, run: # # make upgrade diff --git a/requirements/edx/testing.txt b/requirements/edx/testing.txt index eace1905f4..4a512ddade 100644 --- a/requirements/edx/testing.txt +++ b/requirements/edx/testing.txt @@ -1,5 +1,5 @@ # -# This file is autogenerated by pip-compile +# This file is autogenerated by pip-compile with python 3.8 # To update, run: # # make upgrade @@ -90,16 +90,16 @@ bleach==3.3.0 # xblock-poll bok-choy==1.1.1 # via -r requirements/edx/testing.in +boto==2.39.0 + # via + # -r requirements/edx/base.txt + # edxval boto3==1.4.8 # via # -r requirements/edx/base.txt # django-ses # fs-s3fs # ora2 -boto==2.39.0 - # via - # -r requirements/edx/base.txt - # edxval botocore==1.8.17 # via # -r requirements/edx/base.txt @@ -132,8 +132,6 @@ chardet==4.0.0 # requests chem==1.2.0 # via -r requirements/edx/base.txt -click-log==0.3.2 - # via edx-lint click==7.1.2 # via # -c requirements/edx/../constraints.txt @@ -143,6 +141,8 @@ click==7.1.2 # edx-lint # nltk # user-util +click-log==0.3.2 + # via edx-lint code-annotations==1.1.2 # via # -r requirements/edx/base.txt @@ -203,6 +203,68 @@ diff-cover==4.0.0 # -r requirements/edx/coverage.txt distlib==0.3.2 # via virtualenv + # via + # -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt + # -c requirements/edx/../constraints.txt + # -r requirements/edx/base.txt + # django-appconf + # 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-ses + # django-splash + # django-statici18n + # django-storages + # django-user-tasks + # django-wiki + # djangorestframework + # 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-event-routing-backends + # edx-i18n-tools + # edx-lint + # edx-milestones + # edx-opaque-keys + # edx-organizations + # edx-proctoring + # edx-rbac + # edx-search + # edx-submissions + # edx-toggles + # edx-when + # edxval + # enmerkar + # enmerkar-underscore + # event-tracking + # help-tokens + # jsonfield2 + # lti-consumer-xblock + # ora2 + # rest-condition + # super-csv + # xss-utils django-appconf==1.0.4 # via # -r requirements/edx/base.txt @@ -225,6 +287,7 @@ django-config-models==2.1.1 # -r requirements/edx/base.txt # edx-enterprise # edx-event-routing-backends + # lti-consumer-xblock django-cookies-samesite==0.9.0 # via -r requirements/edx/base.txt django-cors-headers==2.5.3 @@ -306,10 +369,10 @@ django-pipeline==2.0.6 # via -r requirements/edx/base.txt django-pyfs==3.0 # via -r requirements/edx/base.txt -git+https://github.com/edx/django-ratelimit-backend.git@v2.0.1a5#egg=django-ratelimit-backend==2.0.1a5 - # via -r requirements/edx/base.txt django-ratelimit==3.0.1 # via -r requirements/edx/base.txt +git+https://github.com/edx/django-ratelimit-backend.git@v2.0.1a5#egg=django-ratelimit-backend==2.0.1a5 + # via -r requirements/edx/base.txt django-require==1.0.11 # via -r requirements/edx/base.txt django-sekizai==2.0.0 @@ -348,72 +411,6 @@ django-webpack-loader==0.7.0 # -c requirements/edx/../constraints.txt # -r requirements/edx/base.txt # edx-proctoring - # via - # -c https://raw.githubusercontent.com/edx/edx-lint/master/edx_lint/files/common_constraints.txt - # -c requirements/edx/../constraints.txt - # -r requirements/edx/base.txt - # django-appconf - # 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-ses - # django-splash - # django-statici18n - # django-storages - # django-user-tasks - # django-wiki - # djangorestframework - # 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-event-routing-backends - # edx-i18n-tools - # edx-lint - # edx-milestones - # edx-opaque-keys - # edx-organizations - # edx-proctoring - # edx-rbac - # edx-search - # edx-submissions - # edx-toggles - # edx-when - # edxval - # enmerkar - # enmerkar-underscore - # event-tracking - # help-tokens - # jsonfield2 - # lti-consumer-xblock - # ora2 - # rest-condition - # super-csv - # xss-utils -djangorestframework-xml==2.0.0 - # via - # -r requirements/edx/base.txt - # edx-enterprise djangorestframework==3.12.4 # via # -r requirements/edx/base.txt @@ -431,6 +428,10 @@ djangorestframework==3.12.4 # ora2 # rest-condition # super-csv +djangorestframework-xml==2.0.0 + # via + # -r requirements/edx/base.txt + # edx-enterprise docopt==0.6.2 # via # -r requirements/edx/base.txt @@ -527,13 +528,13 @@ edx-opaque-keys[django]==2.2.1 # xmodule edx-organizations==6.9.0 # via -r requirements/edx/base.txt -edx-proctoring-proctortrack==1.0.5 - # via -r requirements/edx/base.txt edx-proctoring==3.13.2 # via # -c requirements/edx/../constraints.txt # -r requirements/edx/base.txt # edx-proctoring-proctortrack +edx-proctoring-proctortrack==1.0.5 + # via -r requirements/edx/base.txt edx-rbac==1.4.2 # via # -r requirements/edx/base.txt @@ -570,16 +571,16 @@ edx-when==2.0.0 # edx-proctoring edxval==2.0.3 # via -r requirements/edx/base.txt -elasticsearch==7.13.1 +elasticsearch==7.13.2 # via # -r requirements/edx/base.txt # edx-search -enmerkar-underscore==2.0.0 - # via -r requirements/edx/base.txt enmerkar==0.7.1 # via # -r requirements/edx/base.txt # enmerkar-underscore +enmerkar-underscore==2.0.0 + # via -r requirements/edx/base.txt event-tracking==1.0.4 # via # -r requirements/edx/base.txt @@ -600,16 +601,16 @@ freezegun==0.3.12 # via # -c requirements/edx/../constraints.txt # -r requirements/edx/testing.in -fs-s3fs==0.1.8 - # via - # -r requirements/edx/base.txt - # django-pyfs fs==2.0.18 # via # -r requirements/edx/base.txt # django-pyfs # fs-s3fs # xblock +fs-s3fs==0.1.8 + # via + # -r requirements/edx/base.txt + # django-pyfs future==0.18.2 # via # -r requirements/edx/base.txt @@ -677,10 +678,6 @@ itypes==1.2.0 # via # -r requirements/edx/base.txt # coreapi -jinja2-pluralize==0.3.0 - # via - # -r requirements/edx/coverage.txt - # diff-cover jinja2==3.0.1 # via # -r requirements/edx/base.txt @@ -689,6 +686,10 @@ jinja2==3.0.1 # coreschema # diff-cover # jinja2-pluralize +jinja2-pluralize==0.3.0 + # via + # -r requirements/edx/coverage.txt + # diff-cover jmespath==0.10.0 # via # -r requirements/edx/base.txt @@ -720,8 +721,6 @@ kombu==4.6.11 # celery laboratory==1.0.2 # via -r requirements/edx/base.txt -lazy-object-proxy==1.6.0 - # via astroid lazy==1.4 # via # -r requirements/edx/base.txt @@ -729,6 +728,8 @@ lazy==1.4 # bok-choy # lti-consumer-xblock # ora2 +lazy-object-proxy==1.6.0 + # via astroid libsass==0.10.0 # via # -r requirements/edx/base.txt @@ -737,10 +738,8 @@ loremipsum==1.0.5 # via # -r requirements/edx/base.txt # ora2 -lti-consumer-xblock==2.10.1 - # via - # -c requirements/edx/../constraints.txt - # -r requirements/edx/base.txt +lti-consumer-xblock==2.11.0 + # via -r requirements/edx/base.txt lxml==4.5.0 # via # -c requirements/edx/../constraints.txt @@ -811,7 +810,7 @@ mpmath==1.2.1 # sympy mysqlclient==2.0.3 # via -r requirements/edx/base.txt -newrelic==6.4.2.159 +newrelic==6.4.3.160 # via # -r requirements/edx/base.txt # edx-django-utils @@ -846,6 +845,11 @@ packaging==20.9 # drf-yasg # pytest # tox +path==13.1.0 + # via + # -c requirements/edx/../constraints.txt + # -r requirements/edx/base.txt + # path.py path.py==12.5.0 # via # -r requirements/edx/base.txt @@ -854,11 +858,6 @@ path.py==12.5.0 # ora2 # staff-graded-xblock # xmodule -path==13.1.0 - # via - # -c requirements/edx/../constraints.txt - # -r requirements/edx/base.txt - # path.py paver==1.3.4 # via -r requirements/edx/base.txt pbr==5.6.0 @@ -930,6 +929,13 @@ pylatexenc==2.10 # via # -r requirements/edx/base.txt # olxcleaner +pylint==2.8.3 + # via + # edx-lint + # pylint-celery + # pylint-django + # pylint-plugin-utils + # pylint-pytest pylint-celery==0.3 # via edx-lint pylint-django==2.4.4 @@ -940,13 +946,6 @@ pylint-plugin-utils==0.6 # pylint-django pylint-pytest==0.3.0 # via -r requirements/edx/testing.in -pylint==2.8.3 - # via - # edx-lint - # pylint-celery - # pylint-django - # pylint-plugin-utils - # pylint-pytest pymongo==3.10.1 # via # -c requirements/edx/../constraints.txt @@ -969,6 +968,18 @@ pysrt==1.1.2 # via # -r requirements/edx/base.txt # edxval +pytest==6.2.4 + # via + # -r requirements/edx/testing.in + # pylint-pytest + # pytest-attrib + # pytest-cov + # pytest-django + # pytest-forked + # pytest-json-report + # pytest-metadata + # pytest-randomly + # pytest-xdist pytest-attrib==0.1.3 # via -r requirements/edx/testing.in pytest-cov==2.12.1 @@ -987,18 +998,6 @@ pytest-randomly==3.8.0 # via -r requirements/edx/testing.in pytest-xdist[psutil]==2.3.0 # via -r requirements/edx/testing.in -pytest==6.2.4 - # via - # -r requirements/edx/testing.in - # pylint-pytest - # pytest-attrib - # pytest-cov - # pytest-django - # pytest-forked - # pytest-json-report - # pytest-metadata - # pytest-randomly - # pytest-xdist python-dateutil==2.4.0 # via # -c requirements/edx/../constraints.txt @@ -1078,10 +1077,6 @@ regex==2021.4.4 # via # -r requirements/edx/base.txt # nltk -requests-oauthlib==1.3.0 - # via - # -r requirements/edx/base.txt - # social-auth-core requests==2.25.1 # via # -r requirements/edx/base.txt @@ -1104,18 +1099,22 @@ requests==2.25.1 # social-auth-core # tableauserverclient # transifex-client +requests-oauthlib==1.3.0 + # via + # -r requirements/edx/base.txt + # social-auth-core rest-condition==1.0.3 # via # -r requirements/edx/base.txt # edx-drf-extensions -ruamel.yaml.clib==0.2.2 - # via - # -r requirements/edx/base.txt - # ruamel.yaml ruamel.yaml==0.17.9 # via # -r requirements/edx/base.txt # drf-yasg +ruamel.yaml.clib==0.2.2 + # via + # -r requirements/edx/base.txt + # ruamel.yaml rules==3.0 # via # -r requirements/edx/base.txt @@ -1263,12 +1262,12 @@ toml==0.10.2 # pytest # pytest-cov # tox -tox-battery==0.6.1 - # via -r requirements/edx/testing.in tox==3.23.1 # via # -r requirements/edx/testing.in # tox-battery +tox-battery==0.6.1 + # via -r requirements/edx/testing.in tqdm==4.61.1 # via # -r requirements/edx/base.txt @@ -1336,18 +1335,6 @@ wrapt==1.11.2 # -c requirements/edx/../constraints.txt # -r requirements/edx/base.txt # astroid -git+https://github.com/edx-solutions/xblock-drag-and-drop-v2@v2.3.5#egg=xblock-drag-and-drop-v2==2.3.5 - # via -r requirements/edx/base.txt -git+https://github.com/open-craft/xblock-poll@922cd36fb1c3cfe00b4ce03b19a13185d136447d#egg=xblock-poll==1.10.2 - # via -r requirements/edx/base.txt -xblock-utils==2.1.3 - # via - # -r requirements/edx/base.txt - # edx-sga - # lti-consumer-xblock - # staff-graded-xblock - # xblock-drag-and-drop-v2 - # xblock-google-drive xblock==1.4.2 # via # -r requirements/edx/base.txt @@ -1367,6 +1354,18 @@ xblock==1.4.2 # xblock-google-drive # xblock-poll # xblock-utils +git+https://github.com/edx-solutions/xblock-drag-and-drop-v2@v2.3.5#egg=xblock-drag-and-drop-v2==2.3.5 + # via -r requirements/edx/base.txt +git+https://github.com/open-craft/xblock-poll@922cd36fb1c3cfe00b4ce03b19a13185d136447d#egg=xblock-poll==1.10.2 + # via -r requirements/edx/base.txt +xblock-utils==2.1.3 + # via + # -r requirements/edx/base.txt + # edx-sga + # lti-consumer-xblock + # staff-graded-xblock + # xblock-drag-and-drop-v2 + # xblock-google-drive xmlsec==1.3.11 # via # -r requirements/edx/base.txt diff --git a/scripts/xblock/requirements.txt b/scripts/xblock/requirements.txt index ca02b4149e..4fdf4c909d 100644 --- a/scripts/xblock/requirements.txt +++ b/scripts/xblock/requirements.txt @@ -1,5 +1,5 @@ # -# This file is autogenerated by pip-compile +# This file is autogenerated by pip-compile with python 3.8 # To update, run: # # make upgrade