You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
new v8.GCProfiler() should expose a profiling object whose start() / stop() methods collect and return a GC profiler report. Perry currently has no public node:v8 GCProfiler implementation.
Observed on Node v25.9.0: GCProfiler is a constructor; instances expose function-valued start and stop; start() returns undefined; stop() returns an object with keys including version, startTime, statistics, and endTime.
Perry Behavior
docs/runtime-parity.md marks new GCProfiler() missing under node:v8. docs/runtime-parity-gaps.md tracks node:v8 as a whole-module gap, source search found no public node:v8 GCProfiler implementation, and there is no dedicated V8 parity fixture in this checkout.
Suggested PR Cut
Batch this with related issues in: #3296 - node:v8: snapshot and profiler output parity cut
A parity/regression test proves new v8.GCProfiler() returns an object with function-valued start and stop.
start() returns undefined, and stop() returns an object with Node-compatible report keys for the covered case.
The profiler data may reflect Perry internals or a minimal compatible report, but the constructor/method/report shape matches Node for package diagnostics.
Related known-failure/docs/manifest entries are updated if touched.
It includes stateful GCProfiler construction, start() / stop() behavior, a minimal Node-shaped report object, and parity fixture coverage for namespace and named-import construction.
Activity
fix(node:v8): serialize/deserialize + getHeapStatistics + GCProfiler (#…
andrewtdiz commentedon Jun 3, 2026
I am taking this with #3140 as one focused
node:v8snapshot/profiler output cut. Intended PR scope: add Node-shapedGCProfilerconstruction,start()/stop()behavior, and minimal report keys alongside the heap snapshot stream/file output work. Non-goals: exact V8 internals, startup snapshot APIs, serialization/heap-stat diagnostics, promise lifecycle hooks, and CPU/heap profiling handle APIs.andrewtdiz commentedon Jun 3, 2026
Opened draft PR #4182 for this: #4182
It includes stateful
GCProfilerconstruction,start()/stop()behavior, a minimal Node-shaped report object, and parity fixture coverage for namespace and named-import construction.fix(codegen): register v8 dispatch when constructing v8.GCProfiler (#…