Skip to content

v8: add cpu profile - #59807

Merged
nodejs-github-bot merged 1 commit into
nodejs:mainfrom
theanarkh:v8_add_cpu_profile_api
Oct 11, 2025
Merged

v8: add cpu profile#59807
nodejs-github-bot merged 1 commit into
nodejs:mainfrom
theanarkh:v8_add_cpu_profile_api

Conversation

@theanarkh

Copy link
Copy Markdown
Contributor

Refs: #59428, #59429

  • make -j4 test (UNIX), or vcbuild test (Windows) passes
  • tests and/or benchmarks are included
  • documentation is changed or added
  • commit message follows commit guidelines

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

Review requested:

  • @nodejs/web-infra

@nodejs-github-botnodejs-github-bot added c++ Issues and PRs that require attention from people who are familiar with C++. lib / src Issues and PRs related to general changes in the lib or src directory. needs-ci PRs that need a full CI run. labels Sep 8, 2025
@theanarkh
theanarkhforce-pushed the v8_add_cpu_profile_api branch from 7214ba0 to 7dcb480CompareSeptember 8, 2025 13:50
@theanarkhtheanarkh added v8 module Issues and PRs related to the "v8" subsystem. semver-minor PRs that contain new features and should be released in the next minor version. labels Sep 8, 2025
@codecov

codecovBot commented Sep 8, 2025

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 86.15385% with 9 lines in your changes missing coverage. Please review.
✅ Project coverage is 88.45%. Comparing base (24ded11) to head (10b2275).
⚠️ Report is 140 commits behind head on main.

Files with missing linesPatch %Lines
src/node_v8.cc77.41%2 Missing and 5 partials ⚠️
lib/v8.js94.11%2 Missing ⚠️
Additional details and impacted files
@@ Coverage Diff @@## main #59807 +/- ##
==========================================
- Coverage 88.45% 88.45% -0.01% 
==========================================
Files 703 703 Lines 207544 207609 +65 Branches 40013 40026 +13 ==========================================
+ Hits 183587 183638 +51 + Misses 15965 15957 -8 - Partials 7992 8014 +22 
Files with missing linesCoverage Δ
src/node_v8.h40.00% <ø> (ø)
lib/v8.js99.02% <94.11%> (-0.35%)⬇️
src/node_v8.cc80.63% <77.41%> (-0.64%)⬇️

... and 41 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@juanarboljuanarbol left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rubber stamp LGTM!

I wasn't expecting the serializer to land Node.js! <3

@juanarboljuanarbol added the request-ci Add this label to start a Jenkins CI on a PR. label Sep 8, 2025
@github-actionsgithub-actionsBot removed the request-ci Add this label to start a Jenkins CI on a PR. label Sep 8, 2025
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

@theanarkh
theanarkhforce-pushed the v8_add_cpu_profile_api branch 2 times, most recently from b41c98b to d50d6e9CompareSeptember 10, 2025 18:01
Comment threadsrc/node_v8.cc
Comment threadtest/parallel/test-v8-cpu-profile.js Outdated
@theanarkh
theanarkhforce-pushed the v8_add_cpu_profile_api branch from d50d6e9 to ff0ccedCompareSeptember 14, 2025 14:25
const handle = v8.startCpuProfile();
const profile = handle.stop();
assert.ok(typeof profile === 'string');
assert.ok(profile.length > 0);

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: a test that exercises the using syntax would be ideal also

@theanarkhtheanarkh added the request-ci Add this label to start a Jenkins CI on a PR. label Sep 15, 2025
@github-actionsgithub-actionsBot removed the request-ci Add this label to start a Jenkins CI on a PR. label Sep 15, 2025
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

@theanarkhtheanarkh added author ready PRs that have at least one approval, no pending requests for changes, and a CI started. commit-queue Add this label to land a pull request using GitHub Actions. labels Sep 16, 2025
@theanarkh
theanarkhforce-pushed the v8_add_cpu_profile_api branch from bf4b7cf to 10b2275CompareSeptember 23, 2025 12:55
@theanarkhtheanarkh removed the commit-queue Add this label to land a pull request using GitHub Actions. label Sep 23, 2025
@theanarkhtheanarkh added the request-ci Add this label to start a Jenkins CI on a PR. label Sep 28, 2025
@github-actionsgithub-actionsBot removed the request-ci Add this label to start a Jenkins CI on a PR. label Sep 28, 2025
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

@theanarkhtheanarkh added the commit-queue Add this label to land a pull request using GitHub Actions. label Oct 11, 2025
@nodejs-github-botnodejs-github-bot removed the commit-queue Add this label to land a pull request using GitHub Actions. label Oct 11, 2025
@nodejs-github-bot
nodejs-github-bot merged commit f9fcc74 into nodejs:mainOct 11, 2025
60 of 62 checks passed
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

