diff --git a/common/djangoapps/track/middleware.py b/common/djangoapps/track/middleware.py index 0ff46a15b8c4279deacff4fc5b21ea97c3e42eec..77cfda2650a36fa106af81c5a670b2d1ccf43683 100644 --- a/common/djangoapps/track/middleware.py +++ b/common/djangoapps/track/middleware.py @@ -36,28 +36,6 @@ META_KEY_TO_CONTEXT_KEY = { } -class ResponseLoggingMiddleware(object): - """ - A debugging middleware for the purpose of understanding what the current state of the response - is at this point in the stack. - """ - - def process_response(self, _request, response): - """ - Logs the response at the current point in the middleware stack for debugging purposes. - """ - try: - log.info('Logging response for debugging purposes: %r', response) - log.info('Response container data: %r', response._container) # pylint: disable=protected-access - log.info('Container types: %r', [type(el) for el in response._container]) # pylint: disable=protected-access - - except: # pylint: disable=bare-except - # If this causes an error, we don't want it to bubble up since this is just for logging. - log.exception('Error logging response object') - - return response - - class TrackMiddleware(object): """ Tracks all requests made, as well as setting up context for other server diff --git a/common/djangoapps/util/cache.py b/common/djangoapps/util/cache.py index 5987d704e4a584ac144d9b40ad269fc744b7cac0..bc9503aaffe6e3ddd2655633e0bcf471bae6debe 100644 --- a/common/djangoapps/util/cache.py +++ b/common/djangoapps/util/cache.py @@ -76,6 +76,13 @@ def cache_if_anonymous(*get_parameters): }) response = cache.get(cache_key) # pylint: disable=maybe-no-member + + # A hack to ensure that the response data is a valid text type for both Python 2 and 3. + response_content = response._container.copy() # pylint: disable=protected-member + response.content = b'' + for item in response_content: + response.write(item) + if not response: response = view_func(request, *args, **kwargs) cache.set(cache_key, response, 60 * 3) # pylint: disable=maybe-no-member diff --git a/lms/envs/common.py b/lms/envs/common.py index d515d698f620e4b780bd4b23e452f68e56075924..bf5aa8a7d4655362dded35fd47017d5a101fc216 100644 --- a/lms/envs/common.py +++ b/lms/envs/common.py @@ -1444,9 +1444,6 @@ MIDDLEWARE_CLASSES = [ 'lms.djangoapps.discussion.django_comment_client.middleware.AjaxExceptionMiddleware', 'django.middleware.common.CommonMiddleware', - # Debugging Middleware. Remove once Python 3 has been deployed. - 'track.middleware.ResponseLoggingMiddleware', - 'django.contrib.sites.middleware.CurrentSiteMiddleware', 'edx_rest_framework_extensions.auth.jwt.middleware.JwtAuthCookieMiddleware',