Fix Remotion DM Sans timeout that broke nightly e2e#118
Merged
Conversation
Module-level document.fonts.load hung under concurrent Remotion tabs while @fontsource CSS still fetched hashed woff2 files over HTTP. Inline font assets and load them via FontFace so delayRender always clears; point the composition smoke test at 1080x1920 like production. Co-authored-by: Nika Siradze <siradze@nikusha.me>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (4)
📝 WalkthroughWalkthroughThe Remotion font pipeline now imports DM Sans WOFF2 assets, inlines font files through webpack, and loads both weights with ChangesFont asset pipeline
Render configuration
Estimated code review effort: 3 (Moderate) | ~20 minutes Sequence Diagram(s)sequenceDiagram
participant RemotionRoot
participant FontFace
participant RemotionRenderGate
RemotionRoot->>FontFace: Load DM Sans weights 400 and 700
FontFace-->>RemotionRoot: Resolve loaded font faces
RemotionRoot->>RemotionRenderGate: continueRender
Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 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 |
nmbrthirteen
marked this pull request as ready for review
July 15, 2026 08:25
3 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this does
Nightly (run 29393946596) failed on ubuntu/macOS/windows: Remotion's
delayRender("Waiting for DM Sans")never cleared under concurrent caption renders.@fontsourcewas fetching hashed.woff2files over HTTP from each Chromium tab; those fetches hung. AsetTimeoutfallback is useless here (timers are throttled in Remotion headless tabs).This change:
FontFacefrom webpack-imported files.woff/.woff2asasset/inlinedata URLs so font load does not hit the networkcontinueRenderpath on failureremotion/test-render.mjsat 1080×1920 (same as production / e2e), not 2160×3840How I tested it
node remotion/test-render.mjs brandedtimed out waiting for DM Sanstest-render.mjs brandedsucceeds; 2160×3840 / 165-frame stress render succeedspython3 scripts/e2e_render.py brandedandhormoziboth passnpx tsc --noEmit, fullnpm test, and remotion unit tests passChecklist
npx tsc --noEmitandnpm testpass (pluspytest tests/if you touched the backend)Summary by CodeRabbit
Improvements
Tests