MailFerry v2.0.3 — IMAP Migration & Sync
MailFerry v2.0.3 — Patch Release
High-Performance Native IMAP Migration Engine.
The polished Results experience: an interactive migration now finishes
on a native Results screen inside the TUI — verdict, statistics,
per-mailbox outcomes and a concise "Needs attention" summary — instead
of dropping to a raw text dump. Quitting returns a clean shell with a
short confirmation, never a duplicate report.
Added
- Results TUI with distinct verdicts: MIGRATION COMPLETE ·
COMPLETED WITH WARNINGS · NOTHING NEW TO COPY · DRY RUN. Run and
Messages panels, problems-first mailbox table, contextual panels
(adopted, prior-confirmed, dry-run plan, date range, portable mode),
Enter/F-keys/S/Q navigation. F6 doubles as the Failed Messages
browser after completion. Headless/non-TTY output remains structured
text — never a forced TUI. - Counter completeness:
synced = copied + adopted + prior-confirmed + plannedis now a tested invariant of the real
engine; new contextual lines and results.csv columns (msgs_prior,
msgs_planned) make idempotent reruns and dry runs self-explanatory. - RFC 2047 subject decoding in every interactive failed-message
surface, with clean ellipsis truncation and safe fallback. - Restored v1.x summary details: Run ID, mailbox timings, retries,
stalls, stale/remote/cancelled reporting, warned-mailbox breakdown.
Fixed
- Percentages never overstate completion: 100% appears only when
every message is genuinely accounted for (26,081 of 26,089 renders
99.9%, not 100%); progress also never rounds down to 0%.
No engine, protocol, state or data-handling changes. Existing
mailferry.db and mailferry.toml remain fully compatible. The v2.0.2
terminal sanitisation fix (confirmed on the affected macOS arm64
system) is preserved and re-verified in this release's gate.
macOS note: binaries remain unsigned/not notarised — Gatekeeper asks
for a one-time "Open Anyway" approval
(guide).
Verify downloads: shasum -a 256 -c SHA256SUMS
Issues: https://github.com/ajsap/mailferry/issues
Author: Andy Saputra andy@saputra.org · Licence: GNU AGPL v3.0