Linus Rath
2ad2bb1e09
chore: update version to 1.6.4
2026-05-11 20:00:55 +02:00
Linus Rath
23bc31c661
i18n: add missing translation keys across 15 locales
2026-05-11 19:30:52 +02:00
Linus Rath
a2f76037a1
feat: update README and FEATURES.md
2026-05-11 19:24:32 +02:00
Linus Rath
9571f2e185
fix: skip upstream JMAP reverify for trusted URLs #237
2026-05-11 19:22:37 +02:00
Linus Rath
887b9c728c
feat: drag attachments out to local file system #267
2026-05-11 17:34:24 +02:00
Linus Rath
8c21f462c2
feat: add signature position to email behavior settings search
2026-05-11 17:07:24 +02:00
Linus Rath
5f3d2d3e4a
feat: signature above quoted text option #266
2026-05-11 17:05:59 +02:00
Linus Rath
4bce80b8ba
feat: show avatar in Focused list for compact density and above
2026-05-11 16:23:15 +02:00
Linus Rath
1d09f5a623
feat: align Focused list preview with other layout previews
2026-05-11 15:41:25 +02:00
Linus Rath
2c513129f2
feat: add Reading Pane at Bottom mail layout #262
2026-05-11 15:35:43 +02:00
Linus Rath
b3dc2e32b8
feat: implement prefetching of initial email data
2026-05-11 15:17:30 +02:00
Augustin Marcin and Linus Rath
b0640c9ecc
feat(compose): From override + catch-all auto-reply ( fixes #246 )
...
Adds an Override toggle in the composer's From row. When enabled, name
and address become free-text inputs. Mail is still submitted through the
selected identity, but the outgoing message's From: header — and the
SMTP envelope MAIL FROM when different — is set from the override.
The existing "Auto-select Reply Address" setting is extended: if the
incoming message was addressed to an alias on a domain that matches one
of your identities but isn't itself an identity (classic domain catch-
all), it now auto-enables Override and pre-fills the alias. Quick reply
honors the same resolution. The setting is relabeled to reflect the
broader behavior.
JMAP: client.sendEmail gains an optional envelopeMailFrom; when set, the
EmailSubmission includes an explicit envelope with that mailFrom and the
to/cc/bcc as rcptTo so header-From and envelope can diverge (JMAP §7.3).
S/MIME: override is incompatible with sign/encrypt and is refused with a
clear error — signing a different visible From from the identity's
certificate Subject would produce messages clients reject.
Tests: resolveReplyFrom covers exact match, sub-address stripping,
catch-all detection, identity preference, and foreign-domain null.
2026-05-11 12:13:47 +02:00
Linus Rath
2d7e24b513
perf: parallelize login round-trips and drop redundant JMAP re-verify
2026-05-11 11:04:13 +02:00
Linus Rath
5b30bacf10
feat: redesign review step with grouped summary and advanced toggle
2026-05-10 01:09:00 +02:00
Linus Rath
fe937403f3
style: consistent notice cards for server probe results
2026-05-09 21:43:04 +02:00
Linus Rath
876ea370e4
feat: allow file uploads on the wizard branding step
2026-05-09 21:40:39 +02:00
Linus Rath
1dcdeeae86
style: consistent notice cards for server probe results
2026-05-09 18:12:43 +02:00
Linus Rath
01302a775c
feat: require explicit confirmation when JMAP probe finds no session
2026-05-09 17:52:44 +02:00
Linus Rath
76d78ae756
fix: drop redundant first-login banner about removing ADMIN_PASSWORD #222
2026-05-09 17:40:53 +02:00
Linus Rath
51745ea03d
feat: web setup wizard + admin config/state dir split ( #226 )
2026-05-09 17:37:41 +02:00
Chance and Linus Rath
c44a9ce6e0
fix: fall back to primary identity signature on reply
...
When auto-select picks an alias identity matching the original recipient,
the alias often has no signature configured. The composer was using the
alias's empty signature for both the visual preview and the appended
signature on send, so neither showed up. New mail worked because no
auto-select runs.
Add a signatureIdentity that falls back to the primary when the current
identity has no signature. From address, identity ID, S/MIME, and draft
saves still use currentIdentity so mail goes out from the right address.
2026-05-09 14:21:05 +02:00
Linus Rath
7fa65796f0
fix: show account identity in switcher header instead of sending alias
2026-05-09 13:21:13 +02:00
Linus Rath
d09df7e8a3
fix: remove benchmark directory from .gitignore
2026-05-09 13:13:08 +02:00
Linus Rath
090399a308
chore: update version to 1.6.3
1.6.3
2026-05-08 21:10:21 +02:00
Linus Rath
c31a58af1a
i18n: add missing translation keys across 15 locales
2026-05-08 21:07:14 +02:00
Linus Rath
65aabb943c
fix: fall back when only truncation indicator remains in email preview
2026-05-08 20:29:16 +02:00
Linus Rath
9c8739c4bb
fix: preserve emoji colors in dark mode email viewer
2026-05-08 20:27:03 +02:00
Linus Rath
48f72be209
fix: preserve emoji colors in dark mode email viewer
2026-05-08 20:26:17 +02:00
Linus Rath
92fb0c63e9
fix: trim leading whitespace from email list preview
2026-05-08 20:19:25 +02:00
Linus Rath
55596556ef
feat: import .eml files via folder right-click menu
2026-05-08 20:12:33 +02:00
Linus Rath
abd63d124f
fix: add benchmark directory to ESLint ignore list
2026-05-08 19:56:21 +02:00
Linus Rath
562080b7a3
fix: request shareWith explicitly so calendar/address book shares survive a re-login #257
2026-05-08 19:53:32 +02:00
Linus Rath
41c9f4926c
fix: prevent white-on-white in dark mode for nested bgcolor containers
2026-05-08 02:49:58 +02:00
Linus Rath
e7e78072d4
fix: render plain-text-only emails as text, not HTML
2026-05-07 17:49:39 +02:00
Linus Rath
cd363b4840
fix: strip leading punctuation when computing avatar initials
2026-05-07 17:43:02 +02:00
Linus Rath
3a350c14a6
fix: hide files/contacts nav items when JMAP server lacks support
2026-05-07 17:21:47 +02:00
Linus Rath
b0765bf085
style: redesign quick reply to match sender/banner layout
2026-05-07 17:02:06 +02:00
Linus Rath
9225ba0790
fix: render HTML-only emails and redesign external content prompt
2026-05-07 16:10:26 +02:00
Linus Rath
3b36738192
fix: pad Word/Outlook HTML email rendering
2026-05-07 15:42:47 +02:00
Linus Rath
3edd35ab57
fix: hide email hover actions on mobile
2026-05-07 15:23:05 +02:00
Linus Rath
a86a96e390
fix: disable StarterKit's bundled link/underline to avoid duplicate extensions
2026-05-07 12:33:51 +02:00
Linus Rath
5f464d4ee2
feat: lift 5-account cap on HTTP/2
2026-05-07 12:28:33 +02:00
Linus Rath
bd72dec98f
chore: update version to 1.6.2
1.6.2
2026-05-06 20:11:10 +02:00
Linus Rath
1331a3767c
Revert "chore: update version to 1.6.1"
...
This reverts commit cb200330e7 .
2026-05-06 20:10:08 +02:00
Linus Rath
cb200330e7
chore: update version to 1.6.1
2026-05-06 20:09:08 +02:00
Linus Rath
178922323d
chore: update version to 1.6.2
2026-05-06 20:07:36 +02:00
Linus Rath
91cf125a5d
chore: remove experimental tags from themes, plugins, and sender favicons settings
2026-05-06 20:03:19 +02:00
Linus Rath
f4b7ef8117
i18n: add missing translation keys across 15 locales
2026-05-06 19:59:14 +02:00
Linus Rath
d175fc2983
feat: restrict plugin and theme install/uninstall to admin dashboard
2026-05-06 19:34:21 +02:00
Linus Rath
2f8bbdc636
fix: open plugin card on first click of a setting sub-result
2026-05-06 19:18:07 +02:00