Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[v14.x backport] lib: revert primordials in a hot path #38972

Closed
wants to merge 250 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
250 commits
Select commit Hold shift + click to select a range
5962d42
tools: add new ESLint rule: prefer-primordials
targos May 16, 2021
5068db6
tools,lib: tighten prefer-primordials rules for Error statics
aduh95 Nov 7, 2020
1687197
tools,lib: recommend using safe primordials
aduh95 Nov 7, 2020
538ec98
timers: cleanup abort listener on awaitable timers
targos May 16, 2021
2fd37db
lib: add %TypedArray% abstract constructor to primordials
ExE-Boss Nov 7, 2020
1f38c63
module: refactor to use more primordials
aduh95 Nov 7, 2020
64c5f62
tools: update ESLint to 7.11.0
cjihrig Oct 9, 2020
8b2df0c
tools: update ESLint to 7.12.0
cjihrig Oct 25, 2020
8e4a055
tools: update ESLint to 7.12.1
cjihrig Oct 27, 2020
17c8484
tools: update ESLint to 7.13.0
lpinca Nov 8, 2020
845f3ae
test: use `.then(common.mustCall())` for all async IIFEs
addaleax Jul 14, 2020
02233af
tools: add linting rule for async IIFEs
addaleax Jul 14, 2020
1f3fff3
test: add Actions annotation output
mmarchini Aug 1, 2020
22bf488
stream: fix legacy pipe error handling
ronag Sep 18, 2020
ef7d3b1
doc: document changes for `*/promises` alias modules
ExE-Boss Jun 21, 2020
b566802
child_process: refactor to use more primordials
aduh95 Nov 6, 2020
483c1a1
lib,tools: enforce access to prototype from primordials
aduh95 Nov 7, 2020
8c743ca
timers: refactor to use more primordials
targos May 16, 2021
4d35416
http2: add support for TypedArray to getUnpackedSettings
aduh95 Nov 16, 2020
986e79a
lib: refactor to use more primordials
aduh95 Nov 15, 2020
34984f3
errors: refactor to use more primordials
aduh95 Nov 18, 2020
f4cb54d
src: fix label indentation
Trott Nov 21, 2020
abecf46
tools: update ESLint to 7.14.0
cjihrig Nov 21, 2020
66597bc
tools: enable no-nonoctal-decimal-escape lint rule
cjihrig Nov 21, 2020
73b5aa7
lib: refactor primordials.uncurryThis
aduh95 Nov 21, 2020
f59ee44
deps: V8: cherry-pick 86991d0587a1
bcoe Nov 25, 2020
ac47032
policy: refactor to use more primordials
aduh95 Nov 15, 2020
b641c26
tty: refactor to use more primordials
Lxxyx Nov 26, 2020
1462d59
os: refactor to use more primordials
aduh95 Nov 20, 2020
d49ec9b
v8: refactor to use more primordials
aduh95 Nov 20, 2020
5a3192d
perf_hooks: refactor to use more primordials
aduh95 Nov 21, 2020
47b822f
errors: display original symbol name
bcoe Nov 8, 2020
9a6e47e
buffer: refactor to use more primordials
aduh95 Nov 18, 2020
b41bd4f
timers: reject with AbortError on cancellation
targos May 16, 2021
6d63861
worker: refactor to use more primordials
aduh95 Nov 16, 2020
937e270
path: refactor to use more primordials
aduh95 Nov 18, 2020
3f919b3
src: use transferred consistently
danbev Dec 1, 2020
aa23776
querystring: refactor to use more primordials
aduh95 Nov 18, 2020
878907d
module: refactor to use more primordials
aduh95 Nov 21, 2020
beae340
zlib: refactor to use more primordials
aduh95 Nov 20, 2020
d43e1ae
dgram: refactor to use more primordials
aduh95 Nov 19, 2020
efbec9d
readline: refactor to use more primordials
aduh95 Nov 15, 2020
965c963
buffer: refactor to use primordials instead of Array#reduce
aduh95 Dec 4, 2020
16b684e
string_decoder: refactor to use more primordials
aduh95 Nov 21, 2020
bc92cbd
lib: add uncurried accessor properties to `primordials`
ExE-Boss Nov 30, 2020
5c7779d
net: refactor to use more primordials
aduh95 Nov 17, 2020
b39e71b
tools: enable no-unused-expressions lint rule
targos Nov 24, 2020
86867dc
dns: refactor to use more primordials
aduh95 Nov 20, 2020
1a197eb
doc: document ABORT_ERR code
benjamingr Nov 29, 2020
e5de7b6
tools: update ESLint to 7.15.0
cjihrig Dec 6, 2020
a67e392
tools: enable no-unsafe-optional-chaining lint rule
cjihrig Dec 6, 2020
3b54ec5
inspector: refactor to use more primordials
aduh95 Nov 21, 2020
bb8c716
util: simplify constructor retrieval in inspect()
Trott Dec 10, 2020
336d5fb
build: fix make test-npm
ruyadorno Dec 3, 2020
8488818
tools: update ESLint to 7.16.0
Dec 19, 2020
7babb64
tools: update ESLint to 7.17.0
cjihrig Jan 2, 2021
a988af4
lib: refactor to use more primordials in internal/histogram.js
RaisinTen Dec 9, 2020
bf998e3
v8: refactor to use more primordials
aduh95 Dec 5, 2020
4cf665b
doc: expand openssl instructions
mhdawson Dec 17, 2020
74e8cc2
deps: V8: cherry-pick dfcdf7837e23
bcoe Dec 18, 2020
c260d98
events: refactor to use more primordials
aduh95 Nov 17, 2020
40df0dc
deps: V8: cherry-pick 035c305ce776
targos May 1, 2021
55d0cd8
deps: update ICU to 69.1
targos Apr 9, 2021
8ffaf59
src: add check against non-weak BaseObjects at process exit
addaleax Oct 3, 2020
3e05f76
src: fix compiler warning in env.cc
addaleax Oct 7, 2020
4e99edb
src: fix compiler warnings in node_buffer.cc
RaisinTen May 18, 2021
a07bc82
lib: make safe primordials safe to iterate
aduh95 Dec 4, 2020
8d9dd14
lib: make safe primordials safe to construct
aduh95 Dec 7, 2020
f3fb507
lib: add primordials.SafeStringIterator
aduh95 Dec 4, 2020
28f0934
buffer: make FastBuffer safe to construct
aduh95 Dec 20, 2020
362941a
url: refactor to use more primordials
aduh95 Nov 20, 2020
3c11339
lib: refactor to use primordials in internal/priority_queue.js
Lxxyx Dec 18, 2020
62767f3
tools: update gyp-next to v0.7.0
targos Dec 19, 2020
396c553
lib: refactor to use more primordials in internal/encoding.js
RaisinTen Dec 11, 2020
01038ce
https: refactor to use more primordials
aduh95 Nov 17, 2020
8529864
lib: remove unused code
mscdex Dec 26, 2020
c101e37
stream: only use legacy close listeners if not willEmitClose
ronag Dec 27, 2020
0d70650
test: add test for reused AbortController with execfile()
Trott Dec 27, 2020
95c83bf
child_process: treat already-aborted controller as aborting
Trott Dec 29, 2020
28eec43
child_process: reduce abort handler code duplication
Trott Dec 29, 2020
0cbe63f
test: add already-aborted-controller test for spawn()
Trott Dec 29, 2020
541322d
string_decoder: throw ERR_STRING_TOO_LONG for UTF-8
targos Dec 28, 2020
054c196
errors: refactor to use more primordials
aduh95 Dec 27, 2020
8a25e59
lib: remove v8_prof_polyfill from eslint ignore list
aduh95 Dec 15, 2020
6fd76e7
perf_hooks: refactor to avoid unsafe array iteration
aduh95 Dec 31, 2020
c9135b8
test: guard large string decoder allocation
targos Jan 5, 2021
b99ff61
wasi: refactor to avoid unsafe array iteration
aduh95 Dec 31, 2020
1807be2
tty: refactor to avoid unsafe array iteration
aduh95 Dec 31, 2020
0131ecf
zlib: refactor to use primordial instead of <string>.startsWith
rchougule Jan 1, 2021
b711cae
events: refactor to use optional chaining
Lxxyx Jan 4, 2021
0da7677
doc: clarify event.isTrusted text
Trott Jan 7, 2021
8cbd4cf
lib: simplify `primordials.uncurryThis`
ExE-Boss Jan 10, 2021
79bf95a
vm: refactor to avoid unsafe array iteration
aduh95 Dec 31, 2020
3efd960
lib: refactor source_map to avoid unsafe array iteration
aduh95 Dec 31, 2020
5b083ba
zlib: refactor to avoid unsafe array iteration
aduh95 Dec 31, 2020
e5bc620
lib: refactor source_map to use more primordials
aduh95 Dec 31, 2020
9c0c7c0
lib: expose primordials object
aduh95 Jan 15, 2021
0e79a99
test: improve coverage at `lib/internal/vm/module.js`
juanarbol Jan 12, 2021
4e587c3
test: improve coverage on worker threads
juanarbol Jan 13, 2021
098313d
test: improve coverage for `Module` getters
juanarbol Jan 15, 2021
809b762
tools: update ESLint to 7.18.0
cjihrig Jan 15, 2021
a280e99
module: simplify tryStatSync with throwIfNoEntry option
aduh95 Jan 16, 2021
38178b8
perf_hooks: throw ERR_INVALID_ARG_VALUE if histogram.percentile param…
Lxxyx Jan 15, 2021
a128997
lib: support returning Safe collections from C++
ExE-Boss Jan 17, 2021
de6b446
test: improve coverage of `SourceTextModule` getters
juanarbol Jan 21, 2021
4dc12f5
lib: refactor to use optional chaining in internal/options.js
RaisinTen Jan 15, 2021
ac446de
test: increase timeout on ASAN Action
aduh95 Jan 20, 2021
cfce7fc
async_hooks: refactor to avoid unsafe array iteration
aduh95 Jan 29, 2021
1b9614a
tools: update ESLint to 7.19.0
cjihrig Jan 31, 2021
a3155f8
tools: update ESLint to 7.20.0
cjihrig Feb 12, 2021
9a639e0
tools: update ESLint to 7.21.0
lpinca Feb 28, 2021
5b863a2
test: increase fs promise coverage
emilsivervik Jan 6, 2021
1a56217
timers: fix unsafe array iteration
RaisinTen Feb 4, 2021
35c54d0
lib: fix WebIDL `object` and dictionary type conversion
ExE-Boss Jan 24, 2021
b379933
errors: align source-map stacks with spec
bcoe Feb 6, 2021
35fa2da
worker: refactor to avoid unsafe array iteration
aduh95 Feb 12, 2021
dfb4e5f
tools: refactor prefer-primordials
aduh95 Nov 7, 2020
cc859e4
lib: add URI handling functions to primordials
aduh95 Feb 16, 2021
babea9c
src: avoid implicit type conversions (take 2)
targos Feb 12, 2021
2e527fb
src: disable unfixable MSVC warnings
targos Feb 12, 2021
6c1ea69
src: fix ETW_WRITE_EMPTY_EVENT macro
targos Feb 12, 2021
91c3b72
assert: refactor to avoid unsafe array iteration
aduh95 Feb 12, 2021
6fc8409
tools: run doctool tests on GitHub Actions CI
aduh95 Feb 16, 2021
f0daaec
doc: document the NO_COLOR and FORCE_COLOR env vars
jasnell Feb 22, 2021
21f321c
doc: document how to register external bindings for snapshot
joyeecheung Feb 21, 2021
0d2704f
doc: remove generated from dsaEncoding description
kaznovac Feb 20, 2021
587c3dd
doc: add document for http.OutgoingMessage
Ayase-252 Feb 4, 2021
e5e823d
doc: fix grammar errors in http document
Ayase-252 Feb 24, 2021
f375ec2
module: refactor NativeModule to avoid unsafe array iteration
aduh95 Feb 12, 2021
4548e50
tools: simplify eslint comma-dangle configuration
Trott Mar 20, 2021
4302a11
doc: fix wording in outgoingMessage.write
tniessen Mar 24, 2021
bbbbaed
tools: simplify eslint comma-dangle configuration (tools)
Trott Mar 23, 2021
b407b99
src: indent long help text properly
glasser Mar 25, 2021
bf80c1a
path: refactor to use more primordials
marsonya Mar 24, 2021
19817df
doc: add missing events.on metadata
addaleax Mar 29, 2021
ae5a519
doc: internal/test/binding for testing
bmeck Apr 2, 2021
607aa9a
tls: fix session and keylog add listener segfault
Linkgoron Apr 9, 2021
41722ee
module: clarify CJS global-like variables not defined error message
aduh95 Mar 21, 2021
884c477
node-api: make reference weak parameter an indirect link to references
legendecas Mar 31, 2021
66976ac
tools: fix type mismatch in test runner
richardlau Apr 18, 2021
deeb4d3
test: use .test domain for not found address
richardlau Apr 18, 2021
5d34e64
doc: use `foo.prototype.bar` notation in buffer.md
VoltrexKeyva Apr 1, 2021
8fcaf4a
test: replace function with arrow function and remove unused argument
andresatencio Apr 14, 2021
5ccaa89
repl: display prompt once after error callback
addaleax Apr 20, 2021
7281850
doc: update TSC members list with three new members
Trott Apr 22, 2021
207d144
doc: add nodejs-sec email template
danbev Apr 19, 2021
0388603
tls: validate ticket keys buffer
aduh95 Apr 20, 2021
1469e64
doc: fix typo in buffer.md
theoludwig Apr 21, 2021
6bd87ab
test: add ancestor package.json checks for tmpdir
richardlau Apr 18, 2021
ebf79c6
src: avoid deferred gc/cleanup for Buffer.from
jasnell Apr 21, 2021
6c2bf06
src: fix setting Converter sub char length
jasnell Apr 21, 2021
69a60c0
typings: add JSDoc typings for util
rohit-gohri Apr 12, 2021
7eda75d
doc: fix `package.json` `"imports"` field history
aduh95 Apr 22, 2021
83b26b4
doc: fix version history for `"exports"` patterns
aduh95 Apr 22, 2021
d62491e
benchmark: use `process.hrtime.bigint()`
aduh95 Apr 23, 2021
817c1e1
doc: mark `process.hrtime()` as legacy
aduh95 Apr 23, 2021
1d3e89f
async_hooks,doc: replace process.stdout.fd with 1
RaisinTen Apr 24, 2021
fcdf601
lib: fix and improve os typings
marsonya Apr 20, 2021
97701f7
test: skip some pummel tests on slower machines
Trott Apr 25, 2021
50bcea6
doc: request default snap track be updated for LTS
rvagg Mar 11, 2021
b568e4c
src: use %progbits instead of @progbits
sgallagher Apr 20, 2021
96f9221
benchmark: avoid using `console.log()`
aduh95 Apr 23, 2021
59eb993
test: move abort test from pummel to abort directory
Trott Apr 25, 2021
4400443
doc: update message to match actual output
Trott Sep 19, 2020
8f6570b
doc: do not mention TCP in the allowHalfOpen option description
lpinca Apr 22, 2021
5d781f5
doc: document new TCP_KEEPCNT and TCP_KEEPINTVL socket option defaults
ArnoldZokas Apr 20, 2021
3509b0a
doc: minor clarification to pathObject
jasnell Apr 27, 2021
7a5ff3f
doc: note the system requirements for V8 tests
DeeDeeG Apr 20, 2021
2b459e4
tools: add _depot_tools to PATH (for V8 tests)
DeeDeeG Apr 19, 2021
11af09c
tools: fix doc generation when version info is not available
aduh95 Apr 25, 2021
ed808f9
repl: document top level await limitation with const/let
jasnell Apr 28, 2021
f1366ad
tools: remove fixer for non-ascii-character ESLint custom rule
Trott Apr 26, 2021
8098d59
src: fix validation of negative offset to avoid abort
jasnell Apr 26, 2021
f9f5685
doc: add try/catch in http2 respondWithFile example
mcollina Apr 26, 2021
ab6c11c
doc: indicate that abort tests do not generate core files
Trott Apr 26, 2021
1f62c0e
doc: add arguments for stream event of Http2Server and Http2SecureServer
Ayase-252 Mar 24, 2021
6faa1fa
doc: mark querystring api as legacy
jasnell Apr 27, 2021
550bea9
deps: update to cjs-module-lexer@1.2.1
guybedford Apr 28, 2021
9df3fc5
meta: post comment when pr labeled fast-track
jasnell Apr 28, 2021
8819958
inspector: remove redundant method for connection check
yashLadha Mar 30, 2021
707c36a
test: address deprecation warning
Trott Apr 28, 2021
ba5ece7
zlib: fix brotli flush range
XadillaX Apr 26, 2021
fef1777
tools: use a shallow clone of the npm/cli repository
lpinca Apr 29, 2021
21d836e
doc: document `'secureConnect'` event limitation
jasnell Apr 28, 2021
a303b74
test: fix `common.mustCall` `length` and `name` properties
aduh95 Apr 27, 2021
dd8dc82
test,readline: improve tab completion coverage
aduh95 Apr 27, 2021
707fadc
stream: the position of _read() is wrong
helloyou2012 Apr 19, 2021
80ac6ad
tools: use mktemp to create the workspace directory
lpinca Apr 27, 2021
3ac07ed
test: move test-net-connect-econnrefused from pummel to sequential
Trott Apr 29, 2021
44cbfdd
doc: remove extraneous dash from flag prefix
rhcarvalho May 4, 2021
5579873
tools: make GH Actions workflows work if default branch is not master
aduh95 May 3, 2021
79e3204
test: run message and pseudo-tty tests in parallel
richardlau May 1, 2021
4594b6d
doc: use AIX instead of Aix in fs.md
Trott May 4, 2021
81a9ba8
doc: clarify DiffieHellmanGroup class docs
Linkgoron Apr 22, 2021
f92bc29
test: increase coverage for AbortController
Lxxyx May 3, 2021
4056af6
test: complete coverage of querystring
pd4d10 May 3, 2021
1b739f9
lib: make `IterableWeakMap` safe to iterate
aduh95 May 3, 2021
d624566
Revert "worker: remove `ERR_CLOSED_MESSAGE_PORT`"
juanarbol May 3, 2021
0de6270
src: make workers messaging more resilient
juanarbol May 3, 2021
623d6d7
buffer: remove unreachable code
pd4d10 May 4, 2021
2d60935
test: call functions internally
VoltrexKeyva May 5, 2021
e0d7529
meta: add v8 team
gengjiawen May 6, 2021
6628297
buffer: remove TODOs in `atob` / `btoa`
XadillaX May 5, 2021
64434a4
dgram: extract cluster lazy loading method to make it testable
pd4d10 May 6, 2021
7f09f60
build: remove dependency on `distutils.spawn`
richardlau May 5, 2021
321df93
build: add workaround for V8 builds
richardlau May 11, 2021
189afa9
fs: fix error when writing buffers > INT32_MAX
zbjornson May 5, 2021
16509d3
path: inline conditions
VoltrexKeyva May 9, 2021
dba7d5c
test: improve coverage of lib/os.js
pd4d10 May 12, 2021
ede64df
test: improve coverage of lib/_http_client.js
pd4d10 May 8, 2021
9a7950f
doc: change color of doctag on night mode
Ayase-252 May 12, 2021
6c078b7
doc: update contact info
gabrielschulhof May 14, 2021
c6de1b7
src: remove extra semi after member fn
codebytere May 14, 2021
bcf539c
src: update cares_wrap OpenBSD defines
addaleax May 13, 2021
b19e023
doc: clarify synchronous blocking of Worker stdio
jasnell May 12, 2021
daa1a16
doc: document buffer.kStringMaxLength
tniessen May 14, 2021
8ccd867
node-api: fix shutdown crashes
mhdawson Apr 30, 2021
152aa84
stream: fix multiple Writable.destroy() calls
ronag Apr 12, 2021
6a0af89
node-api: faster threadsafe_function
indutny May 1, 2021
7b3beaa
doc: remove import.meta.resolve parent URL type
kevinoid May 7, 2021
dc9c518
test,doc,lib: adjust object literal newlines for lint rule
Trott Jan 23, 2021
cbced2f
tools: enable object-curly-newline in ESLint rules
Trott Jan 23, 2021
34871ba
tools: update eslint-plugin-markdown configuration
cjihrig Feb 28, 2021
893576c
tools: add support for mjs and cjs JS snippet linting
aduh95 Feb 10, 2021
010cd20
tools,doc: add support for several flavors of JS code snippets
aduh95 Jan 31, 2021
b85c2a2
doc: use `HEAD` instead of `master` for links
aduh95 May 3, 2021
71ad9af
tools: make update-eslint.sh work with npm@7
lpinca Mar 2, 2021
1c43187
tools: update ESLint to 7.22.0
cjihrig Mar 12, 2021
66345c3
tools: update ESLint to 7.23.0
lpinca Mar 30, 2021
35d73fe
tools: update ESLint to 7.24.0
cjihrig Apr 9, 2021
ac4aef9
tools: update ESLint to 7.25.0
cjihrig Apr 24, 2021
cd74d62
tools: update ESLint to 7.26.0
cjihrig May 8, 2021
15c338e
tools: update ESLint to 7.27.0
lpinca May 22, 2021
70817dd
doc: fix JS flavor selection
aduh95 Mar 17, 2021
83f8c4c
doc: cleanup events.md structure
jasnell Nov 12, 2020
f807ee0
assert: refactor to use more primordials
aduh95 Nov 19, 2020
b866b06
tools: bump cpplint.py to 1.5.2
Trott Nov 21, 2020
fdec18b
tools: refloat 7 Node.js patches to cpplint.py
Trott Oct 9, 2020
8aa1daf
tools: bump cpplint to 1.5.3
Trott Nov 23, 2020
3269c2a
tools: refloat 7 Node.js patches to cpplint.py
Trott Oct 9, 2020
343ebd0
tools: bump cpplint to 1.5.4
Trott Nov 30, 2020
a6fc1e7
tools: refloat 7 Node.js patches to cpplint.py
Trott Oct 9, 2020
67c7b8a
build: work around bug in MSBuild v16.10.0
targos May 31, 2021
845ddcc
http2: fix setting options before handle exists
addaleax Mar 23, 2021
aa77ac5
http2: treat non-EOF empty frames like other invalid frames
addaleax Mar 23, 2021
49c8441
src: add maybe versions of EmitExit and EmitBeforeExit
addaleax Oct 3, 2020
faf1580
lib: revert primordials in a hot path
aduh95 Apr 15, 2021
2b939ac
fixup! lib: revert primordials in a hot path
aduh95 Jun 8, 2021
203ef4c
fixup! lib: revert primordials in a hot path
aduh95 Jun 8, 2021
162ca1d
fixup! lib: revert primordials in a hot path
aduh95 Jun 9, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
1 change: 0 additions & 1 deletion .eslintignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
node_modules
lib/internal/v8_prof_polyfill.js
lib/punycode.js
test/addons/??_*
test/fixtures
Expand Down
26 changes: 20 additions & 6 deletions .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -53,11 +53,6 @@ module.exports = {
overrides: [
{
files: [
'doc/api/esm.md',
'doc/api/module.md',
'doc/api/modules.md',
'doc/api/packages.md',
'doc/api/wasi.md',
'test/es-module/test-esm-type-flag.js',
'test/es-module/test-esm-type-flag-alias.js',
'*.mjs',
Expand All @@ -67,9 +62,24 @@ module.exports = {
},
{
files: ['**/*.md'],
parserOptions: { ecmaFeatures: { impliedStrict: true } },
processor: 'markdown/markdown',
},
{
files: ['**/*.md/*.cjs', '**/*.md/*.js'],
parserOptions: {
sourceType: 'script',
ecmaFeatures: { impliedStrict: true }
},
rules: { strict: 'off' },
},
{
files: [
'**/*.md/*.mjs',
'doc/api/esm.md/*.js',
'doc/api/packages.md/*.js',
],
parserOptions: { sourceType: 'module' },
},
],
rules: {
// ESLint built-in rules
Expand Down Expand Up @@ -162,6 +172,7 @@ module.exports = {
'no-multiple-empty-lines': ['error', { max: 2, maxEOF: 0, maxBOF: 0 }],
'no-new-require': 'error',
'no-new-symbol': 'error',
'no-nonoctal-decimal-escape': 'error',
'no-obj-calls': 'error',
'no-octal': 'error',
'no-path-concat': 'error',
Expand Down Expand Up @@ -238,6 +249,8 @@ module.exports = {
'no-unreachable': 'error',
'no-unsafe-finally': 'error',
'no-unsafe-negation': 'error',
'no-unsafe-optional-chaining': 'error',
'no-unused-expressions': ['error', { allowShortCircuit: true }],
'no-unused-labels': 'error',
'no-unused-vars': ['error', { args: 'none', caughtErrors: 'all' }],
'no-use-before-define': ['error', {
Expand All @@ -255,6 +268,7 @@ module.exports = {
'no-void': 'error',
'no-whitespace-before-property': 'error',
'no-with': 'error',
'object-curly-newline': 'error',
'object-curly-spacing': ['error', 'always'],
'one-var': ['error', { initialized: 'never' }],
'one-var-declaration-per-line': 'error',
Expand Down
4 changes: 4 additions & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -114,3 +114,7 @@
/lib/internal/bootstrap/* @nodejs/startup
/tools/code_cache/* @nodejs/startup
/tools/snapshot/* @nodejs/startup

# V8
/deps/v8/* @nodejs/v8-update
/tools/v8_gypfiles/* @nodejs/v8-update
4 changes: 2 additions & 2 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
<!--
Before submitting a pull request, please read
https://github.com/nodejs/node/blob/master/CONTRIBUTING.md.
https://github.com/nodejs/node/blob/HEAD/CONTRIBUTING.md.

Commit message formatting guidelines:
https://github.com/nodejs/node/blob/master/doc/guides/contributing/pull-requests.md#commit-message-guidelines
https://github.com/nodejs/node/blob/HEAD/doc/guides/contributing/pull-requests.md#commit-message-guidelines

For code changes:
1. Include tests for any bug fixes or new features.
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/build-tarball.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ on:
push:
branches:
- master
- main
- v[0-9]+.x-staging
- v[0-9]+.x

Expand Down
1 change: 1 addition & 0 deletions .github/workflows/build-windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ on:
push:
branches:
- master
- main
- canary
- v[0-9]+.x-staging
- v[0-9]+.x
Expand Down
29 changes: 29 additions & 0 deletions .github/workflows/comment-labeled.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Comment on issues and PRs when labelled
on:
issues:
types: [labeled]
pull_request_target:
types: [labeled]

jobs:
staleComment:
if: github.repository == 'nodejs/node' && github.event.label.name == 'stalled'
runs-on: ubuntu-latest
steps:
- name: Post stalled comment
env:
COMMENTS_URL: ${{ github.event.issue.comments_url || github.event.pull_request.comments_url }}
run: |
curl -X POST $COMMENTS_URL \
-H "Content-Type: application/json" \
-H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
--data '{ "body": "This issue/PR was marked as stalled, it will be automatically closed in 30 days. If it should remain open, please leave a comment explaining why it should remain open." }'

fastTrack:
if: github.repository == 'nodejs/node' && github.event_name == 'pull_request_target' && github.event.label.name == 'fast-track'
runs-on: ubuntu-latest
steps:
- name: Request Fast-Track
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: gh pr comment ${{ github.event.pull_request.number }} --repo ${{ github.repository }} --body "Fast-track has been requested by @${{ github.actor }}. Please 👍 to approve."
21 changes: 0 additions & 21 deletions .github/workflows/comment-stalled.yml

This file was deleted.

8 changes: 3 additions & 5 deletions .github/workflows/commit-queue.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ jobs:
# See https://github.com/nodejs/node-core-utils/pull/486
fetch-depth: 0
# A personal token is required because pushing with GITHUB_TOKEN will
# prevent commits from running CI after they land on master. It needs
# prevent commits from running CI after they land. It needs
# to be set here because `checkout` configures GitHub authentication
# for push as well.
token: ${{ secrets.GH_USER_TOKEN }}
Expand Down Expand Up @@ -63,15 +63,13 @@ jobs:
owner: ${{ env.OWNER }}
repo: ${{ env.REPOSITORY }}
# Commit queue is only enabled for the default branch on the repository
# TODO(mmarchini): get the default branch programmatically instead of
# assuming `master`
base_ref: "master"
base_ref: ${{ github.repository.default_branch }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Configure node-core-utils
run: |
ncu-config set branch master
ncu-config set branch ${{ github.repository.default_branch }}
ncu-config set upstream origin
ncu-config set username "${{ secrets.GH_USER_NAME }}"
ncu-config set token "${{ secrets.GH_USER_TOKEN }}"
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/linters.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ on:
push:
branches:
- master
- main
- v[0-9]+.x-staging
- v[0-9]+.x

Expand Down
5 changes: 3 additions & 2 deletions .github/workflows/misc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ on:
push:
branches:
- master
- main
- v[0-9]+.x-staging
- v[0-9]+.x

Expand All @@ -28,5 +29,5 @@ jobs:
with:
name: docs
path: out/doc
- name: Check links
run: node tools/doc/checkLinks.js .
- name: Test
run: NODE=$(command -v node) make test-doc-ci TEST_CI_ARGS="-p actions"
3 changes: 2 additions & 1 deletion .github/workflows/notify-force-push.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ on:
push:
branches:
- master
- main

name: Notify on Force Push
jobs:
Expand All @@ -17,7 +18,7 @@ jobs:
SLACK_ICON: https://github.com/nodejs.png?size=48
SLACK_TITLE: '${{ github.actor }} force-pushed to ${{ github.ref }}'
SLACK_MESSAGE: |
A commit was force-pushed to <https://github.com/${{ github.repository }}/tree/master|${{ github.repository }}@master> by <https://github.com/${{ github.actor }}|${{ github.actor }}>
A commit was force-pushed to <https://github.com/${{ github.repository }}/tree/${{ github.repository.default_branch }}|${{ github.repository }}@${{ github.repository.default_branch }}> by <https://github.com/${{ github.actor }}|${{ github.actor }}>
Before: <https://github.com/${{ github.repository }}/commit/${{ github.event.before }}|${{ github.event.before }}>
After: <https://github.com/${{ github.repository }}/commit/${{ github.event.after }}|${{ github.event.after }}>
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/test-asan.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ on:
push:
branches:
- master
- main
- canary
- v[0-9]+.x-staging
- v[0-9]+.x
Expand Down Expand Up @@ -36,4 +37,4 @@ jobs:
- name: Build
run: make build-ci -j2 V=1
- name: Test
run: make run-ci -j2 V=1 TEST_CI_ARGS="-p dots"
run: make run-ci -j2 V=1 TEST_CI_ARGS="-p actions -t 300"
3 changes: 2 additions & 1 deletion .github/workflows/test-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ on:
push:
branches:
- master
- main
- canary
- v[0-9]+.x-staging
- v[0-9]+.x
Expand All @@ -27,4 +28,4 @@ jobs:
- name: Build
run: make build-ci -j2 V=1 CONFIG_FLAGS="--error-on-warn"
- name: Test
run: make run-ci -j2 V=1 TEST_CI_ARGS="-p dots"
run: make run-ci -j2 V=1 TEST_CI_ARGS="-p actions"
3 changes: 2 additions & 1 deletion .github/workflows/test-macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ on:
push:
branches:
- master
- main
- canary
- v[0-9]+.x-staging
- v[0-9]+.x
Expand All @@ -31,4 +32,4 @@ jobs:
- name: Build
run: make build-ci -j2 V=1 CONFIG_FLAGS="--error-on-warn"
- name: Test
run: make run-ci -j2 V=1 TEST_CI_ARGS="-p dots"
run: make run-ci -j2 V=1 TEST_CI_ARGS="-p actions"
11 changes: 2 additions & 9 deletions BUILDING.md
Original file line number Diff line number Diff line change
Expand Up @@ -250,8 +250,6 @@ Installation via Linux package manager can be achieved with:

FreeBSD and OpenBSD users may also need to install `libexecinfo`.

Python 3 users may also need to install `python3-distutils`.

#### macOS prerequisites

* Xcode Command Line Tools >= 10 for macOS
Expand All @@ -277,11 +275,6 @@ $ ./configure
$ make -j4
```

If you run into a `No module named 'distutils.spawn'` error when executing
`./configure`, please try `python3 -m pip install --upgrade setuptools` or
`sudo apt install python3-distutils -y`.
For more information, see <https://github.com/nodejs/node/issues/30189>.

The `-j4` option will cause `make` to run 4 simultaneous compilation jobs which
may reduce build time. For more information, see the
[GNU Make Documentation](https://www.gnu.org/software/make/manual/html_node/Parallel.html).
Expand Down Expand Up @@ -668,7 +661,7 @@ $ make

## `Intl` (ECMA-402) support

[Intl](https://github.com/nodejs/node/blob/master/doc/api/intl.md) support is
[Intl](https://github.com/nodejs/node/blob/HEAD/doc/api/intl.md) support is
enabled by default.

### Build with full ICU support (all locales supported by ICU)
Expand Down Expand Up @@ -812,4 +805,4 @@ When Node.js is built (with an intention to distribute) with an ABI
incompatible with the official Node.js builds (e.g. using a ABI incompatible
version of a dependency), please reserve and use a custom `NODE_MODULE_VERSION`
by opening a pull request against the registry available at
<https://github.com/nodejs/node/blob/master/doc/abi_version_registry.json>.
<https://github.com/nodejs/node/blob/HEAD/doc/abi_version_registry.json>.
2 changes: 1 addition & 1 deletion GOVERNANCE.md
Original file line number Diff line number Diff line change
Expand Up @@ -173,5 +173,5 @@ The TSC follows a [Consensus Seeking][] decision-making model per the

[Collaborators discussion page]: https://github.com/orgs/nodejs/teams/collaborators/discussions
[Consensus Seeking]: https://en.wikipedia.org/wiki/Consensus-seeking_decision-making
[TSC Charter]: https://github.com/nodejs/TSC/blob/master/TSC-Charter.md
[TSC Charter]: https://github.com/nodejs/TSC/blob/HEAD/TSC-Charter.md
[nodejs/node]: https://github.com/nodejs/node
14 changes: 9 additions & 5 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -587,12 +587,17 @@ test-doc: doc-only lint-md ## Builds, lints, and verifies the docs.
fi
$(NODE) tools/doc/checkLinks.js .

.PHONY: test-doc-ci
test-doc-ci: doc-only
$(PYTHON) tools/test.py --shell $(NODE) $(TEST_CI_ARGS) $(PARALLEL_ARGS) doctool
$(NODE) tools/doc/checkLinks.js .

test-known-issues: all
$(PYTHON) tools/test.py $(PARALLEL_ARGS) known_issues

# Related CI job: node-test-npm
test-npm: $(NODE_EXE) ## Run the npm test suite on deps/npm.
$(NODE) tools/test-npm-package --install --logfile=test-npm.tap deps/npm test-node
$(NODE) tools/test-npm-package --install --logfile=test-npm.tap deps/npm test

test-npm-publish: $(NODE_EXE)
npm_package_config_publishtest=true $(NODE) deps/npm/test/run.js
Expand Down Expand Up @@ -1217,7 +1222,7 @@ lint-md: lint-js-doc | tools/.mdlintstamp
LINT_JS_TARGETS = .eslintrc.js benchmark doc lib test tools

run-lint-js = tools/node_modules/eslint/bin/eslint.js --cache \
--report-unused-disable-directives --ext=$(EXTENSIONS) $(LINT_JS_TARGETS)
--report-unused-disable-directives $(LINT_JS_TARGETS)
run-lint-js-fix = $(run-lint-js) --fix

.PHONY: lint-js-fix
Expand All @@ -1228,8 +1233,7 @@ lint-js-fix:
.PHONY: lint-js-doc
# Note that on the CI `lint-js-ci` is run instead.
# Lints the JavaScript code with eslint.
lint-js lint-js-fix: EXTENSIONS=.js,.mjs,.md
lint-js-doc: EXTENSIONS=.md
lint-js-doc: LINT_JS_TARGETS=doc
lint-js lint-js-doc:
@if [ "$(shell $(node_use_openssl))" != "true" ]; then \
echo "Skipping $@ (no crypto)"; \
Expand All @@ -1242,7 +1246,7 @@ jslint: lint-js
$(warning Please use lint-js instead of jslint)

run-lint-js-ci = tools/node_modules/eslint/bin/eslint.js \
--report-unused-disable-directives --ext=.js,.mjs,.md -f tap \
--report-unused-disable-directives -f tap \
-o test-eslint.tap $(LINT_JS_TARGETS)

.PHONY: lint-js-ci
Expand Down
Loading