@@ -5,6 +5,36 @@ CHANGELOG
553.6.0 (unreleased)
66==================
77
8+ * feat: Support avif images. ``*.avif `` and ``*.avifs `` uploads now become
9+ ``Image `` objects (with dimensions, thumbnails and use in image fields) if Pillow
10+ can decode them: natively since Pillow 11.3, or through the optional
11+ ``pillow-avif-plugin `` package (``pip install django-filer[avif] ``) for older
12+ Pillow versions.
13+
14+ .. note ::
15+
16+ avif files that were uploaded *before * upgrading remain regular ``File `` objects:
17+ filer picks the model class when a file is uploaded. Re-upload them to turn them
18+ into ``Image `` objects.
19+
20+ * feat: SVG support no longer requires an SVG renderer. filer reads an SVG's size
21+ from the document and thumbnails it by rewriting ``width ``, ``height `` and
22+ ``viewBox `` on the root element, which keeps the vector data intact instead of
23+ re-drawing it. ``easy-thumbnails[svg] `` - and with it svglib, reportlab and lxml,
24+ around 14 MB - moved from a hard dependency to the new ``django-filer[svg] ``
25+ extra (#1547).
26+ * fix: SVG thumbnails without a ``viewBox `` were scaled by growing the canvas
27+ rather than the drawing.
28+ * fix: An SVG stating only one of ``width `` and ``height `` alongside a ``viewBox ``
29+ now keeps the dimension it states and derives the other from the viewBox's
30+ aspect ratio, the way a browser sizes it. The renderer reported the viewBox's
31+ own height instead, which does not match how the image is drawn.
32+ * fix: When an image's dimensions could not be read, the file object was left at
33+ its end, so upload validators that inspect the content saw an empty file.
34+ * fix: SVG documents nesting elements more than
35+ ``filer.utils.svg.MAX_NESTING_DEPTH `` (100) levels deep are refused. Writing
36+ such a document out recurses once per level and would exhaust the stack while
37+ a thumbnail is generated. Real documents nest a handful of levels.
838* feat: Add support for Django 6.1. The admin breadcrumbs now render as
939 ``<ol class="breadcrumbs"> `` on Django 6.1 and later, matching the markup its
1040 element-qualified CSS selectors expect, and keep the legacy
@@ -17,10 +47,34 @@ CHANGELOG
1747 of a file now also links to its own admin's expand view instead of always linking to
1848 the image admin's. The expand view now checks read permissions, just like the icon and
1949 change views.
50+ * fix: Dropping a file on the admin file widget no longer stacks the upload preview
51+ on top of the widget's own markup, which left two files visible and covered the
52+ widget's buttons (#1573). The widget now shows the uploaded file itself - thumbnail,
53+ label, and working lookup, edit and clear buttons - as it does after a reload, and a
54+ failed upload leaves the previous selection untouched. The upload response gained a
55+ ``change_url `` key for this.
56+ * fix: The file widget's clear button works again in widgets that are added to the page
57+ after it loaded, e.g. in Django admin inline formsets.
58+ * fix: A file dragged over the file widget now only recolors the widget's background in
59+ the admin's primary color. The widget used to hide its content and grow its border,
60+ which moved what was under the cursor and made the widget flicker between its drop
61+ state and the file it holds.
2062* fix: Send the CSRF token with uploads started from the "Upload Files" button in the
2163 folder view. Since 3.5.1 the upload endpoint enforces CSRF, but this uploader had not
2264 been updated and every upload from it failed with "CSRF token missing" (#1617).
2365
66+ .. note ::
67+
68+ Existing installations keep SVG support unchanged: upgrading does not always uninstall
69+ svglib or reportlab. Fresh installs and re-locked dependency files no longer get
70+ them. The only documents that still need them are those whose size cannot be read
71+ from the markup, for example ``width="100%" `` without a ``viewBox ``; install
72+ ``django-filer[svg] `` if your project has such files. Thumbnails generated from
73+ now on are the original document rescaled rather than a reportlab rendering of
74+ it - existing cached thumbnails keep their file names and are still served.
75+ Installing the extra only ever adds documents filer can size; it never accepts
76+ a document filer rejects, so it cannot weaken the SVG upload checks.
77+
2478.. note ::
2579
2680 Projects that override one of filer's breadcrumb templates
0 commit comments