- ask before any navigation drops unsaved changes
- expiry quick picks on the create form and in gallery settings
- next-steps card on a draft gallery's overview
- passkeys for admin login
- adaptive video streaming behind a global setting
- blurred placeholders behind loading tiles
- film strip and hold-to-scrub in the lightbox
3.171.0-beta.0 (2026-10-13)
Features
- admin: ask before any navigation drops unsaved changes (#1965) (1ed7b5c)
- admin: expiry quick picks on the create form and in gallery settings (#1952) (5c3da66)
- admin: next-steps card on a draft gallery's overview (#1953) (9f74e61)
- auth: passkeys for admin login (#1954) (385c774)
- gallery: adaptive video streaming behind a global setting (#1959) (877dcd5)
- gallery: blurred placeholders behind loading tiles (#1957) (f173972)
- gallery: film strip and hold-to-scrub in the lightbox (#1956) (c2cd8ec)
- gallery: hold guest uploads until they are approved (#1949) (e8088a2)
- gallery: keep prepared downloads longer and mail when one is ready (#1951) (7b21e2f)
- gallery: let guests draw on a photo with their comment (#1963) (024e16a)
- gallery: list the selected photos in the sidebar with a remove button each (#1943) (2b3728d)
- gallery: optional downscale of guest uploads in the browser (#1947) (a1291c9)
- gallery: rate the selected photos in one request (#1944) (03a4f0b)
- gallery: selection counter, Finish selection and Approve edited photos (#1960) (c505334)
- gallery: show camera, lens and exposure from EXIF (#1948) (4d2c331)
- gallery: tell an open gallery that new photos arrived (#1946) (b75f7cd)
- gallery: tile feedback actions in the rows, flickr and quilted masonry modes (#1942) (362224e)
- gallery: zoom to original pixels where the viewer may download the original (#1958) (d5473ce)
- upload: recognise a file the gallery already holds by its content hash (#1950) (9993a48)
Bug Fixes
- dates: read SQLite's zone-less default timestamps as UTC in the date hook (#1940) (2a8ccd3)
- gallery: ask for a preview again after a 503 instead of keeping the thumbnail (#1938) (6bcd6e0)
- gallery: render the justified layout mode as rows and remove the unreachable Justified layout (#1967) (d94cd58)
- security: expenses and incoming invoices follow the per-admin owner rule (#1934) (f7bed81)
- upload: say how many files a folder held when it exceeds the per-upload cap (#1945) (e25edd7)