Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@steven-tey
Copy link
Collaborator

@steven-tey steven-tey commented Dec 21, 2025

Summary by CodeRabbit

  • Updates

    • Bumped package version to 0.0.1
    • Upgraded to React 19 support
    • Updated core dependencies including React Email and Resend
    • Added new email rendering capabilities
  • Improvements

    • Enhanced email HTML output formatting for better readability

✏️ Tip: You can customize this high-level summary in your review settings.

@vercel
Copy link
Contributor

vercel bot commented Dec 21, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
dub Ready Ready Preview Dec 21, 2025 5:24am

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 21, 2025

Walkthrough

The email package version is bumped to 0.0.1 with major dependency upgrades: React 18→19, React Email 2.1.6→5.1.0, and Resend 6.5.2-batch.0→6.6.0. The HTML email generation now uses async prettification via the new @react-email/render library instead of direct rendering.

Changes

Cohort / File(s) Summary
Package Configuration
packages/email/package.json
Version bumped to 0.0.1; major dependency updates including React 19, React Email 5.1.0, and new @react-email/render 2.0.0; Resend updated to 6.6.0; peer dependencies aligned to React 19.
Email Sending Logic
packages/email/src/send-via-nodemailer.ts
Replaced @react-email/components import with @react-email/render (pretty, render functions); HTML generation now uses async prettification: await pretty(await render(react)) instead of direct render call.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

  • Attention areas:
    • React 18→19 peer dependency migration compatibility (breaking changes in React 19)
    • Async prettification flow—verify error handling and await chain correctness
    • @react-email/render 2.0.0 API stability and compatibility with react-email 5.1.0

Possibly related PRs

Poem

🐰 HTML now flows with prettier grace,
Async awaits in rendering's space,
React nineteen hops to the stage,
Email magic on a modern page—
Dependencies dance, versions engage! ✨

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change: bumping react-email and resend dependency versions in package.json.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch bump-react-email

📜 Recent review details

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between af86595 and b72dd22.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (2)
  • packages/email/package.json (2 hunks)
  • packages/email/src/send-via-nodemailer.ts (2 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-09-12T21:08:43.990Z
Learnt from: TWilson023
Repo: dubinc/dub PR: 2835
File: apps/web/ui/analytics/feedback/action.ts:10-13
Timestamp: 2025-09-12T21:08:43.990Z
Learning: In the Dub email system, sendViaNodeMailer is intentionally designed as a simple backup mechanism with hard-coded sender fields, not as a full-featured email sender that preserves all metadata like from/replyTo fields. The primary email path uses Resend for full functionality.

Applied to files:

  • packages/email/src/send-via-nodemailer.ts
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: build
🔇 Additional comments (5)
packages/email/package.json (3)

3-3: Package version bump is appropriate.

The version increment from 0.0.0 to 0.0.1 aligns with the dependency updates being made.


23-24: React 19 compatibility confirmed for email package dependencies.

All specified dependencies support React 19:

  • @react-email/components ^1.0.2 ✓
  • @react-email/render ^2.0.0 ✓
  • react-email ^5.1.0 ✓

The React Email ecosystem has explicitly updated peer dependencies to support React 19. No compatibility issues identified.


12-19: Verify and test render function migration for major dependency updates.

Multiple major version updates contain breaking changes requiring code updates:

  • react-email: 2.1.6 → 5.1.0 includes render function changes; renderAsync is deprecated in favor of a new async render function that must be properly awaited
  • @react-email/[email protected] must be updated in sync with react-email
  • @react-email/render: Introduced as 2.0.0
  • resend: Updated to 6.6.0

Code using renderAsync patterns will fail with these versions and must be migrated before deployment.

packages/email/src/send-via-nodemailer.ts (2)

1-1: The import from @react-email/render is compatible with React 19. The render function is async and works as documented with the pretty() wrapper for HTML formatting.


33-33: The double-await pattern with pretty() and render() is the documented API; no changes needed.

The pattern await pretty(await render(...)) is shown in React Email's official documentation, so this is correct usage. The async operations are sequential by necessity (pretty needs render's output), not a performance concern. Error handling is optional here since the function is async and already allows errors to propagate to the caller.

Likely an incorrect or invalid review comment.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@steven-tey steven-tey mentioned this pull request Dec 21, 2025
@socket-security
Copy link

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updated@​react-email/​components@​0.0.22 ⏵ 1.0.299 +110084 +398 +2100
Updatedreact-email@​2.1.6 ⏵ 5.1.099 +110090 +498 +2100
Updatedresend@​6.5.2-batch.0 ⏵ 6.6.099 +1100100 +1100100

View full report

@steven-tey steven-tey merged commit 3015b03 into main Dec 21, 2025
8 of 9 checks passed
@steven-tey steven-tey deleted the bump-react-email branch December 21, 2025 05:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants