Bichon logo

Bichon

Self-hosted email archiving server with full-text search

Alternative to: mimecast, proofpoint archive


About Versions (40)

1.5.3

2026-06-23

Release Notes

IMAP

  • Handle UIDVALIDITY changes via Message-ID comparison instead of full rebuild. Previously, a UIDVALIDITY change on the remote server forced a full mailbox rebuild, re-downloading every message. Now the sync compares local and remote messages by Message-ID, only re-downloading what actually changed. This is much faster and avoids unnecessary bandwidth for large mailboxes.

SMTP journaling

  • Reject journaling attempts to non-local accounts. SMTP deliveries targeting recipients that do not match a local account are now properly rejected during the SMTP transaction instead of failing later.

  • Don’t clobber IMAP-owned INBOX uid_validity on journal ingest. Each SMTP journaling delivery was silently resetting the INBOX uid_validity to None, causing the next IMAP reconcile to treat the mailbox as invalid and trigger a full rebuild. For large inboxes with sparse UIDs, interrupted rebuilds could permanently lose the local copy. The journaling path now only creates the INBOX row when it does not already exist, leaving the IMAP-maintained metadata intact. (#297)

Storage

  • Purge DedupCache entries on account, mailbox, and envelope removal. Deleting an account, mailbox, or individual message now properly clears the in-memory deduplication cache, preventing stale entries from accumulating and consuming memory.

UI

  • Persist account table sorting to localStorage. The sort order on the accounts page is now saved and restored across page reloads.

What’s Changed

New Contributors

Full Changelog: https://github.com/rustmailer/bichon/compare/1.5.2…1.5.3