Drop support for Django < 3.2

This commit is contained in:
Hasan Ramezani 2022-08-17 22:49:23 +02:00
parent d699745504
commit b354d90c20
6 changed files with 7 additions and 16 deletions

View file

@ -8,6 +8,7 @@ Unreleased
- Add Spanish translation
- Add French translation
- Drop Django 1.7 workaround from `select_subclasses()`
- Drop support for `Django < 3.2`
4.2.0 (2021-10-11)
------------------

View file

@ -20,7 +20,7 @@ django-model-utils
Django model mixins and utilities.
``django-model-utils`` supports `Django`_ 2.2+.
``django-model-utils`` supports `Django`_ 3.2+.
.. _Django: http://www.djangoproject.com/

View file

@ -17,7 +17,7 @@ modify your ``INSTALLED_APPS`` setting.
Dependencies
============
``django-model-utils`` supports `Django`_ 2.2, 3.1 and 3.2 (latest bugfix
``django-model-utils`` supports `Django`_ 3.2+ (latest bugfix
release in each series only) on Python 3.6+.
.. _Django: http://www.djangoproject.com/

View file

@ -29,7 +29,7 @@ setup(
maintainer='JazzBand',
url='https://github.com/jazzband/django-model-utils',
packages=find_packages(exclude=['tests*']),
install_requires=['Django>=2.2'],
install_requires=['Django>=3.2'],
classifiers=[
'Development Status :: 5 - Production/Stable',
'Environment :: Web Environment',
@ -44,8 +44,6 @@ setup(
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3.10',
'Framework :: Django',
'Framework :: Django :: 2.2',
'Framework :: Django :: 3.1',
'Framework :: Django :: 3.2',
'Framework :: Django :: 4.0',
],

View file

@ -1,4 +1,3 @@
import django
from django.db import models
from django.db.models import Manager
from django.db.models.query_utils import DeferredAttribute
@ -387,13 +386,9 @@ class StringyDescriptor:
return self
if self.name in obj.get_deferred_fields():
# This queries the database, and sets the value on the instance.
if django.VERSION < (3, 0):
DeferredAttribute(field_name=self.name).__get__(obj, cls)
else:
# Since Django 3.0, DeferredAttribute wants a field argument.
fields_map = {f.name: f for f in cls._meta.fields}
field = fields_map[self.name]
DeferredAttribute(field=field).__get__(obj, cls)
fields_map = {f.name: f for f in cls._meta.fields}
field = fields_map[self.name]
DeferredAttribute(field=field).__get__(obj, cls)
return str(obj.__dict__[self.name])
def __set__(self, obj, value):

View file

@ -1,6 +1,5 @@
[tox]
envlist =
py{36,37,38,39}-dj{22,31}
py{36,37,38,39,310}-dj32
py{38,39,310}-dj{40,main}
flake8
@ -18,8 +17,6 @@ python =
deps =
freezegun==0.3.12
-rrequirements-test.txt
dj22: Django==2.2.*
dj31: Django==3.1.*
dj32: Django==3.2.*
dj40: Django==4.0.*
djmain: https://github.com/django/django/archive/main.tar.gz