v0.11.0
- fix(sync): terminate the backfill loop + cap it defensively, with tests 142052b
- fix(sync): stop the backfill loop spinning forever on a failed fetch 7076a92
- fix(release): make version sync actually run + cover Cargo.lock 2b756c0
- test(e2e): give demo-entry 30s headroom on the slow macos-x64 runner 3588c76
- fix(ci): disable WebView GPU rasterization (not the whole GPU) 111408c
- fix(ci): force android System WebView into software rendering dcc8a65
- fix(ci): use AOSP default android image, not google_apis 0154aa9
- fix(ci): give android emulator more RAM + capture logcat db71f25
- fix(ci): size ios timeouts for a cold WebDriverAgent build 345bff1
- fix(ci): enable chromedriver autodownload for android webview 6749084
- fix(ci): android APK lookup + iOS headless-sim session 3da8617
- fix(ci): run android e2e from a committed script file 082ae03
- fix(ci): pin xcuitest driver to 9.10.5 for Appium 2.x 651e18a
- fix(demo): don't run the background sync in demo mode 26e12c9
- test(e2e): give Calendar nav 30s on the slow macos-x64 runner 43aa54a
- feat(ci): wire iOS e2e (Appium XCUITest, simulator) ae0d312
- fix(ci): android e2e was a false green f8ada4d
- test: cover pure/critical logic flagged by the coverage audit c49b9a2
- test(db): unit-cover the WebKitGTK db-fallback infrastructure f1956f6
- chore: remove debug logs for e2e tests c2d90e4
- fix(bootstrap): don't let a slow db init block the UI from booting 231b469
- fix(mailbox): make demo mode fully IndexedDB-free (WebKitGTK) df4101e
- test(e2e): dump db-engine mode + UA on any failure to diagnose Linux 5ff173d
- fix(db): skip the db worker outright on WebKitGTK/Linux dd0a788
- fix(db): run Dexie on the main thread when the worker's IndexedDB stalls 36969db
- fix(mailbox): persist demo messages so markFolderAsRead work 40830a3
- refactor(retry): share the exponential-backoff formula a0a4768
- fix(mailbox): keep demo messages fully in-memory; native-click e2e checkboxes d41bdb5
- fix(mailbox): render messages in demo mode without the sync worker 5c055ab
- fix(mailbox): render folders when the db worker/cache is unavailable 8076a26
- refactor(sync): share the SW message normalizer + contract-test it d207e0c
- perf(labels): fetch folder label flags with bounded concurrency d17e1af
- perf(mailbox): bound the in-memory folder list cache with an LRU 5b05e34
- test(e2e): trace demo-entry load orchestration to root-cause Linux stall ae48d49
- ci(e2e): make Linux WebView rows advisory (non-gating) f5cb9cb
- fix(mailbox): clear stuck loading skeleton on concurrent message loads 0189b8c
- fix(e2e): disable WebKitGTK DMABUF renderer under Xvfb + cheaper readiness gate 9ced54c
- fix(e2e): raise demo-seed timeouts for slow Xvfb + viewport-immune arm64 asserts 38b88b6
- fix(sync): re-enable service worker IndexedDB after DB recovery 4989342
- fix(reply): preserve HTML formatting and images in quoted replies 8ce5035
- fix(e2e): native demo-click, compose native-window awareness, demo move toast, readiness gate b65c901
- fix(e2e): disable window-state under webdriver + skip mailto prompt in demo ed1560d
- fix(e2e): real Tauri window resize + mark-folder-as-read pending mutation 943ed67
- feat(sync): continuous background backfill for historical inbox messages 2686adb
- chore(test): pin round-2 fix lines via static-source assertions 4cc5aa2
- fix(e2e): suppress overlay on WDIO noise + force min viewport + checkbox testid 6f830f0
- fix(e2e): unblock CI for threaded view + scroll demo button into view db742d8
- fix(mail): notification spam, sync-date stamping, Tahoe save crash, mark-all-as-read + tests 0a24711
- fix(e2e): use http scheme on Windows (matches Tauri 2 default) 1d423a5
- fix(e2e): disable tauri-plugin-updater when webdriver feature is on 68447ed
- fix(e2e): scope tauri-webdriver cache per matrix row + readiness via stdout be6951b
- fix(e2e): probe tauri-webdriver readiness + binary-path fallback + fail CI on test failure 3ba47e9
- ci(release): structural asserts + e2e gate + draft-until-verified 7d498df
Full Changelog: v0.10.22...v0.11.0