Landed in f9fcc74

@theanarkhtheanarkh mentioned this pull request Oct 12, 2025
4 tasks
@RafaelGSSRafaelGSS mentioned this pull request Oct 13, 2025
9 tasks
aduh95 pushed a commit that referenced this pull request Oct 31, 2025
PR-URL: #59807
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
nodejs-github-bot added a commit that referenced this pull request Nov 7, 2025
Notable changes:
http:
* (SEMVER-MINOR) add optimizeEmptyRequests server option (Rafael Gonzaga) #59778
src:
* (SEMVER-MINOR) add watch config namespace (Marco Ippolito) #60178
* (SEMVER-MINOR) add an option to make compile cache portable (Aditi) #58797
v8:
* (SEMVER-MINOR) add cpu profile (theanarkh) #59807
PR-URL: #60615
targos pushed a commit that referenced this pull request Nov 18, 2025
PR-URL: #59807
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
nodejs-github-bot added a commit that referenced this pull request Dec 9, 2025
Notable changes:
http:
* (SEMVER-MINOR) add optimizeEmptyRequests server option (Rafael Gonzaga) #59778
lib:
* (SEMVER-MINOR) add options to util.deprecate (Rafael Gonzaga) #59982
module:
* (SEMVER-MINOR) mark type stripping as stable (Marco Ippolito) #60600
node-api:
* (SEMVER-MINOR) add napi_create_object_with_properties (Miguel Marcondes Filho) #59953
sqlite:
* (SEMVER-MINOR) allow setting defensive flag (Bart Louwers) #60217
src:
* (SEMVER-MINOR) add watch config namespace (Marco Ippolito) #60178
* (SEMVER-MINOR) add an option to make compile cache portable (Aditi) #58797
src,permission:
* (SEMVER-MINOR) add --allow-inspector ability (Rafael Gonzaga) #59711
v8:
* (SEMVER-MINOR) add cpu profile (theanarkh) #59807
PR-URL: #61001
targos pushed a commit that referenced this pull request Dec 9, 2025
Notable changes:
http:
* (SEMVER-MINOR) add optimizeEmptyRequests server option (Rafael Gonzaga) #59778
lib:
* (SEMVER-MINOR) add options to util.deprecate (Rafael Gonzaga) #59982
module:
* (SEMVER-MINOR) mark type stripping as stable (Marco Ippolito) #60600
node-api:
* (SEMVER-MINOR) add napi_create_object_with_properties (Miguel Marcondes Filho) #59953
sqlite:
* (SEMVER-MINOR) allow setting defensive flag (Bart Louwers) #60217
src:
* (SEMVER-MINOR) add watch config namespace (Marco Ippolito) #60178
* (SEMVER-MINOR) add an option to make compile cache portable (Aditi) #58797
src,permission:
* (SEMVER-MINOR) add --allow-inspector ability (Rafael Gonzaga) #59711
v8:
* (SEMVER-MINOR) add cpu profile (theanarkh) #59807
PR-URL: #61001
targos pushed a commit that referenced this pull request Dec 10, 2025
Notable changes:
http:
* (SEMVER-MINOR) add optimizeEmptyRequests server option (Rafael Gonzaga) #59778
lib:
* (SEMVER-MINOR) add options to util.deprecate (Rafael Gonzaga) #59982
module:
* (SEMVER-MINOR) mark type stripping as stable (Marco Ippolito) #60600
node-api:
* (SEMVER-MINOR) add napi_create_object_with_properties (Miguel Marcondes Filho) #59953
sqlite:
* (SEMVER-MINOR) allow setting defensive flag (Bart Louwers) #60217
src:
* (SEMVER-MINOR) add watch config namespace (Marco Ippolito) #60178
* (SEMVER-MINOR) add an option to make compile cache portable (Aditi) #58797
src,permission:
* (SEMVER-MINOR) add --allow-inspector ability (Rafael Gonzaga) #59711
v8:
* (SEMVER-MINOR) add cpu profile (theanarkh) #59807
PR-URL: #61001
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

author readyPRs that have at least one approval, no pending requests for changes, and a CI started.c++Issues and PRs that require attention from people who are familiar with C++.lib / srcIssues and PRs related to general changes in the lib or src directory.needs-ciPRs that need a full CI run.semver-minorPRs that contain new features and should be released in the next minor version.v8 moduleIssues and PRs related to the "v8" subsystem.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@theanarkh@nodejs-github-bot@jasnell@juanarbol