diff --git a/.travis.yml b/.travis.yml index 25a6563..66416fc 100644 --- a/.travis.yml +++ b/.travis.yml @@ -67,6 +67,10 @@ matrix: env: TOX_ENV=py36-django22 - python: 3.7 env: TOX_ENV=py37-django22 + - python: 3.6 + env: TOX_ENV=py36-django30 + - python: 3.7 + env: TOX_ENV=py37-django30 install: - pip install tox diff --git a/netfields/compat.py b/netfields/compat.py new file mode 100644 index 0000000..e94719a --- /dev/null +++ b/netfields/compat.py @@ -0,0 +1,8 @@ +from django import VERSION + +if VERSION[0] <= 2: + from django.db.backends.postgresql_psycopg2.base import DatabaseWrapper + from django.utils.six import with_metaclass, text_type +else: + from django.db.backends.postgresql.base import DatabaseWrapper + from six import with_metaclass, text_type diff --git a/netfields/fields.py b/netfields/fields.py index e19471d..29adcba 100644 --- a/netfields/fields.py +++ b/netfields/fields.py @@ -1,20 +1,11 @@ from django.core.exceptions import ValidationError from django.db import models -from django import VERSION - -if VERSION[0] <= 2: - from django.db.backends.postgresql_psycopg2.base import DatabaseWrapper - from django.utils.six import with_metaclass, text_type -else: - from django.db.backends.postgresql.base import DatabaseWrapper - from six import with_metaclass, text_type - -from django.utils.six import with_metaclass, text_type from ipaddress import ip_interface, ip_network from netaddr import EUI from netaddr.core import AddrFormatError +from netfields.compat import DatabaseWrapper, with_metaclass, text_type from netfields.forms import InetAddressFormField, CidrAddressFormField, MACAddressFormField from netfields.mac import mac_unix_common from netfields.psycopg2_types import Inet, Macaddr diff --git a/netfields/forms.py b/netfields/forms.py index 2abcb1c..7d6d0b7 100644 --- a/netfields/forms.py +++ b/netfields/forms.py @@ -2,9 +2,9 @@ from netaddr import EUI, AddrFormatError from django import forms -from django.utils.six import text_type from django.core.exceptions import ValidationError +from netfields.compat import text_type from netfields.mac import mac_unix_common diff --git a/netfields/rest_framework.py b/netfields/rest_framework.py index 6e14c35..9fdc8ec 100644 --- a/netfields/rest_framework.py +++ b/netfields/rest_framework.py @@ -1,11 +1,11 @@ from __future__ import absolute_import -from django.utils.six import text_type from ipaddress import ip_interface, ip_network, ip_address from netaddr import EUI from netaddr.core import AddrFormatError from rest_framework import serializers +from netfields.compat import text_type from netfields.mac import mac_unix_common diff --git a/tox.ini b/tox.ini index 1fd29b6..b37cd42 100644 --- a/tox.ini +++ b/tox.ini @@ -31,6 +31,8 @@ envlist= py35-django22, py36-django22, py37-django22, + py36-django30, + py37-django30, @@ -327,3 +329,21 @@ deps= psycopg2 djangorestframework unittest2 + +[testenv:py36-django30] +basepython=python3.6 +deps= + django>=3.0,<3.1 + netaddr + psycopg2 + djangorestframework + unittest2 + +[testenv:py37-django30] +basepython=python3.7 +deps= + django>=3.0,<3.1 + netaddr + psycopg2 + djangorestframework + unittest2