Coffey Labs
e9349863e8
Merge pull request #284 from Coffey-Labs/add-funding-config
...
Add GitHub Sponsors funding config
2026-09-05 00:23:24 -07:00
Coffey Labs
1f9c17ad18
Merge pull request #283 from Coffey-Labs/roadmap-smime-reasoning
...
Say why S/MIME rather than OpenPGP, and why neither is urgent
2026-09-04 13:31:13 -07:00
Coffey Labs
eca8468d84
Merge pull request #282 from Coffey-Labs/docs-release-cadence
...
Say near the top that latest lags main, and by how long
2026-09-04 13:14:27 -07:00
Coffey Labs
53a44d7d18
Merge pull request #281 from Coffey-Labs/docs-contributing-branch-rules
...
Say in CONTRIBUTING that main is protected, and that strings need nine catalogues
2026-09-04 12:54:59 -07:00
Coffey Labs
fcbd8f6449
Merge pull request #280 from Coffey-Labs/claude-md-i18n-gotcha
...
Write down the plural-key gotcha, and how to tell it happened
2026-09-04 12:31:09 -07:00
Coffey Labs
0c9a15a691
Merge pull request #278 from Coffey-Labs/contacts-bulk-delete
...
Select contacts, and empty an address book
2026-09-04 12:19:18 -07:00
Coffey Labs
f201b09e90
Merge pull request #276 from Coffey-Labs/reply-to-my-own-message
...
Ask the folder, not just the identity list, whether a message was mine
2026-09-04 08:13:37 -07:00
Coffey Labs
4d23cef511
Merge pull request #274 from Coffey-Labs/ldif-dedupe-on-dn
...
Match an LDIF re-import on the entry's dn
2026-09-04 07:54:42 -07:00
Coffey Labs
1f8c12e29e
Write the S/MIME position down ( #273 )
...
It was backlogged in conversation on 2026-08-27 and recorded nowhere in
the repository -- not in ROADMAP, FEATURES, KNOWN-ISSUES, the README or
the docs. That is the state a plan is in just before it is forgotten,
and it is also the state that lets the same probing get done twice.
The entry carries what the earlier work established against a live
0.16.19, including the two findings that contradict the documentation:
encryptionAtRest is a field on x:AccountSettings rather than an object of
its own, and ordinary users can write their own x:PublicKey entries
despite the permissions table listing every sysPublicKey permission as
admin-only. Dated, and marked not re-run since the 0.16.20 upgrade, the
way KNOWN-ISSUES dates its entries.
PR #67 is named as the starting point: a working public-key manager,
closed unmerged, none of which is in the tree today.
The caveat that matters most is last, because it is the one a user
cannot undo: turning encryption-at-rest off does not decrypt what is
already encrypted.
2026-09-03 23:25:44 -07:00
Coffey Labs
17d98748c4
Merge pull request #272 from Coffey-Labs/i18n-missing-plurals
...
Add seven plural forms no catalogue ever had
2026-09-03 14:47:00 -07:00
Coffey Labs
71827a2d04
Merge pull request #270 from Coffey-Labs/i18n-ukrainian-rule-sentences
...
Translate the rule sentences into Ukrainian
2026-09-03 14:41:45 -07:00
Coffey Labs
5dd0a56732
Merge pull request #269 from Coffey-Labs/i18n-russian-rule-sentences
...
Translate the rule sentences into Russian
2026-09-03 14:41:39 -07:00
Coffey Labs
b55c8b13bc
Merge pull request #268 from Coffey-Labs/i18n-chinese-rule-sentences
...
Translate the rule sentences into Simplified Chinese
2026-09-03 14:41:35 -07:00
Coffey Labs
0cf9b81444
Merge pull request #267 from Coffey-Labs/i18n-japanese-rule-sentences
...
Translate the rule sentences into Japanese
2026-09-03 14:41:31 -07:00
Coffey Labs
8386444ac7
Merge pull request #266 from Coffey-Labs/i18n-portuguese-rule-sentences
...
Translate the rule sentences into Brazilian Portuguese
2026-09-03 14:41:26 -07:00
Coffey Labs
e1ae97139c
Merge pull request #265 from Coffey-Labs/i18n-dutch-rule-sentences
...
Translate the rule sentences into Dutch
2026-09-03 14:41:21 -07:00
Coffey Labs
503eaf17ec
Merge pull request #264 from Coffey-Labs/i18n-french-rule-sentences
...
Translate the rule sentences into French
2026-09-03 14:41:16 -07:00
Coffey Labs
1e02d9ebba
Merge pull request #263 from Coffey-Labs/i18n-spanish-rule-sentences
...
Translate the rule sentences into Spanish
2026-09-03 14:41:11 -07:00
Coffey Labs
d40dbf04b8
Merge pull request #262 from Coffey-Labs/i18n-german-rule-sentences
...
Translate the rule sentences into German
2026-09-03 14:41:06 -07:00
Coffey Labs
2a9e18f04c
Merge pull request #271 from Coffey-Labs/fix/shortcuts-after-checkbox
...
Keep shortcuts working after a checkbox is clicked
2026-09-03 14:41:00 -07:00
Coffey Labs
4d89f5e672
Merge pull request #261 from Coffey-Labs/i18n-describe-rules
...
Build the two rule descriptions as sentences, not fragments
2026-09-03 14:40:55 -07:00
Coffey Labs
22f39a4507
Merge pull request #259 from Coffey-Labs/i18n-third-pass
...
Third pass: the strings libraries build and views render raw
2026-09-03 14:01:53 -07:00
Coffey Labs
bf60fe6157
Merge pull request #258 from Coffey-Labs/i18n-second-pass
...
Second pass: four dialogs that were never wrapped
2026-09-03 14:01:49 -07:00
Coffey Labs
8d4063e921
Merge pull request #257 from Coffey-Labs/i18n-chinese-catch-up
...
Catch the Simplified Chinese catalogue up with what shipped after it
2026-09-03 14:01:44 -07:00
Coffey Labs
ea6c098057
Merge pull request #256 from Coffey-Labs/i18n-ukrainian-catch-up
...
Catch the Ukrainian catalogue up with what shipped after it
2026-09-03 14:01:38 -07:00
Coffey Labs
f7cbdb2e7a
Merge pull request #255 from Coffey-Labs/i18n-russian-catch-up
...
Catch the Russian catalogue up with what shipped after it
2026-09-03 14:01:33 -07:00
Coffey Labs
379623614a
Merge pull request #254 from Coffey-Labs/i18n-japanese-catch-up
...
Catch the Japanese catalogue up with what shipped after it
2026-09-03 14:01:27 -07:00
Coffey Labs
662385c6da
Merge pull request #253 from Coffey-Labs/i18n-portuguese-catch-up
...
Catch the Brazilian Portuguese catalogue up with what shipped after it
2026-09-03 14:01:21 -07:00
Coffey Labs
0fb4d1e964
Merge pull request #252 from Coffey-Labs/i18n-dutch-catch-up
...
Catch the Dutch catalogue up with what shipped after it
2026-09-03 14:01:16 -07:00
Coffey Labs
898815eaca
Merge pull request #251 from Coffey-Labs/i18n-french-catch-up
...
Catch the French catalogue up with what shipped after it
2026-09-03 14:01:09 -07:00
Coffey Labs
6ac5ee45dd
Merge pull request #250 from Coffey-Labs/i18n-spanish-catch-up
...
Catch the Spanish catalogue up with what shipped after it
2026-09-03 14:01:04 -07:00
Coffey Labs
f500261697
Merge pull request #249 from Coffey-Labs/i18n-german-catch-up
...
Catch the German catalogue up with what shipped after it
2026-09-03 14:00:59 -07:00
Coffey Labs
7a67a2c1c3
Merge pull request #248 from Coffey-Labs/i18n-render-untranslated-lists
...
Translate three lists the code was rendering raw
2026-09-03 14:00:54 -07:00
Coffey Labs
3ffee1224f
Merge pull request #246 from Coffey-Labs/ci/prune-old-images
...
Prune old images, and keep every release
2026-09-02 23:50:13 -07:00
Coffey Labs
60a4647a43
Merge pull request #245 from Coffey-Labs/ci/scheduled-releases
...
Cut a release once a week, and only when there is something in it
2026-09-02 23:45:41 -07:00
Coffey Labs
e1c85cf82e
Merge pull request #244 from Coffey-Labs/ci/publish-container-image
...
Publish the image the docs have been telling people to pull
2026-09-02 23:30:07 -07:00
Coffey Labs
93856de143
Merge pull request #243 from Coffey-Labs/fix/login-app-name
...
Call the instance what it calls itself, on the page that matters most
2026-09-02 15:27:20 -07:00
Coffey Labs
3582ad116e
Merge pull request #242 from Coffey-Labs/feat/contacts-update-on-reimport
...
Update a contact on re-import rather than skipping it
2026-09-02 15:17:27 -07:00
Coffey Labs
af0e8b2be2
Merge pull request #241 from Coffey-Labs/feat/domain-server-mapping
...
Choose the Stalwart by the domain somebody signs in with
2026-09-02 14:33:14 -07:00
Coffey Labs
2a41a31bb9
Merge pull request #240 from Coffey-Labs/fix/upstream-outage-lockout
...
Do not spend login attempts on an outage nobody caused
2026-09-02 14:14:24 -07:00
Coffey Labs
f6f6ce0b5e
Merge pull request #237 from Coffey-Labs/feat/headers-show-original
...
Make "Show original" in the headers dialog the action, not a description
2026-09-02 13:23:01 -07:00
Coffey Labs
45f1309d06
Merge pull request #235 from Coffey-Labs/feat/go-to-folder
...
Go to a folder by name, with g then o
2026-09-02 13:07:52 -07:00
Coffey Labs
a8cf8ce3d7
Merge pull request #234 from Coffey-Labs/feat/ldif-duplicate-report
...
Say how much an LDIF re-import duplicated, without acting on it
2026-09-02 12:51:10 -07:00
Coffey Labs
0d5975d427
Merge pull request #232 from Coffey-Labs/docs/policy-example
...
Ship an example settings policy, and name the variables in .env.example
2026-09-02 11:23:15 -07:00
Coffey Labs
cff7f6c11b
Merge pull request #231 from Coffey-Labs/feat/policy-change-once
...
Apply installation policy changes once each, per account
2026-09-02 11:03:50 -07:00
Coffey Labs
6821d6a93f
Merge pull request #230 from Coffey-Labs/feat/installation-defaults
...
Let an installation seed and lock user settings
2026-09-02 10:52:58 -07:00
Coffey Labs
a01e1874d8
Merge pull request #229 from Coffey-Labs/fix/export-vtimezone
...
Define the zones an export names, instead of only naming them
2026-09-02 10:29:45 -07:00
Coffey Labs
5f35428ddb
Merge pull request #228 from Coffey-Labs/feat/vcard-uid-dedupe
...
Skip vCards on re-import that the address book already has
2026-09-02 09:36:35 -07:00
Coffey Labs
85289b0c34
Merge pull request #227 from Coffey-Labs/feat/calendar-ics-export
...
Export a calendar as an iCAL file
2026-09-02 09:24:00 -07:00
Coffey Labs
cb69115be1
Merge pull request #226 from Coffey-Labs/feat/contacts-menu-parity
...
Give the address books the menus the calendars have
2026-09-02 09:08:40 -07:00
Coffey Labs
a61fe28523
Merge pull request #225 from Coffey-Labs/feat/skip-duplicate-uids-on-import
...
Skip events on re-import that the calendar already has
2026-09-02 08:57:36 -07:00
Coffey Labs
f1a8f162cf
Merge pull request #221 from Coffey-Labs/feat/set-folder-role
...
Set the Archive role from ihasmail, rather than describing it
2026-09-02 08:41:09 -07:00
Coffey Labs
8e9259638d
Merge pull request #220 from Coffey-Labs/fix/archive-role-message
...
Say the Archive folder needs the role, not the name
2026-09-02 08:10:10 -07:00
Coffey Labs
3f33b61369
Merge pull request #219 from Coffey-Labs/fix/unsaved-dialog-emphasis
...
Highlight saving, not discarding, on the unsaved-changes guard
2026-09-02 07:50:05 -07:00
Coffey Labs
6e1ac42d5a
Merge pull request #218 from Coffey-Labs/fix/contact-import-batching
...
Set contact cards in batches the server will take
2026-09-02 07:50:00 -07:00
Coffey Labs
6b8ac393c9
Merge pull request #215 from Coffey-Labs/fix/ical-import-batching
...
Import an iCal file in batches the server will take
2026-09-02 06:43:20 -07:00
Coffey Labs
b0edce1d9b
Merge pull request #214 from Coffey-Labs/fix/drag-day-across-timezones
...
Move an event by the days the hand moved it, not to the date dropped on
2026-09-02 01:11:53 -07:00
Coffey Labs
4570df6eab
Merge pull request #213 from Coffey-Labs/fix/push-verification-cache-key
...
Name the push verification entry absolutely, from both sides
2026-09-02 01:11:32 -07:00
Coffey Labs
8962065782
Merge pull request #212 from Coffey-Labs/fix/attach-size-limits
...
Apply the upload limit only where something is uploaded
2026-09-02 01:11:11 -07:00
Coffey Labs
13a6bcd66b
Merge pull request #211 from Coffey-Labs/feat/ical-subscriptions
...
Subscribe to a calendar published at a URL
2026-09-02 00:54:55 -07:00
Coffey Labs
b4ee545856
Merge pull request #210 from Coffey-Labs/feat/drag-reschedule
...
Drag an event to move it, and its edge to resize it
2026-09-02 00:42:47 -07:00
Coffey Labs
0ac5f78789
Merge pull request #209 from Coffey-Labs/feat/palettes
...
Six palettes, each with a light half and a dark one
2026-09-02 00:23:34 -07:00
Coffey Labs
72742ef30a
Merge pull request #208 from Coffey-Labs/feat/list-sort-order
...
Let the message list be sorted by something other than the date
2026-09-02 00:18:27 -07:00
Coffey Labs
6c7c6d19b3
Merge pull request #206 from Coffey-Labs/feat/birthday-calendar
...
Show birthdays from the address book as a calendar
2026-09-01 23:35:46 -07:00
Coffey Labs
c5be74fe57
Merge pull request #205 from Coffey-Labs/feat/tnef
...
Open winmail.dat
2026-09-01 23:35:26 -07:00
Coffey Labs
60d275f38b
Merge pull request #204 from Coffey-Labs/feat/nested-labels
...
Nest labels, and let each one say how prominent it is
2026-09-01 23:35:04 -07:00
Coffey Labs
9cace7c90c
Merge pull request #203 from Coffey-Labs/feat/select-all-in-folder
...
Select a whole folder, not just the rows that are loaded
2026-09-01 23:24:14 -07:00
Coffey Labs
d300107be0
Merge pull request #202 from Coffey-Labs/feat/sender-link-warnings
...
Warn about outside senders, large sends and links that mislead
2026-09-01 22:48:12 -07:00
Coffey Labs
255616341b
Merge pull request #201 from Coffey-Labs/feat/base-path
...
Serve ihasmail from a subpath
2026-09-01 22:47:53 -07:00
Coffey Labs
4c54eb74f9
Merge pull request #200 from Coffey-Labs/feat/privacy-safety-settings
...
Gather the privacy settings into a section of their own
2026-09-01 22:36:58 -07:00
Coffey Labs
ccc9f73a71
Merge pull request #197 from Coffey-Labs/feat/forward-as-eml
...
Forward a message as an attachment
2026-09-01 22:34:02 -07:00
Coffey Labs
1ea813940b
Merge pull request #196 from Coffey-Labs/feat/spam-score-panel
...
Show what the spam filter said, in the message details
2026-09-01 22:31:07 -07:00
Coffey Labs
ec8e2ad2d0
Merge pull request #199 from Coffey-Labs/feat/calendar-swipe
...
Swipe the calendar sideways to step a day or a month
2026-09-01 22:27:51 -07:00
Coffey Labs
3c3ffbd425
Merge pull request #198 from Coffey-Labs/feat/archive-by-date
...
Archive into a dated folder
2026-09-01 22:27:32 -07:00
Coffey Labs
132d0b5205
Merge pull request #195 from Coffey-Labs/feat/template-placeholders
...
Fill placeholders when a template is inserted
2026-09-01 22:27:04 -07:00
Coffey Labs
34578ba426
Merge pull request #194 from Coffey-Labs/feat/files-multiselect
...
Select more than one file at a time
2026-09-01 21:14:20 -07:00
Coffey Labs
b5ca0021ef
Merge pull request #193 from Coffey-Labs/feat/edit-text-files
...
Edit a text file where you are already reading it
2026-09-01 20:54:14 -07:00
Coffey Labs
8d562628ff
Merge pull request #192 from Coffey-Labs/feat/markdown-render
...
Read a Markdown file as the document it is
2026-09-01 20:36:40 -07:00
Coffey Labs
c170b8554c
Merge pull request #191 from Coffey-Labs/feat/file-preview
...
Look at a file without downloading it first
2026-09-01 20:21:48 -07:00
Coffey Labs
49f9a06009
Merge pull request #190 from Coffey-Labs/fix/print-single-message
...
Print the message you asked to print
2026-09-01 19:49:13 -07:00
Coffey Labs
a16faa1789
Merge pull request #189 from Coffey-Labs/fix/print-light-and-first-page
...
Print on white, and start on page one
2026-09-01 19:39:49 -07:00
Coffey Labs
4912ea8ef4
Merge pull request #188 from Coffey-Labs/fix/ctrl-click-selection
...
Take the message you were reading into the selection
2026-09-01 13:44:27 -07:00
Coffey Labs
fa55636fb0
Merge pull request #187 from Coffey-Labs/docs/demo-link
...
Point at the demo from the top of the README
2026-09-01 13:04:17 -07:00
Coffey Labs
bbdceb2697
Merge pull request #185 from Coffey-Labs/docs/scheduling-and-filters
...
Write down what the last week's features actually do
2026-09-01 11:03:25 -07:00
Coffey Labs
2beedc0f3c
Merge pull request #184 from Coffey-Labs/fix/compose-as-new-on-mobile
...
Put "compose as new" where a thumb can find it
2026-09-01 10:56:32 -07:00
Coffey Labs
0c1820e2bb
Merge pull request #183 from Coffey-Labs/feat/scheduling-panel
...
Schedule against the whole guest list, and say who cannot be read
2026-09-01 10:46:57 -07:00
Coffey Labs
fb1ad3c5c8
Merge pull request #182 from Coffey-Labs/feat/availability-labels-multiday
...
Say what the availability bar is showing, and show all of it
2026-09-01 09:58:25 -07:00
Coffey Labs
df9349935d
Merge pull request #180 from Coffey-Labs/feat/ldif-import
...
Import an address book in LDIF
2026-09-01 09:31:18 -07:00
Coffey Labs
5a7acb7306
Merge pull request #179 from Coffey-Labs/feat/compose-as-new
...
Send a message again as a new one
2026-09-01 09:10:42 -07:00
Coffey Labs
53513e6744
Merge pull request #178 from Coffey-Labs/feat/ical-import
...
Import an iCal file into a calendar
2026-09-01 08:43:37 -07:00
Coffey Labs
1a29784848
Merge pull request #177 from Coffey-Labs/fix/sieve-unsaved-changes
...
Ask before the filter editors lose your changes
2026-09-01 08:13:26 -07:00
Coffey Labs
b63f53c55b
Merge pull request #170 from Coffey-Labs/docs/create-event
...
Say in the README that a message can become an event
2026-08-31 23:19:30 -07:00
Coffey Labs
2dd0203ae1
Merge pull request #169 from Coffey-Labs/feat/event-guests-from-message
...
Invite the people the message was already between
2026-08-31 23:09:38 -07:00
Coffey Labs
16308431b8
Merge pull request #168 from Coffey-Labs/feat/create-appointment-from-email
...
Make an event out of a message
2026-08-31 22:57:04 -07:00
Coffey Labs
3517d48a90
Merge pull request #166 from Coffey-Labs/mobile-drawer-alignment-and-close
...
Hang every folder off one edge, and give the drawer a way out
2026-08-31 22:10:33 -07:00
Coffey Labs
20929ddc2c
Merge pull request #165 from Coffey-Labs/mobile-touch-targets-drilldown
...
Folders one level at a time on a phone, and targets a thumb can hit
2026-08-31 21:51:15 -07:00
Coffey Labs
100f07b580
Merge pull request #164 from Coffey-Labs/fix-language-count
...
Ten languages, not nine: correct the count everywhere
2026-08-31 15:38:34 -07:00
Coffey Labs
874887eb36
Merge pull request #163 from Coffey-Labs/docs-i18n-2026-08-31
...
Document the nine languages, and what Beta means on them
2026-08-31 15:20:07 -07:00
Coffey Labs
2380ed282e
Merge pull request #162 from Coffey-Labs/i18n-first-paint-language
...
Keep a settings change made before the first read, and wait for it
2026-08-31 15:11:45 -07:00
Coffey Labs
67f5a88ff6
Merge pull request #161 from Coffey-Labs/i18n-second-extraction
...
Second extraction pass: the strings the codemod could not see
2026-08-31 14:46:36 -07:00