From 1cc2fdf70db90f382cdbf982f84459b06eda4421 Mon Sep 17 00:00:00 2001 From: Paul Marillonnet Date: Thu, 29 Oct 2020 11:58:23 +0100 Subject: [PATCH] misc: defer null-character check in api to submodule initialization (#48114) --- src/authentic2/__init__.py | 2 -- src/authentic2/api_views.py | 6 +++++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/authentic2/__init__.py b/src/authentic2/__init__.py index 7e303c680..3624002d9 100644 --- a/src/authentic2/__init__.py +++ b/src/authentic2/__init__.py @@ -21,7 +21,6 @@ default_app_config = 'authentic2.app.Authentic2Config' if django.VERSION < (2,): from . import validators from django.forms import fields - import rest_framework.fields # query-string and form parameters used to query database charfield must be checked for NULL characters # https://code.djangoproject.com/ticket/30064 @@ -34,4 +33,3 @@ if django.VERSION < (2,): fields.CharField.__init__ = CharField_new_init__ fields.CharField.a2_workaround = True - rest_framework.fields.ProhibitNullCharactersValidator = validators.ProhibitNullCharactersValidator diff --git a/src/authentic2/api_views.py b/src/authentic2/api_views.py index ef5bbc2da..1369f8edf 100644 --- a/src/authentic2/api_views.py +++ b/src/authentic2/api_views.py @@ -66,7 +66,11 @@ from .models import Attribute, PasswordReset, Service from .a2_rbac.utils import get_default_ou -# Retro-compatibility with Django 1.8 +# Retro-compatibility with older Django versions +if django.VERSION < (2,): + import rest_framework.fields + from . import validators + rest_framework.fields.ProhibitNullCharactersValidator = validators.ProhibitNullCharactersValidator if django.VERSION < (1, 11): authentication.authenticate = utils.authenticate