Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
107 commits
Select commit Hold shift + click to select a range
309c4f0
deps: update V8 to 9.4.146.19
targos Oct 2, 2021
4da73d0
build: reset embedder string to "-node.0"
targos Oct 2, 2021
b8aabd5
deps: V8: un-cherry-pick bd019bd
refack Mar 27, 2019
e810f07
deps: V8: patch register-arm64.h
refack May 22, 2019
88ae710
deps: V8: forward declaration of `Rtl*FunctionTable`
refack May 22, 2019
e981215
deps: make v8.h compatible with VS2015
joaocgreis Nov 1, 2019
1aea6a7
deps: fix V8 build issue with inline methods
gengjiawen Oct 14, 2020
22dcd3e
deps: silence irrelevant V8 warnings
targos Jan 30, 2021
be01694
deps: silence irrelevant V8 warning
targos May 1, 2021
807b68b
deps: V8: cherry-pick 00bb1a77c03e
RaisinTen Aug 21, 2021
150d816
deps: V8: cherry-pick bdcda72cd1d8
targos Aug 31, 2021
8de5eb8
deps: V8: cherry-pick 5681a6565828
targos Sep 6, 2021
5cc24e6
deps: V8: cherry-pick 9a607043cb31
gengjiawen Sep 9, 2021
a3db203
deps: make V8 9.4 abi-compatible with 9.0
targos Oct 2, 2021
e7046e0
deps: restore minimum ICU version to 68
targos Jul 20, 2021
f7c8274
tools: update V8 gypfiles for 9.4
targos Jul 28, 2021
02a87b0
doc: update markdown formatting for *.md files
Trott Sep 18, 2021
ebf1710
tools: extend default yamllint config
targos Sep 19, 2021
7e58cda
doc: update tools .md files for upcoming lint/formatting
Trott Sep 19, 2021
c231745
doc: prepare markdown file for upcoming formatting/linting
Trott Sep 19, 2021
cea7395
doc: update benchmarks README.md for upcoming linting/formatting
Trott Sep 19, 2021
847b451
doc: update markdown files in src for upcoming linting/formatting
Trott Sep 19, 2021
94b415b
doc: add blank line between comments
Trott Sep 20, 2021
7968c79
crypto: don't call callback twice in case crypto.randomBytes fails
lbguilherme Sep 19, 2021
7bd62f4
doc: fix typos in http.md
lpinca Sep 20, 2021
80fdedd
tools: fix find-inactive-collaborators for recent README change
Trott Sep 20, 2021
779dfd1
doc: make version picker usable on mobile
evanlucas Aug 31, 2021
0232f94
tools: update remark-preset-lint-node to 3.1.0
Trott Sep 20, 2021
e22ca06
build: fix "test-internet.yml" workflows
suryapratapsinghsuryavanshi Sep 22, 2021
eaf9d08
build: add --no-user for pip commands in Makefile
Trott Sep 21, 2021
b856886
meta: update mailmap for LakshmiSwethaG
Trott Sep 21, 2021
4d46bde
meta: add mailmap entry for ralphtheninja
Trott Sep 19, 2021
59db829
doc: fix typo in `async_hooks.md`
xuchaobei Sep 23, 2021
6489423
console: avoid unnecessary variables
Cinnamonsroll Sep 23, 2021
67812e8
tools: re-implement lint-md without unified-args
Trott Sep 20, 2021
73a127b
doc: fix buffer api example code's token error
gitwillsky Sep 15, 2021
4b117fb
console: use validators for consistency
VoltrexKeyva Aug 19, 2021
6bf6790
doc: fix typo in 'maxHeaderSize'
rebhialfa Sep 20, 2021
bddf8c2
src,crypto: eliminate code duplication between StatelessDiffieHellman*
RaisinTen Sep 11, 2021
2fa5e50
crypto: handle initEDRaw pkey failure
codebytere Sep 23, 2021
a68f91c
doc: add version when diagnostics_channel APIs were added
Flarna Sep 24, 2021
26db6db
tools: implement markdown formatting
Trott Sep 22, 2021
9c4e7a5
tools: fix lint-md autolinking
Trott Sep 24, 2021
a660017
meta: add .mailmap entry for kunalspathak
Trott Sep 24, 2021
9a2b94a
doc: update fs.watchFile doc
clement-nardi Sep 17, 2021
ced8467
typings: define types for worker and messaging bindings
targos Sep 18, 2021
dd39422
typings: define types for symbols binding
targos Sep 18, 2021
d36127d
src: move `ToUSVString()` to node_util.cc
XadillaX Sep 24, 2021
a1bee94
build: pass a tuple of alternatives to str.endswith()
cclauss Sep 6, 2021
547fc86
lib: use `validateArray`
VoltrexKeyva Aug 15, 2021
528f922
src: remove usage of AllocatedBuffer from udp_wrap.cc
RaisinTen Sep 19, 2021
88e7bd0
events: allow dispatch many times without listener
mrbbot Aug 15, 2021
7fbfb66
build: limit update authors CI scope
gengjiawen Sep 26, 2021
685c7d4
deps: update `nghttp2` to v1.45.1
thunder-coding Sep 24, 2021
34f3021
benchmark: add `util.toUSVString()`'s benchmark
XadillaX Sep 24, 2021
22725f5
http: use 0 as default for requests limit
fatal10110 Sep 23, 2021
9fa6dfb
doc: fix example of crypto.generateKeySync
GreenSleepes Sep 27, 2021
344c03b
repl: skip EmptyStatements and return result with TLA
Mesteery Sep 23, 2021
da6c82b
meta: update gdams contact information
Trott Sep 27, 2021
614a7c2
doc: fix typo in packages.md
warlock1996 Sep 27, 2021
bbf1ed7
src: remove AllocatedBuffer from crypto_common.cc
RaisinTen Sep 25, 2021
972d921
module: fix ERR_REQUIRE_ESM for parentPath null
guybedford Sep 18, 2021
66edb7b
doc: fix typo in fs.md
warlock1996 Sep 29, 2021
48c162d
build: set DESTCPU correctly for 'make binary' on Apple Silicon
cheister Sep 18, 2021
1d0a3e1
doc: fix typo in fs
mscdex Sep 29, 2021
9ee9e41
meta: move one or more collaborators to emeritus
nodejs-github-bot Sep 15, 2021
d64740f
meta: update AUTHORS
nodejs-github-bot Sep 26, 2021
e040f2c
meta: add .mailmap entry for daguej
Trott Sep 26, 2021
a6112dd
src: fix time-of-use vs time-of-check "bugs"
kokke Sep 14, 2021
383dbe9
src: implement changes suggested by @addaleax
kokke Sep 27, 2021
555af5b
http: remove 'data' and 'end' listener if client parser error
mcollina Sep 28, 2021
d2e54e5
doc: reorder stream 'readable' paragraphs
vweevers Sep 25, 2021
dc0c274
test: suppress compiler warning in test_bigint
danbev Sep 29, 2021
f4164fa
util: expose stripVTControlCharacters()
cjihrig Sep 19, 2021
66d3101
util: improve ansi escape code regex
cjihrig Sep 25, 2021
f31b0c9
tools: update remark-preset-lint-node to 3.2.0
Trott Oct 1, 2021
66ab278
meta: add .mailmap entry for Jimbly
Trott Sep 30, 2021
a75a8f2
meta: update AUTHORS
nodejs-github-bot Oct 3, 2021
3d5eba8
lib: refactor to avoid unsafe array iteration
aduh95 Sep 30, 2021
a5218b5
doc: update Forrest Norvell's pronouns
othiym23 Oct 3, 2021
6a8689f
test: fix typo in test/common/index.js
tniessen Oct 3, 2021
f71ac57
doc: add triagers to the table of contents
iam-frankqiu Sep 1, 2021
3148f9b
build: check for duplicates in new AUTHORS entries
Trott Sep 30, 2021
7bb4dc2
tools: update certdata.txt
richardlau Oct 1, 2021
9af2592
crypto: update root certificates
richardlau Oct 1, 2021
88bdbf1
doc: format markdown files in test directory
Trott Oct 3, 2021
e2cd2f4
doc: fix CVE-2021-22940 references
targos Oct 4, 2021
abfcbcd
doc: update fast-track approval comment request
VoltrexKeyva Oct 4, 2021
b694b0c
src: use `As()` instead of `Cast()` for conversions
RaisinTen Oct 2, 2021
8d7710e
tools: update rollup entry in lint-md package.json
iam-frankqiu Oct 4, 2021
a37527c
meta: add mailmap entry for ratracegrad
Trott Oct 3, 2021
c7f3294
fs: add stream utilities to `FileHandle`
aduh95 Sep 5, 2021
1db2ffd
doc: fix typo in stream docs
juanarbol Oct 5, 2021
8d0546d
doc: correct the codeblock for `hmacImportParams.hash`
J-Human Oct 6, 2021
dc9c319
doc: fix the inline code-block at the NodeDhKeyGenParams class
J-Human Oct 6, 2021
947f3dc
deps: V8: patch jinja2 for Python 3.10 compat
targos Oct 5, 2021
18820bf
tools: patch jinja2 for Python 3.10 compat
targos Oct 5, 2021
f83b9bc
build: support Python 3.10.0
iam-frankqiu Oct 4, 2021
9b0e61a
doc,src: update crypto/README.md
tniessen Oct 5, 2021
69eaaf6
doc: format general markdown files
Trott Oct 5, 2021
cff0c12
doc: note readStream.path if fd is specified
ylemkimon Sep 29, 2021
d112c9a
meta: update mailmap entry for othiym23
Trott Oct 5, 2021
7652129
meta: consolidate AUTHORS entries for jemjam
Trott Oct 5, 2021
316b385
doc: security release announcement safety check
mcollina Oct 5, 2021
8d1c471
doc: clarify that priorities applies to values
mhdawson Oct 4, 2021
b89c7ae
deps: upgrade npm to 8.0.0
npm-robot Oct 7, 2021
f1ae6fb
2021-10-08, Version 16.11.0 (Current)
danielleadams Oct 5, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
deps: make V8 9.4 abi-compatible with 9.0
Revert "[api] Avoid handles for const API functions"
This reverts commit aee471b2ff5b1a9e622426454885b748d226535b.

Revert "[api] Remove deprecated [Shared]ArrayBuffer API"
This reverts commit 578f6be77fc5d8af975005c2baf918e7225abb62.

Revert "[Jobs]: Cleanup in v8 platform."
This reverts commit baf2b088dd9f585aa597459f30d71431171666e2.

Revert "Skip global registration of [Shared]ArrayBuffer backing stores"
This reverts commit fcdf35e6d70d51699ece063e25dc705e80673308.

Revert "[api] Remove previously deprecated Function::GetDisplayName()."
This reverts commit 6165fef8cc9dde52973e54c915e6905221b3f8fb.

Revert "[api] Remove deprecated Symbol::Name()"
This reverts commit bbc72ef6c7d6d8e2c4dd074d7713e5c841003163.

Revert API change for HeapProfiler::TakeHeapSnapshot
This reverts a small part of 7f52e4f92d3d3ded9a1701ee2f93966075ae5004.

Revert "[cpu-profiler] Reintroduce support for context filtering"
This reverts commit 0aacfb2a6ecbeda1d1d97ca113afd8253a1b9670.

Restore new argument for TakeHeapSnapshot method
This creates a new TakeHeapSnapshotV8_92 method with the signature from
7f52e4f92d3d3ded9a1701ee2f93966075ae5004.
It is necessary because the API is used internall by V8.

Silence irrelevant warning
V8 triggers it in the Name method.

Revert "[api] Add v8::metrics::LongTaskStats for the LongTasks UKM"
This reverts commit 521ae93bf652b0cc1fec1fdd788e3b80fb72a349.

Move cage_base isolate data field
Makes 3ada6f27404b4ffd6d3e97cf15be76672f60c10d ABI-compatible.

Revert ABI-breaking change in FunctionTemplate::SetCallHandler
Reverts part of a7980d43e030ba4bdb36813d4bc99f85982bf4ee and
ad4eab00e7ec96730eb2c1b6ddcef14ba2e4becd.

Revert "[api] Support PropertyAttribute in v8::Template::Set"
This reverts commit 22a32f11f7a39e4a73105608a51ebab0ad97960f.

Revert API change for FunctionTemplate::New
This reverts the API change of 5f82dbbe534635a8b1e93f27e8fd7e68c0eaf291.

Fix some reverts
- constness of internal APIs has not external effect
- restored API function must but adapted to moved internal API.

Revert "[api] Add API for off-thread code cache deserialization"
This reverts commit f888f48e4c65e3ccfd9fd831c71c1832b957c945.

Revert "[api] Implement signature checks using instance types"
This reverts commit 7df6678c32255ec5a1b1470f1e5a7e56b3b192fa.

Revert "[api] Remove deprecated APIs"
This reverts commit 390456678a8261827cd9a1b5f0c4dc8e4328af07.

PR-URL: #40285
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
  • Loading branch information
targos committed Oct 4, 2021
commit a3db2033d4e69db7d634d1b3a2f0c1da0af0d84e
2 changes: 1 addition & 1 deletion common.gypi
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@

# Reset this number to 0 on major V8 upgrades.
# Increment by one for each non-official patch applied to deps/v8.
'v8_embedder_string': '-node.11',
'v8_embedder_string': '-node.12',

##### V8 defaults for Node.js #####

Expand Down
18 changes: 2 additions & 16 deletions deps/v8/include/v8-internal.h
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@ const int kApiSystemPointerSize = sizeof(void*);
const int kApiDoubleSize = sizeof(double);
const int kApiInt32Size = sizeof(int32_t);
const int kApiInt64Size = sizeof(int64_t);
const int kApiSizetSize = sizeof(size_t);

// Tag information for HeapObject.
const int kHeapObjectTag = 1;
Expand Down Expand Up @@ -188,8 +187,6 @@ V8_EXPORT internal::Isolate* IsolateFromNeverReadOnlySpaceObject(Address obj);
// language mode is strict.
V8_EXPORT bool ShouldThrowOnError(v8::internal::Isolate* isolate);

V8_EXPORT bool CanHaveInternalField(int instance_type);

/**
* This class exports constants and functionality from within v8 that
* is necessary to implement inline functions in the v8 api. Don't
Expand Down Expand Up @@ -236,12 +233,8 @@ class Internals {
kIsolateFastCCallCallerFpOffset + kApiSystemPointerSize;
static const int kIsolateFastApiCallTargetOffset =
kIsolateFastCCallCallerPcOffset + kApiSystemPointerSize;
static const int kIsolateCageBaseOffset =
kIsolateFastApiCallTargetOffset + kApiSystemPointerSize;
static const int kIsolateLongTaskStatsCounterOffset =
kIsolateCageBaseOffset + kApiSystemPointerSize;
static const int kIsolateStackGuardOffset =
kIsolateLongTaskStatsCounterOffset + kApiSizetSize;
kIsolateFastApiCallTargetOffset + kApiSystemPointerSize;
static const int kIsolateRootsOffset =
kIsolateStackGuardOffset + 7 * kApiSystemPointerSize;

Expand All @@ -268,9 +261,8 @@ class Internals {
static const int kOddballType = 0x43;
static const int kForeignType = 0x46;
static const int kJSSpecialApiObjectType = 0x410;
static const int kJSApiObjectType = 0x420;
static const int kJSObjectType = 0x421;
static const int kFirstJSApiObjectType = 0x422;
static const int kLastJSApiObjectType = 0x80A;

static const int kUndefinedOddballKind = 5;
static const int kNullOddballKind = 3;
Expand Down Expand Up @@ -375,12 +367,6 @@ class Internals {
return *reinterpret_cast<void* const*>(addr);
}

V8_INLINE static void IncrementLongTasksStatsCounter(v8::Isolate* isolate) {
internal::Address addr = reinterpret_cast<internal::Address>(isolate) +
kIsolateLongTaskStatsCounterOffset;
++(*reinterpret_cast<size_t*>(addr));
}

V8_INLINE static internal::Address* GetRoot(v8::Isolate* isolate, int index) {
internal::Address addr = reinterpret_cast<internal::Address>(isolate) +
kIsolateRootsOffset +
Expand Down
29 changes: 1 addition & 28 deletions deps/v8/include/v8-metrics.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,7 @@
#ifndef V8_METRICS_H_
#define V8_METRICS_H_

#include "v8-internal.h" // NOLINT(build/include_directory)
#include "v8.h" // NOLINT(build/include_directory)
#include "v8.h" // NOLINT(build/include_directory)

namespace v8 {
namespace metrics {
Expand Down Expand Up @@ -197,32 +196,6 @@ class V8_EXPORT Recorder {
static ContextId GetContextId(Local<Context> context);
};

/**
* Experimental API intended for the LongTasks UKM (crbug.com/1173527).
* The Reset() method should be called at the start of a potential
* long task. The Get() method returns durations of V8 work that
* happened during the task.
*
* This API is experimental and may be removed/changed in the future.
*/
struct V8_EXPORT LongTaskStats {
/**
* Resets durations of V8 work for the new task.
*/
V8_INLINE static void Reset(Isolate* isolate) {
v8::internal::Internals::IncrementLongTasksStatsCounter(isolate);
}

/**
* Returns durations of V8 work that happened since the last Reset().
*/
static LongTaskStats Get(Isolate* isolate);

int64_t gc_full_atomic_wall_clock_duration_us = 0;
int64_t gc_full_incremental_wall_clock_duration_us = 0;
int64_t gc_young_wall_clock_duration_us = 0;
};

} // namespace metrics
} // namespace v8

Expand Down
18 changes: 16 additions & 2 deletions deps/v8/include/v8-platform.h
Original file line number Diff line number Diff line change
Expand Up @@ -181,8 +181,9 @@ class JobDelegate {
/**
* Returns true if the current task is called from the thread currently
* running JobHandle::Join().
* TODO(etiennep): Make pure virtual once custom embedders implement it.
*/
virtual bool IsJoiningThread() const = 0;
virtual bool IsJoiningThread() const { return false; }
};

/**
Expand Down Expand Up @@ -219,21 +220,30 @@ class JobHandle {
* Forces all existing workers to yield ASAP but doesn’t wait for them.
* Warning, this is dangerous if the Job's callback is bound to or has access
* to state which may be deleted after this call.
* TODO(etiennep): Cleanup once implemented by all embedders.
*/
virtual void CancelAndDetach() = 0;
virtual void CancelAndDetach() { Cancel(); }

/**
* Returns true if there's any work pending or any worker running.
*/
virtual bool IsActive() = 0;

// TODO(etiennep): Clean up once all overrides are removed.
V8_DEPRECATED("Use !IsActive() instead.")
virtual bool IsCompleted() { return !IsActive(); }

/**
* Returns true if associated with a Job and other methods may be called.
* Returns false after Join() or Cancel() was called. This may return true
* even if no workers are running and IsCompleted() returns true
*/
virtual bool IsValid() = 0;

// TODO(etiennep): Clean up once all overrides are removed.
V8_DEPRECATED("Use IsValid() instead.")
virtual bool IsRunning() { return IsValid(); }

/**
* Returns true if job priority can be changed.
*/
Expand Down Expand Up @@ -262,6 +272,10 @@ class JobTask {
* it must not call back any JobHandle methods.
*/
virtual size_t GetMaxConcurrency(size_t worker_count) const = 0;

// TODO(1114823): Clean up once all overrides are removed.
V8_DEPRECATED("Use the version that takes |worker_count|.")
virtual size_t GetMaxConcurrency() const { return 0; }
};

/**
Expand Down
16 changes: 10 additions & 6 deletions deps/v8/include/v8-profiler.h
Original file line number Diff line number Diff line change
Expand Up @@ -289,8 +289,8 @@ class V8_EXPORT CpuProfilingOptions {
* interval, set via SetSamplingInterval(). If
* zero, the sampling interval will be equal to
* the profiler's sampling interval.
* \param filter_context If specified, profiles will only contain frames
* using this context. Other frames will be elided.
* \param filter_context Deprecated option to filter by context, currently a
* no-op.
*/
CpuProfilingOptions(
CpuProfilingMode mode = kLeafNodeLineNumbers,
Expand All @@ -304,13 +304,9 @@ class V8_EXPORT CpuProfilingOptions {
private:
friend class internal::CpuProfile;

bool has_filter_context() const { return !filter_context_.IsEmpty(); }
void* raw_filter_context() const;

CpuProfilingMode mode_;
unsigned max_samples_;
int sampling_interval_us_;
CopyablePersistentTraits<Context>::CopyablePersistent filter_context_;
};

/**
Expand Down Expand Up @@ -900,6 +896,14 @@ class V8_EXPORT HeapProfiler {
* Takes a heap snapshot and returns it.
*/
const HeapSnapshot* TakeHeapSnapshot(
ActivityControl* control = nullptr,
ObjectNameResolver* global_object_name_resolver = nullptr,
bool treat_global_objects_as_roots = true);

/**
* Takes a heap snapshot and returns it.
*/
const HeapSnapshot* TakeHeapSnapshotV8_92(
ActivityControl* control = nullptr,
ObjectNameResolver* global_object_name_resolver = nullptr,
bool treat_global_objects_as_roots = true,
Expand Down
Loading