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

[v18.x backport] test_runner various features #46360

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
156 commits
Select commit Hold shift + click to select a range
57e9ab1
test: split parallel fs-watch-recursive tests
anonrig Dec 20, 2022
b6965b0
src: check size of args before using for exec_path
awilfox Dec 20, 2022
7ef5086
src: fix UB in overflow checks
bnoordhuis Dec 20, 2022
972c25a
doc: fix wrong output of example in `url.password`
deokjinkim Dec 21, 2022
5d6d8aa
benchmark: include webstreams benchmark
RafaelGSS Dec 21, 2022
b7c0e7e
build: add option to disable shared readonly heap
addaleax Dec 21, 2022
94c8fdd
os: add availableParallelism()
cjihrig Dec 17, 2022
74f4e23
doc: add parallelism note to os.cpus()
cjihrig Dec 18, 2022
0344dce
src: use string_view for FastStringKey implementation
addaleax Dec 21, 2022
e23ab5d
deps: add simdutf dependency
anonrig Nov 30, 2022
96fc1ca
util: add fast path for text-decoder fatal flag
anonrig Dec 15, 2022
dac0f2e
deps: disable avx512 for simutf on benchmark ci
anonrig Dec 17, 2022
837d481
errors: refactor to use a method that formats a list string
daeyeon Dec 23, 2022
73d6fbf
src: fix creating `Isolate`s from addons
addaleax Dec 23, 2022
6539fb2
meta: add `nodejs/test_runner` to CODEOWNERS
aduh95 Dec 23, 2022
d08c762
tools: update GitHub workflow action
VoltrexKeyva Dec 23, 2022
fd6e74e
doc: show output of example in http
deokjinkim Dec 24, 2022
f3a7417
meta: add `nodejs/loaders` to CODEOWNERS
GeoffreyBooth Dec 24, 2022
85202f5
doc: remove port from example in `url.hostname`
deokjinkim Dec 24, 2022
ac649a7
http: improved timeout defaults handling
ShogunPanda Dec 24, 2022
1128a61
doc: fix typos in packages.md
ericmutta Dec 23, 2022
9a7f22d
doc: update error message of example in repl
deokjinkim Dec 24, 2022
cdcd16d
build: fix arm64 cross-compile from powershell
StefanStojanovic Dec 24, 2022
cb767a2
Revert "deps: disable avx512 for simutf on benchmark ci"
anonrig Dec 24, 2022
907068c
buffer: add buffer.isUtf8 for utf8 validation
anonrig Dec 25, 2022
e838349
process,worker: ensure code after exit() effectless
ywave620 Dec 25, 2022
189d05a
doc: replace single executable champion in strategic initiatives doc
RaisinTen Dec 25, 2022
b7ac379
deps: fix updater github workflow job
anonrig Dec 25, 2022
e9b1879
test: print failed JS/parallel tests
GeoffreyBooth Dec 27, 2022
3cfb158
tools: update lint-md-dependencies to [email protected]
nodejs-github-bot Dec 27, 2022
00c36f4
meta: update AUTHORS
nodejs-github-bot Dec 27, 2022
cbff206
deps: update to uvwasi 0.0.14
cjihrig Dec 27, 2022
d4471bf
tools: add url to `AUTHORS` update automation
aduh95 Dec 27, 2022
7c73783
doc: make EventEmitterAsyncResource's `options` as optional
deokjinkim Dec 27, 2022
4041af3
deps: update simdutf to 2.0.9
nodejs-github-bot Dec 27, 2022
4cbb830
http: replace `var` with `const` on code of comment
deokjinkim Dec 28, 2022
6cde457
doc: use `os.availableParallelism()` in async_context and cluster
deokjinkim Dec 28, 2022
34f3912
debugger: refactor console in lib/internal/debugger/inspect.js
debadree25 Dec 28, 2022
ef7f7b2
src: fix crash on OnStreamRead on Windows
santigimeno Dec 28, 2022
2c9b8c5
stream: fix typo in JSDoc
deokjinkim Dec 28, 2022
bdd1b03
doc: fix wrong output of example in `url.protocol`
deokjinkim Dec 28, 2022
6a74b8a
src: fix typo in `node_file.cc`
kwarabei Dec 28, 2022
6e2f118
lib: use `kEmptyObject` as default value for options
deokjinkim Dec 31, 2022
e33ceac
esm: rewrite loader hooks test
GeoffreyBooth Dec 31, 2022
160c26a
stream: refactor to use `validateFunction`
deokjinkim Jan 1, 2023
bf6585c
fs: refactor to use `validateInteger`
deokjinkim Jan 1, 2023
da86e43
doc: use console.error for error case in timers and tls
deokjinkim Jan 1, 2023
11cd248
async_hooks: refactor to use `validateObject`
deokjinkim Jan 1, 2023
d46f974
vm: refactor to use `validateStringArray`
deokjinkim Jan 1, 2023
b489b13
events: fix violation of symbol naming convention
deokjinkim Jan 1, 2023
a7ab63c
test: use `process.hrtime.bigint` instead of `process.hrtime`
deokjinkim Jan 1, 2023
655f9ee
lib: update JSDoc of `getOwnPropertyValueOrDefault`
deokjinkim Jan 1, 2023
638a516
tools: add release host var to promotion script
ruyadorno Jan 1, 2023
5b83bb7
doc: update isUtf8 description
anonrig Jan 1, 2023
eb94b55
tools: update doc to [email protected]
nodejs-github-bot Jan 1, 2023
1d95e9c
tools: update lint-md-dependencies to [email protected]
nodejs-github-bot Jan 1, 2023
1ac1894
meta: update AUTHORS
nodejs-github-bot Jan 1, 2023
d83f7ee
crypto: ensure exported webcrypto EC keys use uncompressed point format
bnoordhuis Dec 30, 2022
f6cd0dc
net: handle socket.write(cb) edge case
santigimeno Jan 1, 2023
4330e35
deps: update corepack to 0.15.3
nodejs-github-bot Jan 2, 2023
eb52663
dgram: sync the old handle state to new handle
theanarkh Jan 3, 2023
e6130a2
src: speed up process.getActiveResourcesInfo()
RaisinTen Jan 3, 2023
c3d6c1d
http: join authorization headers
marco-ippolito Jan 3, 2023
2ebe3d9
crypto: add KeyObject Symbol.toStringTag
panva Jan 3, 2023
ce5d484
tools: fix lint rule recommendation
cjihrig Jan 1, 2023
d790028
lib: fix incorrect use of console intrinsic
cjihrig Jan 1, 2023
c0e7738
node-api: disambiguate napi_add_finalizer
legendecas Nov 10, 2022
de0d282
test,esm: validate more edge cases for dynamic imports
aduh95 Jan 4, 2023
6d2f862
doc: describe argument of `Symbol.for`
deokjinkim Jan 4, 2023
08a9bf8
meta: update comment in `CODEOWNERS` to better reflect current policy
aduh95 Jan 6, 2023
7dcc80c
tools: make update-eslint.sh work with npm@9
lpinca Jan 4, 2023
9d43491
tools: move update-eslint.sh to dep_updaters/
lpinca Jan 4, 2023
a7174a3
doc: include updating release optional step
RafaelGSS Jan 6, 2023
dabc05b
doc: mention how to run ncu-ci citgm
RafaelGSS Jan 6, 2023
032e680
doc: add personal pronouns option
panva Jan 6, 2023
9505c38
src: keep PipeWrap::Open function consistent with TCPWrap
theanarkh Jan 6, 2023
de09c54
doc: fix `event.cancelBubble` documentation
deokjinkim Jan 7, 2023
ee1c2a6
doc: abort controller emits error in child process
debadree25 Jan 7, 2023
5dc3cf8
doc,crypto: fix WebCryptoAPI import keyData and export return
panva Jan 7, 2023
901b51d
src: fix typo in node_snapshotable.cc
kwarabei Jan 7, 2023
a47522c
events: change status of `event.srcElement` to legacy
deokjinkim Jan 7, 2023
1d0b562
crypto: return correct bit length in KeyObject's asymmetricKeyDetails
panva Jan 7, 2023
cf16b40
module: fix unintended mutation
aduh95 Jan 7, 2023
713a8c9
doc: fix spelling in SECURITY.md
vchan-in Jan 7, 2023
0c074dc
assert: remove `assert.snapshot`
MoLow Jan 7, 2023
221fcfe
doc: fix ERR_TLS_RENEGOTIATION_DISABLED text
tniessen Jan 7, 2023
e06ed89
meta: update AUTHORS
nodejs-github-bot Jan 8, 2023
302175f
doc: fix (EC)DHE remark in TLS docs
tniessen Jan 8, 2023
010098b
deps: update simdutf to 2.1.0
nodejs-github-bot Jan 8, 2023
cea44d8
test: add test to once() in event lib
jdiaz-dev Jan 9, 2023
39662eb
src: use constant strings for memory info names
legendecas Jan 9, 2023
88c934f
tools: update lint-md-dependencies to [email protected]
nodejs-github-bot Jan 10, 2023
64a7016
src: use simdutf for converting externalized builtins to UTF-16
addaleax Jan 10, 2023
6df6543
deps: add simdutf version to metadata
roth-mike Jan 10, 2023
0d787a1
doc: remove outdated sections from `maintaining-v8`
aduh95 Jan 10, 2023
d9a6e68
tools: update eslint to 8.31.0
nodejs-github-bot Jan 10, 2023
ce9ab00
test: update Web Events WPT
deokjinkim Jan 10, 2023
0453811
perf_hooks: fix checking range of `options.figures` in createHistogram
deokjinkim Jan 10, 2023
91f5625
doc: duplex and readable from uncaught execption warning
marco-ippolito Jan 11, 2023
4ac006d
events: change status of `event.cancelBubble` to legacy
deokjinkim Jan 11, 2023
94c07d3
deps: add /deps/**/.github/ to .gitignore
lpinca Jan 11, 2023
c630a53
doc: add PerformanceObserver.supportedEntryTypes to doc
theanarkh Jan 11, 2023
0009faa
test: use `os.availableParallelism()`
deokjinkim Dec 29, 2022
b3802b2
benchmark,tools: use os.availableParallelism()
deokjinkim Jan 2, 2023
2a7179e
lib: reuse invalid state errors on webstreams
RafaelGSS Jan 13, 2023
6bb512c
src: remove unnecessary semicolons
codebytere Jan 13, 2023
8706545
doc: make options of readableStream.pipeTo as optional
deokjinkim Jan 13, 2023
fdd5fa4
doc: https update default request timeout
marco-ippolito Jan 13, 2023
225008f
tools: update create-or-update-pull-request-action
targos Jan 13, 2023
f20bab0
src: remove return after abort
codebytere Jan 13, 2023
f7a4cce
http: refactor to use min of validateNumber for maxTotalSockets
deokjinkim Jan 13, 2023
24f2aae
vm: refactor to use validate function
deokjinkim Jan 14, 2023
4e54f85
doc: use "file system" instead of "filesystem"
Trott Jan 14, 2023
36f63d7
tools: add automation for updating postject dependency
RaisinTen Jan 14, 2023
7d899c2
lib: refactor to use validate function
deokjinkim Jan 14, 2023
7768f03
src: distinguish env stopping flags
legendecas Jan 14, 2023
bc58629
crypto: ensure auth tag set for chacha20-poly1305
bnoordhuis Jan 14, 2023
852dc6c
doc: update http.setMaxIdleHTTPParsers arguments
debadree25 Jan 14, 2023
fbc7a02
deps: bump googletest to 2023.01.13
gengjiawen Jan 15, 2023
e28937e
tools: fix macro name in update-undici
almeidx Jan 15, 2023
5c3e7df
tools: update lint-md-dependencies
nodejs-github-bot Jan 15, 2023
090c6c7
meta: update AUTHORS
nodejs-github-bot Jan 15, 2023
574a850
doc: add Node-API media link
KevinEady Jan 15, 2023
6ccf192
lib: use kEmptyObject and update JSDoc in webstreams
deokjinkim Jan 15, 2023
c7abebf
src: hide kMaxDigestMultiplier outside HKDF impl
tniessen Jan 16, 2023
aebdef8
src,lib: the handle keeps loop alive in cluster rr mode
theanarkh Jan 16, 2023
133bf63
doc: update to match changed `--dns-result-order` default
tikotzky Jan 16, 2023
6c8a26c
build: add extra semi check
gengjiawen Jan 13, 2023
ca6adb1
deps: cherrypick simdutf patch
gengjiawen Jan 16, 2023
5666b08
deps: upgrade npm to 9.3.0
npm-cli-bot Jan 17, 2023
aa1cb80
http: writeHead if statusmessage is undefined dont override headers
marco-ippolito Jan 17, 2023
f800be5
src: replace unreachable code with static_assert
tniessen Jan 17, 2023
f670a54
http: refactor to use `validateHeaderName`
deokjinkim Jan 17, 2023
c14f068
esm: mark `importAssertions` as required
aduh95 Jan 12, 2023
af04a4b
doc: add text around collaborative expectations
mhdawson Jan 6, 2023
5f6aab3
crypto: add cipher update/final methods encoding validation
vitpavlenko Jan 17, 2023
ec6f1e9
doc: add note to tls docs about secureContext availability
tgerk Jan 18, 2023
c1f2c8d
test: add fix so that test exits if port 42 is unprivileged
7suyash7 Jan 18, 2023
e518ca8
stream: implement finished() for ReadableStream and WritableStream
debadree25 Jan 18, 2023
bb6e47d
deps: upgrade npm to 9.3.1
npm-cli-bot Jan 18, 2023
8166ff9
crypto: add CryptoKey Symbol.toStringTag
panva Jan 18, 2023
c3dcb94
doc: update events API example to have runnable code
deokjinkim Jan 18, 2023
cbfd076
test: improve test coverage for WHATWG `TextDecoder`
juanarbol Jan 18, 2023
594d638
deps: update simdutf to 3.1.0
nodejs-github-bot Jan 18, 2023
3536efe
src: fix endianness of simdutf
anonrig Jan 18, 2023
2e0f047
test: refactor to avoid mutation of global by a loader
targos Jan 19, 2023
de3c430
events: change status of `event.returnvalue` to legacy
deokjinkim Jan 19, 2023
b6a0922
trace_events: refactor to use `validateStringArray`
deokjinkim Jan 19, 2023
f217492
stream: fix pipeline calling end on destination more than once
debadree25 Jan 19, 2023
2537d33
doc: fix mismatched arguments of `NodeEventTarget`
deokjinkim Jan 19, 2023
1287031
test: update postject to 1.0.0-alpha.4
nodejs-github-bot Jan 14, 2023
53d8bf8
test_runner: avoid swallowing of asynchronously thrown errors
fossamagna Nov 7, 2022
a1d1df2
test_runner: add reporters
MoLow Dec 19, 2022
7ad6b73
module: move test reporter loading
GeoffreyBooth Dec 22, 2022
d90d1b3
test_runner: report `file` in test runner events
MoLow Jan 2, 2023
e304cc5
test_runner: make built in reporters internal
cjihrig Jan 6, 2023
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
  •  
  •  
  •  
42 changes: 29 additions & 13 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
# Node.js Project Codeowners

# 1. Codeowners must always be teams, never individuals
# 2. Each codeowner team should contain at least one TSC member
# 3. PRs touching any code with a codeowner must be signed off by at least one
# person on the code owner team.
# This file does not define any requirements for landing PRs.
# Its purpose is to allow automation of courtesy pings to the
# relevant team(s) when any of the paths listed here are modified.
# Criteria for landing PRs are defined in
# https://github.com/nodejs/node/blob/main/doc/contributing/collaborator-guide.md#code-reviews.
#
# Codeowners must always be teams, never individuals.

# tsc

Expand Down Expand Up @@ -71,16 +74,18 @@
/src/node_http2* @nodejs/http2 @nodejs/net
/src/node_mem* @nodejs/http2

# modules
# modules, including loaders

/doc/api/modules.md @nodejs/modules
/doc/api/esm.md @nodejs/modules
/doc/api/module.md @nodejs/modules
/doc/api/packages.md @nodejs/modules
/lib/module.js @nodejs/modules
/lib/internal/modules/* @nodejs/modules
/lib/internal/bootstrap/loaders.js @nodejs/modules
/src/module_wrap* @nodejs/modules @nodejs/vm
/doc/api/esm.md @nodejs/modules @nodejs/loaders
/doc/api/module.md @nodejs/modules @nodejs/loaders
/doc/api/modules.md @nodejs/modules @nodejs/loaders
/doc/api/packages.md @nodejs/modules @nodejs/loaders
/lib/internal/bootstrap/loaders.js @nodejs/modules @nodejs/loaders
/lib/internal/modules/* @nodejs/modules @nodejs/loaders
/lib/internal/process/esm_loader.js @nodejs/modules @nodejs/loaders
/lib/internal/process/execution.js @nodejs/modules @nodejs/loaders
/lib/module.js @nodejs/modules @nodejs/loaders
/src/module_wrap* @nodejs/modules @nodejs/loaders @nodejs/vm

# Node-API

Expand All @@ -96,6 +101,7 @@
/tools/gyp/**/* @nodejs/gyp

# WASI

/deps/uvwasi/ @nodejs/wasi
/doc/api/wasi.md @nodejs/wasi
/lib/wasi.js @nodejs/wasi
Expand All @@ -113,10 +119,20 @@
/tools/snapshot/* @nodejs/startup

# V8

/deps/v8/* @nodejs/v8-update
/tools/v8_gypfiles/* @nodejs/v8-update

# Actions

/.github/workflows/* @nodejs/actions
/tools/actions/* @nodejs/actions

# Test runner

/test/message/test_runner_* @nodejs/test_runner
/test/parallel/test-runner-* @nodejs/test_runner
/doc/api/test.md @nodejs/test_runner
/lib/test.js @nodejs/test_runner
/lib/internal/main/test_runner.js @nodejs/test_runner
/lib/internal/test_runner/* @nodejs/test_runner
5 changes: 4 additions & 1 deletion .github/workflows/authors.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:
fetch-depth: '0' # This is required to actually get all the authors
persist-credentials: false
- run: tools/update-authors.mjs # Run the AUTHORS tool
- uses: gr2m/create-or-update-pull-request-action@dc1726cbf4dd3ce766af4ec29cfb660e0125e8ee
- uses: gr2m/create-or-update-pull-request-action@77596e3166f328b24613f7082ab30bf2d93079d5
# Creates a PR or update the Action's existing PR, or
# no-op if the base branch is already up-to-date.
env:
Expand All @@ -30,6 +30,9 @@ jobs:
Here are some new additions to the AUTHORS file.
This is an automatically generated PR by the
`authors.yml` GitHub Action, which runs `tools/update-authors.mjs`.
Check the output of
${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
for possible duplicates.
branch: actions/authors-update # Custom branch *just* for this Action.
commit-message: 'meta: update AUTHORS'
labels: meta
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/close-stale-feature-requests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ jobs:
if: github.repository == 'nodejs/node'
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v4
- uses: actions/stale@v7
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-stale: 180
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/close-stalled.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
if: github.repository == 'nodejs/node'
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v4
- uses: actions/stale@v7
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-close: 30
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/find-inactive-collaborators.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ jobs:
run: tools/find-inactive-collaborators.mjs

- name: Open pull request
uses: gr2m/create-or-update-pull-request-action@dc1726cbf4dd3ce766af4ec29cfb660e0125e8ee
uses: gr2m/create-or-update-pull-request-action@77596e3166f328b24613f7082ab30bf2d93079d5
# Creates a PR or update the Action's existing PR, or
# no-op if the base branch is already up-to-date.
env:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/find-inactive-tsc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ jobs:
run: tools/find-inactive-tsc.mjs >> $GITHUB_ENV

- name: Open pull request
uses: gr2m/create-or-update-pull-request-action@dc1726cbf4dd3ce766af4ec29cfb660e0125e8ee
uses: gr2m/create-or-update-pull-request-action@77596e3166f328b24613f7082ab30bf2d93079d5
# Creates a PR or update the Action's existing PR, or
# no-op if the base branch is already up-to-date.
env:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/license-builder.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
with:
persist-credentials: false
- run: ./tools/license-builder.sh # Run the license builder tool
- uses: gr2m/create-or-update-pull-request-action@dc1726cbf4dd3ce766af4ec29cfb660e0125e8ee
- uses: gr2m/create-or-update-pull-request-action@77596e3166f328b24613f7082ab30bf2d93079d5
# Creates a PR or update the Action's existing PR, or
# no-op if the base branch is already up-to-date.
env:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/timezone-update.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ jobs:
run: echo "${{ env.new_version }}" > test/fixtures/tz-version.txt

- name: Open Pull Request
uses: gr2m/create-or-update-pull-request-action@dc1726cbf4dd3ce766af4ec29cfb660e0125e8ee # Create a PR or update the Action's existing PR
uses: gr2m/create-or-update-pull-request-action@77596e3166f328b24613f7082ab30bf2d93079d5 # Create a PR or update the Action's existing PR
env:
GITHUB_TOKEN: ${{ secrets.GH_USER_TOKEN }}
with:
Expand Down
27 changes: 23 additions & 4 deletions .github/workflows/tools.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,11 @@ jobs:
subsystem: tools
label: tools
run: |
cd tools
NEW_VERSION=$(npm view eslint dist-tags.latest)
CURRENT_VERSION=$(node -p "require('./node_modules/eslint/package.json').version")
CURRENT_VERSION=$(node -p "require('./tools/node_modules/eslint/package.json').version")
if [ "$NEW_VERSION" != "$CURRENT_VERSION" ]; then
echo "NEW_VERSION=$NEW_VERSION" >> $GITHUB_ENV
./update-eslint.sh
./tools/dep_updaters/update-eslint.sh
fi
- id: corepack
subsystem: deps
Expand Down Expand Up @@ -78,6 +77,16 @@ jobs:
echo "NEW_VERSION=$NEW_VERSION" >> $GITHUB_ENV
./tools/update-undici.sh
fi
- id: postject
subsystem: deps
label: dependencies
run: |
NEW_VERSION=$(npm view postject dist-tags.latest)
CURRENT_VERSION=$(node -p "require('./test/fixtures/postject-copy/node_modules/postject/package.json').version")
if [ "$NEW_VERSION" != "$CURRENT_VERSION" ]; then
echo "NEW_VERSION=$NEW_VERSION" >> $GITHUB_ENV
./tools/dep_updaters/update-postject.sh
fi
- id: base64
subsystem: deps
label: dependencies
Expand Down Expand Up @@ -125,14 +134,24 @@ jobs:
echo "NEW_VERSION=$NEW_VERSION" >> $GITHUB_ENV
./tools/dep_updaters/update-libuv.sh "$NEW_VERSION"
fi
- id: simdutf
subsystem: deps
label: dependencies
run: |
NEW_VERSION=$(gh api repos/simdutf/simdutf/releases/latest -q '.tag_name|ltrimstr("v")')
CURRENT_VERSION=$(grep "#define SIMDUTF_VERSION" ./deps/simdutf/simdutf.h | sed -n "s/^.*VERSION \(.*\)/\1/p")
if [ "$NEW_VERSION" != "$CURRENT_VERSION" ]; then
echo "NEW_VERSION=$NEW_VERSION" >> $GITHUB_ENV
./tools/dep_updaters/update-simdutf.sh "$NEW_VERSION"
fi
steps:
- uses: actions/checkout@v3
with:
persist-credentials: false
- run: ${{ matrix.run }}
env:
GITHUB_TOKEN: ${{ secrets.GH_USER_TOKEN }}
- uses: gr2m/create-or-update-pull-request-action@dc1726cbf4dd3ce766af4ec29cfb660e0125e8ee
- uses: gr2m/create-or-update-pull-request-action@77596e3166f328b24613f7082ab30bf2d93079d5
# Creates a PR or update the Action's existing PR, or
# no-op if the base branch is already up-to-date.
env:
Expand Down
5 changes: 3 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -136,10 +136,11 @@ tools/*/*.i.tmp
/deps/npm/node_modules/.bin/
# Respect V8's .gitignore
!deps/v8/**
# Ignore the libuv book and GitHub templates
/deps/uv/.github/
# Ignore the libuv book
/deps/uv/docs/code/
/deps/uv/docs/src/guide/
# Ignore .github directories
/deps/**/.github/
# Ignore dependencies fetched by tools/v8/fetch_deps.py
/deps/.cipd

Expand Down
1 change: 1 addition & 0 deletions .mailmap
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,7 @@ David Mark Clements <[email protected]> <[email protected]>
David Siegel <[email protected]> <[email protected]>
DC <[email protected]>
Deepjyoti Mondal <[email protected]>
Deokjin Kim <[email protected]> <[email protected]>
dnlup <[email protected]> <[email protected]>
Domenic Denicola <[email protected]>
Domenic Denicola <[email protected]> <[email protected]>
Expand Down
8 changes: 8 additions & 0 deletions AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -3587,5 +3587,13 @@ Gabriela Gutierrez <[email protected]>
emirgoren <[email protected]>
Pulkit Gupta <[email protected]>
Fabien Michel <[email protected]>
A. Wilcox <[email protected]>
Daniel Lemire <[email protected]>
Eric Mutta <[email protected]>
Vadim <[email protected]>
Aaron Friel <[email protected]>
Vaishno Chaitanya <[email protected]>
Jonathan Diaz <[email protected]>
Mike Roth <[email protected]>

# Generated by tools/update-authors.mjs
22 changes: 22 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -1316,6 +1316,28 @@ The externally maintained libraries used by Node.js are:
[email protected] [email protected]
"""

- simdutf, located at deps/simdutf, is licensed as follows:
"""
Copyright 2021 The simdutf authors

Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
"""

- npm, located at deps/npm, is licensed as follows:
"""
The npm application
Expand Down
3 changes: 2 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,7 @@ with-code-cache test-code-cache:

out/Makefile: config.gypi common.gypi node.gyp \
deps/uv/uv.gyp deps/llhttp/llhttp.gyp deps/zlib/zlib.gyp \
deps/simdutf/simdutf.gyp \
tools/v8_gypfiles/toolchain.gypi tools/v8_gypfiles/features.gypi \
tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
$(PYTHON) tools/gyp_node.py -f make
Expand Down Expand Up @@ -1549,7 +1550,7 @@ CONFLICT_RE=^>>>>>>> [[:xdigit:]]+|^<<<<<<< [[:alpha:]]+

# Related CI job: node-test-linter
lint-ci: lint-js-ci lint-cpp lint-py lint-md lint-addon-docs lint-yaml-build lint-yaml
@if ! ( grep -IEqrs "$(CONFLICT_RE)" --exclude="error-message.js" benchmark deps doc lib src test tools ) \
@if ! ( grep -IEqrs "$(CONFLICT_RE)" --exclude="error-message.js" --exclude="merge-conflict.json" benchmark deps doc lib src test tools ) \
&& ! ( $(FIND) . -maxdepth 1 -type f | xargs grep -IEqs "$(CONFLICT_RE)" ); then \
exit 0 ; \
else \
Expand Down
8 changes: 7 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,12 @@ For information on using Node.js, see the [Node.js website][].
The Node.js project uses an [open governance model](./GOVERNANCE.md). The
[OpenJS Foundation][] provides support for the project.

Contributors are expected to act in a collaborative manner to move
the project forward. We encourage the constructive exchange of contrary
opinions and compromise. The [TSC](./GOVERNANCE.md#technical-steering-committee)
reserves the right to limit or block contributors who repeatedly act in ways
that discourage, exhaust, or otherwise negatively affect other participants.

**This project has a [Code of Conduct][].**

## Table of contents
Expand Down Expand Up @@ -399,7 +405,7 @@ For information about the governance of the Node.js project, see
* [oyyd](https://github.com/oyyd) -
**Ouyang Yadong** <<[email protected]>> (he/him)
* [panva](https://github.com/panva) -
**Filip Skokan** <<[email protected]>>
**Filip Skokan** <<[email protected]>> (he/him)
* [puzpuzpuz](https://github.com/puzpuzpuz) -
**Andrey Pechkurov** <<[email protected]>> (he/him)
* [Qard](https://github.com/Qard) -
Expand Down
4 changes: 2 additions & 2 deletions SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ We often choose to work to improve our APIs based on those reports and issue
fixes either in regular or security releases depending on how much of a risk to
the community they pose.

### Examples of vulneratibities
### Examples of vulnerabilities

#### Improper Certificate Validation (CWE-295)

Expand Down Expand Up @@ -156,7 +156,7 @@ the community they pose.
and modification of that configuration can affect the confidentiality of
data protected using the Node.js APIs this is considered a vulnerability.

### Examples of non-vulneratibities
### Examples of non-vulnerabilities

#### Malicious Third-Party Modules (CWE-1357)

Expand Down
2 changes: 1 addition & 1 deletion benchmark/_http-benchmarkers.js
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ class WrkBenchmarker {
const args = [
'-d', duration,
'-c', options.connections,
'-t', Math.min(options.connections, require('os').cpus().length || 8),
'-t', Math.min(options.connections, require('os').availableParallelism() || 8),
`${scheme}://127.0.0.1:${options.port}${options.path}`,
];
for (const field in options.headers) {
Expand Down
45 changes: 45 additions & 0 deletions benchmark/process/getActiveResourcesInfo.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
'use strict';

const { createBenchmark } = require('../common.js');

const { connect, createServer } = require('net');
const { open } = require('fs');

const bench = createBenchmark(main, {
handlesCount: [1e4],
requestsCount: [1e4],
timeoutsCount: [1e4],
immediatesCount: [1e4],
n: [1e5],
});

function main({ handlesCount, requestsCount, timeoutsCount, immediatesCount, n }) {
const server = createServer().listen();
const clients = [];
for (let i = 0; i < handlesCount; i++) {
clients.push(connect({ port: server.address().port }));
}

for (let i = 0; i < requestsCount; i++) {
open(__filename, 'r', () => {});
}

for (let i = 0; i < timeoutsCount; ++i) {
setTimeout(() => {}, 1);
}

for (let i = 0; i < immediatesCount; ++i) {
setImmediate(() => {});
}

bench.start();
for (let i = 0; i < n; ++i) {
process.getActiveResourcesInfo();
}
bench.end(n);

for (const client of clients) {
client.destroy();
}
server.close();
}
Loading