- Added Python 3.12, Django 5.0. - Closed images after reading their dimensions. Raised the logging level to exception when thumbnailing fails. Thanks to Jeroen Pulles for those two contributions!
- Made the filter argument of content base's ``get_queryset`` method optional. This enables easier interoperability of FeinCMS content types with feincms3 plugins. - Added Python 3.11. - Fixed the Pillow resampling constant.
- Fixed a place where ``ACTION_CHECKBOX_NAME`` was imported from the wrong place. - Dropped the ``is_dst`` argument to ``timezone.make_aware``. - Added Django 4.1 and 4.2 to the CI matrix.
- The ``render()`` methods of bundled content types have been changed to return a tuple instead of a HTML fragment in FeinCMS v22.0.0. This was backwards incompatible in some scenarios. Those methods have been changed to return a tuple subclass which automatically renders a HTML fragment if evaluated in a string context.
- Dropped support for Python < 3.8. - Fixed the thumbnailing support of the ``MediaFileForeignKey``. It has been broken since Django switched to template-based widget rendering.