Skip to content

Commit 8313a88

Browse files
author
Ryan P Kilby
committed
Remove Django 1.10 compat code
1 parent 962c3d9 commit 8313a88

File tree

5 files changed

+7
-20
lines changed

5 files changed

+7
-20
lines changed

.isort.cfg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,5 @@ skip=.tox
33
atomic=true
44
multi_line_output=5
55
known_standard_library=types
6-
known_third_party=pytest,_pytest,django
6+
known_third_party=pytest,_pytest,django,pytz
77
known_first_party=rest_framework

requirements/requirements-optionals.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
# Optional packages which may be used with REST framework.
2-
pytz==2017.2
32
markdown==2.6.4
43
django-guardian==1.4.9
54
django-filter==1.1.0

rest_framework/compat.py

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -248,13 +248,6 @@ def md_filter_add_syntax_highlight(md):
248248
def md_filter_add_syntax_highlight(md):
249249
return False
250250

251-
# pytz is required from Django 1.11. Remove when dropping Django 1.10 support.
252-
try:
253-
import pytz # noqa
254-
from pytz.exceptions import InvalidTimeError
255-
except ImportError:
256-
InvalidTimeError = Exception
257-
258251

259252
# `separators` argument to `json.dumps()` differs between 2.x and 3.x
260253
# See: http://bugs.python.org/issue22767

rest_framework/fields.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,12 @@
2929
from django.utils.ipv6 import clean_ipv6_address
3030
from django.utils.timezone import utc
3131
from django.utils.translation import ugettext_lazy as _
32+
from pytz.exceptions import InvalidTimeError
3233

3334
from rest_framework import ISO_8601
3435
from rest_framework.compat import (
35-
InvalidTimeError, MaxLengthValidator, MaxValueValidator,
36-
MinLengthValidator, MinValueValidator, unicode_repr, unicode_to_repr
36+
MaxLengthValidator, MaxValueValidator, MinLengthValidator,
37+
MinValueValidator, unicode_repr, unicode_to_repr
3738
)
3839
from rest_framework.exceptions import ErrorDetail, ValidationError
3940
from rest_framework.settings import api_settings

tests/test_fields.py

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,20 +6,16 @@
66
from decimal import ROUND_DOWN, ROUND_UP, Decimal
77

88
import pytest
9+
import pytz
910
from django.http import QueryDict
1011
from django.test import TestCase, override_settings
1112
from django.utils import six
1213
from django.utils.timezone import activate, deactivate, utc
1314

1415
import rest_framework
15-
from rest_framework import compat, serializers
16+
from rest_framework import serializers
1617
from rest_framework.fields import DjangoImageField, is_simple_callable
1718

18-
try:
19-
import pytz
20-
except ImportError:
21-
pytz = None
22-
2319
try:
2420
import typings
2521
except ImportError:
@@ -1250,7 +1246,6 @@ class TestNaiveDateTimeField(FieldValues):
12501246
field = serializers.DateTimeField(default_timezone=None)
12511247

12521248

1253-
@pytest.mark.skipif(pytz is None, reason='pytz not installed')
12541249
class TestTZWithDateTimeField(FieldValues):
12551250
"""
12561251
Valid and invalid values for `DateTimeField` when not using UTC as the timezone.
@@ -1273,7 +1268,6 @@ def setup_class(cls):
12731268
cls.field = serializers.DateTimeField(default_timezone=kolkata)
12741269

12751270

1276-
@pytest.mark.skipif(pytz is None, reason='pytz not installed')
12771271
@override_settings(TIME_ZONE='UTC', USE_TZ=True)
12781272
class TestDefaultTZDateTimeField(TestCase):
12791273
"""
@@ -1312,7 +1306,7 @@ class TestNaiveDayLightSavingTimeTimeZoneDateTimeField(FieldValues):
13121306
class MockTimezone:
13131307
@staticmethod
13141308
def localize(value, is_dst):
1315-
raise compat.InvalidTimeError()
1309+
raise pytz.InvalidTimeError()
13161310

13171311
def __str__(self):
13181312
return 'America/New_York'

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy