Skip to content

Conversation

Aditi-1400
Copy link
Contributor

According to V8's public API documentation, local handles (i.e., objects of type v8::Local) "should never be allocated on the heap". This replaces the usage of heap-allocated data structures containing instances of v8::Local, specifically the std::vector<v8::Local<v8::String>> with recently introduced v8::LocalVector<T>.

This is first of the series of commits to replace all std::vector<v8::Local<T>> to use v8::LocalVector<T>.

@nodejs-github-bot
Copy link
Collaborator

Review requested:

  • @nodejs/startup

@nodejs-github-bot nodejs-github-bot added c++ Issues and PRs that require attention from people who are familiar with C++. needs-ci PRs that need a full CI run. labels Mar 21, 2025
@anonrig anonrig requested a review from jasnell March 21, 2025 15:33
Copy link

codecov bot commented Mar 21, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 90.22%. Comparing base (922ce9d) to head (c8f2584).
Report is 183 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main   #57578      +/-   ##
==========================================
- Coverage   90.23%   90.22%   -0.02%     
==========================================
  Files         629      630       +1     
  Lines      184939   185054     +115     
  Branches    36232    36249      +17     
==========================================
+ Hits       166885   166961      +76     
- Misses      11011    11036      +25     
- Partials     7043     7057      +14     
Files with missing lines Coverage Δ
src/node_builtins.cc 79.12% <100.00%> (+1.13%) ⬆️
src/node_builtins.h 100.00% <ø> (ø)

... and 57 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.

According to V8's public API documentation, local handles
(i.e., objects of type v8::Local<T>) "should never be allocated
on the heap". This replaces the usage of heap-allocated data
structures containing instances of `v8::Local`, specifically the
`std::vector<v8::Local<v8::String>>` with recently
introduced `v8::LocalVector<T>`.

This is first of the series of commits to replace all
`std::vector<v8::Local<T>>` to use `v8::LocalVector<T>`.
Aditi-1400 added a commit to Aditi-1400/node that referenced this pull request Mar 26, 2025
A follow up of nodejs#57578 to
replace all replace all std::vector<v8::Local<T>> to
use v8::LocalVector<T>
Aditi-1400 added a commit to Aditi-1400/node that referenced this pull request Mar 26, 2025
A follow up of nodejs#57578 to
 replace all std::vector<v8::Local<T>> to
use v8::LocalVector<T>
Aditi-1400 added a commit to Aditi-1400/node that referenced this pull request Mar 26, 2025
A follow up of nodejs#57578 to
replace all std::vector<v8::Local<T>> to use v8::LocalVector<T>
Aditi-1400 added a commit to Aditi-1400/node that referenced this pull request Mar 26, 2025
A follow up of nodejs#57578 to
replace all std::vector<v8::Local<T>> to use v8::LocalVector<T>
Aditi-1400 added a commit to Aditi-1400/node that referenced this pull request Mar 26, 2025
A follow up of nodejs#57578 to
replace all std::vector<v8::Local<T>> to use v8::LocalVector<T>
Aditi-1400 added a commit to Aditi-1400/node that referenced this pull request Mar 27, 2025
Aditi-1400 added a commit to Aditi-1400/node that referenced this pull request Mar 27, 2025
Aditi-1400 added a commit to Aditi-1400/node that referenced this pull request Mar 27, 2025
Aditi-1400 added a commit to Aditi-1400/node that referenced this pull request Mar 27, 2025
A follow up of nodejs#57578 to
replace all std::vector<v8::Local<T>> to use v8::LocalVector<T>
Aditi-1400 added a commit to Aditi-1400/node that referenced this pull request Apr 2, 2025
A follow up of nodejs#57578 to
replace all std::vector<v8::Local<T>> to use v8::LocalVector<T>
nodejs-github-bot pushed a commit that referenced this pull request Apr 5, 2025
Refs: #57578
PR-URL: #57733
Reviewed-By: Yagiz Nizipli <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: Gerhard Stöbich <[email protected]>
@joyeecheung joyeecheung added the request-ci Add this label to start a Jenkins CI on a PR. label Apr 10, 2025
@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Apr 10, 2025
@nodejs-github-bot
Copy link
Collaborator

JonasBa pushed a commit to JonasBa/node that referenced this pull request Apr 11, 2025
Refs: nodejs#57578
PR-URL: nodejs#57733
Reviewed-By: Yagiz Nizipli <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: Gerhard Stöbich <[email protected]>
aduh95 pushed a commit that referenced this pull request May 17, 2025
A follow up of #57578 to
replace all std::vector<v8::Local<T>> to use v8::LocalVector<T>

PR-URL: #57642
Reviewed-By: Yagiz Nizipli <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: Stephen Belanger <[email protected]>
Reviewed-By: Chengzhong Wu <[email protected]>
Reviewed-By: Joyee Cheung <[email protected]>
Reviewed-By: James M Snell <[email protected]>
aduh95 pushed a commit that referenced this pull request May 17, 2025
Refs: #57578
PR-URL: #57646
Reviewed-By: Chengzhong Wu <[email protected]>
Reviewed-By: Joyee Cheung <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
aduh95 pushed a commit that referenced this pull request May 17, 2025
According to V8's public API documentation, local handles
(i.e., objects of type v8::Local<T>) "should never be allocated
on the heap". This replaces the usage of heap-allocated data
structures containing instances of `v8::Local`, specifically the
`std::vector<v8::Local<v8::String>>` with recently
introduced `v8::LocalVector<T>`.

This is first of the series of commits to replace all
`std::vector<v8::Local<T>>` to use `v8::LocalVector<T>`.

PR-URL: #57578
Reviewed-By: Chengzhong Wu <[email protected]>
Reviewed-By: Yagiz Nizipli <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: James M Snell <[email protected]>
aduh95 pushed a commit that referenced this pull request May 17, 2025
A follow up of #57578 to
replace all std::vector<v8::Local<T>> to use v8::LocalVector<T>

PR-URL: #57642
Reviewed-By: Yagiz Nizipli <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: Stephen Belanger <[email protected]>
Reviewed-By: Chengzhong Wu <[email protected]>
Reviewed-By: Joyee Cheung <[email protected]>
Reviewed-By: James M Snell <[email protected]>
aduh95 pushed a commit that referenced this pull request May 17, 2025
Refs: #57578
PR-URL: #57646
Reviewed-By: Chengzhong Wu <[email protected]>
Reviewed-By: Joyee Cheung <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
aduh95 pushed a commit that referenced this pull request May 18, 2025
According to V8's public API documentation, local handles
(i.e., objects of type v8::Local<T>) "should never be allocated
on the heap". This replaces the usage of heap-allocated data
structures containing instances of `v8::Local`, specifically the
`std::vector<v8::Local<v8::String>>` with recently
introduced `v8::LocalVector<T>`.

This is first of the series of commits to replace all
`std::vector<v8::Local<T>>` to use `v8::LocalVector<T>`.

PR-URL: #57578
Reviewed-By: Chengzhong Wu <[email protected]>
Reviewed-By: Yagiz Nizipli <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: James M Snell <[email protected]>
aduh95 pushed a commit that referenced this pull request May 18, 2025
A follow up of #57578 to
replace all std::vector<v8::Local<T>> to use v8::LocalVector<T>

PR-URL: #57642
Reviewed-By: Yagiz Nizipli <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: Stephen Belanger <[email protected]>
Reviewed-By: Chengzhong Wu <[email protected]>
Reviewed-By: Joyee Cheung <[email protected]>
Reviewed-By: James M Snell <[email protected]>
aduh95 pushed a commit that referenced this pull request May 18, 2025
Refs: #57578
PR-URL: #57646
Reviewed-By: Chengzhong Wu <[email protected]>
Reviewed-By: Joyee Cheung <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
aduh95 pushed a commit that referenced this pull request May 19, 2025
According to V8's public API documentation, local handles
(i.e., objects of type v8::Local<T>) "should never be allocated
on the heap". This replaces the usage of heap-allocated data
structures containing instances of `v8::Local`, specifically the
`std::vector<v8::Local<v8::String>>` with recently
introduced `v8::LocalVector<T>`.

This is first of the series of commits to replace all
`std::vector<v8::Local<T>>` to use `v8::LocalVector<T>`.

PR-URL: #57578
Reviewed-By: Chengzhong Wu <[email protected]>
Reviewed-By: Yagiz Nizipli <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: James M Snell <[email protected]>
aduh95 pushed a commit that referenced this pull request May 19, 2025
A follow up of #57578 to
replace all std::vector<v8::Local<T>> to use v8::LocalVector<T>

