Changed public UMD apps to build with Rolldown via rolldown-vite#29141
Conversation
WalkthroughThis PR makes small manifest and configuration adjustments across several apps: comments-ui gains an Changes
Sequence Diagram(s)Not applicable — changes are configuration/manifest edits without an observable runtime flow. Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 4✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
ref https://linear.app/ghost/issue/PLA-96 - adds a `rolldown` named catalog (vite: npm:rolldown-vite@7.3.1) and points the 8 admin-surface apps (posts, stats, admin, admin-x-framework, admin-x-settings, admin-x-design-system, shade, activitypub) at catalog:rolldown - public UMD apps stay on stock vite until their own Rolldown config lands (#29141) - the known Rolldown interop breakers are already fixed on main: shade Flag ESM swap (#29139), @svg-maps/world shim (#29143), @tryghost/i18n dual-format (#29144) - verified: all 8 apps + the admin shell build clean under Rolldown; react/react-dom stay external (no dual-instance regression); only benign bundler-agnostic warnings
4cf1441 to
0d0d524
Compare
|
| Command | Status | Duration | Result |
|---|---|---|---|
nx run @tryghost/admin-x-settings:test:acceptance |
✅ Succeeded | 9m 41s | View ↗ |
nx run-many --target=build --projects=tag:publi... |
✅ Succeeded | <1s | View ↗ |
nx run ghost:test:ci:integration |
✅ Succeeded | 2m 41s | View ↗ |
nx run-many -t test:unit -p @tryghost/announcem... |
✅ Succeeded | 6m 53s | View ↗ |
nx run ghost:test:integration |
✅ Succeeded | 2m 55s | View ↗ |
nx run ghost:test:legacy |
✅ Succeeded | 2m 59s | View ↗ |
nx run @tryghost/admin:build |
✅ Succeeded | 3m 6s | View ↗ |
nx run ghost:test:e2e |
✅ Succeeded | 2m 33s | View ↗ |
Additional runs (7) |
✅ Succeeded | ... | View ↗ |
💡 Verify your cache is correct by running tasks in a sandbox. Read docs ↗
☁️ Nx Cloud last updated this comment at 2026-07-07 15:53:01 UTC
|
Bugbot is not enabled for this team, so this pull request was not reviewed. Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs. |
ref https://linear.app/ghost/issue/PLA-96 - points the 5 public apps (portal, comments-ui, sodo-search, signup-form, announcement-bar) at catalog:rolldown (npm:rolldown-vite@7.3.1) - removes portal's rollupOptions.output.manualChunks:false — Rolldown rejects the false literal and it is redundant (UMD lib mode emits a single chunk) - verified: all 5 build clean under Rolldown; 0 require/module leaks; per-namespace locale scoping intact; UMD sizes match the stock-Vite builds
0d0d524 to
ab6342b
Compare
|
Bugbot is not enabled for this team, so this pull request was not reviewed. Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #29141 +/- ##
==========================================
- Coverage 74.26% 74.26% -0.01%
==========================================
Files 1566 1566
Lines 135737 135737
Branches 16444 16446 +2
==========================================
- Hits 100805 100804 -1
Misses 33932 33932
- Partials 1000 1001 +1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|

ref PLA-96
Builds Ghost's public UMD apps — portal, comments-ui, sodo-search, signup-form, announcement-bar — with Rolldown via
rolldown-vite@7.3.1instead of stock Vite (Rollup + esbuild).Changes
vitedependency atcatalog:rolldown(npm:rolldown-vite@7.3.1).build.rollupOptions.output.manualChunks: falsefromapps/portal/vite.config.mjs— Rolldown rejects thefalseliteral, and it was redundant (UMD lib mode emits a single chunk regardless).Verification
All 5 apps build clean under Rolldown:
umd/main.cssstill emittedrequire(/module.exports/import.meta.globin any bundle.