# Changelog

## [2.8.0] - 2026-07-02

### Added
- Smart album filters for camera model, lens, ISO range, file type, and capture date.
- Background face clustering queue with progress reporting in the admin dashboard.
- Read-only public share links with optional expiration dates and download controls.
- Health check endpoint for Docker and reverse proxy deployments.

### Fixed
- Fixed HEIC thumbnails rendering with incorrect orientation on some iOS exports.
- Fixed duplicate detection skipping files with uppercase extensions.
- Fixed album cover images not updating after the original photo was deleted.
- Fixed stalled imports when a sidecar XMP file contained invalid timestamps.

### Changed
- Improved metadata indexing performance for large libraries.
- Reduced default thumbnail worker concurrency to lower memory usage on small servers.
- Updated Docker image base packages and bundled media codecs.
- Changed public share URLs to use stable album tokens instead of database IDs.

## [2.7.1] - 2026-06-14

### Added
- Import summary report showing added, skipped, duplicate, and failed files.
- Optional SMTP test button in notification settings.
- Support for `.avif` previews when the server has compatible image libraries installed.

### Fixed
- Fixed a migration issue that could fail on PostgreSQL instances using non-default schemas.
- Fixed RAW+JPEG pairs appearing as separate items in timeline grouping.
- Fixed broken download filenames for photos with non-ASCII characters.
- Fixed session cookies not respecting `APP_URL` behind some HTTPS proxies.

### Changed
- Improved retry behavior for failed object storage uploads.
- Made EXIF parsing errors non-fatal during bulk imports.
- Increased default cache duration for generated thumbnails.

## [2.7.0] - 2026-05-28

### Added
- New library maintenance screen with missing file checks and orphaned thumbnail cleanup.
- Initial support for S3-compatible storage backends.
- Timeline jump navigation by year and month.
- Per-user upload quotas for shared household deployments.

### Fixed
- Fixed timezone handling for photos without explicit EXIF offsets.
- Fixed video thumbnails failing when filenames contained spaces.
- Fixed import watcher repeatedly processing temporary sync files.
- Fixed keyboard navigation losing focus after opening the photo detail view.

### Changed
- Reworked the import pipeline to process metadata, thumbnails, and previews in separate jobs.
- Changed default database connection pooling settings for better reliability under load.
- Improved mobile layout for album grids and photo detail panels.
- Updated backup documentation for Docker Compose and external PostgreSQL setups.