App v0.10.0
What's new in 0.10.0
This release completes the roadmap — the last three items are now implemented.
🔍 Search / filter mails
- New search box in the mailbox list: filter by subject, sender, recipient or Message-ID (case-insensitive)
- "No results" state, one-click clear button, keyboard navigation respects the filtered list
💾 Attachments stored on disk
- Binary attachments are written to the app data directory instead of being embedded (base64) inside SQLite
- SQLite stores only relative paths + metadata → smaller database
- Path-traversal-safe filenames; files are cleaned up when mails are deleted
- Existing mails with inline attachments remain exportable
🧪 Frontend tests (Vitest + Vue Test Utils)
- 30 tests covering both Pinia stores, the SwitchToggle component and the Mailbox screen
- Tauri runtime mocked in
src/test/setup.js;bun run testruns them locally, CI runs them on every push
🔧 Other
- Rust: 11 unit tests (4 new: attachment persistence, sanitization, path guard)
- Docs: README roadmap updated, improvements checklist synchronized
Assets
- Windows:
mail-dev_0.10.0_x64-setup.exe(NSIS) ·mail-dev_0.10.0_x64_en-US.msi - macOS:
mail-dev_0.10.0_aarch64.dmg·mail-dev_aarch64.app.tar.gz - Linux:
mail-dev_0.10.0_amd64.deb·mail-dev_0.10.0_amd64.AppImage·mail-dev-0.10.0-1.x86_64.rpm