Django-model-utils

Latest version: v5.0.0

Safety actively analyzes 710445 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 6 of 7

1.5.0

------------------

- `Choices` now accepts option-groupings. Fixes GH-14.

- `Choices` can now be added to other `Choices` or to any iterable, and can be
compared for equality with itself. Thanks Tony Aldridge. (Merge of GH-76.)

- `Choices` now `__contains__` its Python identifier values. Thanks Keryn
Knight. (Merge of GH-69).

- Fixed a bug causing ``KeyError`` when saving with the parameter
``update_fields`` in which there are untracked fields. Thanks Mikhail
Silonov. (Merge of GH-70, fixes GH-71).

- Fixed ``FieldTracker`` usage on inherited models. Fixes GH-57.

- Added mutable field support to ``FieldTracker`` (Merge of GH-73, fixes GH-74)

1.4.0

------------------

- Introduced ``FieldTracker`` as replacement for ``ModelTracker``, which is now
deprecated.

- ``PassThroughManager.for_queryset_class()`` no longer ignores superclass
``get_query_set``. Thanks Andy Freeland.

- Fixed ``InheritanceManager`` bug with grandchildren in Django 1.6. Thanks
CrazyCasta.

- Fixed lack of ``get_FOO_display`` method for ``StatusField``. Fixes GH-41.

1.3.1

------------------

- Added explicit default to ``BooleanField`` in tests, for Django trunk
compatibility.

- Fixed intermittent ``StatusField`` bug. Fixes GH-29.

- Added Python 3 support.

- Dropped support for Django 1.2 and 1.3. Django 1.4.2+ required.

1.3.0

------------------

- Allow specifying default value for a ``StatusField``. Thanks Felipe
Prenholato.

- Fix calling ``create()`` on a ``RelatedManager`` that subclasses a dynamic
``PassThroughManager``. Thanks SeiryuZ for the report. Fixes GH-24.

- Add workaround for https://code.djangoproject.com/ticket/16855 in
InheritanceQuerySet to avoid overriding prior calls to
``select_related()``. Thanks ivirabyan.

- Added support for arbitrary levels of model inheritance in
InheritanceManager. Thanks ivirabyan. (This feature only works in Django
1.6+ due to https://code.djangoproject.com/ticket/16572).

- Added ``ModelTracker`` for tracking field changes between model saves. Thanks
Trey Hunner.

1.2.0

------------------

- Moved primary development from `Bitbucket`_ to `GitHub`_. Bitbucket mirror
will continue to receive updates; Bitbucket issue tracker will be closed once
all issues tracked in it are resolved.

.. _BitBucket: https://bitbucket.org/carljm/django-model-utils/overview
.. _GitHub: https://github.com/carljm/django-model-utils/

- Removed deprecated ``ChoiceEnum``, ``InheritanceCastModel``,
``InheritanceCastManager``, and ``manager_from``.

- Fixed pickling of ``PassThroughManager``. Thanks Rinat Shigapov.

- Set ``use_for_related_fields = True`` on ``QueryManager``.

- Added ``__len__`` method to ``Choices``. Thanks Ryan Kaskel and James Oakley.

- Fixed ``InheritanceQuerySet`` on Django 1.5. Thanks Javier Garcia Sogo.

1.1.0

------------------

- Updated AutoCreatedField, AutoLastModifiedField, MonitorField, and
TimeFramedModel to use ``django.utils.timezone.now`` on Django 1.4.
Thanks Donald Stufft.

- Fixed annotation of InheritanceQuerysets. Thanks Jeff Elmore and Facundo
Gaich.

- Dropped support for Python 2.5 and Django 1.1. Both are no longer supported
even for security fixes, and should not be used.

- Added ``PassThroughManager.for_queryset_class()``, which fixes use of
``PassThroughManager`` with related fields. Thanks Ryan Kaskel for report and
fix.

- Added ``InheritanceManager.get_subclass()``. Thanks smacker.

Page 6 of 7

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.