v2026.10.21.0
m-bain/whisperXv2026.10.21.0Oct 21, 2026by synoet
Upgrading?
AI Summary
A large feature release adding Outlook email and calendar support, tables in Sheets, and a wide set of email reading and mobile improvements. It also includes extensive reliability work around promises, caching, observability and desktop integrations.
Key Highlights
- Outlook email and calendar support added
- Tables introduced in Sheets
- Email threads can be read in a pane beside the list, with compact stacked rows for narrow layouts
- GIF search via /gif slash command and Supercut/Loom video embeds
- Import theme from clipboard and mobile top bar with close button and actions
New Features
- Outlook email and calendar support
- Tables in Sheets
- Email thread reading pane beside the list
- Compact stacked rows for narrow email lists
- Swipe a row right to set a reminder on touch
- Saved reply drafts shown in threads on touch
- GIF search with /gif slash command
- Supercut and Loom video embed support
- Import theme from clipboard
- Mobile top bar with close button and actions for PR blocks
- Copy link and share actions on PR blocks
- Separate import button next to the spreadsheet download menu
- Calendar events created with their Macro call in one write
- Guest chat in quick and scheduled calls
- App Store link and copy button in Mobile App settings
- Type-aware oxlint enforcement for no-floating-promises
Full Release Notes
## What's Changed * fix(deps): upgrade zip and ammonia to clear cargo-deny advisories by @synoet in https://github.com/macro-inc/macro/pull/8253 * fix(hotkeys): ignore keyless key events and scope duplicate-token warning by @synoet in https://github.com/macro-inc/macro/pull/8205 * fix(crm): show split close beside the collapsed CRM sidebar toggle by @synoet in https://github.com/macro-inc/macro/pull/8218 * fix(mentions): keep bin headers steady when View all disappears by @synoet in https://github.com/macro-inc/macro/pull/8224 * feat(crm): add deal and contact form to pipelines by @synoet in https://github.com/macro-inc/macro/pull/8211 * fix(graphql-soup): gate cache sessions and defer draft recovery by @synoet in https://github.com/macro-inc/macro/pull/7923 * fix(crm): open a shared pipeline link while Customers is open by @synoet in https://github.com/macro-inc/macro/pull/8223 * fix(desktop): let Pipedream Connect load in its iframe on macOS by @synoet in https://github.com/macro-inc/macro/pull/8226 * fix(database): make every table cell clickable across the full row height by @synoet in https://github.com/macro-inc/macro/pull/8216 * fix(email): open Cc and Bcc from the keyboard in replies by @synoet in https://github.com/macro-inc/macro/pull/8140 * feat(sheets): tables by @synoet in https://github.com/macro-inc/macro/pull/8134 * fix(email): give the list keyboard focus when it remounts by @synoet in https://github.com/macro-inc/macro/pull/8236 * fix(crm): close the narrow CRM navigation menu on collapse by @synoet in https://github.com/macro-inc/macro/pull/8219 * feat(email): show saved reply drafts in threads on touch by @synoet in https://github.com/macro-inc/macro/pull/8240 * feat(email): swipe a row right to set a reminder on touch by @synoet in https://github.com/macro-inc/macro/pull/8239 * feat(email): read threads in a pane beside the list by @synoet in https://github.com/macro-inc/macro/pull/8237 * feat(email): compact stacked rows for narrow email lists by @synoet in https://github.com/macro-inc/macro/pull/8242 * fix(flags): turn agent DMs on in dev and default new flags on in dev by @synoet in https://github.com/macro-inc/macro/pull/8162 * fix(pdf): stop unhandled "timed out" rejections by @synoet in https://github.com/macro-inc/macro/pull/8208 * fix(observability): symbolicate web and native errors and drop browser noise by @synoet in https://github.com/macro-inc/macro/pull/8213 * fix(web): handle floating promises in lib/core by @synoet in https://github.com/macro-inc/macro/pull/8257 * fix(web): handle floating promises in queries, clients, router and tooling by @synoet in https://github.com/macro-inc/macro/pull/8258 * fix(web): handle floating promises in soup, commands, entities and channels by @synoet in https://github.com/macro-inc/macro/pull/8259 * fix(web): handle floating promises in blocks, views and app components by @synoet in https://github.com/macro-inc/macro/pull/8260 * ci(web): enforce no-floating-promises with type-aware oxlint by @synoet in https://github.com/macro-inc/macro/pull/8261 * refactor(web): start voided promises with fireAndForget by @synoet in https://github.com/macro-inc/macro/pull/8265 * refactor(web): start arrow-body voided promises with fireAndForget by @synoet in https://github.com/macro-inc/macro/pull/8267 * chore(web): treat voided promises as floating by @synoet in https://github.com/macro-inc/macro/pull/8268 * fix(email): show the sender picture in mobile email rows again by @synoet in https://github.com/macro-inc/macro/pull/8262 * feat(pr): add mobile top bar with close button and actions by @jbecke in https://github.com/macro-inc/macro/pull/8271 * feat(settings): add import theme from clipboard and document theme mentions by @jbecke in https://github.com/macro-inc/macro/pull/8186 * fix(auth): disable graphql cache on confirmed session expiry by @seanaye in https://github.com/macro-inc/macro/pull/8278 * fix(channels): keep PR mentions from suspending the composer by @peterchinman in https://github.com/macro-inc/macro/pull/8194 * fix(channels): revalidate cached messages after reconnect by @seanaye in https://github.com/macro-inc/macro/pull/8276 * fix(desktop): restore browser file drop uploads by @ehayes2000 in https://github.com/macro-inc/macro/pull/8170 * feat(spreadsheet): add separate import button next to download menu by @jbecke in https://github.com/macro-inc/macro/pull/8180 * feat(calendar): create events with their Macro call in one write by @gbirman in https://github.com/macro-inc/macro/pull/8187 * fix(scheduling): display reschedule times in user's timezone by @jbecke in https://github.com/macro-inc/macro/pull/8275 * fix(email): stop Signal rows flickering and jumping after mark done by @gbirman in https://github.com/macro-inc/macro/pull/8165 * chore(ios): release 2.0.10 (build 189) by @peterchinman in https://github.com/macro-inc/macro/pull/8114 * fix(connectors): complete native Pipedream authorization in the browser by @ehayes2000 in https://github.com/macro-inc/macro/pull/8178 * fix(email): return desktop Gmail consent to the app by @ehayes2000 in https://github.com/macro-inc/macro/pull/8172 * fix(agent): restore canonical tool names during history replay by @ehayes2000 in https://github.com/macro-inc/macro/pull/8289 * feat(pr): add copy link action to PR block menu by @jbecke in https://github.com/macro-inc/macro/pull/8290 * fix(markdown): open mentions after soft line breaks by @ehayes2000 in https://github.com/macro-inc/macro/pull/8280 * fix(desktop): publish update feed from release commit by @ehayes2000 in https://github.com/macro-inc/macro/pull/8184 * feat(email): add outlook email and calendar support by @synoet in https://github.com/macro-inc/macro/pull/7461 * feat(settings): add App Store link and copy button to Mobile App settings by @jbecke in https://github.com/macro-inc/macro/pull/8301 * feat(block-pr): add share button to PR block by @jbecke in https://github.com/macro-inc/macro/pull/8300 * fix(ios): keep the watcher from treating a released build as drifted by @peterchinman in https://github.com/macro-inc/macro/pull/8285 * fix(drive): open public links without account services by @seanaye in https://github.com/macro-inc/macro/pull/8296 * fix(scheduling): load reschedule slots on the guest's local date by @gbirman in https://github.com/macro-inc/macro/pull/8302 * feat(calls): enable guest chat in quick and scheduled calls by @ehayes2000 in https://github.com/macro-inc/macro/pull/8295 * fix(pdf): restore signature drawing and stable dialog placement by @gbirman in https://github.com/macro-inc/macro/pull/8308 * perf(web): serve the remote dev server over HTTP/2 with compression and linked source maps by @404Wolf in https://github.com/macro-inc/macro/pull/8287 * feat(email): animate draft and thread expansion by @jbecke in https://github.com/macro-inc/macro/pull/8313 * fix(channels): keep list previews inert and accessible by @peterchinman in https://github.com/macro-inc/macro/pull/8282 * fix(email): give emails bottom clearance above the mobile nav chrome by @peterchinman in https://github.com/macro-inc/macro/pull/7153 * fix(email): send AI-composed email from the right inbox by @peterchinman in https://github.com/macro-inc/macro/pull/8010 * feat(web): add GIF search with /gif slash command by @jbecke in https://github.com/macro-inc/macro/pull/8188 * feat(unfurl): add Supercut and Loom video embed support by @jbecke in https://github.com/macro-inc/macro/pull/8176 * fix(email): stop squishing the Macro logo in digest and invite emails by @synoet in https://github.com/macro-inc/macro/pull/8307 * feat(tasks): give group headers the email card chrome by @jbecke in https://github.com/macro-inc/macro/pull/8306 * fix(code-mode): attribute SDK messages to the session agent by @404Wolf in https://github.com/macro-inc/macro/pull/8286 * feat(channel): render the title menu from the shared channel top bar by @peterchinman in https://github.com/macro-inc/macro/pull/7749 * feat(ios): explain release gate status on pull requests by @peterchinman in https://github.com/macro-inc/macro/pull/8117 * fix(search): restore mobile results on back navigation by @peterchinman in https://github.com/macro-inc/macro/pull/8279 * fix(email): keep next and previous working after the open thread leaves by @synoet in https://github.com/macro-inc/macro/pull/8227 * fix(properties): read an entity's properties from the primary by @gbirman in https://github.com/macro-inc/macro/pull/8091 * fix(crm): align CSV file picker with app conventions by @gbirman in https://github.com/macro-inc/macro/pull/8315 * feat(email): advance to the next thread after send and mark done by @synoet in https://github.com/macro-inc/macro/pull/8229 * fix(crm): keep split controls out of the narrow CRM navigation menu by @gbirman in https://github.com/macro-inc/macro/pull/8314 * feat(email): offer Macro links for attachments over the size limit by @gbirman in https://github.com/macro-inc/macro/pull/8292 * Revert "fix(drive): open public links without account services (#8296)" by @seanaye in https://github.com/macro-inc/macro/pull/8333 * feat(agents): unify composer controls and model selection by @404Wolf in https://github.com/macro-inc/macro/pull/7862 * feat(forms): keep channel polls out of Drive by @404Wolf in https://github.com/macro-inc/macro/pull/8312 * fix(comments): stop a document row from opening its comment drawer on mobile by @peterchinman in https://github.com/macro-inc/macro/pull/7328 * feat(desktop): label app icon, download page, and settings as alpha by @ehayes2000 in https://github.com/macro-inc/macro/pull/8351 * fix(channels): clear stale unread dots when opening conversations by @gbirman in https://github.com/macro-inc/macro/pull/8336 * fix(auth): restore public document access with preview session discovery by @seanaye in https://github.com/macro-inc/macro/pull/8349 * refactor(entities): route flagged mutations through graphql by @seanaye in https://github.com/macro-inc/macro/pull/8348 * fix(scheduling): preserve native navigation on booking pages by @jbecke in https://github.com/macro-inc/macro/pull/8263 * fix(crm): give opened records and pipelines their own URLs by @gbirman in https://github.com/macro-inc/macro/pull/8344 * fix(onboarding): keep connector continue button visible by @ehayes2000 in https://github.com/macro-inc/macro/pull/8320 * fix(calls): navigate to the call record after ending a call by @ehayes2000 in https://github.com/macro-inc/macro/pull/8305 * feat(crm): open company and contact links inside Customers on desktop by @gbirman in https://github.com/macro-inc/macro/pull/8345 * fix(channels): stop DM expand from shrinking the Channels section by @gbirman in https://github.com/macro-inc/macro/pull/8316 * fix(notifications): open macOS alerts at their destination by @ehayes2000 in https://github.com/macro-inc/macro/pull/8319 * fix(channels): search every channel the user is in from the rail by @gbirman in https://github.com/macro-inc/macro/pull/8360 * feat(sdk): complete endpoint coverage and expose database SQL by @404Wolf in https://github.com/macro-inc/macro/pull/8328 * fix(desktop): export frontend telemetry from desktop builds by @ehayes2000 in https://github.com/macro-inc/macro/pull/8357 * fix(agents): replace legacy chat tools with session workflows by @ehayes2000 in https://github.com/macro-inc/macro/pull/8303 * fix(home): show the mention sender in channel thread rows by @gbirman in https://github.com/macro-inc/macro/pull/8366 * fix(web): prevent GitHub status failures from refreshing lists by @peterchinman in https://github.com/macro-inc/macro/pull/8329 * fix(mobile): unify Chat icon with desktop sidebar by @jbecke in https://github.com/macro-inc/macro/pull/8365 * fix(ai-editing): let move place images and other decorator blocks by @404Wolf in https://github.com/macro-inc/macro/pull/8369 * fix(notifications): use desktop wording for native permission prompt by @ehayes2000 in https://github.com/macro-inc/macro/pull/8368 * fix(desktop): include agent fold wasm in release bundles by @ehayes2000 in https://github.com/macro-inc/macro/pull/8374 * fix(github): recover stale grants while preserving existing links by @peterchinman in https://github.com/macro-inc/macro/pull/8359 * fix(macrod): forward configured MCP connections to external agents by @ehayes2000 in https://github.com/macro-inc/macro/pull/8378 * fix(search): flatten mention chips to the indexed email in search queries by @gbirman in https://github.com/macro-inc/macro/pull/8370 * fix(ios): recover socket failures and diagnose webview reloads by @peterchinman in https://github.com/macro-inc/macro/pull/8354 * docs(infra): say MICROSOFT_TOKEN_KMS_KEY_ID is set by hand in Doppler by @gbirman in https://github.com/macro-inc/macro/pull/8382 * fix(channels): make @macro always offer to share items it links by @404Wolf in https://github.com/macro-inc/macro/pull/8379 * fix(routines): move routines and agents off retired claude models by @404Wolf in https://github.com/macro-inc/macro/pull/8327 * feat(agent-sessions): serve the folded session log and add AgentSession.foldedLog() by @404Wolf in https://github.com/macro-inc/macro/pull/8383 * fix(drive): show active filter counts and preserve menu selections by @peterchinman in https://github.com/macro-inc/macro/pull/7568 * feat(call): add provider-independent call entity model by @ehayes2000 in https://github.com/macro-inc/macro/pull/7660 * docs(agents): clarify bring-your-own-agent setup by @404Wolf in https://github.com/macro-inc/macro/pull/8394 * fix(email): send content-length on bodyless outlook graph writes by @synoet in https://github.com/macro-inc/macro/pull/8338 * fix(email-compose): poll draft status only after the server confirms it by @synoet in https://github.com/macro-inc/macro/pull/8339 * fix(email): stop outlook threads waiting forever for confirmation by @synoet in https://github.com/macro-inc/macro/pull/8342 * perf(email): restore fast label lookups and index Outlook user lookups by @synoet in https://github.com/macro-inc/macro/pull/8343 * fix(mobile): reserve top chrome in CRM and detail views by @peterchinman in https://github.com/macro-inc/macro/pull/8395 * fix(bots): simplify setup and collapse advanced options by @ehayes2000 in https://github.com/macro-inc/macro/pull/8391 * feat(marketing): refresh product pages and interactive demos by @chaitbuilds in https://github.com/macro-inc/macro/pull/8396 * fix(favorites): use get_entity_permission for channel favorites by @jbecke in https://github.com/macro-inc/macro/pull/8361 * fix(mobile): polish by @peterchinman in https://github.com/macro-inc/macro/pull/8390 * feat(calls): trace browser media permissions and setup by @ehayes2000 in https://github.com/macro-inc/macro/pull/8375 * feat(agent-session): record why a turn ended and whether it answered by @404Wolf in https://github.com/macro-inc/macro/pull/8400 * feat(analytics): group PostHog events by team by @chaitbuilds in https://github.com/macro-inc/macro/pull/8401 * fix(email): hide routine Outlook draft and send status by @synoet in https://github.com/macro-inc/macro/pull/8402 * fix(nix): fetch the ffmpeg tarball from pinned mirrors by @synoet in https://github.com/macro-inc/macro/pull/8318 * fix(home): request AI models inside the user's plan by @synoet in https://github.com/macro-inc/macro/pull/8214 * fix(web): handle failures that voided promises dropped by @synoet in https://github.com/macro-inc/macro/pull/8269 * feat(call): import Granola meetings as calls automatically by @ehayes2000 in https://github.com/macro-inc/macro/pull/7722 * feat(email): show a paperclip next to the date of threads with files by @synoet in https://github.com/macro-inc/macro/pull/8222 * fix(graphql): keep removed fields for stale clients and block breaking schema changes by @synoet in https://github.com/macro-inc/macro/pull/8212 * fix(web): stop unknown service variants crashing exhaustive matches by @synoet in https://github.com/macro-inc/macro/pull/8221 * fix(tauri): reconnect websockets after read errors and handle dropped IPC promises by @synoet in https://github.com/macro-inc/macro/pull/8207 * docs(coding): limit regression tests to behavior that can break again by @synoet in https://github.com/macro-inc/macro/pull/8406 * Sean/cache local grouping by @seanaye in https://github.com/macro-inc/macro/pull/8298 * fix(mobile): reserve alpha branding for desktop by @ehayes2000 in https://github.com/macro-inc/macro/pull/8427 * fix(marketing): change /download page to coming soon by @jbecke in https://github.com/macro-inc/macro/pull/8426 * fix(agents): finish external chat replies in their threads by @gbirman in https://github.com/macro-inc/macro/pull/8398 * fix(web): give the local soup grouping match a fallback by @peterchinman in https://github.com/macro-inc/macro/pull/8428 * fix(calendar): join Google Meet with the connected account by @gbirman in https://github.com/macro-inc/macro/pull/8429 * feat(ci): tell the author when a release label cannot start a release by @peterchinman in https://github.com/macro-inc/macro/pull/8425 * fix(marketing): smooth page loads and simplify mobile navigation by @chaitbuilds in https://github.com/macro-inc/macro/pull/8437 * feat(desktop): bundle macrod and add one-click local agent runtime setup by @ehayes2000 in https://github.com/macro-inc/macro/pull/8358 * fix(docx): wait for upload extraction before opening documents by @gbirman in https://github.com/macro-inc/macro/pull/8372 * fix(forms): strengthen poll result bar fills by @404Wolf in https://github.com/macro-inc/macro/pull/8335 * fix(calls): improve controls layout and camera-off styling by @ehayes2000 in https://github.com/macro-inc/macro/pull/7746 * feat(agent): add Auto model routing and discounted Gemini pricing by @404Wolf in https://github.com/macro-inc/macro/pull/8389 * fix(invites): email every invitee in a multi-person team invite by @chaitbuilds in https://github.com/macro-inc/macro/pull/8436 * fix(soup): guard missing grouped query data during startup by @synoet in https://github.com/macro-inc/macro/pull/8440 * feat(composer): refine controls and expand plus menu by @jbecke in https://github.com/macro-inc/macro/pull/8377 * fix(calendar): use dropdown for month picker on desktop by @jbecke in https://github.com/macro-inc/macro/pull/8405 * fix(email): convert booking link mentions to clickable links in sent emails by @jbecke in https://github.com/macro-inc/macro/pull/8362 * feat(web): add draft icon for PR mentions by @jbecke in https://github.com/macro-inc/macro/pull/8340 * feat(mentions): show booking links in mentions menu when no text after @ by @jbecke in https://github.com/macro-inc/macro/pull/8326 * fix(block-md): update document title live when another person changes it by @jbecke in https://github.com/macro-inc/macro/pull/8331 * ci(desktop): decouple desktop-only native code from mobile release gates by @ehayes2000 in https://github.com/macro-inc/macro/pull/8441 * fix(marketing): prevent desktop demo flashing on mobile startup by @chaitbuilds in https://github.com/macro-inc/macro/pull/8457 * fix(reviews): keep pull requests in date order after live updates by @jbecke in https://github.com/macro-inc/macro/pull/8454 * refactor(call): type call providers and Granola sync states by @ehayes2000 in https://github.com/macro-inc/macro/pull/8431 * fix(layout): coalesce split resizing and prevent composer observer loops by @ehayes2000 in https://github.com/macro-inc/macro/pull/8174 * fix(command): find teammates before their first direct message by @gbirman in https://github.com/macro-inc/macro/pull/8435 * fix(call): refresh Soup when a Granola meeting is imported by @ehayes2000 in https://github.com/macro-inc/macro/pull/8458 * perf(email): walk each inbox link in index order by @synoet in https://github.com/macro-inc/macro/pull/7607 * fix(calendar): keep RSVP saving feedback inside the footer by @gbirman in https://github.com/macro-inc/macro/pull/8460 * perf(email): walk each inbox in index order for recency previews by @synoet in https://github.com/macro-inc/macro/pull/8453 * feat(macrod): Windows builds and one-line installers by @404Wolf in https://github.com/macro-inc/macro/pull/8448 * fix(email): finish Gmail draft moves while Outlook writes are off by @synoet in https://github.com/macro-inc/macro/pull/8462 * fix(marketing): polish mobile navigation and homepage demos by @chaitbuilds in https://github.com/macro-inc/macro/pull/8465 * perf(soup): serve NOTIFIED_AT on GraphQL soup and check by-ids access per id by @synoet in https://github.com/macro-inc/macro/pull/8450 * perf(notifications): page the GraphQL feed by notified entities by @synoet in https://github.com/macro-inc/macro/pull/8451 * perf(infra): right-size idle ECS tasks and tier S3 storage by @404Wolf in https://github.com/macro-inc/macro/pull/8442 **Full Changelog**: https://github.com/macro-inc/macro/compare/v2026.10.18.0...v2026.10.21.0
Related Repositories
public-apis/public-apis★ 491,376
A collective list of free APIs
NousResearch/hermes-agent★ 256,210
The agent that grows with you
yt-dlp/yt-dlp★ 200,418
A feature-rich command-line audio/video downloader
microsoft/markitdown★ 191,647
Python tool for converting files and office documents to Markdown.
Significant-Gravitas/AutoGPT★ 187,713
AutoGPT is the vision of accessible AI for everyone, to use and to build on. Our mission is to provide the tools, so that you can focus on what matters.