Linus Rath
5237848312
docs: add the android release signing and key rotation guide
...
`docs/android-release.md` walks through generating the release key
with keytool, creating the debug-to-release signing lineage with
`apksigner rotate` and which capabilities the debug key keeps, the
five repository secrets, and how to check the first rotated release
on the emulators. It spells out what rotation protects and what it
does not: devices that have not updated yet, Android 7.0-8.1, which
still verify the debug-signed v2 signature, and when the lineage can
be dropped. It also covers local release builds and the `versionCode`
formula. The README links to it instead of the bare workflow file.
2026-09-24 18:52: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
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
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
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
9398b46795
docs: tick the viewer-side core items
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
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
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
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
ae31a71e01
docs: tick settings pane, theme and sidebar-app items in the parity checklist
2026-08-29 18:30:09 +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
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
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
dae5700688
feat: manage calendars from the drawer and scope, edit and auto-refresh iCal subscriptions
2026-08-29 18:14:48 +02:00
Linus Rath
42ab246cb9
feat: port recipient parsing, reply-identity, sub-addressing, signature, quote-header and template helpers; drop the dead submission api
2026-08-29 18:12:15 +02:00
Linus Rath
2bf2e89813
docs: tick account, security and push items in the parity checklists
2026-08-29 18:11:28 +02:00
Linus Rath
2586eccaca
docs: tick the Android backup item
2026-08-29 18:11:08 +02:00
Linus Rath
78532211f3
docs: tick the login localization items
2026-08-29 18:10:25 +02:00
Linus Rath
56f8dceb8f
docs: tick the auth and JMAP core parity items
2026-08-29 18:06:48 +02:00
Linus Rath
99eb525d22
docs: tick the contacts parity items
2026-08-29 18:05:59 +02:00
Linus Rath
58e3ef6827
fix: query events by date window, scan tasks separately and stop re-probing denied shared accounts ( #907 )
2026-08-29 18:05:56 +02:00
Linus Rath
8bf48f6465
docs: tick settings-store and updater items in the parity checklist
2026-08-29 18:04:44 +02:00
Linus Rath
9ae91a6ab6
docs: tick the filters, vacation and files parity items
2026-08-29 18:00:36 +02:00
Linus Rath
3fd5f10afe
fix: gate event editing on calendar rights and keep read-only calendars out of the pickers ( #762 )
2026-08-29 17:57:54 +02:00
Linus Rath
e70e57bf47
docs: tick push notification items in the parity checklist
2026-08-29 17:54:17 +02:00
Linus Rath
5dc40706fa
fix: send invitations with a server-scheduled organizer and match RSVPs against identities and aliases ( #731 )
2026-08-29 17:52:26 +02:00
Linus Rath
b538a0e53d
feat: vacation responder sends UTC dates, edits an HTML body and is fully localized
2026-08-29 17:48:18 +02:00
Linus Rath
58a6f45c15
fix: save all-day events with the right length, a time zone and explicit nulls for cleared fields ( #805 )
2026-08-29 17:45:43 +02:00
Linus Rath
feb4affea6
docs: tick i18n locale items in the parity checklist
2026-08-29 17:44:22 +02:00
Linus Rath
3ffcef2ec1
feat: actionable vacation banner, expanded IF/THEN rule view and capability-gated filter tabs
2026-08-29 17:44:14 +02:00
Linus Rath
eaa8249e76
docs: add webmail parity checklist
2026-08-29 17:30:37 +02:00
Linus Rath
dfa278f7a8
fix: sign iOS archives manually with an App Store provisioning profile
2026-08-01 13:47:49 +02:00
Linus Rath
f040a48e2f
feat: iOS TestFlight release pipeline
2026-08-01 13:29:15 +02:00