Skip to content

fix: Modern V8 requires two-stage GC#210

Merged
Benjamin-Dobell merged 1 commit intogodotjs:mainfrom
Benjamin-Dobell:feat/modern-v8
Apr 20, 2026
Merged

fix: Modern V8 requires two-stage GC#210
Benjamin-Dobell merged 1 commit intogodotjs:mainfrom
Benjamin-Dobell:feat/modern-v8

Conversation

@Benjamin-Dobell
Copy link
Copy Markdown
Member

@Benjamin-Dobell Benjamin-Dobell commented Apr 17, 2026

Modern V8 split their GC callbacks into 2 phases, actually the second phase is optional. The idea is that GC callbacks (in the first phase) are restricted to extremely light work — basically just Reset() the handle. When more expensive work is required (which it is in our case) then you must request a second phase callback.

@Benjamin-Dobell
Copy link
Copy Markdown
Member Author

Whoops, ffbade0 indicates it implements the work found in this PR. It was originally part of that commit and I pulled it out here separately.

@Benjamin-Dobell Benjamin-Dobell changed the title feat: Support for newer V8 builds (two-stage GC) fix: Modern V8 requires two-stage GC Apr 17, 2026
@Benjamin-Dobell Benjamin-Dobell marked this pull request as ready for review April 17, 2026 16:33
@Benjamin-Dobell Benjamin-Dobell merged commit 162e3cf into godotjs:main Apr 20, 2026
28 checks passed
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.

1 participant