What's Changed
- mail: Move the Compose shortcut hint into a hover tooltip by @elie222 in #3893
- branding: Use the desktop app icon for the favicon and web app icons by @elie222 in #3897
- mail: Keep undo in the toast and move selection to a sent reply by @elie222 in #3894
- assistant: Group bulk process toggles into a settings card by @elie222 in #3891
- mail-core: Stop a repeated provider resync from restarting sync in a tight loop by @elie222 in #3895
- mail: Batch conversation actions into one command and one provider call by @elie222 in #3896
- docs: changelog — Pop-Out Replies (Sep 26) by @cursor[bot] in #3890
- outlook: Open the draft itself from Go to Drafts (INB-365) by @bahmd in #3886
- calendar: Sync Outlook RSVPs through the mailbox-linked event by @gentlemandev in #3828
- deps: Upgrade Next.js to 16.3.6 for next/og security fix by @elie222 in #3901
- desktop: Restart into an already downloaded update by @elie222 in #3854
- billing: Refresh Apple subscription status from the App Store on sync by @elie222 in #3902
- integrations: Connect popular apps through Composio by @elie222 in #3898
- integrations: Drop row descriptions and surface Composio errors by @elie222 in #3904
- mail: Add FYI and Actioned to the split inbox library by @elie222 in #3905
- mail: Stop the reader jumping back to a previously open thread by @elie222 in #3906
- outlook: Stop backfill once the account is rate limited by @elie222 in #3908
- mail: Add titlebar navigation beside the window controls by @elie222 in #3907
- ui: Use the charcoal dark palette across the app by @elie222 in #3909
- drafts: Answer as the user instead of stalling with "I'll check" by @elie222 in #3910
- mail: Move select-all into the split tabs row by @elie222 in #3916
- web: Rename labels context to EmailLabelsProvider and drop GmailProvider by @elie222 in #3917
- email: Keep reply bodies HTML-safe and share reply quoting by @elie222 in #3918
- network: Consolidate outbound URL safety into @inboxzero/network by @elie222 in #3919
- drafts: Answer whether to meet without guessing availability by @elie222 in #3928
- chore: Remove modules now owned by the marketing repo by @elie222 in #3930
- seo: Noindex staging and preview deploys by @elie222 in #3929
- chore: Remove dead code and park chat onboarding by @elie222 in #3920
- test: Pass an empty Vercel env in the indexing allow case by @elie222 in #3935
- evals: Grade with DeepSeek V4.1 Flash by @elie222 in #3934
- Admin: Show deletion errors and handle revoked tokens by @elie222 in #3938
- auth: Show recovery pages for desktop sign-in errors by @elie222 in #3943
- mail: Notify native clients when a mailbox changes by @elie222 in #3915
Full Changelog: desktop-v0.1.17...desktop-v0.1.18