# Changelog ## 1.6.1 (2026-05-04) ### Features - **Updates**: Update-available detection with non-dismissible notice and dev-reload refresh - **Plugins**: New plugin hooks for compose, attachments, search, lifecycle, and routing - **Sharing**: Share indicators for calendars and contacts, updated JMAP capabilities (#244) - **Mail**: Auto-add recipients to trusted senders when replying - **Identity**: Sanitize identity display name to prevent invalid `From` headers ### Fixes - **Mobile**: Synchronize mobile submenu view with browser history for better navigation - **Viewer**: Update email viewer styles to improve overflow handling - **Auth**: Ensure `cookieSlot` consistency during account updates in auth store - **Auth**: Thread per-account cookie slot through OAuth flows - **Calendar**: Square the colored left marker on calendar events - **About**: Show git commit in About instead of "unknown" ### i18n - Update mailbox context menu translations across 12 locales ## 1.6.0 (2026-05-01) ### Features - **Deployment**: Subpath deployment support via `NEXT_PUBLIC_BASE_PATH` environment variable - **Mail**: Image attachment thumbnails and preview chips - **Mobile**: Reworked mobile mail viewer toolbar - **Mobile**: Mobile-friendly settings panel - **Mobile**: Mobile-friendly admin panel - **Mail**: Redesigned expanded details panel - **Mailbox**: Show full path in mailbox context menu header with intelligent path shortening ### Fixes - **Viewer**: Respect per-email dark mode toggle when "always show in light mode" is on - **Navigation**: Scroll apps list in navigation rail to prevent overflow - **Context menu**: Clamp submenu inside viewport - **Context menu**: Prevent context menu from clipping below viewport - **Context menu**: Prevent jump and animation on open - **Mail**: Stop silently destroying emails when trash mailbox isn't found (#195) - **Mail**: Preserve list scroll position when tagging an email - **Mail**: Render below-header overflow popup outside clipped row - **Mail**: Collapse below-header attachments to single row with overflow pill - **Push**: Fix push preview JMAP query - **Tour**: Navigate tour to mailbox when starting from another page - **i18n**: Add `useTranslations` for "selected emails" and "cancel" on email list batch operations ### i18n - Translate SPF/DKIM/DMARC tooltips - Add missing keys across 14 locales ## 1.5.4 (2026-05-01) ### Features - **PWA**: Web push notifications for new inbox mail (#233), with click-through to open the message - **Composer**: Insert and edit tables in rich-text emails (#236) - **Mail**: Configurable sub-addressing delimiter character (#239) - **i18n**: Turkish localization - **i18n**: Missing keys filled in across 15 locales ### Fixes - **Mail**: Set In-Reply-To and References headers on replies (#234) - **Mail**: Persist htmlBody in drafts to preserve rich formatting (#236) - **Auth**: Pin JMAP auth verification to the configured server URL (#237) - **Auth**: Evict unrecoverable basic-auth accounts on reload - **Notifications**: Scope new-mail notifications to genuine inbox deliveries - **Notifications**: Extend PushVerification timeout and clean up leftover subscriptions - **Viewer**: Smooth out body load to prevent flicker on first render - **Viewer**: Prevent iframe flash when loading images or trusting the sender - **Viewer**: Pad bare HTML emails like plain-text mails for consistent layout - **Viewer**: Light-mode override now only affects body content - **Viewer**: Detect `