Commit Graph
63 Commits
Author SHA1 Message Date
jcoffey 786976312f Open conversations in one request, and start them early (#392)
On a 250 ms link, opening a conversation took two round trips: Thread/get,
then the bodies. It now takes one. A known thread sends Thread/get and the
missing bodies in the same tick; an unknown one chains Email/get off
Thread/get with a back-reference, and falls back to fetching in parts when
the thread is longer than one Email/get may carry.

Conversations also start loading before the click: when the pointer rests
on a row, as soon as a press begins, and for the row below the open one.
The open waits for that load and does not repeat it.

Going back to one of the last twelve folders shows its previous list at
once, less messages that have left it, while the query runs.
2026-09-16 13:15:21 -07:00
jcoffey 5fe89d6e15 Merge pull request #391 from Coffey-Labs/feat/share-confirm
Ask before opening a shared item in a message
2026-09-16 12:27:33 -07:00
jcoffey 4c1ceca8e9 Merge pull request #390 from Coffey-Labs/fix/accept-ranges
Advertise byte ranges on downloads, and record the live checks
2026-09-16 12:13:20 -07:00
jcoffey ebf678be73 Merge pull request #389 from Coffey-Labs/fix/push-subscriptions
Stop duplicate push notifications and piling up subscriptions
2026-09-16 11:41:37 -07:00
jcoffey 3d7602ce74 Merge pull request #388 from Coffey-Labs/fix/contact-photos
Save contact photos inline, and load cards so avatars show
2026-09-16 11:38:22 -07:00
jcoffey aa9bf1b9b2 Merge pull request #387 from Coffey-Labs/perf/client-memory
Let go of old message bodies and of exported files
2026-09-16 11:02:42 -07:00
jcoffey c63fd0dfe0 Merge pull request #386 from Coffey-Labs/perf/server-static-and-caches
Precompress the bundle, validate the shell, and pass byte ranges on
2026-09-16 11:02:37 -07:00
jcoffey 56bd48e891 Merge pull request #385 from mbjboon-netizen/mbjboon-netizen-patch-1
Mbjboon netizen patch 1
2026-09-16 10:50:14 -07:00
jcoffey da87925b9c Merge pull request #384 from Coffey-Labs/perf/contacts-calendar-changes
Sync contacts by what changed, and hold fewer calendar windows
2026-09-16 10:45:12 -07:00
jcoffey 6090442058 Merge pull request #383 from Coffey-Labs/perf/lazy-store-init
Ask shared accounts together, and about files only when Files opens
2026-09-16 10:06:53 -07:00
jcoffey 9560ad06f4 Merge pull request #382 from Coffey-Labs/perf/lazy-chunks
Load the composer, previews, dialogs and other sidebars on demand
2026-09-16 09:50:14 -07:00
jcoffey e3cd56314b Merge pull request #381 from Coffey-Labs/perf/message-list-rows
Render only the message rows that changed
2026-09-16 09:22:08 -07:00
jcoffey 460760ba12 Merge pull request #380 from Coffey-Labs/fix/sw-cache
Keep the service worker's cache to the current build
2026-09-16 09:01:20 -07:00
jcoffey a9302075e7 Merge pull request #379 from Coffey-Labs/fix/security-followups
Close the smaller gaps from the security review
2026-09-16 08:50:31 -07:00
jcoffey 9691a7bbf5 Merge pull request #378 from Coffey-Labs/fix/push-refresh
Keep list refreshes within the server's limits and stop repeating them
2026-09-16 08:33:01 -07:00
jcoffey 47a2477d9f Merge pull request #377 from Coffey-Labs/fix/server-hardening
Bound what a request can make the server hold
2026-09-16 07:58:47 -07:00
jcoffey b2e7db938c Merge commit from fork
Harden the email sanitizer's CSS handling
2026-09-16 07:40:38 -07:00
jcoffey d0b13272f3 Merge pull request #374 from Coffey-Labs/refactor/lib-clusters
Group six more lib clusters, and split the mock server
2026-09-15 23:25:01 -07:00
jcoffey 5cc31037c1 Merge pull request #373 from Coffey-Labs/refactor/split-mail-store
Split the extractable parts out of the mail store
2026-09-15 22:54:03 -07:00
jcoffey e42c81ab09 Merge pull request #372 from Coffey-Labs/refactor/lib-domain-folders
Group the admin and calendar modules, and stop calling screenshots docs
2026-09-15 22:53:34 -07:00
jcoffey 0bde2df69d Merge pull request #371 from Coffey-Labs/ci/pin-actions-to-shas
Pin every action to a commit SHA
2026-09-15 22:23:07 -07:00
jcoffey df06b8ea04 Merge pull request #370 from Coffey-Labs/docs/pull-request-template
Add the pull request template CONTRIBUTING.md already refers to
2026-09-15 22:23:03 -07:00
jcoffey 3bfe9396b4 Merge pull request #369 from Coffey-Labs/chore/us-spelling-license
Use American English spelling
2026-09-15 11:49:23 -07:00
jcoffey a7d36e1962 Merge pull request #368 from Coffey-Labs/docs/shorter-readme
Shorter README: an introduction and links
2026-09-15 10:54:17 -07:00
jcoffey 8639e9885b Merge pull request #366 from Coffey-Labs/feat/detect-stalwart-admin-url
Find Stalwart's administration instead of asking for it
2026-09-15 10:07:27 -07:00
jcoffey d3fef4acb7 Merge pull request #365 from Coffey-Labs/docs/schema-route-confirmed
Record the schema route working on production
2026-09-15 10:07:10 -07:00
jcoffey 66892c794d Merge pull request #367 from Coffey-Labs/docs/scrub-server-hostnames
Take the production server's domains out of KNOWN-ISSUES
2026-09-15 10:07:01 -07:00
jcoffey 53d9cd37fb Merge pull request #364 from Coffey-Labs/feat/admin-tenants
Add Tenants to Administration, and let an account be put in one
2026-09-15 09:51:05 -07:00
jcoffey 5f28393039 Merge pull request #363 from Coffey-Labs/feat/admin-roles
Add Roles to Administration, with Stalwart's permissions in every language
2026-09-15 09:50:55 -07:00
jcoffey 37a0e28871 Merge pull request #362 from Coffey-Labs/feat/admin-lists
Add Mailing lists to Administration
2026-09-15 09:50:42 -07:00
jcoffey 5a7a8019e9 Merge pull request #361 from Coffey-Labs/feat/admin-groups
Add Groups to Administration
2026-09-15 09:50:28 -07:00
jcoffey d17c9a6e1f Merge pull request #360 from Coffey-Labs/feat/admin-dashboard
Open Administration on a dashboard of what the role can read
2026-09-15 09:48:57 -07:00
jcoffey bb8d6eb92d Merge pull request #359 from Coffey-Labs/fix/keyboard-keyless-keydown
Ignore a keydown that carries no key
2026-09-15 07:29:33 -07:00
jcoffey 877566f1cd Merge pull request #358 from Coffey-Labs/fix/contacts-resizable-list
Let the contact list be resized, and give the contact the rest of the page
2026-09-15 07:28:06 -07:00
jcoffey 14e22c21fe Merge pull request #354 from Coffey-Labs/dependabot/npm_and_yarn/jsdom-30.0.1
Bump jsdom from 26.1.0 to 30.0.1
2026-09-15 07:17:46 -07:00
jcoffey 7d96cf22ac Merge pull request #353 from Coffey-Labs/dependabot/npm_and_yarn/vitest-5.0.0
Bump vitest from 4.1.11 to 5.0.0
2026-09-15 07:14:09 -07:00
jcoffey a4022b37ce Merge pull request #352 from Coffey-Labs/dependabot/npm_and_yarn/lucide-react-1.45.0
Bump lucide-react from 0.477.0 to 1.45.0
2026-09-15 07:13:25 -07:00
jcoffey 33d966ba44 Merge pull request #351 from Coffey-Labs/dependabot/npm_and_yarn/concurrently-10.0.5
Bump concurrently from 9.2.4 to 10.0.5
2026-09-15 07:12:53 -07:00
jcoffey 1bf6350d68 Merge pull request #350 from Coffey-Labs/dependabot/npm_and_yarn/minor-and-patch-e9d406726e
Bump @tanstack/react-virtual from 3.14.11 to 3.14.12 in the minor-and-patch group
2026-09-15 07:11:52 -07:00
jcoffey b735685416 Merge pull request #357 from Coffey-Labs/feat/move-folder-picker
Move a folder from its menu, with the same picker as moving mail
2026-09-15 07:11:09 -07:00
jcoffey 7940a15a43 Merge pull request #349 from Coffey-Labs/i18n/template-literal-attributes
Translate English built from template literals in attributes
2026-09-14 08:28:18 -07:00
jcoffey aa57c59703 Merge pull request #348 from Coffey-Labs/i18n/literal-check-component-props
Check component props for untranslated literals, and fail on a finding
2026-09-14 08:10:46 -07:00
jcoffey af092b3942 Merge pull request #347 from Coffey-Labs/feat/resizable-sidebar
Let the sidebar be resized by dragging its edge
2026-09-14 07:56:59 -07:00
jcoffey f0039c87fe Merge pull request #346 from Coffey-Labs/ci/weekly-release-off-the-hour
Move the weekly release off the top of the hour
2026-09-14 07:56:52 -07:00
jcoffey 1dc0caeae9 Merge pull request #344 from Coffey-Labs/docs/companion-tools
Point to the companion tools near the top of the README
2026-09-13 22:48:01 -07:00
jcoffey c587268c97 Merge pull request #343 from Coffey-Labs/docs/features-known-issues-0.16.22
Bring FEATURES and KNOWN-ISSUES up to 0.16.22
2026-09-13 18:00:26 -07:00
jcoffey 3dd8c7c2dd Merge pull request #342 from Coffey-Labs/mock/stalwart-0.16.22
Follow Stalwart 0.16.22 in the mock
2026-09-13 17:57:27 -07:00
jcoffey 029afc21c4 Merge pull request #341 from Coffey-Labs/docs/stalwart-0.16.22
Say 0.16.22 in the README
2026-09-13 17:52:51 -07:00
jcoffey 5f808f3033 Merge pull request #340 from Coffey-Labs/fix/translate-admin-errors
Say every Administration refusal in the reader's language
2026-09-13 17:21:07 -07:00
jcoffey 822314e8b7 Merge pull request #339 from Coffey-Labs/docs/administration
Record what Administration proved on the live server
2026-09-13 16:49:13 -07:00
jcoffey f44987e391 Merge pull request #338 from Coffey-Labs/feat/admin-trusted-device-only
Offer administration only on a device marked as your own
2026-09-13 16:36:45 -07:00
jcoffey b6cc762d23 Merge pull request #337 from Coffey-Labs/feat/admin-nav-in-sidebar
Move Administration's section list into the folder pane
2026-09-13 16:36:22 -07:00
jcoffey 93c9660421 Merge pull request #336 from Coffey-Labs/fix/account-type-filter
Filter accounts on @type, the name Stalwart uses
2026-09-13 15:58:52 -07:00
jcoffey b79db9098a Merge pull request #335 from Coffey-Labs/feat/admin-domains
Add Domains to Administration
2026-09-13 15:47:30 -07:00
jcoffey 16e0761ddf Merge pull request #334 from Coffey-Labs/feat/admin-accounts
Add Administration, starting with accounts
2026-09-13 15:46:46 -07:00
jcoffey 5f5672fed3 Merge pull request #333 from Coffey-Labs/fix/multi-server-account-requests
Send account requests to the account's own Stalwart
2026-09-13 15:46:20 -07:00
jcoffey b0564679e6 Merge pull request #332 from Coffey-Labs/deploy-version-without-node
Let the deploy compute its version without node
2026-09-12 12:29:25 -07:00
jcoffey a666cdbcdc Merge pull request #331 from Coffey-Labs/fix/composer-maximized-stacking
Paint a full-screen composer above the others
2026-09-12 12:24:34 -07:00
jcoffey c3d2dc2418 Merge pull request #329 from Coffey-Labs/prune-stale-catalogue-keys
Report the stale keys that are stale, and remove them
2026-09-10 16:01:41 -07:00
jcoffey 3c4f6a9f8e Merge pull request #328 from Coffey-Labs/i18n-scripts-typescript7
Give the i18n scripts a parser again
2026-09-10 14:24:06 -07:00
jcoffey 2a323d6270 Merge pull request #327 from Coffey-Labs/single-message-view
Let conversation view off mean off
2026-09-10 14:23:52 -07:00
jcoffey 9b497af756 Merge pull request #326 from Coffey-Labs/plain-text-line-breaks
Render plain-text mail with its line breaks
2026-09-10 13:39:12 -07:00
jcoffey a9923c48d9 Merge pull request #325 from Coffey-Labs/funding-username-jcoffey-dev
Point the Sponsor button at the current GitHub username
2026-09-10 09:19:28 -07:00