deno
7e036ea1 - feat: upgrade V8 to 150.2.0 (#36098)

Commit
65 days ago
feat: upgrade V8 to 150.2.0 (#36098) Bumps the `v8` crate from 149.4.0 to 150.2.0. This version changes how the fast-call API stores type information. V8 now keeps the raw `CFunction` and `CFunctionInfo` pointers directly inside `FunctionTemplateInfo` rather than copying them into a managed heap object, so `build_fast`, `CFunction::new`, and `CFunctionInfo::new` now require `'static` borrows. The backing storage for every fast-call overload must therefore outlive the `FunctionTemplate` built from it. Two call sites needed adapting. In `deno_core`, the fast-call overload array is now stored in `OpCtx`, which lives until isolate disposal, and a lifetime-extended slice into that stable storage is handed to `build_fast`. In `ext/ffi`, the trampoline's `CFunction` overload is built inside `Turbocall` so its boxed backing storage, owned by the cppgc-managed `FunctionData` set as the function's data, outlives the function; `build_fast` receives a static-extended slice into that box. Verification of the FFI fast-call path is left to CI for now.
Author
Parents
Loading