Skip to content

Update django-filter to 25.2#407

Open
pyup-bot wants to merge 1 commit intomasterfrom
pyup-update-django-filter-2.4.0-to-25.2
Open

Update django-filter to 25.2#407
pyup-bot wants to merge 1 commit intomasterfrom
pyup-update-django-filter-2.4.0-to-25.2

Conversation

@pyup-bot
Copy link
Collaborator

@pyup-bot pyup-bot commented Oct 5, 2025

This PR updates django-filter from 2.4.0 to 25.2.

Changelog

25.2

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

* Added testing for Django 6.0.

* Dropped support for Django <5.2 LTS

* Dropped support for Python 3.9.

25.1

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

* Removed the in-built API schema generation methods, which have been
deprecated since v23.2.

You should use `drf-spectacular <https://drf-spectacular.readthedocs.io/en/latest/>`_
for generating OpenAPI schemas with DRF.

* Dropped support for EOL Python 3.8.

* Added testing against Python 3.13.

* Added official support for Django 5.2.

24.3

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

* Adds official support for Django 5.1.

* Allow using dictionaries for grouped choices on Django 5.0+.

Thanks to Sævar Öfjörð Magnússon.

* Adds ``unknown_field_behavior`` FilterSet option to allowing warning and
ignore behaviours for unknown field types during FilterSet generation.

Thanks to Loes.

24.2

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

* Fixed a regression in v23.4 where callable choices were incorrectly evaluated
at filter instantiation, on Django versions prior to 5.0.

Thanks to Craig de Stigter for the report and reproduce.

24.1

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

* Updated supported Python and Django versions, and resolved upcoming Django
deprecations.

Required versions are now at least Python 3.8 and Django 4.2.

Thanks to Michael Manganiello.

* Allowed passing a FilterSet class to the filterset_factory().

Thanks to Birger Schacht.

* Set empty default value of filterset data to MultiValueDict.

Thanks to Shlomo Gordon.

* Preserve list values passed to the data dict in CSV widgets.

Thanks to Bryan Brancotte.

* Updates French and Ukrainian localisations.

Thanks to Weblate.

23.5

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

* Fixed OrderingFilter handling of empty values. (1628)

Thanks to Matt Munns.

23.4

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

* Official support for Django 5.0 and Python 3.12.

* Fix DeprecationWarning for pkgutil.find_loader.

Thanks to `wmorrell`.

* Adopted Furo theme for docs.

23.3

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

* Adds initial compatibility with Django 5.0, prior to Django 5.0a1.

* Updates packaging to use pyproject.toml and Flit.

23.2

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

* Deprecated the schema generation methods of the DRF related ``DjangoFilterBackend``.
These will be removed in version 25.1.

You should use `drf-spectacular <https://drf-spectacular.readthedocs.io/en/latest/>`_
for generating OpenAPI schemas with DRF.

* In addition, stopped testing against the (very old now) ``coreapi`` schema generation.
These methods should continue to work if you're using them until v25.1, but
``coreapi`` is no longer maintained, and is raising warnings against the current
versions of Python. To workaround this is not worth the effort at this point.

* Updated Polish translations.

23.1

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

* Declared support for Django 4.2.

* Various updated and new translations. Thanks to all who contributed, and
Weblate for hosting.

* Fixed QueryArrayWidget.value_from_datadict() to not mutate input data. (1540)

22.1

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

* Update supported Python and Django versions: minimal Python is now 3.7,
minimum Django is now 3.2.

* Added testing for Python 3.10 and Django 4.1.

* Removed outdated deprecated warnings for code removed in version 2.1.

* Removed `filter_class` (use `filterset_class`) and `filter_fields`
(`filterset_fields`) that were deprecated in [version 2.0
(2018)](https://django-filter.readthedocs.io/en/main/guide/migration.html#view-attributes-renamed-867).

* The code base is now formatted with Black.

21.1

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

This is a maintenance release updating CI testing for the latest
non-end-of-life versions of Python and Django, and updating package metadata
accordingly.

With this release ``django-filter`` is switching to a two-part CalVer
versioning scheme, such as ``21.1``. The first number is the year. The second
is the release number within that year.

On an on-going basis, Django-Filter aims to support all current Django
versions, the matching current Python versions, and the latest version of
Django REST Framework.

Please see:

* `Status of supported Python branches <https://devguide.python.org/#status-of-python-branches>`_
* `List of supported Django versions <https://www.djangoproject.com/download/#support-versions>`_

Support for Python and Django versions will be dropped when they reach
end-of-life. Support for Python versions will dropped when they reach
end-of-life, even when still supported by a current version of Django.

Other breaking changes are rare. Where required, every effort will be made to
apply a "Year plus two" deprecation period. For example, a change initially
introduced in ``23.x`` would offer a fallback where feasible and finally be
removed in ``25.1``. Where fallbacks are not feasible, breaking changes without
deprecation will be called out in the release notes.

Beyond that change, there are few changes. Some small bugfixes, improvements to
localisation, and documentation tweaks. Thanks to all who were involved.
Links

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant