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

v15.3.0 proposal #36232

Merged
merged 98 commits into from Nov 24, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
98 commits
Select commit Hold shift + click to select a range
85c85d3
path: add `path/posix` and `path/win32` alias modules
ExE-Boss Aug 28, 2020
baa87c1
util: add `util/types` alias module
ExE-Boss Jun 27, 2020
d1baae3
readline: add getPrompt to get the current prompt
mattiasrunge May 31, 2020
59af919
querystring: reduce memory usage by Int8Array
sapics Jul 5, 2020
5c0ddbc
net: fix invalid write after end error
ronag Nov 8, 2020
8a6cabb
events: port some wpt tests
Ethan-Arrowood Jul 2, 2020
be220b2
tools: update ESLint to 7.13.0
lpinca Nov 8, 2020
1924255
async_hooks: fix leak in AsyncLocalStorage exit
Qard Oct 23, 2020
0b40568
http2: delay session.receive() by a tick
szmarczak Nov 5, 2020
9c6be3c
http2: allow setting the local window size of a session
ZYSzys Nov 10, 2020
a81dc9a
src,crypto: refactoring of crypto_context, SecureContext
jasnell Oct 15, 2020
49649a4
tools: fix config serialization w/ long strings
oleavr Nov 5, 2020
bf0550c
tools: enforce use of single quotes in editorconfig
aduh95 Nov 7, 2020
500e709
doc: update list styles for remark-parse@9 rendering
Trott Nov 9, 2020
63494e4
tools: update doc tools to remark-parse@9.0.0
Trott Nov 9, 2020
4140f49
util: fix to inspect getters that access this
RaisinTen Nov 9, 2020
d2c757a
deps: V8: cherry-pick 27e1ac1a79ff
oleavr Nov 6, 2020
098a5b1
deps: V8: cherry-pick 086eecbd96b6
oleavr Nov 6, 2020
4b7ba11
deps: V8: cherry-pick 4e077ff0444a
oleavr Nov 6, 2020
8ae3ffe
deps: V8: cherry-pick 1d0f426311d4
oleavr Nov 6, 2020
387d92f
http: onFinish will not be triggered again when finished
rickyes Oct 28, 2020
56f83e6
build: refactor configure.py to use argparse
RaisinTen Oct 22, 2020
5729478
src: add loop idle time in diagnostic report
gireeshpunathil Nov 3, 2020
841a281
doc: fix typo in debugger.md
Trott Nov 10, 2020
6a4cc43
test: replace var with const
arsenalzp Nov 9, 2020
fbe210b
build: conditionally clear vcinstalldir
bingenito Nov 6, 2020
122797e
src: remove duplicate logic for getting buffer
yashLadha Sep 9, 2020
34aa0c8
assert: refactor to use more primordials
aduh95 Nov 6, 2020
0b70822
child_process: refactor to use more primordials
aduh95 Nov 6, 2020
63a138e
crypto: fix passing TypedArray to webcrypto AES methods
aduh95 Nov 11, 2020
e54108f
cluster: refactor to use more primordials
aduh95 Nov 6, 2020
3be5e86
test: add util.inspect test for null maxStringLength
Trott Nov 11, 2020
75707f4
lib,tools: enforce access to prototype from primordials
aduh95 Nov 7, 2020
6678897
esm: refactor to use more primordials
aduh95 Nov 7, 2020
f7b2fce
vm: refactor to use more primordials
aduh95 Nov 7, 2020
1550073
events: disabled manual construction AbortSignal
RaisinTen Nov 12, 2020
9405cdd
test: improve test-stream-duplex-readable-end
lpinca Nov 9, 2020
6349b1d
dns: add a cancel() method to the promise Resolver
szmarczak Nov 11, 2020
eefc6aa
doc: document the error when cwd not exists in child_process.spawn
FeelyChau Jul 24, 2020
ed8af3a
perf_hooks: make nodeTiming a first-class object
mmomtchev Nov 5, 2020
cd33594
doc: move shigeki to emeritus
Trott Nov 12, 2020
e8a8513
doc: fix invalid link in worker_threads.md
Trott Nov 13, 2020
b17a83a
doc: claim ABI version for Electron v13
codebytere Nov 12, 2020
0ff384b
doc: esm docs consolidation and reordering
guybedford Nov 9, 2020
89da0c3
n-api: factor out calling pattern
Nov 13, 2020
eb9295b
promise: emit error on domain unhandled rejections
benjamingr Nov 11, 2020
9ce9b01
events: add max listener warning for EventTarget
jasnell Nov 6, 2020
27f1bc0
deps: upgrade npm to 7.0.11
darcyclarke Nov 13, 2020
272fc79
crypto: fix format warning in AdditionalConfig
RaisinTen Nov 10, 2020
7e7ddb1
tools: hide commit queue action link
aduh95 Nov 14, 2020
0fcbb1c
deps: V8: cherry-pick 3176bfd447a9
addaleax Oct 12, 2020
c19df17
test: add test for fs.read when offset key is null
mayankagarwals Nov 1, 2020
f9bbd35
test: make test-http2-client-jsstream-destroy.js reliable
Trott Nov 15, 2020
3d623d8
n-api: improve consistency of how we get context
mhdawson Nov 10, 2020
142cacd
doc: clarify text about process not responding
Trott Nov 14, 2020
a367c0d
timers: refactor to use more primordials
aduh95 Nov 15, 2020
4746649
test: deflake test-http-destroyed-socket-write2
lpinca Nov 14, 2020
77b47df
test: fix typo in inspector-helper.js
lpinca Nov 15, 2020
60874ba
build: try “python3” as a last resort for 3.x
oleavr Nov 5, 2020
76b1863
fs: filehandle read now accepts object as argument
branisha Nov 14, 2020
a8dab21
doc,url: fix url.hostname example
darkrishabh Jun 5, 2020
d8fcf2c
tools: remove bashisms from license builder script
aduh95 Nov 14, 2020
e48ec70
domain: improve deprecation warning text for DEP0097
addaleax Nov 16, 2020
15ff155
lib: add throws option to fs.f/l/statSync
amcasey Jun 3, 2020
24065b9
doc: mark modules implementation as stable
guybedford Oct 23, 2020
73bb54a
test: update wpt url and resource
watilde Nov 7, 2020
7086f2e
src: refactor using-declarations node_env_var.cc
RaisinTen Nov 15, 2020
bb29508
doc: add link for v8.takeCoverage()
Trott Nov 16, 2020
82f1cde
lib: remove primordials.SafePromise
aduh95 Nov 17, 2020
8390f8a
http: add support for abortsignal to http.request
benjamingr Nov 9, 2020
d6ea12e
lib: set abort-controller toStringTag
benjamingr Nov 14, 2020
3691ecc
fs: remove experimental from promises.rmdir recursive
andersk Nov 16, 2020
f0aed8c
http2: add support for TypedArray to getUnpackedSettings
aduh95 Nov 16, 2020
1a4d43f
lib: refactor to use more primordials
aduh95 Nov 15, 2020
fcc38a1
build: replace which with command -v
RaisinTen Nov 14, 2020
2d24912
tools: only use 2 cores for macos action
MylesBorins Nov 18, 2020
3ee556a
benchmark: fix build warnings
Nov 18, 2020
4ab4a99
doc: de-emphasize wrapping in napi_define_class
Nov 18, 2020
a6ef92b
tools: bump unist-util-find@1.0.1 to unist-util-find@1.0.2
Trott Nov 13, 2020
4e3883e
win,build,tools: support VS prerelease
baruchiro Nov 8, 2020
c23ee37
deps: upgrade npm to 7.0.12
ruyadorno Nov 17, 2020
a6a90af
doc: add compatibility/interop technical value
GeoffreyBooth Sep 22, 2020
8a0c3b9
http2: refactor to use more primordials
aduh95 Nov 16, 2020
28d7101
async_hooks: refactor to use more primordials
aduh95 Nov 18, 2020
545ac1f
doc: fix punctuation in v8.md
Trott Nov 20, 2020
bcbf176
errors: refactor to use more primordials
aduh95 Nov 18, 2020
5698cc0
n-api: fix test_async_context warnings
Nov 19, 2020
79b2ba6
n-api: clean up binding creation
Nov 18, 2020
48bf59b
http2: add support for AbortSignal to http2Session.request
MadaraUchiha Nov 10, 2020
5fa35f6
test: update comments in test-fs-read-offset-null
Trott Nov 17, 2020
8bbdbcc
doc: revise agent.destroy() text
Trott Nov 18, 2020
6d1b1c7
src: integrate URL::href() and use in inspector
watilde Nov 1, 2020
2fdf509
http: fix typo in comment
HollowMan6 Nov 20, 2020
42dfda8
doc: remove stray comma in url.md
Trott Nov 19, 2020
0fbade3
doc: add arm64 macOS as experimental
richardlau Nov 20, 2020
d16e862
deps: upgrade npm to 7.0.13
ruyadorno Nov 20, 2020
4a88c73
deps: upgrade npm to 7.0.14
nlf Nov 23, 2020
63e7dc1
2020-11-24, Version 15.3.0 (Current)
codebytere Nov 22, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .editorconfig
Expand Up @@ -7,6 +7,7 @@ indent_size = 2
indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true
quote_type = single

[vcbuild.bat]
end_of_line = crlf
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/linters.yml
Expand Up @@ -24,7 +24,7 @@ jobs:
- name: Environment Information
run: npx envinfo
- name: Lint addon docs
run: NODE=$(which node) make lint-addon-docs
run: NODE=$(command -v node) make lint-addon-docs
lint-cpp:
runs-on: ubuntu-latest
steps:
Expand All @@ -50,7 +50,7 @@ jobs:
- name: Lint docs
run: |
echo "::add-matcher::.github/workflows/remark-lint-problem-matcher.json"
NODE=$(which node) make lint-md
NODE=$(command -v node) make lint-md
lint-js:
runs-on: ubuntu-latest
steps:
Expand All @@ -62,7 +62,7 @@ jobs:
- name: Environment Information
run: npx envinfo
- name: Lint JavaScript files
run: NODE=$(which node) make lint-js
run: NODE=$(command -v node) make lint-js
lint-py:
runs-on: ubuntu-latest
steps:
Expand All @@ -76,7 +76,7 @@ jobs:
- name: Lint Python
run: |
make lint-py-build || true
NODE=$(which node) make lint-py
NODE=$(command -v node) make lint-py
lint-codeowners:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/misc.yml
Expand Up @@ -23,7 +23,7 @@ jobs:
- name: Environment Information
run: npx envinfo
- name: Build
run: NODE=$(which node) make doc-only
run: NODE=$(command -v node) make doc-only
- uses: actions/upload-artifact@v1
with:
name: docs
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/test-macos.yml
Expand Up @@ -25,6 +25,6 @@ jobs:
- name: Environment Information
run: npx envinfo
- name: Build
run: make build-ci -j8 V=1 CONFIG_FLAGS="--error-on-warn --experimental-quic"
run: make build-ci -j2 V=1 CONFIG_FLAGS="--error-on-warn --experimental-quic"
- name: Test
run: make run-ci -j8 V=1 TEST_CI_ARGS="-p actions"
run: make run-ci -j2 V=1 TEST_CI_ARGS="-p actions"
2 changes: 1 addition & 1 deletion BSDmakefile
Expand Up @@ -3,7 +3,7 @@ FLAGS=${.MAKEFLAGS:C/\-J ([0-9]+,?)+//W}

all: .DEFAULT
.DEFAULT:
@which gmake > /dev/null 2>&1 ||\
@command -v gmake > /dev/null 2>&1 ||\
(echo "GMake is required for node.js to build.\
Install and try again" && exit 1)
@gmake ${.FLAGS} ${.TARGETS}
Expand Down
1 change: 1 addition & 0 deletions BUILDING.md
Expand Up @@ -113,6 +113,7 @@ platforms. This is true regardless of entries in the table below.
| Windows | x64, x86 | Windows Server 2012 (not R2) | Experimental | |
| Windows | arm64 | >= Windows 10 | Tier 2 (compiling) / Experimental (running) | |
| macOS | x64 | >= 10.13 | Tier 1 | |
| macOS | arm64 | >= 11 | Experimental | |
| SmartOS | x64 | >= 18 | Tier 2 | |
| AIX | ppc64be >=power7 | >= 7.2 TL02 | Tier 2 | |
| FreeBSD | x64 | >= 11 | Experimental | Downgraded as of Node.js 12 <sup>[7](#fn7)</sup> |
Expand Down
3 changes: 2 additions & 1 deletion CHANGELOG.md
Expand Up @@ -32,7 +32,8 @@ release.
</tr>
<tr>
<td valign="top">
<b><a href="doc/changelogs/CHANGELOG_V15.md#15.2.1">15.2.1</a></b><br/>
<b><a href="doc/changelogs/CHANGELOG_V15.md#15.3.0">15.3.0</a></b><br/>
<a href="doc/changelogs/CHANGELOG_V15.md#15.2.1">15.2.1</a><br/>
<a href="doc/changelogs/CHANGELOG_V15.md#15.2.0">15.2.0</a><br/>
<a href="doc/changelogs/CHANGELOG_V15.md#15.1.0">15.1.0</a><br/>
<a href="doc/changelogs/CHANGELOG_V15.md#15.0.1">15.0.1</a><br/>
Expand Down
8 changes: 4 additions & 4 deletions Makefile
Expand Up @@ -65,8 +65,8 @@ V ?= 0
available-node = \
if [ -x $(PWD)/$(NODE) ] && [ -e $(PWD)/$(NODE) ]; then \
$(PWD)/$(NODE) $(1); \
elif [ -x `which node` ] && [ -e `which node` ] && [ `which node` ]; then \
`which node` $(1); \
elif [ -x `command -v node` ] && [ -e `command -v node` ] && [ `command -v node` ]; then \
`command -v node` $(1); \
else \
echo "No available node, cannot run \"node $(1)\""; \
exit 1; \
Expand Down Expand Up @@ -898,7 +898,7 @@ BINARYNAME=$(TARNAME)-$(PLATFORM)-$(ARCH)
endif
BINARYTAR=$(BINARYNAME).tar
# OSX doesn't have xz installed by default, http://macpkg.sourceforge.net/
HAS_XZ ?= $(shell which xz > /dev/null 2>&1; [ $$? -eq 0 ] && echo 1 || echo 0)
HAS_XZ ?= $(shell command -v xz > /dev/null 2>&1; [ $$? -eq 0 ] && echo 1 || echo 0)
# Supply SKIP_XZ=1 to explicitly skip .tar.xz creation
SKIP_XZ ?= 0
XZ = $(shell [ $(HAS_XZ) -eq 1 -a $(SKIP_XZ) -eq 0 ] && echo 1 || echo 0)
Expand Down Expand Up @@ -1383,7 +1383,7 @@ lint-clean:
$(RM) tools/.*lintstamp
$(RM) .eslintcache

HAS_DOCKER ?= $(shell which docker > /dev/null 2>&1; [ $$? -eq 0 ] && echo 1 || echo 0)
HAS_DOCKER ?= $(shell command -v docker > /dev/null 2>&1; [ $$? -eq 0 ] && echo 1 || echo 0)

ifeq ($(HAS_DOCKER), 1)
DOCKER_COMMAND ?= docker run -it -v $(PWD):/node
Expand Down
4 changes: 2 additions & 2 deletions README.md
Expand Up @@ -402,8 +402,6 @@ For information about the governance of the Node.js project, see
**Santiago Gimeno** &lt;santiago.gimeno@gmail.com&gt;
* [seishun](https://github.com/seishun) -
**Nikolai Vavilov** &lt;vvnicholas@gmail.com&gt;
* [shigeki](https://github.com/shigeki) -
**Shigeki Ohtsu** &lt;ohtsu@ohtsu.org&gt; (he/him)
* [shisama](https://github.com/shisama) -
**Masashi Hirano** &lt;shisama07@gmail.com&gt; (he/him)
* [silverwind](https://github.com/silverwind) -
Expand Down Expand Up @@ -547,6 +545,8 @@ For information about the governance of the Node.js project, see
**Sam Roberts** &lt;vieuxtech@gmail.com&gt;
* [sebdeckers](https://github.com/sebdeckers) -
**Sebastiaan Deckers** &lt;sebdeckers83@gmail.com&gt;
* [shigeki](https://github.com/shigeki) -
**Shigeki Ohtsu** &lt;ohtsu@ohtsu.org&gt; (he/him)
* [stefanmb](https://github.com/stefanmb) -
**Stefan Budeanu** &lt;stefan@budeanu.com&gt;
* [tellnes](https://github.com/tellnes) -
Expand Down
4 changes: 2 additions & 2 deletions android-configure
Expand Up @@ -50,8 +50,8 @@ esac

HOST_OS="linux"
HOST_ARCH="x86_64"
export CC_host=$(which gcc)
export CXX_host=$(which g++)
export CC_host=$(command -v gcc)
export CXX_host=$(command -v g++)

host_gcc_version=$($CC_host --version | grep gcc | awk '{print $NF}')
major=$(echo $host_gcc_version | awk -F . '{print $1}')
Expand Down
28 changes: 28 additions & 0 deletions benchmark/fs/bench-statSync-failure.js
@@ -0,0 +1,28 @@
'use strict';

const common = require('../common');
const fs = require('fs');
const path = require('path');

const bench = common.createBenchmark(main, {
n: [1e6],
statSyncType: ['throw', 'noThrow']
});


function main({ n, statSyncType }) {
const arg = path.join(__dirname, 'non.existent');

bench.start();
for (let i = 0; i < n; i++) {
if (statSyncType === 'noThrow') {
fs.statSync(arg, { throwIfNoEntry: false });
} else {
try {
fs.statSync(arg);
} catch {
}
}
}
bench.end(n);
}
4 changes: 3 additions & 1 deletion benchmark/napi/function_args/binding.cc
Expand Up @@ -123,7 +123,9 @@ void CallWithArguments(const FunctionCallbackInfo<Value>& args) {
}
}

void Initialize(Local<Object> target) {
void Initialize(Local<Object> target,
Local<Value> module,
void* data) {
NODE_SET_METHOD(target, "callWithString", CallWithString);
NODE_SET_METHOD(target, "callWithLongString", CallWithString);

Expand Down
4 changes: 3 additions & 1 deletion benchmark/napi/function_call/binding.cc
Expand Up @@ -7,7 +7,9 @@ void Hello(const v8::FunctionCallbackInfo<v8::Value>& args) {
args.GetReturnValue().Set(c++);
}

void Initialize(v8::Local<v8::Object> target) {
void Initialize(v8::Local<v8::Object> target,
v8::Local<v8::Value> module,
void* data) {
NODE_SET_METHOD(target, "hello", Hello);
}

Expand Down
2 changes: 1 addition & 1 deletion common.gypi
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.17',
'v8_embedder_string': '-node.22',

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

Expand Down
1 change: 1 addition & 0 deletions configure
Expand Up @@ -10,6 +10,7 @@ command -v python3.8 >/dev/null && exec python3.8 "$0" "$@"
command -v python3.7 >/dev/null && exec python3.7 "$0" "$@"
command -v python3.6 >/dev/null && exec python3.6 "$0" "$@"
command -v python3.5 >/dev/null && exec python3.5 "$0" "$@"
command -v python3 >/dev/null && exec python3 "$0" "$@"
command -v python2.7 >/dev/null && exec python2.7 "$0" "$@"
exec python "$0" "$@"
''' "$0" "$@"
Expand Down