Skip to content
Snippets Groups Projects
Unverified Commit a751a4a0 authored by edx-pipeline-bot's avatar edx-pipeline-bot Committed by GitHub
Browse files

Merge pull request #22530 from edx/release-mergeback-to-master

Merge release back to master
parents 08237d58 1411ef54
Branches
Tags
No related merge requests found
......@@ -76,7 +76,14 @@ def cache_if_anonymous(*get_parameters):
})
response = cache.get(cache_key) # pylint: disable=maybe-no-member
if not response:
if response:
# A hack to ensure that the response data is a valid text type for both Python 2 and 3.
response_content = list(response._container) # pylint: disable=protected-member
response.content = b''
for item in response_content:
response.write(item)
else:
response = view_func(request, *args, **kwargs)
cache.set(cache_key, response, 60 * 3) # pylint: disable=maybe-no-member
......
......@@ -661,9 +661,11 @@ class Transcript(object):
try:
# With error handling (set to 'ERROR_RAISE'), we will be getting
# the exception if something went wrong in parsing the transcript.
if isinstance(content, text_type):
content = content.encode('utf-8')
srt_subs = SubRipFile.from_string(
# Skip byte order mark(BOM) character
content.encode('utf-8').decode('utf-8-sig'),
content.decode('utf-8-sig'),
error_handling=SubRipFile.ERROR_RAISE
)
except Error as ex: # Base exception from pysrt
......
......@@ -1259,10 +1259,21 @@ class XModuleDescriptor(XModuleDescriptorToXBlockMixin, HTMLSnippet, ResourceTem
"""
return (hasattr(other, 'scope_ids') and
self.scope_ids == other.scope_ids and
list(self.fields.keys()) == list(other.fields.keys()) and
set(self.fields.keys()) == set(other.fields.keys()) and
all(getattr(self, field.name) == getattr(other, field.name)
for field in self.fields.values()))
def __hash__(self): # pylint: disable=useless-super-delegation
"""
This isn't technically appropriate since descriptors are actually mutable,
but in practice we rarely modify them after creation or instantiate two
equivalent descriptors in the same process. And we perform graph
operations on large collections of XBlocks that have simply unacceptable
performance if we have to rely on lists and equality rather than sets,
dictionaries, and identity-based hash functions.
"""
return super(XModuleDescriptor, self).__hash__()
def __repr__(self):
return (
"{0.__class__.__name__}("
......
......@@ -43,7 +43,7 @@ def index(request):
if configuration_helpers.get_value(
'ALWAYS_REDIRECT_HOMEPAGE_TO_DASHBOARD_FOR_AUTHENTICATED_USER',
settings.FEATURES.get('ALWAYS_REDIRECT_HOMEPAGE_TO_DASHBOARD_FOR_AUTHENTICATED_USER', True)):
return redirect(reverse('dashboard'))
return redirect('dashboard')
enable_mktg_site = configuration_helpers.get_value(
'ENABLE_MKTG_SITE',
......@@ -62,7 +62,7 @@ def index(request):
# keep specialized logic for Edge until we can migrate over Edge to fully use
# configuration.
if domain and 'edge.edx.org' in domain:
return redirect(reverse("signin_user"))
return redirect("signin_user")
# we do not expect this case to be reached in cases where
# marketing and edge are enabled
......
......@@ -294,9 +294,9 @@ def yt_video_metadata(request):
status_code = res.status_code
if res.status_code == 200:
try:
res = res.json()
if res.get('items', []):
response = res
res_json = res.json()
if res_json.get('items', []):
response = res_json
else:
logging.warning(u'Unable to find the items in response. Following response '
u'was received: {res}'.format(res=res.text))
......
......@@ -9,6 +9,7 @@ from django.conf import settings
from django.core.cache import cache
from django.http import HttpResponse
from pytz import UTC
import six
from mobile_api.mobile_platform import MobilePlatform
from mobile_api.models import AppVersionConfig
......@@ -104,13 +105,13 @@ class AppVersionUpgrade(object):
cached_data = cache.get_many([last_supported_date_cache_key, latest_version_cache_key])
last_supported_date = cached_data.get(last_supported_date_cache_key)
if not last_supported_date:
if last_supported_date != self.NO_LAST_SUPPORTED_DATE and not isinstance(last_supported_date, datetime):
last_supported_date = self._get_last_supported_date(platform.NAME, platform.version)
cache.set(last_supported_date_cache_key, last_supported_date, self.CACHE_TIMEOUT)
request_cache_dict[self.LAST_SUPPORTED_DATE_HEADER] = last_supported_date
latest_version = cached_data.get(latest_version_cache_key)
if not latest_version:
if not (latest_version and isinstance(latest_version, six.text_type)):
latest_version = self._get_latest_version(platform.NAME)
cache.set(latest_version_cache_key, latest_version, self.CACHE_TIMEOUT)
request_cache_dict[self.LATEST_VERSION_HEADER] = latest_version
......
......@@ -1443,6 +1443,7 @@ MIDDLEWARE_CLASSES = [
'openedx.core.djangoapps.header_control.middleware.HeaderControlMiddleware',
'lms.djangoapps.discussion.django_comment_client.middleware.AjaxExceptionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.contrib.sites.middleware.CurrentSiteMiddleware',
'edx_rest_framework_extensions.auth.jwt.middleware.JwtAuthCookieMiddleware',
......
......@@ -6,7 +6,7 @@
#
-e git+https://github.com/edx/acid-block.git@98aecba94ecbfa934e2d00262741c0ea9f557fc9#egg=acid-xblock
-e common/lib/capa
-e git+https://github.com/edx/codejail.git@33758da2609bd72c2c18efc2d4bdb93596523d5e#egg=codejail
-e git+https://github.com/edx/codejail.git@6bc47025359a4d6ecf2b6b5776ff99959094d2cc#egg=codejail
-e git+https://github.com/edx/django-wiki.git@v0.0.23#egg=django-wiki
-e git+https://github.com/edx/DoneXBlock.git@2.0.1#egg=done-xblock
-e git+https://github.com/jazkarta/edx-jsme.git@690dbf75441fa91c7c4899df0b83d77f7deb5458#egg=edx-jsme
......@@ -112,7 +112,7 @@ edx-oauth2-provider==1.3.1
edx-opaque-keys[django]==2.0.1
edx-organizations==2.1.1
edx-proctoring-proctortrack==1.0.5
edx-proctoring==2.1.6
edx-proctoring==2.1.7
edx-rbac==1.0.3 # via edx-enterprise
edx-rest-api-client==1.9.2
edx-search==1.2.2
......@@ -151,7 +151,7 @@ lazy==1.1
lepl==5.1.3 # via rfc6266-parser
libsass==0.10.0
loremipsum==1.0.5
git+https://github.com/edx/xblock-lti-consumer.git@v1.2.1#egg=lti_consumer-xblock==1.2.1
git+https://github.com/edx/xblock-lti-consumer.git@v1.2.3#egg=lti_consumer-xblock==1.2.3
lxml==3.8.0
mailsnake==1.6.4
mako==1.0.2
......@@ -251,7 +251,7 @@ webencodings==0.5.1 # via html5lib
webob==1.8.5 # via xblock
wrapt==1.10.5
git+https://github.com/edx-solutions/xblock-drag-and-drop-v2@v2.2.6#egg=xblock-drag-and-drop-v2==2.2.6
git+https://github.com/open-craft/xblock-poll@add89e14558c30f3c8dc7431e5cd6536fff6d941#egg=xblock-poll==1.5.1
git+https://github.com/jmbowman/xblock-poll@8e78663fdd3c1d79571eb753d1c601729e9a9325#egg=xblock-poll==1.9.0
xblock-utils==1.2.3
xblock==1.2.9
xmlsec==1.3.3 # via python3-saml
......
......@@ -6,7 +6,7 @@
#
-e git+https://github.com/edx/acid-block.git@98aecba94ecbfa934e2d00262741c0ea9f557fc9#egg=acid-xblock
-e common/lib/capa
-e git+https://github.com/edx/codejail.git@33758da2609bd72c2c18efc2d4bdb93596523d5e#egg=codejail
-e git+https://github.com/edx/codejail.git@6bc47025359a4d6ecf2b6b5776ff99959094d2cc#egg=codejail
-e git+https://github.com/edx/django-wiki.git@v0.0.23#egg=django-wiki
-e git+https://github.com/edx/DoneXBlock.git@2.0.1#egg=done-xblock
-e git+https://github.com/jazkarta/edx-jsme.git@690dbf75441fa91c7c4899df0b83d77f7deb5458#egg=edx-jsme
......@@ -135,7 +135,7 @@ edx-oauth2-provider==1.3.1
edx-opaque-keys[django]==2.0.1
edx-organizations==2.1.1
edx-proctoring-proctortrack==1.0.5
edx-proctoring==2.1.6
edx-proctoring==2.1.7
edx-rbac==1.0.3
edx-rest-api-client==1.9.2
edx-search==1.2.2
......@@ -194,7 +194,7 @@ lazy==1.1
lepl==5.1.3
libsass==0.10.0
loremipsum==1.0.5
git+https://github.com/edx/xblock-lti-consumer.git@v1.2.1#egg=lti_consumer-xblock==1.2.1
git+https://github.com/edx/xblock-lti-consumer.git@v1.2.3#egg=lti_consumer-xblock==1.2.3
lxml==3.8.0
m2r==0.2.1
mailsnake==1.6.4
......@@ -344,7 +344,7 @@ websocket-client==0.56.0
werkzeug==0.16.0
wrapt==1.10.5
git+https://github.com/edx-solutions/xblock-drag-and-drop-v2@v2.2.6#egg=xblock-drag-and-drop-v2==2.2.6
git+https://github.com/open-craft/xblock-poll@add89e14558c30f3c8dc7431e5cd6536fff6d941#egg=xblock-poll==1.5.1
git+https://github.com/jmbowman/xblock-poll@8e78663fdd3c1d79571eb753d1c601729e9a9325#egg=xblock-poll==1.9.0
xblock-utils==1.2.3
xblock==1.2.9
xmlsec==1.3.3
......
......@@ -79,18 +79,18 @@ git+https://github.com/edx/django-celery.git@756cb57aad765cb2b0d37372c1855b8f5f3
git+https://github.com/edx/bridgekeeper.git@4e34894e4ac5d0467ed1901811a81fd87ee01937#egg=bridgekeeper==0.0
# Our libraries:
-e git+https://github.com/edx/codejail.git@33758da2609bd72c2c18efc2d4bdb93596523d5e#egg=codejail
-e git+https://github.com/edx/codejail.git@6bc47025359a4d6ecf2b6b5776ff99959094d2cc#egg=codejail
-e git+https://github.com/edx/acid-block.git@98aecba94ecbfa934e2d00262741c0ea9f557fc9#egg=acid-xblock
git+https://github.com/edx/edx-ora2.git@2.4.7#egg=ora2==2.4.7
git+https://github.com/edx/crowdsourcehinter.git@a7ffc85b134b7d8909bf1fefd23dbdb8eb28e467#egg=crowdsourcehinter-xblock==0.2
-e git+https://github.com/edx/RateXBlock.git@2.0#egg=rate-xblock
-e git+https://github.com/edx/DoneXBlock.git@2.0.1#egg=done-xblock
-e git+https://github.com/edx-solutions/xblock-google-drive.git@2d176468e33c0713c911b563f8f65f7cf232f5b6#egg=xblock-google-drive
git+https://github.com/edx/xblock-lti-consumer.git@v1.2.1#egg=lti_consumer-xblock==1.2.1
git+https://github.com/edx/xblock-lti-consumer.git@v1.2.3#egg=lti_consumer-xblock==1.2.3
# Third Party XBlocks
git+https://github.com/joestump/python-oauth2.git@b94f69b1ad195513547924e380d9265133e995fa#egg=oauth2
git+https://github.com/open-craft/xblock-poll@add89e14558c30f3c8dc7431e5cd6536fff6d941#egg=xblock-poll==1.5.1
git+https://github.com/jmbowman/xblock-poll@8e78663fdd3c1d79571eb753d1c601729e9a9325#egg=xblock-poll==1.9.0
git+https://github.com/edx-solutions/xblock-drag-and-drop-v2@v2.2.6#egg=xblock-drag-and-drop-v2==2.2.6
......@@ -6,7 +6,7 @@
#
-e git+https://github.com/edx/acid-block.git@98aecba94ecbfa934e2d00262741c0ea9f557fc9#egg=acid-xblock
-e common/lib/capa
-e git+https://github.com/edx/codejail.git@33758da2609bd72c2c18efc2d4bdb93596523d5e#egg=codejail
-e git+https://github.com/edx/codejail.git@6bc47025359a4d6ecf2b6b5776ff99959094d2cc#egg=codejail
-e git+https://github.com/edx/django-wiki.git@v0.0.23#egg=django-wiki
-e git+https://github.com/edx/DoneXBlock.git@2.0.1#egg=done-xblock
-e git+https://github.com/jazkarta/edx-jsme.git@690dbf75441fa91c7c4899df0b83d77f7deb5458#egg=edx-jsme
......@@ -132,7 +132,7 @@ edx-oauth2-provider==1.3.1
edx-opaque-keys[django]==2.0.1
edx-organizations==2.1.1
edx-proctoring-proctortrack==1.0.5
edx-proctoring==2.1.6
edx-proctoring==2.1.7
edx-rbac==1.0.3
edx-rest-api-client==1.9.2
edx-search==1.2.2
......@@ -188,7 +188,7 @@ lazy==1.1
lepl==5.1.3
libsass==0.10.0
loremipsum==1.0.5
git+https://github.com/edx/xblock-lti-consumer.git@v1.2.1#egg=lti_consumer-xblock==1.2.1
git+https://github.com/edx/xblock-lti-consumer.git@v1.2.3#egg=lti_consumer-xblock==1.2.3
lxml==3.8.0
mailsnake==1.6.4
mako==1.0.2
......@@ -326,7 +326,7 @@ websocket-client==0.56.0 # via docker
werkzeug==0.16.0 # via moto
wrapt==1.10.5
git+https://github.com/edx-solutions/xblock-drag-and-drop-v2@v2.2.6#egg=xblock-drag-and-drop-v2==2.2.6
git+https://github.com/open-craft/xblock-poll@add89e14558c30f3c8dc7431e5cd6536fff6d941#egg=xblock-poll==1.5.1
git+https://github.com/jmbowman/xblock-poll@8e78663fdd3c1d79571eb753d1c601729e9a9325#egg=xblock-poll==1.9.0
xblock-utils==1.2.3
xblock==1.2.9
xmlsec==1.3.3
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment