← Back to the Journal

Published . Development milestone: October 21, 2026.

Mail that keeps up with everyday use.

October 21 focused on a steadier Mail app: releasing message windows properly, handling large folders, keeping older mail offline and making certificate imports clearer.

October 21 was about the details that matter when Mail stays open through the day. Reading another conversation should not leave the previous message using resources. Moving a large selection should show useful progress. Choosing to keep older mail offline should start doing that without restarting the account.

The work also refined importing the certificates and private keys used for S/MIME mail. These are changes in Ecliptic’s development source; this entry does not establish that every change had reached an installed update by the end of the day.

Letting go of messages you have finished reading

Mail’s HTML reader was keeping message-rendering processes alive after their messages had left the window. Over a longer session, that could build up memory use and leave new messages slow or blank until Mail was restarted.

The reader now explicitly releases those views and ends their rendering processes when a conversation is cleared or a message is rebuilt. The same cleanup applies when closing a writing window, the signature editor or a message opened from a file. Its rendering cache is also configured for individual documents.

A new regression test opens messages repeatedly and opens and closes writing windows on a virtual display, then checks that no more than the currently needed message-rendering process remains. That gives the problem a concrete check; extended use on different computers still matters, especially for people working with limited memory.

Large folders, smaller requests and clearer progress

A large folder operation exposed another reliability problem: listing too many message numbers in one server command could make Outlook reject the request. Mail now breaks long lists into smaller commands for searching, fetching, flagging, moving and deleting, collecting their results as it goes.

Large moves also gained a message count and progress bar. Instead of only saying that a change is waiting to reach the server, the sidebar can show how many messages have moved toward the destination. Progress advances between completed pieces; it is not a prediction of how long the provider will take.

The added tests check that scattered message lists stay within the command-size limit and still cover every selected message. A sync regression exercises moving a large selection and comparing the result with the test server. Different providers and interrupted operations still need broader coverage.

Older mail, ready before you lose the connection

Preferences → Storage now offers All mail for both the Inbox and Sent group and the other-folders group. Choosing it requests whole messages however old they are, including messages without a date. Changing the setting queues downloading immediately, without restarting the account.

This remains a choice for each account and folder group. Trash and Junk are not downloaded ahead. Downloading a large history can take time and disk space, and the existing low-space safeguard pauses background downloads. Until a message has finished downloading, selecting All mail alone does not make it available offline.

The new sync test changes an account from a limited download window to All mail and waits for the older eligible messages to arrive. Per-folder offline policies and explicit download-cancel controls remain further work.

A clearer certificate-import process

S/MIME certificate bundles, commonly saved as .p12 files, received two fixes. The import conversion now avoids a format that could cause intermittent failures in the underlying key tool. The recorded checks after that change reported 240 successful import attempts and three passing full-suite runs at that point in development.

The prompts were also separated more clearly: enter the bundle’s existing passphrase once, then choose and confirm the passphrase that protects the imported key on this computer. Cancelling the protection prompt triggers removal of the newly imported private key. A regression test uses a scripted passphrase prompt to check both protection and cancellation cleanup.

Those checks do not replace trying the real desktop prompt or exchanging protected messages with other mail apps. The existing encryption limits also remain: message subjects are visible, and online S/MIME revocation-list checking is not included.

Development through October 21

The source includes new regression tests for message-view cleanup, large operations, offline downloads and key-import prompts. The repeated import results above are recorded developer checks; this journal preparation did not rerun the Mail suite, and it does not imply every later change had its own recorded passing run.

The aim is a Mail app that stays responsive, explains long operations and makes offline choices useful. Wider provider testing, longer desktop sessions and delivery checks remain part of that work. This is development progress, not a public OS release announcement.