Linus Rath
cb6ddd6fcf
fix: strip CR/LF from read-receipt header values (GHSA-w38p-hpqv-g89c)
...
The read receipt is assembled as raw RFC 5322 text, and every header
value in it comes from the message being answered. Stalwart returns
subjects already RFC 2047-decoded, so a sender could hide CRLF in an
encoded-word subject (or in the Message-ID or
Disposition-Notification-To) and have it interpolated verbatim. That
let them add headers such as Reply-To, or a whole body, to a message
the user's own account files in Sent and submits. `encodeHeaderWord`
passed any pure-ASCII value through untouched, CR/LF included.
Port the webmail fix: free-text values go through
`stripHeaderControls` (controls collapse to a space, then RFC 2047 if
non-ASCII), address-like values and message-ids through `headerAtom`
(controls and whitespace removed), and the From display name is quoted
when it uses specials.
2026-09-24 18:36:15 +02:00
Linus Rath
ee04e95d4f
feat: add UnifiedPush as an alternative to FCM for push notifications
2026-09-24 18:17:43 +02:00
Linus Rath
6c82130267
chore: update version number to 0.1.62
0.1.62
2026-08-30 00:37:37 +02:00
Linus Rath
f228257ec9
fix: stop the viewer crashing on any message with attachments by keeping store selectors referentially stable
2026-08-29 22:41:09 +02:00
Linus Rath
a02e7f8a49
test: add an opt-in live Stalwart integration suite
2026-08-29 22:28:42 +02:00
Linus Rath
ea1f53f550
fix: keep the created message id when the server answers a send with an implicit filing update
2026-08-29 22:28:41 +02:00
Linus Rath
4e035f3011
chore: update version number to 0.1.61
0.1.61
2026-08-29 20:25:25 +02:00
Linus Rath
e04bea451a
fix: check the GitHub CLI login before bumping so a failed release does not leave a bare tag
2026-08-29 20:20:54 +02:00
Linus Rath
5cb28f5d5d
chore: update version number to 0.1.60
0.1.60
2026-08-29 20:20:15 +02:00
Linus Rath
94c9a2e7a2
chore: update version number to 0.1.59
0.1.59
2026-08-29 20:19:36 +02:00
Linus Rath
3f2dfe83ee
chore: merge upstream fixes for reply threading, iOS session auth drop, calendar paging and the camera prompt ( #35 , #38 , #39 , #40 )
2026-08-29 20:16:33 +02:00
Linus Rath
99a20777b7
docs: tick the P1 summary and record the fix-pass status in the parity index
2026-08-29 18:56:47 +02:00
Linus Rath
96272b6e17
fix: confirm the host before opening meeting links from calendar events and invitations
2026-08-29 18:56:46 +02:00
Linus Rath
8e33808ded
docs: tick the calendar parity items fixed in this pass
2026-08-29 18:55:31 +02:00
Linus Rath
2abea9742e
feat: add a send-invitations switch and custom reminder offsets, keeping alerts the picker cannot show
2026-08-29 18:53:58 +02:00
Linus Rath
c705227611
chore: add the harvested and hand-written RN locale keys
2026-08-29 18:49:38 +02:00
Linus Rath
5fe8e407c7
feat: duplicate, share as .ics and copy the meeting link of an event; link imported UIDs instead of skipping them ( #113 )
2026-08-29 18:49:08 +02:00
Linus Rath
0159d6acc8
docs: tick the outbox and unified-inbox core items
2026-08-29 18:48:51 +02:00
Linus Rath
8fd709d308
docs: record the commit hashes for the mail-list parity items
2026-08-29 18:47:21 +02:00
Linus Rath
0205aa0e1c
feat: cross-account moves via blob import, shared-account offline sync, parked failed outbox ops with retry and back-off, archive replay with foldering, localized relative dates
2026-08-29 18:47:12 +02:00
Linus Rath
09c24fa805
feat: edit tasks with description, priority and due time, filter the list and overlay due tasks on the calendar
2026-08-29 18:44:36 +02:00
Linus Rath
86c3ab9f28
fix: escape the line-break regex in the quick-reply prefill
2026-08-29 18:42:26 +02:00
Linus Rath
9398b46795
docs: tick the viewer-side core items
2026-08-29 18:41:49 +02:00
Linus Rath
f9ae4423e9
fix: sweep stale export files at launch and carry quick-reply text into the composer
2026-08-29 18:41:49 +02:00
Linus Rath
8e1d03c746
feat: fire calendar and task reminders as local notifications
2026-08-29 18:41:06 +02:00
Linus Rath
a222e89611
refactor: merge the quick reply's email-body imports
2026-08-29 18:40:42 +02:00
Linus Rath
26786ca3e4
fix: add the reader's load-failed translation key
2026-08-29 18:40:02 +02:00
Linus Rath
6ae21d5690
feat: folder actions, tags and unified views in the drawer, folder parent/role editing, tag discovery and account-routed unified actions ( #404 , #498 , #495 , #175 , #658 , #855 )
2026-08-29 18:39:45 +02:00
Linus Rath
d6670c2b60
docs: tick the reader parity items
2026-08-29 18:39:29 +02:00
Linus Rath
d2ed27fd3b
feat: conversation view with collapsible cards, header details, auth chips, unsubscribe and read-receipt banners, attachment preview and zip, embedded-message and TNEF unwrap in the reader ( #480 , #830 , #891 )
2026-08-29 18:38:53 +02:00
Linus Rath
ee3b3ffcc3
test: mock the Expo native modules the stores reach transitively
2026-08-29 18:36:08 +02:00
Linus Rath
0f80e98fbc
feat: localize the calendar, add Saturday week start, ISO week numbers, month chips and 12h labels ( #666 )
2026-08-29 18:35:46 +02:00
Linus Rath
2b44936a17
chore: harvest new RN-only translation keys
2026-08-29 18:34:18 +02:00
Linus Rath
bf92a00199
test: cover the draft route-param builder and tick the composer parity items
2026-08-29 18:34:09 +02:00
Linus Rath
00fd0696b2
docs: note the deferred date-locale item in the parity checklist
2026-08-29 18:33:27 +02:00
Linus Rath
c659b5489c
feat: signature, read-receipt, empty-subject, autosave and sub-address settings, identity Reply-To/Bcc/HTML signature with a default identity, template category/favourite, and reschedule/send-now/edit on the scheduled screen ( #507 )
2026-08-29 18:33:22 +02:00
Linus Rath
3a8264c7f7
feat: translate the account security pane
2026-08-29 18:33:16 +02:00
Linus Rath
dc3ac4c7ed
feat: translate the downloads pane
2026-08-29 18:30:32 +02:00
Linus Rath
ae31a71e01
docs: tick settings pane, theme and sidebar-app items in the parity checklist
2026-08-29 18:30:09 +02:00
Linus Rath
0e63d45599
feat: expose a mobile sidebar-apps selector for the drawer
2026-08-29 18:30:08 +02:00
Linus Rath
22697fd111
feat: translate the appearance, reading, composing, identity, template, keyword and sidebar-app panes
2026-08-29 18:29:34 +02:00
Linus Rath
fe45a444d3
feat: port the webmail's built-in colour themes to the Themes pane
2026-08-29 18:29:18 +02:00
Linus Rath
bea3fc4c42
feat: message-list order presets with the Stalwart keyword-sort polarity probe, avatars-in-junk and folder-count toggles ( #718 , #498 )
2026-08-29 18:28:43 +02:00
Linus Rath
5b72c4d314
feat: drafts with autosave and a save/discard close guard, Bcc, signatures, templates, sub-addressing, From override, read receipts, upload progress, inline-image hydration and an undo-send snackbar in the composer ( #188 , #849 , #848 , #540 , #570 , #684 , #163 )
2026-08-29 18:28:38 +02:00
Linus Rath
3194b5ece1
feat: tags, pins, recipients, not-spam, delete confirm, folder-scoped search and draft editing in the mail list
2026-08-29 18:23:08 +02:00
Linus Rath
f07e039ef0
feat: flip $junk/$notjunk on spam, search all folders by default, keep the search across folders and coalesce refreshes in the mail store ( #850 , #788 , #553 , #175 )
2026-08-29 18:22:14 +02:00
Linus Rath
8206893860
feat: assess invitation trust, read the iTIP method from the ICS and pick the target calendar in the invitation banner
2026-08-29 18:22:00 +02:00
Linus Rath
65c73d82a1
docs: tick misc UI items in the parity checklist
2026-08-29 18:21:34 +02:00
Linus Rath
1d1ff35d1b
chore: harvest new RN-only translation keys
2026-08-29 18:21:17 +02:00
Linus Rath
18e56163de
test: compare locale coverage against the vendored catalog and add missing overlay keys
2026-08-29 18:20:47 +02:00