Skip to content

[pull] main from remotion-dev:main#846

Merged
pull[bot] merged 56 commits into
code:mainfrom
remotion-dev:main
May 19, 2026
Merged

[pull] main from remotion-dev:main#846
pull[bot] merged 56 commits into
code:mainfrom
remotion-dev:main

Conversation

@pull
Copy link
Copy Markdown

@pull pull Bot commented May 19, 2026

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

JonnyBurger and others added 30 commits May 18, 2026 15:51
Document why overrideIdToNodePathMappings is omitted from the subscription
effect deps. Add an e2e test that verifies stack recovery and expanded
timeline state after the issue #7393 refactor.

Co-authored-by: Cursor <cursoragent@cursor.com>
Replace the exhaustive-deps suppression by updating nodePathAtResubscribeRef
when the subscription location changes, so applyEach can migrate expanded
state without re-subscribing on unrelated mapping updates.

Co-authored-by: Cursor <cursoragent@cursor.com>
…tion

Stop calling setOverrideIdToNodePath when the subscription key is unchanged,
which prevented applyEach from firing redundant state updates on every
re-acquire. Snapshot the node path when the location effect runs instead of
during render, and stabilize the effects dependency with a signature.

Co-authored-by: Cursor <cursoragent@cursor.com>
…n effect

Satisfy react-hooks/exhaustive-deps without re-subscribing when unrelated
sequences update their node path mappings.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
…re-render

Co-authored-by: Cursor <cursoragent@cursor.com>
Run the effect chain after decoding each frame to an offscreen canvas,
re-draw when effects change, and add an example composition to compare
plain vs blur+tint animated GIF rendering.

Closes #7407

Co-authored-by: Cursor <cursoragent@cursor.com>
The package builds to `dist/cjs`, but `.npmignore` only excluded
`dist/test/**`, so the newly added test files landed in `dist/cjs/test`
and got published. Also excludes `vitest.config.ts`. Matches the
convention used by core, player, lottie and noise.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…errors

Create all ancestor directories before mkDir and include Vercel Sandbox API error bodies in thrown errors. Fixes #7428.

Co-authored-by: Cursor <cursoragent@cursor.com>
…-test-files

`@remotion/layout-utils`: Don't publish test files
Share one SSE connection between previewEntry HMR bootstrap and
PreviewServerConnection to avoid duplicate server clients and
double HMR processing.

Fixes #7405

Co-authored-by: Cursor <cursoragent@cursor.com>
Use a shared getStack function reference so toEqual matches the
callback preserved by calculateTimeline.

Co-authored-by: Cursor <cursoragent@cursor.com>
Bumps [ws](https://github.com/websockets/ws) from 8.17.1 to 8.20.1.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](websockets/ws@8.17.1...8.20.1)

---
updated-dependencies:
- dependency-name: ws
  dependency-version: 8.20.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
…atory effect params

Add optional `validateParams` to `createEffect` and use it for tint, blur, and starburst so missing required arguments throw at factory call time instead of silently applying defaults.

Fixes #7392

Co-authored-by: Cursor <cursoragent@cursor.com>
Move the effect enable/disable control to the left edge of effect rows so it lines up with the eye and speaker icons on track rows.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Patches remotion/Root.tsx when POST /api/create-folder succeeds by
cloning the empty composition, pre-populating a default videoscene,
and injecting it above the template. Idempotent with a manual fallback
when Root.tsx cannot be parsed.

Moved from remotion-dev/recorder#147 / #148.

Co-authored-by: Cursor <cursoragent@cursor.com>

Co-authored-by: migi <64385774+0xmigi@users.noreply.github.com>
Replace fragile string-based Root.tsx cloning with
StudioServerInternals.parseAndApplyCodemod, updateDefaultProps,
and formatOutput so new folders get the same AST edits as Studio.

Co-authored-by: Cursor <cursoragent@cursor.com>

Co-authored-by: migi <64385774+0xmigi@users.noreply.github.com>
…-with-visibility

`@remotion/studio`: Align timeline effect toggle with visibility toggles
`@remotion/studio`: Recover from lost stack
…ckages/template-electron/ws-8.20.1

Bump ws from 8.17.1 to 8.20.1 in /packages/template-electron
JonnyBurger and others added 26 commits May 19, 2026 10:52
Co-authored-by: pullfrog[bot] <226033991+pullfrog[bot]@users.noreply.github.com>
Auto-register Composition in Root.tsx on "New Folder"
…irs-7428

`@remotion/vercel`: Fix nested bundle upload and surface sandbox API errors
…mental-effects

`remotion`: Add _experimentalEffects support to AnimatedImage
Co-authored-by: Cursor <cursoragent@cursor.com>
Move TIMELINE_INDENT into its own module so Padder and TimelineExpandedRow
no longer import from TimelineListItem, breaking a cycle that could leave
Padder undefined at runtime and crash the timeline with an invalid element type.

Co-authored-by: Cursor <cursoragent@cursor.com>
When enableHotMiddleware() connects before React mounts, the init message
can arrive before PreviewServerConnection subscribes. Replay it on subscribe
so undo/redo state still syncs, and ensure the EventSource opens from the
connection-state subscription too.

Co-authored-by: Cursor <cursoragent@cursor.com>
Revert accidental hook and TimelineExpandedRow changes picked up from the
SSE branch base when cherry-picking TimelineListItem.

Co-authored-by: Cursor <cursoragent@cursor.com>
…ar-import

Fix Studio timeline render crash from circular import
Require validateParams in createEffect and add noop validators for effects
with only optional parameters (wave, halftone, light leak).

Co-authored-by: Cursor <cursoragent@cursor.com>
Extract the repeating canvas pattern logic from Studio's TimelineImageInfo
into timeline-utils so Editor Starter can reuse it alongside the waveform
and film strip utilities.

Fixes #7441.

Co-authored-by: Cursor <cursoragent@cursor.com>
… disconnected

Fixes #7437

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
…nts-sse

Consolidate Studio /events into a single EventSource
…hen-disconnected

`@remotion/studio`: Hide timeline visibility controls when preview server is disconnected
…tically"

Co-authored-by: Cursor <cursoragent@cursor.com>
Canvas dimensions already encode the visualization width, so callers
do not need to pass a redundant parameter.

Co-authored-by: Cursor <cursoragent@cursor.com>
Fixes #7439 by letting the mandatory webcam panel pick a display source,
supporting screen-only recording, and merging a separate mic into screen
capture without audio.

Co-authored-by: Cursor <cursoragent@cursor.com>
Screen capture and clear are now unconditional in the device picker.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
…info

`@remotion/timeline-utils`: `drawRepeatingImageThumbnail()`
…lly-font-size

`@remotion/promo-pages`: Fix hero headline breaking on mobile
…cam-screen-capture

Allow screen capture on webcam view in template-recorder
…ms-7392

`remotion`: Validate mandatory effect params
@pull pull Bot locked and limited conversation to collaborators May 19, 2026
@pull pull Bot added the ⤵️ pull label May 19, 2026
@pull pull Bot merged commit 319bd96 into code:main May 19, 2026
7 of 10 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant