Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
E
edx-platform
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
edx
edx-platform
Commits
2579785a
Commit
2579785a
authored
Dec 08, 2017
by
bmedx
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Make all uses of birdcage conditional, should fix 1.11 errors
parent
831eae62
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
41 additions
and
4 deletions
+41
-4
cms/envs/common.py
+11
-1
lms/envs/common.py
+9
-1
lms/envs/load_test.py
+4
-0
openedx/core/djangoapps/cors_csrf/middleware.py
+9
-1
openedx/core/djangoapps/cors_csrf/tests/test_middleware.py
+8
-1
No files found.
cms/envs/common.py
View file @
2579785a
...
...
@@ -45,6 +45,9 @@ import imp
import
os
import
sys
from
datetime
import
timedelta
import
django
import
lms.envs.common
# Although this module itself may not use these imported variables, other dependent modules may.
from
lms.envs.common
import
(
...
...
@@ -433,6 +436,13 @@ simplefilter('ignore')
################################# Middleware ###################################
# TODO: Remove Django 1.11 upgrade shim
# SHIM: Remove birdcage references post-1.11 upgrade as it is only in place to help during that deployment
if
django
.
VERSION
<
(
1
,
9
):
_csrf_middleware
=
'birdcage.v1_11.csrf.CsrfViewMiddleware'
else
:
_csrf_middleware
=
'django.middleware.csrf.CsrfViewMiddleware'
MIDDLEWARE_CLASSES
=
[
'crum.CurrentRequestUserMiddleware'
,
'request_cache.middleware.RequestCache'
,
...
...
@@ -442,7 +452,7 @@ MIDDLEWARE_CLASSES = [
'openedx.core.djangoapps.header_control.middleware.HeaderControlMiddleware'
,
'django.middleware.cache.UpdateCacheMiddleware'
,
'django.middleware.common.CommonMiddleware'
,
'birdcage.v1_11.csrf.CsrfViewMiddleware'
,
_csrf_middleware
,
'django.contrib.sites.middleware.CurrentSiteMiddleware'
,
# Instead of SessionMiddleware, we use a more secure version
...
...
lms/envs/common.py
View file @
2579785a
...
...
@@ -34,6 +34,7 @@ import sys
import
os
import
dealer.git
import
django
from
path
import
Path
as
path
from
warnings
import
simplefilter
from
django.utils.translation
import
ugettext_lazy
as
_
...
...
@@ -1230,6 +1231,13 @@ simplefilter('ignore')
################################# Middleware ###################################
# TODO: Remove Django 1.11 upgrade shim
# SHIM: Remove birdcage references post-1.11 upgrade as it is only in place to help during that deployment
if
django
.
VERSION
<
(
1
,
9
):
_csrf_middleware
=
'birdcage.v1_11.csrf.CsrfViewMiddleware'
else
:
_csrf_middleware
=
'django.middleware.csrf.CsrfViewMiddleware'
MIDDLEWARE_CLASSES
=
[
'crum.CurrentRequestUserMiddleware'
,
...
...
@@ -1271,7 +1279,7 @@ MIDDLEWARE_CLASSES = [
'corsheaders.middleware.CorsMiddleware'
,
'openedx.core.djangoapps.cors_csrf.middleware.CorsCSRFMiddleware'
,
'openedx.core.djangoapps.cors_csrf.middleware.CsrfCrossDomainCookieMiddleware'
,
'birdcage.v1_11.csrf.CsrfViewMiddleware'
,
_csrf_middleware
,
'splash.middleware.SplashMiddleware'
,
...
...
lms/envs/load_test.py
View file @
2579785a
...
...
@@ -8,9 +8,13 @@ Settings for load testing.
from
.aws
import
*
# TODO: Remove Django 1.11 upgrade shim
# SHIM: Remove birdcage references post-1.11 upgrade as it is only in place to help during that deployment
# Disable CSRF for load testing
EXCLUDE_CSRF
=
lambda
elem
:
elem
not
in
[
'django.template.context_processors.csrf'
,
'django.middleware.csrf.CsrfViewMiddleware'
,
'birdcage.v1_11.csrf.CsrfViewMiddleware'
]
DEFAULT_TEMPLATE_ENGINE
[
'OPTIONS'
][
'context_processors'
]
=
filter
(
...
...
openedx/core/djangoapps/cors_csrf/middleware.py
View file @
2579785a
...
...
@@ -44,12 +44,20 @@ CSRF cookie.
import
logging
import
django
from
django.conf
import
settings
from
django.core.exceptions
import
ImproperlyConfigured
,
MiddlewareNotUsed
from
birdcage.v1_11.csrf
import
CsrfViewMiddleware
from
.helpers
import
is_cross_domain_request_allowed
,
skip_cross_domain_referer_check
# TODO: Remove Django 1.11 upgrade shim
# SHIM: Remove birdcage references post-1.11 upgrade as it is only in place to help during that deployment
if
django
.
VERSION
<
(
1
,
9
):
from
birdcage.v1_11.csrf
import
CsrfViewMiddleware
else
:
from
django.middleware.csrf
import
CsrfViewMiddleware
log
=
logging
.
getLogger
(
__name__
)
...
...
openedx/core/djangoapps/cors_csrf/tests/test_middleware.py
View file @
2579785a
...
...
@@ -5,11 +5,18 @@ Tests for the CORS CSRF middleware
from
mock
import
patch
,
Mock
import
ddt
import
django
from
django.test
import
TestCase
from
django.test.utils
import
override_settings
from
django.core.exceptions
import
MiddlewareNotUsed
,
ImproperlyConfigured
from
django.http
import
HttpResponse
from
birdcage.v1_11.csrf
import
CsrfViewMiddleware
# TODO: Remove Django 1.11 upgrade shim
# SHIM: Remove birdcage references post-1.11 upgrade as it is only in place to help during that deployment
if
django
.
VERSION
<
(
1
,
9
):
from
birdcage.v1_11.csrf
import
CsrfViewMiddleware
else
:
from
django.middleware.csrf
import
CsrfViewMiddleware
from
..middleware
import
CorsCSRFMiddleware
,
CsrfCrossDomainCookieMiddleware
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment