# What changed in @react-email/render

> 16 changes in @react-email/render 1 to 2 from its official release notes, upgrade guides and advisories: 2 breaking, 3 new APIs and options. Each one cited. Sources checked 2026-10-22. HTML: https://unstale.sh/npm/@react-email/render/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## @react-email/render 2

### Breaking changes

- The deprecated renderAsync API was removed; replace it with render as a drop-in replacement. (2.0.0) — [release notes](https://github.com/resend/react-email/releases/tag/%40react-email/render%402.0.0)

### New APIs and options

- Adds data-text-format="dataTable" to render tables as aligned columns in plain text. (2.1.0) — [release notes](https://github.com/resend/react-email/releases/tag/%40react-email/render%402.1.0)
- Introduces unstableTextConversion as a plain-text conversion path that sidesteps html-to-text. (2.1.0) — [release notes](https://github.com/resend/react-email/releases/tag/%40react-email/render%402.1.0)
- Introduces unstableToPlainText to convert content to plain text without using html-to-text. (2.1.0) — [release notes](https://github.com/resend/react-email/releases/tag/%40react-email/render%402.1.0)

### Behavior and default changes

- Rendered email HTML now omits React's auto-injected image preload hints, while leaving other link tags untouched. (2.0.10) — [release notes](https://github.com/resend/react-email/releases/tag/%40react-email/render%402.0.10)

### Fixes and other changes

- render only loads prettier when pretty: true, preventing a module-loading failure when rendering without pretty formatting in Next.js dev with Turbopack on Bun. (2.1.1) — [release notes](https://github.com/resend/react-email/releases/tag/%40react-email/render%402.1.1)
- Strips nul bytes from React 18 output to prevent emails with multi-byte characters from being truncated. (2.0.8) — [release notes](https://github.com/resend/react-email/releases/tag/%40react-email/render%402.0.8)
- Fixed export map ordering between convex and node. (2.0.7) — [release notes](https://github.com/resend/react-email/releases/tag/%40react-email/render%402.0.7)
- Awaits stream.allReady before reading renderToReadableStream output. (2.0.6) — [release notes](https://github.com/resend/react-email/releases/tag/%40react-email/render%402.0.6)
- Fixes process crashes in client errors. (2.0.5) — [release notes](https://github.com/resend/react-email/releases/tag/%40react-email/render%402.0.5)
- Fixed an ErrorBoundary issue that was breaking rendering in server components. (2.0.4) — [release notes](https://github.com/resend/react-email/releases/tag/%40react-email/render%402.0.4)
- Fixed client-side rendering fallbacks. (2.0.3) — [release notes](https://github.com/resend/react-email/releases/tag/%40react-email/render%402.0.3)
- Fixes custom selectors overwriting the ones defined by the package. (2.0.2) — [release notes](https://github.com/resend/react-email/releases/tag/%40react-email/render%402.0.2)
- Fixes pipeable stream errors not being handled. (2.0.2) — [release notes](https://github.com/resend/react-email/releases/tag/%40react-email/render%402.0.2)
- Adds a fallback for m.default when importing react-dom. (2.0.1) — [release notes](https://github.com/resend/react-email/releases/tag/%40react-email/render%402.0.1)

## @react-email/render 1

### Breaking changes

- Word wrapping is disabled by default in toPlainText. (1.4.0) — [release notes](https://github.com/resend/react-email/releases/tag/%40react-email/render%401.4.0)
