1 parent
0421994fe6
commit
425ea7449b
138 files changed
+5705
-1012
No files matched your search
+22
-8
@@ -1,10 +1,10 @@
|
||||
RustBox 0.0.6 source release
|
||||
RustBox 0.1.0 source release
|
||||
|
||||
Runtime/source model:
|
||||
- one root Cargo package
|
||||
- src/ Rust application code
|
||||
- src/web/ RustBox-owned embedded browser UI
|
||||
- migrations/ SQLite migrations
|
||||
- migrations/ dialect-separated SQLite/MySQL/PostgreSQL migrations
|
||||
- no TypeScript/React/Next.js/Node.js/Bun build
|
||||
- ManageSieve TLS/STARTTLS/explicit insecure transport option
|
||||
- native systemd packaging
|
||||
@@ -19,7 +19,19 @@ Oxi tracking:
|
||||
- Oxi frontend changes are reviewed and manually ported to src/web/
|
||||
- docs/UI.md documents the browser UI/build conventions
|
||||
|
||||
Current 0.0.6 release additions:
|
||||
Current 0.1.0 release additions:
|
||||
- persistent restart-safe sessions; SQLite under data_dir is the zero-config default
|
||||
- optional MySQL/PostgreSQL session databases
|
||||
- optional Redis sessions with direct URL or Redis Sentinel master discovery/failover lookup
|
||||
- shared-session validation for load-balanced cluster traffic and cross-node revocation
|
||||
- AES-256-GCM encryption for persisted IMAP/SMTP session credentials
|
||||
- all executable Rust SQL centralized under src/queries/{sqlite,mysql,pgsql}/queries.rs, including sessions
|
||||
- cached-message query projections are kept in a strict 16-column contract matching Rust row decoding
|
||||
- flat migrations under migrations/{sqlite,mysql,pgsql}; SQLite user schema uses V001-V046 and sessions use V047 per SQL dialect
|
||||
- user provisioning uses only the canonical SQLite V001-V046 runner; session V047 is selected separately by the configured session backend and Refinery is no longer used
|
||||
- allowed downloads explicitly from the sandboxed HTML message reader while retaining popup isolation
|
||||
- added GitHub-, GitLab-, Discord-, Slack-, Reddit- and Notion-inspired interface styles in light and dark variants
|
||||
- added release contracts that require every predefined interface style to be visible in the selector, backed by CSS and accepted by backend/config validation
|
||||
- attachment left-click defaults to safe in-app preview for supported types
|
||||
- attachment right-click exposes explicit Preview and Download actions
|
||||
- oversized preview attempts offer direct download instead of ending with a warning
|
||||
@@ -34,7 +46,7 @@ Current 0.0.6 release additions:
|
||||
- Gmail-, Proton-, Zoho- and Outlook-inspired interface profiles plus Minimal
|
||||
- expanded Polish localization, including scoped dialog/settings text and common attributes
|
||||
- JavaScript source split into functional `src/web/js/` modules and assembled by Cargo build.rs
|
||||
- Interface style selector expanded to RustBox custom, Roundcube Classic/Larry/Elastic, Clean, Graphite, High contrast, Gmail-, Proton-, Zoho-, Outlook-inspired and Minimal
|
||||
- Interface style selector includes RustBox custom, Roundcube Classic/Larry/Elastic, Clean, Graphite, High contrast, Gmail/Proton/Zoho/Outlook/Fastmail/Apple Mail/Yahoo/HEY/GitHub/GitLab/Discord/Slack/Reddit/Notion-inspired profiles, Nord and Minimal
|
||||
- legacy Compact/Balanced/Comfortable/Reading appearance cards removed
|
||||
- persisted special folders and mailbox behavior preferences
|
||||
- bulk IMAP actions, copy/move, folder mark-all-read/empty, message-to-folder drag/drop
|
||||
@@ -46,7 +58,7 @@ Current 0.0.6 release additions:
|
||||
- expanded contacts with multiple e-mails/phones/addresses, vCard profile fields, duplicate merge and validated PNG/JPEG/WebP photos
|
||||
- calendar Month/Week/Day/Agenda views, richer event metadata and ICS import/export
|
||||
- search-index status/rebuild, IMAP reconnect diagnostics and live cross-browser session revoke UI
|
||||
- 45 contiguous SQLite migrations wired sequentially; V042 adds per-user trusted senders, V043 saved responses, V044 interface skins and V045 saved-response format
|
||||
- 46 contiguous SQLite user migrations wired sequentially as V001-V046; V047 is reserved for the separate session store in each SQL dialect
|
||||
- safe Undo for resolvable IMAP MOVE actions and select-all across complete cached search results
|
||||
- exact-token thread matching and expanded keyboard selection/navigation shortcuts
|
||||
- in-app attachment preview, clipboard CID image paste and upload progress
|
||||
@@ -62,10 +74,12 @@ Current 0.0.6 release additions:
|
||||
- corrected Settings header/content grid for short panels and scroll-safe navigation
|
||||
|
||||
Validation note:
|
||||
- JavaScript, JSON, TOML, SVG, shell syntax, UI selector/icon integrity and SQLite migrations were validated in the release environment.
|
||||
- A full cargo build/test was not executed in this environment because cargo/rustc are not installed; run ./dev.sh or cargo test on a Rust toolchain host before deployment.
|
||||
- 56 Python release/runtime/query-layout contract tests passed, including fresh SQLite user migrations, separate SQLite session migration, session restart persistence, query-catalog parity and warning-hygiene contracts.
|
||||
- The assembled browser JavaScript bundle passed `node --check`; shell scripts passed `bash -n`; JSON/TOML/Python sources and Cargo.lock parsed successfully.
|
||||
- `scripts/build-release.sh` now enforces `cargo fmt --check`, `cargo test --locked`, `cargo clippy --all-targets -- -D warnings`, and `cargo build --release --locked`.
|
||||
- A full Rust gate could not be executed in this environment because cargo/rustc are unavailable; the release script and CI must pass on the toolchain host before deployment.
|
||||
|
||||
0.0.6 additions:
|
||||
0.1.0 additions:
|
||||
- mobile reader action and attachment fixes
|
||||
- WebSocket heartbeat, reconnect backoff, watchdog, resync, dedupe and fallback polling
|
||||
- reliable live new-message refresh and unread reconciliation
|
||||
|
||||
Reference in new issue
Block a user