From 92ff6b927ff5587c33528397d192b2c3ed0a4b4e Mon Sep 17 00:00:00 2001 From: Hasan Ramezani Date: Sun, 25 Oct 2020 19:53:01 +0100 Subject: [PATCH] Remove codes related to old versions of Django. --- model_utils/managers.py | 14 +++----------- model_utils/tracker.py | 14 ++++++-------- tests/test_inheritance_iterable.py | 4 ---- 3 files changed, 9 insertions(+), 23 deletions(-) diff --git a/model_utils/managers.py b/model_utils/managers.py index 09c2be7..a835845 100644 --- a/model_utils/managers.py +++ b/model_utils/managers.py @@ -1,6 +1,5 @@ import warnings -import django from django.core.exceptions import ObjectDoesNotExist from django.db import connection from django.db import models @@ -96,18 +95,11 @@ class InheritanceQuerySetMixin: return super()._chain(**kwargs) def _clone(self, klass=None, setup=False, **kwargs): - if django.VERSION >= (2, 0): - qs = super()._clone() - for name in ['subclasses', '_annotated']: - if hasattr(self, name): - setattr(qs, name, getattr(self, name)) - return qs - + qs = super()._clone() for name in ['subclasses', '_annotated']: if hasattr(self, name): - kwargs[name] = getattr(self, name) - - return super()._clone(**kwargs) + setattr(qs, name, getattr(self, name)) + return qs def annotate(self, *args, **kwargs): qset = super().annotate(*args, **kwargs) diff --git a/model_utils/tracker.py b/model_utils/tracker.py index 2d73884..dd1315f 100644 --- a/model_utils/tracker.py +++ b/model_utils/tracker.py @@ -1,7 +1,6 @@ from copy import deepcopy from functools import wraps -import django from django.core.exceptions import FieldError from django.db import models from django.db.models.fields.files import FileDescriptor @@ -95,7 +94,7 @@ class FieldInstanceTracker: @property def deferred_fields(self): - return self.instance._deferred_fields if django.VERSION < (1, 10) else self.instance.get_deferred_fields() + return self.instance.get_deferred_fields() def get_field_value(self, field): return getattr(self.instance, self.field_map[field]) @@ -213,12 +212,11 @@ class FieldTracker: if self.fields is None: self.fields = (field.attname for field in sender._meta.fields) self.fields = set(self.fields) - if django.VERSION >= (1, 10): - for field_name in self.fields: - descriptor = getattr(sender, field_name) - wrapper_cls = DescriptorWrapper.cls_for_descriptor(descriptor) - wrapped_descriptor = wrapper_cls(field_name, descriptor, self.attname) - setattr(sender, field_name, wrapped_descriptor) + for field_name in self.fields: + descriptor = getattr(sender, field_name) + wrapper_cls = DescriptorWrapper.cls_for_descriptor(descriptor) + wrapped_descriptor = wrapper_cls(field_name, descriptor, self.attname) + setattr(sender, field_name, wrapped_descriptor) self.field_map = self.get_field_map(sender) models.signals.post_init.connect(self.initialize_tracker) self.model_class = sender diff --git a/tests/test_inheritance_iterable.py b/tests/test_inheritance_iterable.py index b8b3bfd..b9e8a0f 100644 --- a/tests/test_inheritance_iterable.py +++ b/tests/test_inheritance_iterable.py @@ -1,6 +1,3 @@ -from unittest import skipIf - -import django from django.test import TestCase from django.db.models import Prefetch @@ -8,7 +5,6 @@ from tests.models import InheritanceManagerTestParent, InheritanceManagerTestChi class InheritanceIterableTest(TestCase): - @skipIf(django.VERSION[:2] == (1, 10), "Django 1.10 expects ModelIterable not a subclass of it") def test_prefetch(self): qs = InheritanceManagerTestChild1.objects.all().prefetch_related( Prefetch(