From 99b2ccdc503bd013a208c5cef2abba819e3cca8d Mon Sep 17 00:00:00 2001 From: Tanner Prestegard <tanner.prestegard@ligo.org> Date: Sat, 18 May 2019 13:27:07 -0500 Subject: [PATCH] Fix urlencode imports Import version of urlencode which is packaged with Django in order to facilitate Python 2-3 compatibility. --- gracedb/api/v1/events/views.py | 3 +-- gracedb/api/v1/paginators.py | 6 ++---- gracedb/api/v1/superevents/paginators.py | 5 +++-- gracedb/events/tests/test_perms.py | 7 ++----- gracedb/search/tests/test_access.py | 6 +----- 5 files changed, 9 insertions(+), 18 deletions(-) diff --git a/gracedb/api/v1/events/views.py b/gracedb/api/v1/events/views.py index 11f64fcad..b6c6b8a39 100644 --- a/gracedb/api/v1/events/views.py +++ b/gracedb/api/v1/events/views.py @@ -6,10 +6,8 @@ import os import shutil try: from io import StringIO - from urllib.parse import urlencode except ImportError: # python < 3 from StringIO import StringIO - from urllib import urlencode from django.conf import settings from django.contrib.auth.models import User, Permission, Group as DjangoGroup @@ -20,6 +18,7 @@ from django.http import HttpResponse, HttpResponseForbidden, \ HttpResponseNotFound, HttpResponseServerError, HttpResponseBadRequest from django.http.request import QueryDict from django.utils.functional import wraps +from django.utils.http import urlencode # Stuff for the LigoLwRenderer from glue.ligolw import ligolw diff --git a/gracedb/api/v1/paginators.py b/gracedb/api/v1/paginators.py index f03eaa9c7..d099a4b0d 100644 --- a/gracedb/api/v1/paginators.py +++ b/gracedb/api/v1/paginators.py @@ -1,9 +1,7 @@ from collections import OrderedDict import logging -try: - from urllib.parse import urlencode -except ImportError: # python < 3 - from urllib import urlencode + +from django.utils.http import urlencode from rest_framework import pagination from rest_framework.response import Response diff --git a/gracedb/api/v1/superevents/paginators.py b/gracedb/api/v1/superevents/paginators.py index 599682a17..8cc967292 100644 --- a/gracedb/api/v1/superevents/paginators.py +++ b/gracedb/api/v1/superevents/paginators.py @@ -1,6 +1,7 @@ from collections import OrderedDict import logging -import urllib + +from django.utils.http import urlencode from rest_framework import pagination from rest_framework.response import Response @@ -26,7 +27,7 @@ class CustomSupereventPagination(pagination.LimitOffsetPagination): 'start': last, self.limit_query_param: self.limit, } - last_uri = base_uri + '?' + urllib.urlencode(param_dict) + last_uri = base_uri + '?' + urlencode(param_dict) output = OrderedDict([ ('numRows', numRows), diff --git a/gracedb/events/tests/test_perms.py b/gracedb/events/tests/test_perms.py index 36ab3923e..61e22e16b 100644 --- a/gracedb/events/tests/test_perms.py +++ b/gracedb/events/tests/test_perms.py @@ -4,6 +4,7 @@ from django.contrib.contenttypes.models import ContentType from django.contrib.auth.models import Permission, Group, User from django.conf import settings from django.urls import reverse +from django.utils.http import urlencode from guardian.models import GroupObjectPermission, UserObjectPermission from guardian.shortcuts import assign_perm @@ -16,11 +17,7 @@ from events.permission_utils import assign_default_event_perms import json import os import shutil -try: - from urllib.parse import urlencode -except ImportError: # python < 3 - from urllib import urlencode - + #------------------------------------------------------------------------------ #------------------------------------------------------------------------------ # Some utilities diff --git a/gracedb/search/tests/test_access.py b/gracedb/search/tests/test_access.py index 45592ae8b..94625c3bb 100644 --- a/gracedb/search/tests/test_access.py +++ b/gracedb/search/tests/test_access.py @@ -1,13 +1,9 @@ -try: - from urllib.parse import urlencode -except ImportError: # python < 3 - from urllib import urlencode - from django.conf import settings from django.contrib.auth.models import Group as DjangoGroup, Permission from django.contrib.contenttypes.models import ContentType from django.test import TestCase from django.urls import reverse +from django.utils.http import urlencode from core.tests.utils import GraceDbTestBase from events.models import Event -- GitLab