NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #5187 most downloaded on PyPI
Django extension to allow working with 'clusters' of models as a single unit, independently of the database
Last release 5 months ago
01 May 2026
Ships fairly regularly
a new release about every 5 months
Nearly every release is documented
notes for 33 of 33 stable releases
Nothing withdrawn
no release was ever pulled
13 years old
35 releases · first in 2014
Preliminary Django 6.1 support (Sage Abdullah)
none method on FakeQuerySet (Victor Miti)copy_cluster, copy_all_child_relations and copy_child_relation (Jakub Musil, Matt Westcott)prefetch_related() supplied with a lookup queryset (Bernhard Bliem)ClusterForm creating duplicates when unsaved child objects exist on both initial instance and form data (Alex Tomkins)Handle get_prefetch_queryset deprecation, for Django 6.0 support (Sage Abdullah)
get_prefetch_queryset deprecation, for Django 6.0 support (Sage Abdullah)One column per quarter.
Add UniqueConstraint support for uniqueness validation (Sage Abdullah)
UniqueConstraint support for uniqueness validation (Sage Abdullah)pytz dependency (Sage Abdullah)Support filtering with Q objects (Shohan Dutta Roy)
.order_by("?") (Shohan Dutta Roy)distinct() on querysets (Shohan Dutta Roy)iso_weekday and iso_year field lookups (Andy Babic)values and values_list (Andy Babic)Fix: Prevent failure on pre-3.1.0 versions of django-taggit without _remove_prefetched_objects
_remove_prefetched_objectsImplement prefetching for ClusterTaggableManager (Andy Chosak)
Fixed deprecation warning for removal of django.utils.timezone.utc (John-Scott Atlakson)
django.utils.timezone.utc (John-Scott Atlakson)BREAKING: ClusterForm now builds no child formsets when neither formsets nor exclude_formsets is specified in the Meta class, rather than building a f
formsets nor exclude_formsets is specified in the Meta class, rather than building a formset for every child relation (Matt Westcott)formsets option on the outer formset's definition (Matt Westcott)inherit_kwargs attribute to ClusterForm child formsets (Matt Westcott)Avoid accessing live queryset on unsaved instances, for preliminary Django 4.1 compatibility (Matt Westcott)
filter / order_by lookups (Andy Babic)values() method on FakeQuerySet (Andy Babic)values() and values_list() to be chained with other queryset modifiers (Andy Babic)ClusterForm.as_p() (Matt Westcott)values_list (Andy Babic)Implement copy_cluster method on ClusterableModel (Karl Hobley)
copy_cluster method on ClusterableModel (Karl Hobley)formset_name option on ClusterableModel formsets to allow the formset name to differ from the relation name (Matt Westcott)Allow child form class to be overridden in the formsets Meta property of ClusterForm (Helder Correia)
formsets Meta property of ClusterForm (Helder Correia)copy_child_relation and copy_all_child_relations methods on ClusterableModel (Karl Hobley)Fix: Fix compatibility with django-taggit 1.3.0 (Martin Sandström)
Fix: ClusterForm without an explicit formsets kwarg now allows formsets to be omitted from form submissions, to fix regression with nested relations
formsets kwarg now allows formsets to be omitted from form submissions, to fix regression with nested relationsmanage.py loaddata (Andy Babic)Removed Python 2 and 3.4 support
Fix: ClusterForm without an explicit formsets kwarg now allows formsets to be omitted from form submissions, to fix regression with nested relations
formsets kwarg now allows formsets to be omitted from form submissions, to fix regression with nested relationsSupport nested child relationships in ClusterForm (Sam Costigan)
Added support for filter lookup expressions such as __lt
__ltImplemented prefetch_related on FakeQuerySet (Haydn Greatnews)
serialize=False on ParentalManyToManyFields (Tadas Dailyda)on_delete on ParentalKey now defaults to CASCADE if not specified
on_delete on ParentalKey now defaults to CASCADE if not specifiedRemoved Django 1.8 and 1.9 support
Added the ability to install the optional dependency django-taggit using pip install django-modelcluster[taggit]
django-taggit
using pip install django-modelcluster[taggit]Fix: Added _result_cache property on FakeQuerySet (necessary for model forms with ParentalManyToManyFields to work correctly on Django 1.8-1.9)
Deprecated the Model._meta.child_relations property (get_all_child_relations should be used instead)
set() method on related managers (introduced in Django 1.9)Nothing published for this version
Removed Django 1.7 and Python 3.2 support
Added exclude() method to FakeQuerySet
Added exclude() method to FakeQuerySet
Removed Django 1.6 and Python 2.6 support
Fix: Updated add_ignored_fields declaration so that South / Django 1.6 correctly ignores modelcluster.contrib.taggit.ClusterTaggableManager again
Fix: Updated add_ignored_fields declaration so that South / Django 1.6 correctly ignores modelcluster.contrib.taggit.ClusterTaggableManager again
re-release of 0.6 (withdrawn due to packaging issues)
re-release of 0.6 (withdrawn due to packaging issues)
ClusterForm.Meta formsets can now be specified as a dict to allow extra properties to be set on the underlying form.
Fix: Datetimes are converted to UTC on serialisation and to local time on deserialisation, to match Django's behaviour when accessing the database
Added exists(), first() and last() methods on FakeQuerySet
Added support for prefetch_related on DeferringRelatedManager
* Initial release.
Your coding agent can read these notes before it upgrades. Set up the MCP server →