# What changed in django-filter

> 15 changes in django-filter 1 to 2 from its official release notes, upgrade guides and advisories: 5 breaking, 2 new APIs and options. Each one cited. Sources checked 2026-10-24. HTML: https://unstale.sh/pypi/django-filter/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## django-filter 2

### Breaking changes

- Support for Django versions before 1.11 was dropped. (2.0.0) — [release notes](https://github.com/carltongibson/django-filter/releases/tag/2.0.0)
- Lookup types handling was reworked into LookupChoiceFilter. (2.0.0) — [release notes](https://github.com/carltongibson/django-filter/releases/tag/2.0.0)
- The Meta.together option was removed. (2.0.0) — [release notes](https://github.com/carltongibson/django-filter/releases/tag/2.0.0)
- Support for Python 2 was dropped. (2.0.0) — [release notes](https://github.com/carltongibson/django-filter/releases/tag/2.0.0)

### New APIs and options

- BooleanWidget.render() accepts a renderer argument. (2.0.0) — [release notes](https://github.com/carltongibson/django-filter/releases/tag/2.0.0)
- A queryset filter method was added as part of the validation rework. (2.0.0) — [release notes](https://github.com/carltongibson/django-filter/releases/tag/2.0.0)

### Behavior and default changes

- DateRangeFilter was reworked. (2.0.0) — [release notes](https://github.com/carltongibson/django-filter/releases/tag/2.0.0)
- LookupTypeWidget was updated to use suffixes. (2.0.0) — [release notes](https://github.com/carltongibson/django-filter/releases/tag/2.0.0)
- NullBooleanField uses the DRF BooleanFilter. (2.0.0) — [release notes](https://github.com/carltongibson/django-filter/releases/tag/2.0.0)
- RangeWidget was updated to use suffixes. (2.0.0) — [release notes](https://github.com/carltongibson/django-filter/releases/tag/2.0.0)

### Fixes and other changes

- Fixed the empty value check for CSV range filters. (2.0.0) — [release notes](https://github.com/carltongibson/django-filter/releases/tag/2.0.0)
- Django 2.0 support was added. (2.0.0) — [release notes](https://github.com/carltongibson/django-filter/releases/tag/2.0.0)
- Fixed the distinct call for range filters. (2.0.0) — [release notes](https://github.com/carltongibson/django-filter/releases/tag/2.0.0)
- Fixed filter lookups for reverse relationships. (2.0.0) — [release notes](https://github.com/carltongibson/django-filter/releases/tag/2.0.0)

## django-filter 1

### Breaking changes

- All code deprecated in releases 0.14 and 0.15 has been removed; developers must migrate before upgrading. (1.0.0) — [release notes](https://github.com/carltongibson/django-filter/releases/tag/1.0.0)