PR-URL: #57642
Reviewed-By: Yagiz Nizipli <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: Stephen Belanger <[email protected]>
Reviewed-By: Chengzhong Wu <[email protected]>
Reviewed-By: Joyee Cheung <[email protected]>
Reviewed-By: James M Snell <[email protected]>
aduh95 pushed a commit that referenced this pull request May 19, 2025
Refs: #57578
PR-URL: #57646
Reviewed-By: Chengzhong Wu <[email protected]>
Reviewed-By: Joyee Cheung <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
codebytere added a commit to electron/electron that referenced this pull request May 23, 2025
codebytere added a commit to electron/electron that referenced this pull request May 26, 2025
codebytere added a commit to electron/electron that referenced this pull request May 29, 2025
codebytere added a commit to electron/electron that referenced this pull request Jun 2, 2025
jkleinsc pushed a commit to electron/electron that referenced this pull request Jun 2, 2025
* chore: bump node in DEPS to v22.16.0

* crypto: remove BoringSSL dh-primes addition

nodejs/node#57023

* tools: enable linter in test/fixtures/test\-runner/output

nodejs/node#57698

* src: improve thread safety of TaskQueue

nodejs/node#57910

* buffer: define global v8::CFunction objects as const

nodejs/node#57676

* src: disable abseil deadlock detection

nodejs/node#57582

* zlib: fix pointer alignment

nodejs/node#57727

* chore: fixup patch indices

* src: set default config as node.config.json

nodejs/node#57171

* src: update std::vector<v8::Local<T>> to use v8::LocalVector<T>

nodejs/node#57578

* test: disable chmod tests failing in Docker

nodejs/node#58326

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <[email protected]>
codebytere added a commit to electron/electron that referenced this pull request Jun 3, 2025
codebytere added a commit to electron/electron that referenced this pull request Jun 3, 2025
codebytere added a commit to electron/electron that referenced this pull request Jun 3, 2025
codebytere added a commit to electron/electron that referenced this pull request Jun 3, 2025
codebytere added a commit to electron/electron that referenced this pull request Jun 3, 2025
codebytere added a commit to electron/electron that referenced this pull request Jun 3, 2025
codebytere added a commit to electron/electron that referenced this pull request Jun 4, 2025
* chore: bump node in DEPS to v22.16.0

* crypto: remove BoringSSL dh-primes addition

nodejs/node#57023

* tools: enable linter in test/fixtures/test\-runner/output

nodejs/node#57698

* src: improve thread safety of TaskQueue

nodejs/node#57910

* buffer: define global v8::CFunction objects as const

nodejs/node#57676

* src: disable abseil deadlock detection

nodejs/node#57582

* zlib: fix pointer alignment

nodejs/node#57727

* chore: fixup patch indices

* src: set default config as node.config.json

nodejs/node#57171

* src: update std::vector<v8::Local<T>> to use v8::LocalVector<T>

nodejs/node#57578

* test: disable chmod tests failing in Docker

nodejs/node#58326

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <[email protected]>
codebytere added a commit to electron/electron that referenced this pull request Jun 6, 2025
@ghost ghost mentioned this pull request Jun 8, 2025
codebytere added a commit to electron/electron that referenced this pull request Jun 18, 2025
codebytere added a commit to electron/electron that referenced this pull request Jun 30, 2025
* chore: bump node in DEPS to v22.16.0

* crypto: remove BoringSSL dh-primes addition

nodejs/node#57023

* tools: enable linter in test/fixtures/test\-runner/output

nodejs/node#57698

* src: improve thread safety of TaskQueue

nodejs/node#57910

* buffer: define global v8::CFunction objects as const

nodejs/node#57676

* zlib: fix pointer alignment

nodejs/node#57727

* chore: fixup patch indices

* src: set default config as node.config.json

nodejs/node#57171

* src: update std::vector<v8::Local<T>> to use v8::LocalVector<T>

nodejs/node#57578

* test: disable chmod tests failing in Docker

nodejs/node#58326

* chore: fix out of date patch

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c++ Issues and PRs that require attention from people who are familiar with C++. needs-ci PRs that need a full CI run.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants