v2026.7.20.1

macro-inc/macrov2026.7.20.1Jul 20, 2026by synoet

AI Summary

Introduces free teams up to 5 members, adds Kafka producers for bots and webhooks, and improves email interactions including reply to latest and undoable archive functionality.

Key Highlights

  • Free teams up to 5 members with member invites and auto-join domain
  • Kafka producer for bots and webhooks
  • Email improvements: Enter to reply to latest, Shift+E marks thread not done
  • Quick access using GraphQL cache instead of history
  • Admin toggle to restrict inviting to admins

New Features

  • Open mailto links in the in-app composer
  • Share email link identity metadata
  • Macro authorization updates across various services
  • Use GraphQL cache instead of history for quick access

Full Release Notes

## What's Changed
* feat(teams): free teams up to 5 members, member invites, auto-join domain by default by @jbecke in https://github.com/macro-inc/macro/pull/4994
* chore: remove legacy middleware by @whutchinson98 in https://github.com/macro-inc/macro/pull/5030
* fix(search): stop indexing canvas content by @gbirman in https://github.com/macro-inc/macro/pull/5028
* feat(bots): kafka producer by @whutchinson98 in https://github.com/macro-inc/macro/pull/5031
* feat(teams): admin toggle to restrict inviting to admins by @jbecke in https://github.com/macro-inc/macro/pull/5032
* feat(email): make Enter reply to latest message in thread by @evanhutnik in https://github.com/macro-inc/macro/pull/5022
* fix(email): shorten undo-send window to 5 seconds by @evanhutnik in https://github.com/macro-inc/macro/pull/5035
* feat(email): shift+e marks thread not done; undoable archive toasts by @evanhutnik in https://github.com/macro-inc/macro/pull/5033
* feat(teams): kafka producer by @whutchinson98 in https://github.com/macro-inc/macro/pull/5036
* feat(document) get by team slug by @whutchinson98 in https://github.com/macro-inc/macro/pull/5037
* feat(quick-access): use graphql cache instead of history by @dev-rb in https://github.com/macro-inc/macro/pull/4982
* perf: share email link identity metadata by @synoet in https://github.com/macro-inc/macro/pull/5034
* fix(search): use MacroAuthorizationExtractor by @whutchinson98 in https://github.com/macro-inc/macro/pull/5042
* fix(email): keep messages with draft replies expanded in thread view by @evanhutnik in https://github.com/macro-inc/macro/pull/5041
* fix(email): open search thread results at latest message expanded by @evanhutnik in https://github.com/macro-inc/macro/pull/5044
* Seanaye/feat/separate tan stack optimistic by @seanaye in https://github.com/macro-inc/macro/pull/5020
* feat: mark not done by @peterchinman in https://github.com/macro-inc/macro/pull/4997
* fix(docs): use EmptyStatePanel for the no-access screen by @jbecke in https://github.com/macro-inc/macro/pull/5016
* fix(channels): estimate virtual height by @synoet in https://github.com/macro-inc/macro/pull/5039
* fix(channel): restore thread reply fetch debounce by @synoet in https://github.com/macro-inc/macro/pull/5040
* test(soup): cover row-click fallback location routing by @evanhutnik in https://github.com/macro-inc/macro/pull/5045
* Seanaye/refactor/bundle updater by @seanaye in https://github.com/macro-inc/macro/pull/4976
* feat(email): open mailto links in the in-app composer by @evanhutnik in https://github.com/macro-inc/macro/pull/5046


**Full Changelog**: https://github.com/macro-inc/macro/compare/v2026.7.20.0...v2026.7.20.1