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

Release proposal: v10.12.0 #23313

Merged
merged 254 commits into from Oct 10, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
254 commits
Select commit Hold shift + click to select a range
fb68ef2
lib: added common.restoreStderr(); to end of file
abelmark Aug 23, 2018
dcce2d6
test: add tests to check error in dns.lookupService.
Sep 17, 2018
a7f4d5e
lib: refactor variable declarations
ZYSzys Sep 1, 2018
4219093
crypto: add API for key pair generation
tniessen Sep 2, 2018
cc82194
crypto: allow promisifying generateKeyPair
tniessen Sep 10, 2018
5e7b108
lib: set Symbol.toStringTag of DOMException
joyeecheung Sep 18, 2018
0140a98
lib: make DOMException attributes configurable and enumerable
joyeecheung Aug 27, 2018
ace6e07
src: initialize pid variable before goto
nornagon Sep 19, 2018
d38ce82
test: remove common.hasSmallICU
Trott Sep 18, 2018
83278b2
test: fix flaky key pair generation test
tniessen Sep 20, 2018
ef5d90d
doc: add digitalinfinity to collaborators
digitalinfinity Sep 20, 2018
00dd973
doc: specify fast-tracking
BridgeAR Sep 18, 2018
b0e86ea
doc: update maintaining V8 guide
targos Sep 17, 2018
a22485d
tools: add bash completion for node
danbev May 14, 2018
70ccec2
test: increase coverage for worker_threads
Trott Sep 19, 2018
948dc71
build: make config verbose on CI
refack Sep 18, 2018
24675a4
http2: add origin frame support
jasnell Sep 17, 2018
15b91b9
doc: add links for repl.ReplServer
Trott Sep 21, 2018
d3bc862
doc: match program and console output in synopsis.md
MohammedEssehemy Sep 21, 2018
43e3cf9
test: do not export common.leakedGlobals()
Trott Sep 19, 2018
9c36827
tty: make `readStream.setRawMode()` return `this`
ORESoftware Sep 19, 2018
b6cd185
src: add CheckOptions to Options classes
danbev Sep 19, 2018
badc38f
http2: do not falsely emit 'aborted' on push
apapirovski Sep 15, 2018
4db9e36
build,doc: remove outdated `lint-md-build`
targos Sep 21, 2018
9de6b26
test: remove string literals for strictEquals/notStrictEquals
Sep 17, 2018
c29734c
fs: improve fs.watch ENOSPC error message
addaleax Jul 17, 2018
39d7699
deps: cherry-pick d48bd16 from upstream V8
Sep 23, 2018
b1ffda6
repl: improve error output
BridgeAR Aug 21, 2018
e16dd6d
repl: refactor ERR_SCRIPT_EXECUTION_INTERRUPTED stack handling
BridgeAR Aug 21, 2018
92e0f38
util: remove outdated TODO
BridgeAR Aug 24, 2018
90bbab6
benchmark: refactor util benchmarks
BridgeAR Aug 13, 2018
5a13e66
util: improve inspect performance
BridgeAR Aug 12, 2018
077e7e0
util: fix indentationLvl when exceeding max call stack size
BridgeAR Sep 10, 2018
a2a1ebf
util: use a shared symbol for util.inspect.custom
chocolateboy May 20, 2018
68eaa87
util: add order option to `.inspect()`
BridgeAR Sep 10, 2018
b48dc0b
doc,test: fix inspect's sorted compare function
targos Sep 21, 2018
5d4bec3
test: fix flaky sequential/test-fs-watch-system-limit
addaleax Sep 23, 2018
ab032e4
src: refactor win32 `DebugProcess()` to use RAII cleanup
addaleax Sep 20, 2018
cb3062a
src: remove calls to SetWrapperClassId()
joyeecheung Sep 20, 2018
8bf004b
http2: add ping event
jasnell Sep 21, 2018
76453f1
src: replace deprecated uses of FunctionTemplate::GetFunction
gahaas Sep 21, 2018
e5efdba
deps: upgrade to libuv 1.23.1
cjihrig Sep 21, 2018
4b976df
tls: fix DEP0083 after upgrading to OpenSSL 1.1.0
tniessen Sep 19, 2018
29a9e84
doc: remove outdated notes on stdio in workers
addaleax Sep 24, 2018
0519689
doc: fix heading levels in C++ style guide
addaleax Sep 22, 2018
7e45daf
fs: implement mkdir recursive (mkdirp)
Aug 9, 2018
a3b3485
test: add comment describing test-fs-mkdir
Aug 21, 2018
f1b1b73
url: provide pathToFileURL and fileURLToPath
guybedford Aug 24, 2018
adaf530
test: check parameter type of fs.mkdir()
Aug 30, 2018
600c225
module: add createRequireFunction method
devsnek Mar 14, 2018
1c3a2eb
inspector: enable Inspector JS API in workers
eugeneo Sep 9, 2018
b5889d0
worker: only stop inspector if started
addaleax Sep 18, 2018
15c7c57
doc: add missing metadata for dns.lookup
tniessen Sep 19, 2018
91b4102
doc: add missing metadata for recursive mkdir
tniessen Sep 19, 2018
6b2e2ff
doc: improve metadata for http.request
tniessen Sep 19, 2018
24073ce
doc: add callback parameters of worker.terminate()
SerayaEryn Sep 21, 2018
f6fc7e7
tools: .eslintrc.js messages "default" typo style
lovinglyy Sep 14, 2018
e7be1ed
doc: fix optional parameters in n-api.md
ralphtheninja Sep 21, 2018
0bc4529
crypto: remove unnecessary usage of goto
tniessen Sep 22, 2018
56b1a3c
src: refactor zlib dictionary to STL vector
addaleax Sep 22, 2018
d72867e
src: make `ZCtx::Init()` non-static
addaleax Sep 22, 2018
90f1200
src: define zlib constants in node_zlib.cc
addaleax Sep 22, 2018
87565c7
doc: require two approvals to land changes
Trott Aug 10, 2018
2f659a3
src: use RAII cleanup in node_i18n.cc
addaleax Sep 22, 2018
109aa63
src: cache and resue isolate and contex pointers
gireeshpunathil Sep 22, 2018
e668815
deps: cherry-pick dbfcc48 from upstream V8
alexkozy Aug 10, 2018
fa83382
src: added URL::FromFilePath method
alexkozy Aug 30, 2018
f66e9ab
inspector: implemented V8InspectorClient::resourceNameToUrl
alexkozy Aug 30, 2018
66484b8
process: add `multipleResolves` event
BridgeAR Aug 9, 2018
c29e5ac
cli: normalize `_` → `-` when parsing options
addaleax Sep 22, 2018
16f7f52
inspector: workers debugging
eugeneo Sep 9, 2018
5d70652
deps: fix Array.prototype.forEach on v8 6.8
ripsawridge Sep 17, 2018
7639390
worker,coverage: support V8 coverage generation
addaleax Sep 18, 2018
ebf36cd
win,msi: install tools for native modules
joaocgreis Aug 29, 2018
2b7e18d
win,msi: highlight installation of 3rd-party tools
tniessen Sep 21, 2018
d9d9d23
errors: fix ERR_SOCKET_BAD_PORT message
Gioyik Sep 22, 2018
4d61c34
src: fix a typo in the comment
gireeshpunathil Sep 25, 2018
f3d09b6
src: simplify `MessagePort` construction code a bit
addaleax Sep 23, 2018
2e30a68
worker: hide MessagePort init function behind symbol
addaleax Sep 23, 2018
c34db7a
worker: reduce `MessagePort` prototype to documented API
addaleax Sep 23, 2018
c54e423
test: remove unnecessary assertions
addaleax Sep 23, 2018
2888f80
crypto: deduplicate cipher initialization code
tniessen Sep 21, 2018
14327ae
doc: improve instruction to purple merge
refack Sep 21, 2018
a566f0f
test: improve reliability of test-gc-net-timeout
Trott Sep 25, 2018
69d3c08
test: improve reliability of test-gc-http-client
Trott Sep 25, 2018
52c6ee7
test: improve test-gc-http-client-timeout
Trott Sep 25, 2018
4cda83d
test: improve test-gc-http-client-onerror
Trott Sep 25, 2018
d1826fe
http2: close fd in doSendFileFD()
cjihrig Sep 24, 2018
9fa3813
doc: edit fast-tracking section
cjihrig Sep 24, 2018
2731d08
doc: add links for fs.createWriteStream()
Trott Sep 26, 2018
cf284c8
win,msi: install Boxstarter from elevated shell
joaocgreis Sep 21, 2018
3b895d1
win,msi: display license notes before installing tools
joaocgreis Sep 24, 2018
9109187
doc: update guide for assert team
Trott Sep 25, 2018
f38eff2
lib: change abstract equal to strict equal
ZYSzys Sep 20, 2018
d68dfa9
test: console.table when `null` in data
ZYSzys Sep 22, 2018
3e4af49
test: add dns.onlookupall() to increase coverage
Sep 19, 2018
85c4ecb
test: test undefined in util
ZYSzys Sep 7, 2018
f486186
test: remove setImmediate from timeout test
Trott Sep 24, 2018
48c1c42
test: improve debugging information for http2 test
Trott Sep 24, 2018
fb03faa
build: move addons message in Makefile
Trott Sep 27, 2018
074b7af
crypto: enable auto cert chaining for BoringSSL
nornagon Aug 3, 2018
bb6530b
fs: consistently return symlink type from readdir
ajafff Sep 11, 2018
39c2a3f
test: improve test-gc-http-client-connaborted
Trott Sep 25, 2018
cbcf5f8
doc: deeper link to downloads site
refack Sep 25, 2018
4bd3b6e
src: refactor crypto code with RAII cleanup
gireeshpunathil Sep 22, 2018
a51d839
crypto: remove unnecessary calls to TLS_method()
danbev Sep 25, 2018
c40e2dd
lib: reword help text for clarity
gireeshpunathil Sep 22, 2018
efeb49d
test: increase test coverage for fs.promises read
ratracegrad Sep 11, 2018
bebd7b2
test: fix flaky test-gc-net-timeout
Trott Sep 27, 2018
bb5c689
doc: add table of contents in BUILDING.md
ZYSzys Sep 28, 2018
3101096
doc: fix casing in stream.md
Sintendo Sep 29, 2018
22f51a6
cluster: use Map to track callbacks
cjihrig Sep 27, 2018
64f840a
cluster: use Map to track round robin workers
cjihrig Sep 27, 2018
2dd157f
cluster: use Map to track indexes
cjihrig Sep 27, 2018
0f133eb
cluster: use Map to track handles in cluster child
cjihrig Sep 27, 2018
cb0d823
cluster: use Map to track handles in master
cjihrig Sep 27, 2018
e791abe
doc: formalize `auto` usage in C++ style guide
addaleax Sep 22, 2018
7d7dc16
src: unique_ptrs in few lambdas
gireeshpunathil Sep 27, 2018
d572f60
build: remove unnecessary Makefile output
Trott Sep 27, 2018
23525b0
test: replace localhost with os.hostname in fs-readfilesync
lundibundi Sep 26, 2018
ce7fad5
src: use unique_ptr for obj in SetWeak lambda
danbev Sep 27, 2018
20a4f14
src: make req_wrap a unique_ptr in AfterConnect
danbev Sep 27, 2018
1cbc2ee
tools: update ESLint to 5.6.1
cjihrig Sep 28, 2018
ef00e5c
tools: fix cpplint --quiet option
danbev Sep 25, 2018
f4cffff
build: add --quiet to lint-cpp
danbev Sep 25, 2018
0202c6c
src: remove unused locale.h
danbev Sep 27, 2018
64689ed
src: remove unused using declarations
danbev Sep 27, 2018
54ca0e1
cluster: move handle tracking out of utils
cjihrig Sep 27, 2018
d22ee2c
url: use foreach-style C++ loop
tniessen Sep 27, 2018
818db40
doc: move perf tools and APIs to Tier 3
mmarchini Sep 17, 2018
e71a72f
doc: add contents table to CONTRIBUTING.md
ZYSzys Sep 28, 2018
39e3ef7
Replace vague 'may not' with definitive 'will not'
Sep 28, 2018
1a92335
tools: unify .editorconfig rules for 2-space
silverwind Sep 29, 2018
398c0e0
crypto: replace gotos
tniessen Sep 27, 2018
a2c1ce2
src: fix indentation for `AsyncResource`
addaleax Sep 30, 2018
4436a3d
timers: use custom inspection for linked lists
BridgeAR Sep 26, 2018
9b30a63
test: improve test-gc-http-client
Trott Sep 28, 2018
21490c2
doc: remove recommendation to use node-eps
richardlau Sep 28, 2018
ce006eb
doc: fix minor typo (to early -> too early)
justin0022 Oct 2, 2018
548934d
doc: fix incorrect anchoring (#vcbuild.bat -> #vcbuildbat)
justin0022 Oct 2, 2018
25bf1f5
stream: improve buffer list inspection
BridgeAR Sep 26, 2018
9c96573
crypto: add support for PEM-level encryption
tniessen Sep 28, 2018
1a21cf1
crypto: make PEM parsing RFC7468-compliant
tniessen Sep 29, 2018
f2dfebb
util: update definition of DISALLOW_COPY_AND_ASSIGN macro
nitsakh Sep 25, 2018
b2a1cf3
test: mark some flakes
refack Oct 1, 2018
8191bee
doc: simplify support section of README
Trott Sep 30, 2018
180099a
build: enabling pgo at configure
Jun 29, 2018
d8cedf5
tools,gyp: don't force build actions with multiple outputs
refack Sep 29, 2018
7391738
tools,gyp: cosmetic change to GYP `make` generator outputs
refack Sep 27, 2018
aae0ece
build: encapsulate node/inspector gyp scafolding
refack Sep 27, 2018
7d21cc2
build: reduce chance of unneeded rebuild
refack Sep 30, 2018
f98d441
crypto: extract throwInvalidArgType function
danbev Sep 19, 2018
8fe62f8
http2: don't send trailers on a closed connection
edevil Sep 28, 2018
44db98a
test: add more descriptive err message to assert
Josh-Broomfield Sep 27, 2018
001881f
http2: set nghttp2_option_set_no_closed_streams
davedoesdev Sep 27, 2018
71901d6
doc: improve Release Types text in README
Trott Oct 1, 2018
1553e21
doc: clarify assigning issues to the TSC
fhinkel Sep 7, 2018
6912376
doc: move gibfahn to TSC Emeritus
gibfahn Oct 3, 2018
748d9d2
test: add process.stdin.end() TTY regression test
mcollina Sep 17, 2018
003d85d
doc: remove GA tracking
bnoordhuis Sep 25, 2018
eb87219
doc: improve Download section of README
Trott Oct 2, 2018
e9a0cff
src: deprecate V8 date conversion helpers
addaleax Sep 30, 2018
2da6f62
src: deprecate `UVException()` without `Isolate*`
addaleax Sep 30, 2018
ed01b38
doc: use stronger language about security of vm
devsnek Sep 25, 2018
49b0ec4
build: add loader path to rpath for cctest
rubys Sep 29, 2018
9352d9d
test: harden test-gc-http-client-timeout
lundibundi Sep 30, 2018
2b8f569
build,deps: refactor and fix v8.gyp
refack Sep 30, 2018
e93c94c
deps: add no-strict-aliasing to ICU cflags
danbev Sep 26, 2018
8f5fb6f
src: clean up zlib write code
addaleax Sep 30, 2018
5836b9f
doc: specify cluster worker.kill() caveat
cjihrig Sep 29, 2018
06b5ef3
test: terminate cluster worker in infinite loop
cjihrig Oct 4, 2018
a6b55c7
zlib: move, rename, document internal params() cb
addaleax Sep 30, 2018
a656268
Revert "tools,gyp: don't force build actions with multiple outputs"
thefourtheye Oct 4, 2018
d7031df
tools: allow input for TTY tests
addaleax Sep 24, 2018
5a30674
process: allow reading from stdout/stderr sockets
addaleax Sep 24, 2018
cb68188
test: add stdin writable regression test
addaleax Sep 24, 2018
1010ef5
tools: fix ICU shrinker and docs
srl295 Oct 3, 2018
de4d688
build: cleanup in .gitignore
refack Sep 29, 2018
0f236c8
build: add pgo specific variables to common.gypi
lundibundi Sep 26, 2018
27c5e96
doc: leave pull requests open for 72 hours
Trott Aug 12, 2018
894210e
src: add virtual desctructor to Options class
danbev Oct 2, 2018
db8d99d
crypto: add virtual dtor to KeyPairGenerationConfig
danbev Oct 2, 2018
aa48192
inspector: add virtual destructor to WorkerDelegate
danbev Oct 2, 2018
42e67a4
tools: remove useless assignment from configure.py
devsnek Sep 25, 2018
b0dc0ca
build: make lint-addon-docs quiet
danbev Oct 2, 2018
cf17759
build: toggle lint-cpp using verbose (V) variable
danbev Oct 4, 2018
efdb326
assert: improve diff output
BridgeAR Sep 10, 2018
77de1be
util: move inspect in separate file
BridgeAR Sep 13, 2018
f08373f
deps: cherry-pick 64-bit hash seed commits from V8
hashseed Oct 4, 2018
e2a6e05
tools: apply linting to first commit in PRs
Trott Aug 22, 2018
a070842
test: remove obsolete domain test
Oct 3, 2018
bd59d4e
doc: fix code snippets in tls.md
oyyd Oct 3, 2018
bf17708
tty: document `WriteStream.cursorTo()` and others
ur0 Sep 17, 2018
e283206
doc: improve `stream.Writable` ctor encoding option docs
addaleax Oct 3, 2018
e5bfab0
doc: add guide about abi stability
Oct 2, 2018
e3550f2
deps: backport 958b761 from upstream V8
mmarchini Sep 17, 2018
085de6f
test: swap arguments in strictEqual()
DeltaEvo Oct 1, 2018
6943fa9
doc: shorten intro of README.md
Trott Sep 25, 2018
5b76313
doc: improve instructions for verifying binaries
Trott Oct 3, 2018
ef0f7e6
doc: shorten pull request wait time to 48 hours
Trott Sep 25, 2018
80964d3
doc: improve API Documentation text in README
Trott Oct 4, 2018
45e0080
test: remove flaky designation for test
Trott Sep 14, 2018
df4ade7
doc: use backticks around file names in README.md
Trott Oct 6, 2018
33e3eb4
doc: update onboarding task
Trott Oct 6, 2018
11c6745
doc: update author-ready label terms
vsemozhetbyt Oct 3, 2018
5a83967
src: use JS inheritance for `AsyncWrap`
addaleax Sep 23, 2018
390fc85
src: implement the new EmbedderGraph::AddEdge()
joyeecheung Aug 3, 2018
950ccee
src: name EmbededderGraph edges and use class names for nodes
joyeecheung Oct 5, 2018
46c7d0d
deps: increase V8 deprecation levels
addaleax Sep 29, 2018
f1cb8ab
doc: remove ABI guide
Oct 7, 2018
4c54f89
doc: fix minor typo in n-api.md
Dzenly Oct 7, 2018
e749a28
zlib: use common owner symbol to access JS wrapper
addaleax Oct 1, 2018
037063c
doc: remove 72-hour mentions in pull-requests.md
Trott Oct 7, 2018
9749d48
benchmark: increase lint compliance
Trott Oct 7, 2018
b523f13
test: add module require tests for certain package.json errors
TomCoded Oct 5, 2018
5f450f3
crypto: replace goto SSL_CTX_use_certificate_chain
danbev Sep 26, 2018
26c36ef
crypto: remove node::crypto::CheckResult
tniessen Oct 2, 2018
95bdf37
deps: update nghttp2 to 1.34.0
jasnell Oct 5, 2018
7b327ea
http2: add RFC 8441 extended connect protocol support
jasnell Oct 5, 2018
fbbb25b
doc: edit building-node text
Trott Oct 8, 2018
eee71d6
doc: add util.inspect() legacy signature
siddhant1 Oct 2, 2018
b2d3445
test: read() on dir on AIX does not return EISDIR
bnoordhuis Oct 8, 2018
315bf25
src: fix ToObject() usage in node_crypto.cc
cjihrig Oct 6, 2018
70abcf2
test: remove eslint-disable from fixtures
Trott Oct 9, 2018
18cbde5
zlib: simplify flushing mechanism
addaleax Sep 30, 2018
2b77b94
streams: refactor ReadableStream asyncIterator creation and a few fixes
devsnek Sep 23, 2018
a0e8e7f
doc: standardize versions in stream module doc
Trott Oct 7, 2018
9dd47bc
doc: fix minor typo in streams.md
Trott Oct 7, 2018
402867c
src: reduce variable scope in cares_wrap.cc
cjihrig Oct 6, 2018
902ba0e
src: reduce variable scope in module_wrap.cc
cjihrig Oct 6, 2018
36c4307
src: remove unneeded variables in node_crypto.cc
cjihrig Oct 6, 2018
046fd98
src: reduce variable scope in node_url.cc
cjihrig Oct 6, 2018
56c2f57
src: reduce variable scope in node_trace_writer.cc
cjihrig Oct 6, 2018
740741b
src: reduce variable scope in node_worker.cc
cjihrig Oct 6, 2018
4d761d4
src: reduce variable scope in stream_base.cc
cjihrig Oct 6, 2018
5ff4300
doc: add link to ABI guide
Oct 6, 2018
df54db6
test: remove internal errorCache property
Trott Oct 7, 2018
12ff395
assert: remove internal errorCache property
Trott Oct 7, 2018
2d7e4e0
benchmark,doc,lib,src,test,tools: fix typos
brandon93s Oct 7, 2018
76cb52c
deps: upgrade to libuv 1.23.2
cjihrig Oct 8, 2018
384221e
util: support BigInt in util.format
Aug 2, 2018
7c0d6ac
doc: simplify governance info in README intro
Trott Sep 25, 2018
acc4a76
tools: make Travis commit linting more robust
Trott Oct 10, 2018
62a2c81
doc: simplify and clarify README language
Trott Oct 8, 2018
a65bb42
net: use connect() instead of connect.call()
JacksonTian Oct 6, 2018
c4aa033
build: make configure script verbose by default
targos Oct 10, 2018
5228ec4
src: fix ToObject() usage in exceptions.cc
cjihrig Oct 7, 2018
cd69e1b
src: fix ToObject() usage in node_http_parser.cc
cjihrig Oct 7, 2018
e6484c2
build: restore js2c direct dependency on config.gypi
refack Oct 9, 2018
4a276cc
2018-10-10, Version 10.12.0 (Current)
targos Oct 7, 2018
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
  •  
  •  
  •  
30 changes: 8 additions & 22 deletions .editorconfig
@@ -1,40 +1,26 @@
root = true

[*]
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
end_of_line = lf
indent_size = 2
indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true

[vcbuild.bat]
end_of_line = crlf

[{lib,test,tools}/**.js]
indent_style = space
indent_size = 2

[src/**.{h,cc}]
indent_style = space
indent_size = 2

[test/*.py]
indent_style = space
indent_size = 2

[configure]
indent_style = space
indent_size = 2

[Makefile]
indent_style = tab
indent_size = 8
indent_style = tab

[{deps}/**]
indent_style = ignore
indent_size = ignore
charset = ignore
end_of_line = ignore
indent_size = ignore
indent_style = ignore
trim_trailing_whitespace = ignore
charset = ignore

[{test/fixtures,deps,tools/node_modules,tools/gyp,tools/icu,tools/msvs}/**]
insert_final_newline = false
22 changes: 11 additions & 11 deletions .eslintrc.js
Expand Up @@ -123,27 +123,28 @@ module.exports = {
'no-proto': 'error',
'no-redeclare': 'error',
'no-restricted-modules': ['error', 'sys'],
/* eslint-disable max-len */
'no-restricted-properties': [
'error',
{
object: 'assert',
property: 'deepEqual',
message: 'Use assert.deepStrictEqual().',
message: 'Use `assert.deepStrictEqual()`.',
},
{
object: 'assert',
property: 'notDeepEqual',
message: 'Use assert.notDeepStrictEqual().',
message: 'Use `assert.notDeepStrictEqual()`.',
},
{
object: 'assert',
property: 'equal',
message: 'Use assert.strictEqual() rather than assert.equal().',
message: 'Use `assert.strictEqual()` rather than `assert.equal()`.',
},
{
object: 'assert',
property: 'notEqual',
message: 'Use assert.notStrictEqual() rather than assert.notEqual().',
message: 'Use `assert.notStrictEqual()` rather than `assert.notEqual()`.',
},
{
property: '__defineGetter__',
Expand All @@ -154,7 +155,6 @@ module.exports = {
message: '__defineSetter__ is deprecated.',
}
],
/* eslint-disable max-len */
// If this list is modified, please copy the change to lib/.eslintrc.yaml
// and test/.eslintrc.yaml.
'no-restricted-syntax': [
Expand All @@ -169,31 +169,31 @@ module.exports = {
},
{
selector: "CallExpression[callee.object.name='assert'][callee.property.name='rejects'][arguments.length<2]",
message: 'assert.rejects() must be invoked with at least two arguments.',
message: '`assert.rejects()` must be invoked with at least two arguments.',
},
{
selector: "CallExpression[callee.object.name='assert'][callee.property.name='strictEqual'][arguments.2.type='Literal']",
message: 'Do not use a literal for the third argument of assert.strictEqual()'
},
{
selector: "CallExpression[callee.object.name='assert'][callee.property.name='throws'][arguments.1.type='Literal']:not([arguments.1.regex])",
message: 'Use an object as second argument of assert.throws()',
message: 'Use an object as second argument of `assert.throws()`.',
},
{
selector: "CallExpression[callee.object.name='assert'][callee.property.name='throws'][arguments.length<2]",
message: 'assert.throws() must be invoked with at least two arguments.',
message: '`assert.throws()` must be invoked with at least two arguments.',
},
{
selector: "CallExpression[callee.name='setTimeout'][arguments.length<2]",
message: 'setTimeout() must be invoked with at least two arguments.',
message: '`setTimeout()` must be invoked with at least two arguments.',
},
{
selector: "CallExpression[callee.name='setInterval'][arguments.length<2]",
message: 'setInterval() must be invoked with at least 2 arguments.',
message: '`setInterval()` must be invoked with at least two arguments.',
},
{
selector: 'ThrowStatement > CallExpression[callee.name=/Error$/]',
message: 'Use new keyword when throwing an Error.',
message: 'Use `new` keyword when throwing an `Error`.',
}
],
/* eslint-enable max-len */
Expand Down
10 changes: 4 additions & 6 deletions .gitignore
Expand Up @@ -15,6 +15,7 @@
!.mailmap
!.nycrc
!.travis.yml
!.eslintrc.yaml

core
vgcore.*
Expand All @@ -38,14 +39,15 @@ icu_config.gypi
.eslintcache
node_trace.*.log
coverage/
!**/node_modules/**/coverage

/out

# various stuff that VC++ produces/uses
Debug/
!**/node_modules/debug/
!deps/v8/src/debug/
Release/
!**/node_modules/**/release
!doc/blog/**
*.sln
!nodemsi.sln
Expand All @@ -64,7 +66,6 @@ ipch/
*.VC.opendb
.vs/
.vscode/
/deps/v8/src/debug/obj
/*.exe

/config.mk
Expand Down Expand Up @@ -98,6 +99,7 @@ deps/openssl/openssl.xml
deps/openssl/openssl.target.mk
deps/zlib/zlib.target.mk

!deps/npm/node_modules
# not needed and causes issues for distro packagers
deps/npm/node_modules/.bin/

Expand Down Expand Up @@ -130,8 +132,4 @@ deps/uv/docs/src/guide/
# ignore VS compiler output unhandled by V8's .gitignore
deps/v8/gypfiles/Debug/
deps/v8/gypfiles/Release/
deps/v8/src/Debug/
deps/v8/src/Release/
deps/v8/src/inspector/Debug/
deps/v8/src/inspector/Release/
deps/v8/third_party/eu-strip/
6 changes: 3 additions & 3 deletions .travis.yml
Expand Up @@ -8,12 +8,12 @@ matrix:
include:
- name: "Linter"
node_js: "latest"
env:
env:
- NODE=$(which node)
install:
- make lint-md-build
script:
- make lint
# Lint the first commit in the PR.
- git log $TRAVIS_COMMIT_RANGE --pretty=format:'%h' --no-merges | tail -1 | xargs npx core-validate-commit --no-validate-metadata
- name: "Test Suite"
install:
- ./configure
Expand Down
45 changes: 41 additions & 4 deletions BUILDING.md
@@ -1,13 +1,50 @@
# Building Node.js

Depending on what platform or features you require, the build process may
differ slightly. After you've successfully built a binary, running the
test suite to validate that the binary works as intended is a good next step.
Depending on what platform or features you need, the build process may
differ. After you've built a binary, running the
test suite to confirm that the binary works as intended is a good next step.

If you can reproduce a test failure consistently, search for it in the
If you can reproduce a test failure, search for it in the
[Node.js issue tracker](https://github.com/nodejs/node/issues) or
file a new issue.

## Table of Contents

* [Supported platforms](#supported-platforms)
* [Input](#input)
* [Strategy](#strategy)
* [Supported platforms](#supported-platforms-1)
* [Supported toolchains](#supported-toolchains)
* [Unix](#unix)
* [AIX](#aix)
* [Windows](#windows)
* [OpenSSL asm support](#openssl-asm-support)
* [Building Node.js on supported platforms](#building-nodejs-on-supported-platforms)
* [Unix/macOS](#unixmacos)
* [Prerequisites](#prerequisites)
* [Building Node.js](#building-nodejs-1)
* [Running Tests](#running-tests)
* [Building the documentation](#building-the-documentation)
* [Building a debug build](#building-a-debug-build)
* [Windows](#windows-1)
* [Android/Android-based devices (e.g. Firefox OS)](#androidandroid-based-devices-eg-firefox-os)
* [`Intl` (ECMA-402) support](#intl-ecma-402-support)
* [Default: `small-icu` (English only) support](#default-small-icu-english-only-support)
* [Build with full ICU support (all locales supported by ICU)](#build-with-full-icu-support-all-locales-supported-by-icu)
* [Unix/macOS](#unixmacos-1)
* [Windows](#windows-2)
* [Building without Intl support](#building-without-intl-support)
* [Unix/macOS](#unixmacos-2)
* [Windows](#windows-3)
* [Use existing installed ICU (Unix/macOS only)](#use-existing-installed-icu-unixmacos-only)
* [Build with a specific ICU](#build-with-a-specific-icu)
* [Unix/macOS](#unixmacos-3)
* [Windows](#windows-4)
* [Building Node.js with FIPS-compliant OpenSSL](#building-nodejs-with-fips-compliant-openssl)
* [Building Node.js with external core modules](#building-nodejs-with-external-core-modules)
* [Unix/macOS](#unixmacos-4)
* [Windows](#windows-5)

## Supported platforms

This list of supported platforms is current as of the branch/release to
Expand Down
3 changes: 2 additions & 1 deletion CHANGELOG.md
Expand Up @@ -31,7 +31,8 @@ release.
</tr>
<tr>
<td valign="top">
<b><a href="doc/changelogs/CHANGELOG_V10.md#10.11.0">10.11.0</a></b><br/>
<b><a href="doc/changelogs/CHANGELOG_V10.md#10.12.0">10.12.0</a></b><br/>
<a href="doc/changelogs/CHANGELOG_V10.md#10.11.0">10.11.0</a><br/>
<a href="doc/changelogs/CHANGELOG_V10.md#10.10.0">10.10.0</a><br/>
<a href="doc/changelogs/CHANGELOG_V10.md#10.9.0">10.9.0</a><br/>
<a href="doc/changelogs/CHANGELOG_V10.md#10.8.0">10.8.0</a><br/>
Expand Down
61 changes: 34 additions & 27 deletions COLLABORATOR_GUIDE.md
Expand Up @@ -83,10 +83,11 @@ necessary.
### Author ready pull requests

A pull request that is still awaiting the minimum review time is considered
_author ready_ as soon as the CI has been started, it has at least one approval,
and it has no outstanding review comments. Please always make sure to add the
`author ready` label to the PR in that case and remove it again as soon as that
condition is not met anymore.
_author ready_ as soon as the CI has been started, it has at least two approvals
(one Collaborator approval is enough if the pull request has been open for more
than 7 days), and it has no outstanding review comments. Please always make sure
to add the `author ready` label to the PR in that case and remove it again as
soon as that condition is not met anymore.

### Handling own pull requests

Expand All @@ -112,10 +113,11 @@ comment that explains why the PR does not require a CI run.

### Code Reviews

All pull requests must be reviewed and accepted by a Collaborator with
sufficient expertise who is able to take full responsibility for the
change. In the case of pull requests proposed by an existing
Collaborator, an additional Collaborator is required for sign-off.
At least two Collaborators must approve a pull request before the pull request
lands. (One Collaborator approval is enough if the pull request has been open
for more than 7 days.) Approving a pull request indicates that the Collaborator
accepts responsibility for the change. Approval must be from Collaborators who
are not authors of the change.

In some cases, it may be necessary to summon a GitHub team to a pull request for
review by @-mention.
Expand Down Expand Up @@ -170,10 +172,10 @@ agenda.
### Waiting for Approvals

Before landing pull requests, sufficient time should be left for input
from other Collaborators. In general, leave at least 48 hours during the
week and 72 hours over weekends to account for international time
differences and work schedules. However, certain types of pull requests
can be fast-tracked and may be landed after a shorter delay. For example:
from other Collaborators. In general, leave at least 48 hours to account for
international time differences and work schedules. However, certain types of
pull requests can be fast-tracked and may be landed after a shorter delay. For
example:

* Focused changes that affect only documentation and/or the test suite:
* `code-and-learn` tasks typically fall into this category.
Expand All @@ -183,9 +185,12 @@ can be fast-tracked and may be landed after a shorter delay. For example:
* Regressions that happen right before a release, or reported soon after.

When a pull request is deemed suitable to be fast-tracked, label it with
`fast-track`. The pull request can be landed once 2 or more Collaborators
approve both the pull request and the fast-tracking request, and the necessary
CI testing is done.
`fast-track` and add a comment that collaborators may upvote. Please mention any
Collaborators that previously approved the pull request. If someone disagrees
with the fast-tracking request, remove the label and leave a comment indicating
why the pull request should not be fast-tracked. The pull request can be landed
once two or more Collaborators approve both the pull request and the
fast-tracking request, and the necessary CI testing is done.

### Testing and CI

Expand Down Expand Up @@ -408,10 +413,6 @@ Pull requests introducing new core modules:
New core modules must be landed with a [Stability Index][] of Experimental,
and must remain Experimental until a semver-major release.

For new modules that involve significant effort, non-trivial additions to
Node.js or significant new capabilities, an [Enhancement Proposal][] is
recommended but not required.

### Additions to N-API

N-API provides an ABI stable API that we will have to support in future
Expand Down Expand Up @@ -486,16 +487,20 @@ level.

### Involving the TSC

Collaborators may opt to elevate pull requests or issues to the [TSC][] for
discussion by assigning the `tsc-review` label or @-mentioning the
`@nodejs/tsc` GitHub team. This should be done where a pull request:
Collaborators may opt to elevate pull requests or issues to the [TSC][].
This should be done where a pull request:

- is labeled `semver-major`, or
- has a significant impact on the codebase, or
- is inherently controversial, or
- has failed to reach consensus amongst the Collaborators who are
actively participating in the discussion.

Assign the `tsc-review` label or @-mention the
`@nodejs/tsc` GitHub team if you want to elevate an issue to the [TSC][].
Do not use the GitHub UI on the right hand side to assign to
`@nodejs/tsc` or request a review from `@nodejs/tsc`.

The TSC should serve as the final arbiter where required.

## Landing Pull Requests
Expand Down Expand Up @@ -695,9 +700,12 @@ $ git rev-list upstream/master...HEAD | xargs core-validate-commit
Optional: When landing your own commits, force push the amended commit to the
branch you used to open the pull request. If your branch is called `bugfix`,
then the command would be `git push --force-with-lease origin master:bugfix`.
When the pull request is closed, this will cause the pull request to
show the purple merged status rather than the red closed status that is
usually used for pull requests that weren't merged.
Don't manually close the PR, GitHub will close it automatically later after you
push it upstream, and will mark it with the purple merged status rather than the
red closed status. If you close the PR before GitHub adjusts its status, it will
show up as a 0 commit PR and the changed file history will be empty. Also if you
push upstream before you push to your branch, GitHub will close the issue with
red status so the order of operations is important.

Time to push it:

Expand Down Expand Up @@ -846,7 +854,7 @@ LTS working group and the Release team.
| --- | --- |
| `benchmark/*` | @nodejs/benchmarking, @mscdex |
| `doc/*`, `*.md` | @nodejs/documentation |
| `lib/assert` | @nodejs/testing |
| `lib/assert` | @nodejs/assert |
| `lib/async_hooks` | @nodejs/async\_hooks for bugs/reviews (+ @nodejs/diagnostics for API) |
| `lib/buffer` | @nodejs/buffer |
| `lib/child_process` | @nodejs/child\_process |
Expand Down Expand Up @@ -889,7 +897,6 @@ When things need extra attention, are controversial, or `semver-major`:
If you cannot find who to cc for a file, `git shortlog -n -s <file>` may help.

["Merge Pull Request"]: https://help.github.com/articles/merging-a-pull-request/#merging-a-pull-request-on-github
[Enhancement Proposal]: https://github.com/nodejs/node-eps
[Stability Index]: doc/api/documentation.md#stability-index
[TSC]: https://github.com/nodejs/TSC
[_Deprecation_]: https://en.wikipedia.org/wiki/Deprecation
Expand Down