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

v10.6.0 proposal #21629

Merged
merged 109 commits into from Jul 4, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
109 commits
Select commit Hold shift + click to select a range
f461ae2
test: move test-benchmark-path to sequential
Trott Jun 18, 2018
29593e2
test: run misc benchmark only once in tests
Trott May 31, 2018
9030e93
benchmark: create napi benchmark directory
Trott Jun 15, 2018
23f22bc
test: check that benchmark tests are minimal
Trott May 30, 2018
c214403
build: fix building with --build-v8-with-gn
hashseed Jun 14, 2018
2d6b337
process: remove unused arguments in setup()
joyeecheung Jun 17, 2018
9cef72d
test: remove the third string literal argument from assert.strictEqual()
kevintab95 Jun 19, 2018
aa864ba
dns: add promisified dns module
cjihrig Jun 11, 2018
18179f8
dns: remove Resolver#cancel() from promises API
cjihrig Jun 20, 2018
fb2592f
workers,trace_events: set thread name for workers
jasnell Jun 10, 2018
e7776c6
crypto: refer to correct deprecation id in comment
targos Jun 19, 2018
2377aec
src: fix debugging for multiple categories
addaleax Jun 20, 2018
81046f9
test: move net bytes-per-chunk test to parallel
addaleax Jun 13, 2018
3ba9a44
http2: fix memory leak when headers are not emitted
addaleax Jun 16, 2018
9e31684
doc: fix missing parentPort link in worker_threads
watson Jun 20, 2018
5cd78ba
module: experimental modules runMain separation
guybedford Jun 15, 2018
e944749
doc: add example of using filter with cctest
danbev Jun 19, 2018
d7ff752
test: add tests for process.setgroups()
Jun 11, 2018
e038b2f
test: assert process.setgroups is undefined on windows
Jun 13, 2018
8a997a5
doc: note synchronous part of child_process.spawn
davisjam Jun 9, 2018
5d72189
deps: cherry-pick 5dd3395 from upstream V8
Jun 18, 2018
a526b4e
atomis: add notify alias
devsnek Jun 19, 2018
a1580a0
tools: fix typo in .eslintrc.js
boneskull Jun 21, 2018
75e07fe
src: introduce inspect-brk-node
danbev May 18, 2018
8e5104b
doc: explain HTTP writeHead()'s fast path behavior
gireeshpunathil Jun 12, 2018
e0bcb6a
src: avoid common case heap allocation
bnoordhuis Jun 19, 2018
881d99b
net: validate fds passed to Socket constructor
cjihrig Jun 20, 2018
50f833d
net: report uv_tcp_open() errors
cjihrig Jun 20, 2018
6b40ba1
test: avoid running fsync on directory on AIX
jBarz Jun 13, 2018
4663d1c
deps: backport aa6ce3e from upstream V8
Jun 4, 2018
37a5c8c
deps: cherry-pick b20faff from upstream V8
Jun 11, 2018
ab27e0e
deps: cherry-pick acc336c from upstream V8
Jun 18, 2018
62ca2cf
deps: cherry-pick 70c4340 from upstream V8
Jun 21, 2018
2fa49a3
test: add tests for end event of stream.Duplex
Jun 13, 2018
361e4f2
doc: fix list format in cli.md
vsemozhetbyt Jun 22, 2018
42f5ff8
build: add crypto check to markdown lint target
danbev Jun 14, 2018
c324b85
doc: sort error codes in errors.md
ChALkeR Jun 23, 2018
5bb6e5c
doc: restore documentation for two error codes
ChALkeR Jun 23, 2018
02bc99d
doc: correct parameters, return types in crypto.md
ZaneHannanAU Jun 20, 2018
91f111f
test: remove string error from strictEqual
deleteman Jun 12, 2018
140836a
util: fix comment typos
goto-bus-stop Jun 20, 2018
bfac7be
test: move net bytes-per-chunk test to sequential
Trott Jun 22, 2018
357eaf3
test: lint fixes for ESLint update
cjihrig May 20, 2018
21d73a5
tools: update ESLint to 5.0.0
cjihrig Jun 23, 2018
2359823
doc: fix HTTP req/res 'close' description
ronag May 30, 2018
dbd810e
doc: show options arg to new Worker is optional
watson Jun 24, 2018
dad7821
doc: fix sort in sections, lists, tables of dns.md
vsemozhetbyt Jun 24, 2018
fefa57a
crypto: remove outdated comment
TimothyGu Jun 24, 2018
cd2b80c
process: avoid using the same fd for ipc and stdio
cjihrig Jun 22, 2018
245c885
test: fix test-net-socket-constructor
santigimeno Jun 21, 2018
f162939
deps: upgrade to libuv 1.21.0
cjihrig Jun 22, 2018
de195d5
doc: update LICENSE file
Trott Jun 22, 2018
5a71e79
http2: track memory allocated by nghttp2
addaleax Jun 14, 2018
6f80e30
build: build addons in parallel on Windows
bzoz Jun 19, 2018
54227ee
src: add native debugging code to workers
addaleax Jun 20, 2018
ba8ee17
win, build: fix building on 32-bit machines
bzoz Jun 21, 2018
7cc979d
util: recover from maximum call stack size
BridgeAR May 14, 2018
6cca5a8
doc: update AUTHORS list
targos Jun 22, 2018
fe6d707
deps: float 0c27d793 from openssl (ECDSA blinding)
rvagg Jun 15, 2018
4647f61
doc: Improve doc for Http2 headers object
Flarna Jun 12, 2018
f5fc412
doc: clarify setServers() methods in dns.md
Shivang44 Jun 22, 2018
a48d98e
deps: float fix on node-gyp in npm tree
MylesBorins May 10, 2018
45a8376
crypto: fix UB in computing max message size
bnoordhuis Jun 22, 2018
b30840d
deps: fix gypi sysroot settings on V8
Jun 24, 2018
c050279
doc: add bcoe as collaborator
Jun 25, 2018
2250631
build: fail on instrumentation errors
Jun 1, 2018
7d2fe5d
build: improve Travis CI settings
TimothyGu Jun 22, 2018
d1b750d
inspector: add debugging for WebSocket messages
TimothyGu Jun 22, 2018
97b2186
win, build: generate .sln only when necessary
bzoz Jun 7, 2018
511d610
doc: updated docs to include --experimental-worker flag
jsmrcaga Jun 24, 2018
9f2bf3c
test: add some test cases for validateOffsetLengthWrite
kakts Jun 7, 2018
4fc05ac
vm: add Script.createCodeCache()
devsnek Apr 25, 2018
7e10697
test: make cctest fixture use node::NewIsolate
danbev Jun 20, 2018
8f1aa3c
test: use aliases for smart pointers in fixture
danbev Jun 20, 2018
206e5bf
worker: support relative paths
itaysabato Jun 26, 2018
76ef7ac
build, win: make LTCG optional
bzoz Jun 6, 2018
a7505c0
build: speed up startup with V8 code cache
joyeecheung Jun 18, 2018
2e07d45
fs: undeprecate lchown()
cjihrig Jun 23, 2018
504c0cd
doc: fix code example and formatting in crypto.md
WispProxy Jun 24, 2018
bc28398
doc: separate unrelated info about child_process.exec()
charmander Jun 25, 2018
0f1d737
doc: fix function name in process.md
Jun 25, 2018
623cf11
test: skip non-doc files in test-make-doc checks
vsemozhetbyt Jun 25, 2018
eb8d60b
src: move context bootstrap to js
devsnek Jun 25, 2018
0a1e8e0
per_context: add warning to Atomics.wake
devsnek Jun 25, 2018
51a434f
doc: fix some typos in deprecations.md and vm.md
vsemozhetbyt Jun 27, 2018
45fe865
inspector: use js_app.html as the landing page for chrome devtools
GauthamBanasandra Jun 18, 2018
7acfacb
src: add null check to GetCategoryGroupEnabled()
cjihrig Jun 26, 2018
e081866
doc: add DataView to appropriate crypto methods
Flarna Jun 26, 2018
eb6dcf2
doc: fix typo in fs.md
hugojosefson Jun 28, 2018
49706b4
workers: replace message types string by constants
starkwang Jun 26, 2018
41c4b2c
workers: add test for messagePort.onmessage
targos Jun 24, 2018
bb0795a
src: slightly simplify `FSEventWrap`
addaleax Jun 25, 2018
3d3dbae
build: remove requirement to re-run ./configure
addaleax Jun 16, 2018
e7abde4
test: add a request-response test for MessageChannel
itaysabato Jun 25, 2018
0d98fe6
lib: fix segfault with --without-intl
Trott Jun 29, 2018
91384bf
n-api: add API for asynchronous functions
Jun 17, 2018
29299cc
esm: loader hook URL validation and error messages
guybedford Jun 18, 2018
b28fd37
test: fix ESM test
addaleax Jun 30, 2018
a8a7575
src: remove extra `ReadStop()` call
addaleax Jun 25, 2018
0550a58
src: remove StreamBase::kFlagHasWritev
addaleax Jun 25, 2018
95fa3c6
test: add worker prefix to test-message* tests
targos Jun 24, 2018
1e5afb7
errors: fix ERR_MISSING_DYNAMIC_INSTANTIATE_HOOK
ChALkeR Jun 23, 2018
cadc74d
doc: fix heading level in errors.md
vsemozhetbyt Jul 1, 2018
24bc6ab
doc: fix some typos in N-API docs
vsemozhetbyt Jul 1, 2018
1894d6c
repl: fix tab completion for object properties with special char
starkwang Jun 27, 2018
1d73ba8
doc: fix some links
vsemozhetbyt Jul 1, 2018
c870372
n-api: fix compiler warning
cjihrig Jun 29, 2018
5d6d6fb
tools: build all.html by combining generated HTML
rubys Jun 27, 2018
4716fd1
2018-07-04, Version 10.6.0 (Current)
targos Jul 3, 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
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
3 changes: 2 additions & 1 deletion .eslintrc.js
Expand Up @@ -131,7 +131,7 @@ module.exports = {
{
object: 'assert',
property: 'equal',
message: 'Use assert.astrictEqual() rather than assert.equal().',
message: 'Use assert.strictEqual() rather than assert.equal().',
},
{
object: 'assert',
Expand Down Expand Up @@ -243,6 +243,7 @@ module.exports = {
'node-core/no-unescaped-regexp-dot': 'error',
},
globals: {
Atomics: false,
BigInt: false,
BigInt64Array: false,
BigUint64Array: false,
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Expand Up @@ -69,6 +69,7 @@ ipch/

/config.mk
/config.gypi
/config.status
/config_fips.gypi
*-nodegyp*
/gyp-mac-tool
Expand Down
19 changes: 16 additions & 3 deletions .mailmap
Expand Up @@ -2,6 +2,7 @@ Aaron Bieber <aaron@bolddaemon.com> <deftly@gmail.com>
Aaron Heckmann <aaron.heckmann@gmail.com> <aaron.heckmann+github@gmail.com>
Aayush Ahuja <aayush.a@directi.com> aayush.a <aayush.a@directi.com>
Abe Fettig <abefettig@gmail.com> <abe@fettig.net>
Abhimanyu Vashisht <abhimanyuvashisht.av@gmail.com>
Akito Ito <akito0107@gmail.com> <akito_ito@r.recruit.co.jp>
Alejandro Estrada <estrada9166@gmail.com>
Alejandro Estrada <estrada9166@gmail.com> <estrada9166@hotmail.com>
Expand All @@ -17,7 +18,9 @@ Alexis Campailla <alexis@janeasystems.com> <orangemocha@github.com>
Alexis Sellier <self@cloudhead.net>
Alexis Sellier <self@cloudhead.net> <alexis@cloudhead.io>
Alfred Cepeda <AlfredJCepeda@gmail.com> ALJCepeda <AlfredJCepeda@gmail.com>
Allen Yonghuang Wang <helloshuangzi@gmail.com>
Amery <amery@xiangfa.org> 子丶言 <amery@xiangfa.org>
Amit Bendor <ajbendor@gmail.com>
Andreas Offenhaeuser <offenhaeuser@gmail.com> anoff <offenhaeuser@gmail.com>
Andy Bettisworth <andy.bettisworth@accreu.com>
Angel Stoyanov <atstojanov@gmail.com> atstojanov <atstojanov@gmail.com>
Expand Down Expand Up @@ -69,10 +72,11 @@ Chew Choon Keat <choonkeat@gmail.com>
Chris Andrews <cpandrews8@gmail.com> cpandrews8 <cpandrews8@gmail.com>
Chris Johnson <chris.s.johnson4@gmail.com>
Chris Young <chris.young@tinder.com> <chris.young@gotinder.com>
Claudio Rodriguez <cjrodr@yahoo.com> <cr@fansworld.tv>
Colin Ihrig <cjihrig@gmail.com>
Christophe Naud-Dulude <christophe.naud.dulude@gmail.com> Chris911 <christophe.naud.dulude@gmail.com>
Christopher Lenz <cmlenz@gmail.com> <chris@lamech.local>
Claudio Rodriguez <cjrodr@yahoo.com> <cr@fansworld.tv>
Colin Ihrig <cjihrig@gmail.com>
Corey Martin <coreymartin496@gmail.com>
Damien Simonin Feugas <damien.feugas@gmail.com>
Dan Kaplun <dbkaplun@gmail.com> <dan@beardtree.com>
Dan Williams <dan@igniter.com> Dan.Williams <daniel@chat.za.net>
Expand All @@ -94,13 +98,15 @@ David Mark Clements <david.clements@nearform.com> davidmarkclements <david.cleme
David Mark Clements <david.clements@nearform.com> davidmarkclements <huperekchuno@googlemail.com>
David Siegel <david@artcom.de> <david.siegel@artcom.de>
DC <dcposch@dcpos.ch> dcposch@dcpos.ch <dcposch@dcpos.ch>
Deepjyoti Mondal <djmdeveloper060796@gmail.com>
Domenic Denicola <domenic@domenicdenicola.com>
Domenic Denicola <domenic@domenicdenicola.com> <d@domenic.me>
Doug Wade <doug@dougwade.io> doug.wade <doug.wade@redfin.com>
Eduard Burtescu <eddy_me08@yahoo.com>
Einar Otto Stangvik <einaros@gmail.com>
Elliott Cable <me@ell.io>
Eric Phetteplace <phette23@gmail.com>
Ernesto Salazar <ernestoalbertosalazar@gmail.com>
Erwin W. Ramadhan <erwinwahyuramadhan@gmail.com> erwinwahyura <erwinwahyuramadhan@gmail.com>
Eugene Obrezkov <ghaiklor@gmail.com> ghaiklor <ghaiklor@gmail.com>
EungJun Yi <semtlenori@gmail.com>
Expand Down Expand Up @@ -226,6 +232,7 @@ Marcin Zielinski <marzelin@gmail.com> marzelin <marzelin@gmail.com>
Marti Martz <thalamew@q.com>
Martial James Jefferson <martial.jefferson@gmail.com>
Martijn Schrage <martijn@oblomov.com> Oblosys <martijn@oblomov.com>
Masato Ohba <over.rye@gmail.com>
Matheus Marchini <matheusdot@gmail.com> <matheus@sthima.com.br>
Matheus Marchini <matheusdot@gmail.com> <matheus@sthima.com>
Matt Lang <matt@mediasuite.co.nz> matt-in-a-hat <matt@mediasuite.co.nz>
Expand Down Expand Up @@ -253,6 +260,7 @@ Miroslav Bajtoš <miroslav@strongloop.com> <miro.bajtos@gmail.com>
Mitar Milutinovic <mitar.git@tnode.com>
Myles Borins <myles.borins@gmail.com> <mborins@us.ibm.com>
Myles Borins <myles.borins@gmail.com> <mylesborins@google.com>
Nam Nguyen <nam.nguyen@de.ibm.com>
Nebu Pookins<nebu@nebupookins.net>
Netto Farah <nettofarah@gmail.com> nettofarah <nettofarah@gmail.com>
Nicholas Kinsey <pyrotechnick@feistystudios.com>
Expand Down Expand Up @@ -298,6 +306,7 @@ Ryan Mahan <ryanmahan97@gmail.com>
Ryan Scheel <ryan.havvy@gmail.com> Ryan Scheel <Ryan.havvy@gmail.com>
Ryan Scheel <ryan.havvy@gmail.com> Ryan Scheel (Havvy) <ryan.havvy@gmail.com>
Saad Quadri <saad@saadq.com> saadq <saad@saadquadri.com>
Sagir Khan <sagir.khan@gmail.com>
Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Sam Mikes <smikes@cubane.com>
Sam P Gallagher-Bishop <samgallagherb@gmail.com> <SPGB@users.noreply.github.com>
Expand All @@ -316,6 +325,7 @@ Shannen Saez <shannenlaptop@gmail.com>
Shaopeng Zhang <szhang351@bloomberg.net> szhang351 <szhang351@bloomberg.net>
Shigeki Ohtsu <ohtsu@ohtsu.org> <ohtsu@iij.ad.jp>
Shigeki Ohtsu <ohtsu@ohtsu.org> <ohtsu@d.jp>
Shivang Saxena <shivangs44@gmail.com>
Shiya Luo <luo.shiya@gmail.com> shiya <luo.shiya@gmail.com>
Siddharth Mahendraker <siddharth_mahen@hotmail.com> <siddharth_mahen@me.com>
Simon Willison <simon@simonwillison.net>
Expand Down Expand Up @@ -343,6 +353,7 @@ Taylor Woll <taylor.woll@microsoft.com> taylor.woll <tawoll@ntdev.microsoft.com>
Thomas Watson Steen <w@tson.dk> Thomas Watson <w@tson.dk>
Timothy O. Peters <timotewpeters@gmail.com>
Timur Shemsedinov <timur.shemsedinov@gmail.com> tshemsedinov <timur.shemsedinov@gmail.com>
Ting Shao <ting.shao@intel.com>
Toby Farley <tobyfarley@gmail.com> tobyfarley <tobyfarley@gmail.com>
Toby Stableford <tobytronics@gmail.com> toboid <toboid@users.noreply.github.com>
Todd Kennedy <todd@selfassembled.org> <toddself@users.noreply.github.com>
Expand Down Expand Up @@ -378,7 +389,8 @@ Vincent Voyer <v@fasterize.com>
Vladimir de Turckheim <vlad2t@hotmail.com>
vsemozhetbyt <vsemozhetbyt@gmail.com> Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Wang Xinyong <wang.xy.chn@gmail.com> <wangxy.chn@gmail.com>
Weijia Wang <381152119@qq.com> starkwang <381152119@qq.com>
Weijia Wang <381152119@qq.com>
Weijia Wang <381152119@qq.com> starkewang <starkewang@tencent.com>
Wei-Wei Wu <wuxx1045@umn.edu>
Willi Eggeling <email@wje-online.de>
Will Hayslett <william.hayslettjr@gmail.com>
Expand All @@ -390,6 +402,7 @@ Yazhong Liu <yorkiefixer@gmail.com> Yazhong Liu <l900422@vip.qq.com>
Yazhong Liu <yorkiefixer@gmail.com> Yorkie <l900422@vip.qq.com>
Yazhong Liu <yorkiefixer@gmail.com> Yorkie <yorkiefixer@gmail.com>
Yazhong Liu <yorkiefixer@gmail.com> Yorkie Liu <yorkiefixer@gmail.com>
Yingchen Xue <yingchenxue@qq.com>
Yoshihiro KIKUCHI <yknetg@gmail.com>
Yosuke Furukawa <yosuke.furukawa@gmail.com> <furukawa.yosuke@dena.jp>
Yuichiro MASUI <masui@masuidrive.jp>
Expand Down
5 changes: 1 addition & 4 deletions .travis.yml
Expand Up @@ -18,9 +18,6 @@ matrix:
script:
- make -j2 test-ci
before_install:
- export HOMEBREW_NO_AUTO_UPDATE=1 # work around https://github.com/travis-ci/travis-ci/issues/7456
- if [ $TRAVIS_OS_NAME = osx ]; then brew install ccache; fi
- export PATH="/usr/local/opt/ccache/libexec:$PATH"
- export CXX="ccache clang++ -Qunused-arguments"
- export CC="ccache clang -Qunused-arguments"
- export CC="ccache clang -Qunused-arguments -Wno-unknown-warning-option"
- export JOBS=2
39 changes: 39 additions & 0 deletions AUTHORS
Expand Up @@ -2197,5 +2197,44 @@ TSUYUSATO Kitsune <make.just.on@gmail.com>
daGo <daniel1kdago@gmail.com>
Lambdac0re <Lambdac0re@users.noreply.github.com>
Yulong Wang <f.s@qq.com>
David Goldstein <dgoldstein@dropbox.com>
Francesco Falanga <f.falanga@palmabit.com>
Maya Lekova <apokalyptra@gmail.com>
RakshithNM <rakshith_bellare@outlook.com>
David Humphrey <david.humphrey@senecacollege.ca>
Ting Shao <ting.shao@intel.com>
Alex Fernández <alex.fernandez@logtrust.com>
Yingchen Xue <yingchenxue@qq.com>
Dan Kang <dann.kang@gmail.com>
Masato Ohba <over.rye@gmail.com>
я котик пур-пур <mvasilkov@gmail.com>
Corey Martin <coreymartin496@gmail.com>
chainhelen <chainhelen@gmail.com>
Tim Seckinger <seckinger.tim@gmail.com>
Nam Nguyen <nam.nguyen@de.ibm.com>
Nicholas Dangles <nicholasdangles@gmail.com>
Amit Bendor <ajbendor@gmail.com>
Abhimanyu Vashisht <abhimanyuvashisht.av@gmail.com>
Sagir Khan <sagir.khan@gmail.com>
Kael Zhang <i+github@kael.me>
Unknown <bdistin@gmail.com>
Blaine Bublitz <blaine.bublitz@gmail.com>
Shailesh Shekhawat <sshekhawat356@gmail.com>
Davis Okoth <davisokoth@gmail.com>
Shivang Saxena <shivangs44@gmail.com>
Lucas Liepert <lucasdliepert@gmail.com>
Miklos Suveges <miklos.suveges@gmail.com>
Ernesto Salazar <ernestoalbertosalazar@gmail.com>
Tommaso Allevi <tomallevi@gmail.com>
Evandro Oliveira <evandrofranco@gmail.com>
Kenny Yuan <kaining.yuan@intel.com>
Hristijan Gjorgjievski <hristijan_kiko123@hotmail.com>
Aliaksei Tuzik <aliaksei.tuzik@gmail.com>
Misty De Meo <mistydemeo@gmail.com>
James Kylstra <kylstraj@oregonstate.edu>
Shelley Vohr <shelley.vohr@gmail.com>
Deepjyoti Mondal <djmdeveloper060796@gmail.com>
Brett Kiefer <brett@trello.com>
Kevin Thomas <kevintab95@gmail.com>

# Generated by tools/update-authors.sh
3 changes: 2 additions & 1 deletion CHANGELOG.md
Expand Up @@ -33,7 +33,8 @@ release.
</tr>
<tr>
<td valign="top">
<b><a href="doc/changelogs/CHANGELOG_V10.md#10.5.0">10.5.0</a></b><br/>
<b><a href="doc/changelogs/CHANGELOG_V10.md#10.6.0">10.6.0</a></b><br/>
<a href="doc/changelogs/CHANGELOG_V10.md#10.5.0">10.5.0</a><br/>
<a href="doc/changelogs/CHANGELOG_V10.md#10.4.1">10.4.1</a><br/>
<a href="doc/changelogs/CHANGELOG_V10.md#10.4.0">10.4.0</a><br/>
<a href="doc/changelogs/CHANGELOG_V10.md#10.3.0">10.3.0</a><br/>
Expand Down
11 changes: 5 additions & 6 deletions LICENSE
Expand Up @@ -93,11 +93,7 @@ The externally maintained libraries used by Node.js are:

- HTTP Parser, located at deps/http_parser, is licensed as follows:
"""
http_parser.c is based on src/http/ngx_http_parse.c from NGINX copyright
Igor Sysoev.

Additional changes are licensed under the same terms as NGINX and
copyright Joyent, Inc. and other Node contributors. All rights reserved.
Copyright Joyent, Inc. and other Node contributors.

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to
Expand Down Expand Up @@ -612,7 +608,7 @@ The externally maintained libraries used by Node.js are:

- OpenSSL, located at deps/openssl, is licensed as follows:
"""
Copyright (c) 1998-2017 The OpenSSL Project. All rights reserved.
Copyright (c) 1998-2018 The OpenSSL Project. All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
Expand Down Expand Up @@ -715,6 +711,9 @@ The externally maintained libraries used by Node.js are:
- Valgrind client API header, located at third_party/valgrind/valgrind.h
This is release under the BSD license.

- antlr4 parser generator Cpp library located in third_party/antlr4
This is release under the BSD license.

These libraries have their own licenses; we recommend you read them,
as their terms may differ from the terms below.

Expand Down
56 changes: 46 additions & 10 deletions Makefile
Expand Up @@ -91,14 +91,35 @@ $(NODE_G_EXE): config.gypi out/Makefile
$(MAKE) -C out BUILDTYPE=Debug V=$(V)
if [ ! -r $@ -o ! -L $@ ]; then ln -fs out/Debug/$(NODE_EXE) $@; fi

CODE_CACHE_DIR ?= out/$(BUILDTYPE)/obj/gen
CODE_CACHE_FILE ?= $(CODE_CACHE_DIR)/node_code_cache.cc

.PHONY: with-code-cache
with-code-cache:
$(PYTHON) ./configure
$(MAKE)
mkdir -p $(CODE_CACHE_DIR)
out/$(BUILDTYPE)/$(NODE_EXE) --expose-internals tools/generate_code_cache.js $(CODE_CACHE_FILE)
$(PYTHON) ./configure --code-cache-path $(CODE_CACHE_FILE)
$(MAKE)

.PHONY: test-code-cache
test-code-cache: with-code-cache
$(PYTHON) tools/test.py $(PARALLEL_ARGS) --mode=$(BUILDTYPE_LOWER) code-cache

out/Makefile: common.gypi deps/uv/uv.gyp deps/http_parser/http_parser.gyp \
deps/zlib/zlib.gyp deps/v8/gypfiles/toolchain.gypi \
deps/v8/gypfiles/features.gypi deps/v8/gypfiles/v8.gyp node.gyp \
config.gypi
$(PYTHON) tools/gyp_node.py -f make

config.gypi: configure
$(error Missing or stale $@, please run ./$<)
@if [ -x config.status ]; then \
./config.status; \
else \
echo Missing or stale $@, please run ./$<; \
exit 1; \
fi

.PHONY: install
install: all ## Installs node into $PREFIX (default=/usr/local).
Expand Down Expand Up @@ -175,7 +196,8 @@ coverage-build: all
"$(CURDIR)/build/jenkins/scripts/coverage/gcovr-patches-3.4.diff"); fi
if [ -d lib_ ]; then $(RM) -r lib; mv lib_ lib; fi
mv lib lib_
$(NODE) ./node_modules/.bin/nyc instrument --extension .js --extension .mjs lib_/ lib/
NODE_DEBUG=nyc $(NODE) ./node_modules/.bin/nyc instrument --extension .js \
--extension .mjs --exit-on-error lib_/ lib/
$(MAKE)

.PHONY: coverage-test
Expand Down Expand Up @@ -274,13 +296,13 @@ test-valgrind: all
test-check-deopts: all
$(PYTHON) tools/test.py $(PARALLEL_ARGS) --mode=$(BUILDTYPE_LOWER) --check-deopts parallel sequential

benchmark/misc/function_call/build/Release/binding.node: all \
benchmark/misc/function_call/napi_binding.c \
benchmark/misc/function_call/binding.cc \
benchmark/misc/function_call/binding.gyp
benchmark/napi/function_call/build/Release/binding.node: all \
benchmark/napi/function_call/napi_binding.c \
benchmark/napi/function_call/binding.cc \
benchmark/napi/function_call/binding.gyp
$(NODE) deps/npm/node_modules/node-gyp/bin/node-gyp rebuild \
--python="$(PYTHON)" \
--directory="$(shell pwd)/benchmark/misc/function_call" \
--directory="$(shell pwd)/benchmark/napi/function_call" \
--nodedir="$(shell pwd)"

# Implicitly depends on $(NODE_EXE). We don't depend on it explicitly because
Expand Down Expand Up @@ -635,12 +657,16 @@ gen-json = tools/doc/generate.js --format=json $< > $@
gen-html = tools/doc/generate.js --node-version=$(FULLVERSION) --format=html \
--analytics=$(DOCS_ANALYTICS) $< > $@

out/doc/api/%.json: doc/api/%.md
out/doc/api/%.json: doc/api/%.md tools/doc/generate.js tools/doc/json.js
$(call available-node, $(gen-json))

out/doc/api/%.html: doc/api/%.md
out/doc/api/%.html: doc/api/%.md tools/doc/generate.js tools/doc/html.js
$(call available-node, $(gen-html))

out/doc/api/all.html: $(filter-out out/doc/api/all.html, $(apidocs_html)) \
tools/doc/allhtml.js
$(call available-node, tools/doc/allhtml.js)

.PHONY: docopen
docopen: $(apidocs_html)
@$(PYTHON) -mwebbrowser file://$(PWD)/out/doc/api/all.html
Expand Down Expand Up @@ -1046,11 +1072,17 @@ ifneq ("","$(wildcard tools/remark-cli/node_modules/)")

LINT_MD_DOC_FILES = $(shell ls doc/*.md doc/**/*.md)
run-lint-doc-md = tools/remark-cli/cli.js -q -f $(LINT_MD_DOC_FILES)
node_use_openssl = $(shell $(call available-node,"-p" \
"process.versions.openssl != undefined"))
# Lint all changed markdown files under doc/
tools/.docmdlintstamp: $(LINT_MD_DOC_FILES)
ifeq ($(node_use_openssl),true)
@echo "Running Markdown linter on docs..."
@$(call available-node,$(run-lint-doc-md))
@touch $@
else
@echo "Skipping Markdown linter on docs (no crypto)"
endif

LINT_MD_TARGETS = src lib benchmark tools/doc tools/icu
LINT_MD_ROOT_DOCS := $(wildcard *.md)
Expand All @@ -1059,9 +1091,13 @@ LINT_MD_MISC_FILES := $(shell find $(LINT_MD_TARGETS) -type f \
run-lint-misc-md = tools/remark-cli/cli.js -q -f $(LINT_MD_MISC_FILES)
# Lint other changed markdown files maintained by us
tools/.miscmdlintstamp: $(LINT_MD_MISC_FILES)
ifeq ($(node_use_openssl),true)
@echo "Running Markdown linter on misc docs..."
@$(call available-node,$(run-lint-misc-md))
@touch $@
else
@echo "Skipping Markdown linter on misc docs (no crypto)"
endif

tools/.mdlintstamp: tools/.miscmdlintstamp tools/.docmdlintstamp

Expand Down Expand Up @@ -1115,7 +1151,7 @@ LINT_CPP_EXCLUDE += $(wildcard test/addons-napi/??_*/*.cc test/addons-napi/??_*/
LINT_CPP_EXCLUDE += src/tracing/trace_event.h src/tracing/trace_event_common.h

LINT_CPP_FILES = $(filter-out $(LINT_CPP_EXCLUDE), $(wildcard \
benchmark/misc/function_call/binding.cc \
benchmark/napi/function_call/binding.cc \
src/*.c \
src/*.cc \
src/*.h \
Expand Down
2 changes: 2 additions & 0 deletions README.md
Expand Up @@ -315,6 +315,8 @@ For more information about the governance of the Node.js project, see
**Anatoli Papirovski** &lt;apapirovski@mac.com&gt; (he/him)
* [aqrln](https://github.com/aqrln) -
**Alexey Orlenko** &lt;eaglexrlnk@gmail.com&gt; (he/him)
* [bcoe](https://github.com/bcoe) -
**Ben Coe** &lt;bencoe@gmail.com&gt; (he/him)
* [bengl](https://github.com/bengl) -
**Bryan English** &lt;bryan@bryanenglish.com&gt; (he/him)
* [benjamingr](https://github.com/benjamingr) -
Expand Down
4 changes: 4 additions & 0 deletions benchmark/misc/util-extend-vs-object-assign.js
Expand Up @@ -9,6 +9,10 @@ const bench = common.createBenchmark(main, {
});

function main({ n, type }) {
// Default value for tests.
if (type === '')
type = 'extend';

let fn;
if (type === 'extend') {
fn = util._extend;
Expand Down