v0.2.6
RustBox CI / rustbox (push) Canceled after 0s

This commit is contained in:
Mateusz Gruszczyński committed 2026-11-01 15:46:10 +01:00
1 parent 47c3cd7f65
commit cfc74d9db6
33 files changed
+850 -244

No files matched your search

+14 -19
View File
@@ -1,19 +1,14 @@
RustBox 0.2.5 release manifest
RustBox 0.2.6 release manifest
0.2.5 feature/configuration changes:
- automatically opens the next message after moving/deleting the current message, including Spam, Not spam, Archive and Move actions
- falls back to the previous message when the removed message was the last loaded item
- keeps the reader open while advancing, including full-screen reader mode
- fixes S3-compatible HTTP endpoints by carrying allow_http in the final object_store ClientOptions
- keeps HTTPS-only behavior as the default; plain HTTP still requires storage.allow_http=true
- adds a local HTTP S3 regression test for the request path
- pins Rust 1.99.1 and uses rust:1.99.1-trixie / debian:trixie-slim with libssl3t64
- moves PostgreSQL 17 Compose services to postgres:17-trixie
- optional Sieve, diagnostics and About feature switches
- API namespace has an explicit 404 fallback so disabled/unknown API routes cannot be served by the SPA fallback
- opt-in security response headers (disabled by default)
- authenticated reset-all-settings endpoint/UI
- two-node Docker topology with Envoy, Valkey, PostgreSQL, OpenSearch and Garage S3
0.2.6 feature/configuration changes:
- fixes iPhone/iOS Safari reader action menus by rendering open Details / Move / copy popovers outside the scrolling toolbar
- refreshes unread counters with server-reported unread counts and avoids frequent IMAP folder-list refreshes
- watches the currently viewed folder with IMAP IDLE and synchronizes remaining folders on a 30-second fallback cadence
- stores new message headers before realtime events, allowing newly arrived messages to appear live in the active list
- shows an in-app toast for new mail in any folder and deduplicates browser notifications per message
- shows an animated indexing indicator beside Contacts while deep indexing is active
- excludes Trash/Junk/Spam from the deep-index selection query
- manual refresh forces current-folder message/count refresh while folder counters refresh in parallel
- no schema migration; V047 remains current and V048 remains next
Architecture:
@@ -74,14 +69,14 @@ Docker examples:
- docker/compose-mysql-nfs-opensearch.yml (MySQL + real NFS volume + OpenSearch)
Operations/docs:
- README.md documents 0.2.5 storage/search configuration
- README.md documents 0.2.6 storage/search configuration
- docker/README.md documents Compose variants
- docs/STORAGE_SEARCH_OPERATIONS.md documents failure modes, shared-storage requirements and migration behavior
- TODO.md leaves live SILO/MinIO/AWS/Ceph and real multi-node acceptance validation explicitly pending
Build/release metadata:
- `scripts/package-release.sh` runs the full Rust release gate before creating ZIP/SHA256 artifacts
- Cargo.toml version = 0.2.5
- Cargo.toml version = 0.2.6
- rust-toolchain.toml pins Rust 1.99.1
- Cargo.lock is intentionally not shipped; the release gate regenerates it before locked checks
- CI and scripts/build-release.sh generate Cargo.lock, then run locked tests/Clippy/release build
- Cargo.lock is retained for reproducible application builds; the release gate generates it only when missing
- CI and scripts/build-release.sh use the retained Cargo.lock (generating it only if missing), then run locked tests/Clippy/release build