Skip to content

bichon

v1.2.0 Feature

This release adds 2 notable features for engineering teams evaluating rollout.

Published 12d Backup & Recovery
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

backup compression email email-archiver email-archiving imap
+8 more
mail oauth2 openapi rust search self-hosted tantivy webui

ReleasePort's take

Light signal
editorial:auto 11d

Release Port Layer 1 v1.2.0 fixes a garbage‑collection bug that caused permanent 404 errors for download messages and adds self‑heal to automatically restore missing content blobs.

Why it matters: Prevents permanent data loss from GC misdeletion; auto‑recovery restores missing blobs on download-message, eliminating user‑facing 404s.

Summary

AI summary

Updates Release Notes Bug Fixes, fix, and ui across a mixed release.

Changes in this release

Feature Medium

Adds self-heal for missing content blob in download-message, auto-fetches from IMAP and restores.

Adds self-heal for missing content blob in download-message, auto-fetches from IMAP and restores.

Source: llm_adapter@2026-05-23

Confidence: high

Feature Medium

Adds filtering and sorting by server-controlled timestamps `internal_date` and `ingest_at` to `search-messages`.

Adds filtering and sorting by server-controlled timestamps `internal_date` and `ingest_at` to `search-messages`.

Source: llm_adapter@2026-05-23

Confidence: high

Feature Medium

(ui) Strips remote content from emails when viewed.

(ui) Strips remote content from emails when viewed.

Source: llm_adapter@2026-05-23

Confidence: low

Bugfix Medium

Fixes dedup GC incorrectly deleting still-referenced blobs, preventing permanent 404 on download-message.

Fixes dedup GC incorrectly deleting still-referenced blobs, preventing permanent 404 on download-message.

Source: llm_adapter@2026-05-23

Confidence: high

Bugfix Medium

Fixes wrong schema field used for attachment hash lookup in cleanup_unused_content.

Fixes wrong schema field used for attachment hash lookup in cleanup_unused_content.

Source: llm_adapter@2026-05-23

Confidence: low

Refactor Medium

Refactors `search-messages` to use `searchable_segment_ids()` reducing unnecessary file access.

Refactors `search-messages` to use `searchable_segment_ids()` reducing unnecessary file access.

Source: llm_adapter@2026-05-23

Confidence: low

Full changelog

Release Notes

Bug Fixes

  • Fixed dedup GC incorrectly deleting still-referenced blobs, causing permanent 404 on download-message
  • Fixed download-message to self-heal when content blob is missing: automatically re-fetches from IMAP and restores the blob; 404 is only returned if the recovery itself fails
  • Fixed wrong schema field used for attachment hash lookup in cleanup_unused_content

Features

  • search-messages now supports filtering and sorting by server-controlled timestamps: internal_date (IMAP INTERNALDATE) and ingest_at (archival time), enabling reliable incremental sync cursors
  • (ui) Strip remote content from emails when viewed #54

Refactor

  • Migration merge: use searchable_segment_ids() to reduce unnecessary file access (#261)

What's Changed

  • fix: prevent the dedup GC from deleting a still-referenced content blob by @mmaudet in https://github.com/rustmailer/bichon/pull/257
  • fix: self-heal a missing content blob in download-message by @mmaudet in https://github.com/rustmailer/bichon/pull/258
  • feat: filter and sort search-messages by a server-side timestamp by @mmaudet in https://github.com/rustmailer/bichon/pull/259

Full Changelog: https://github.com/rustmailer/bichon/compare/1.1.3...1.2.0

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track bichon

Get notified when new releases ship.

Sign up free

About bichon

Bichon – A lightweight, high-performance Rust email archiver with WebUI

All releases →

Related context

Earlier breaking changes

  • v1.0.0 Email/login name now immutable; account name is sortable
  • v1.0.0 Switched to UUID for envelope IDs to prevent accidental deletion

Beta — feedback welcome: [email protected]