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

v9.11.0 proposal #19799

Merged
merged 81 commits into from Apr 4, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
81 commits
Select commit Hold shift + click to select a range
6bc49f0
test: http2 errors on req.close()
trivikr Feb 18, 2018
cc68bc2
test: add more asserts to `test-internal-errors`
refack Jun 19, 2017
44b12c1
test: fix common.expectsError
refack Jun 14, 2017
ca97be5
test: fix wrong error classes passed in as type
BridgeAR Dec 11, 2017
4caf536
test: http2 stream.respond() error checks
trivikr Feb 19, 2018
441175c
http2: refer to stream errors by name
addaleax Feb 23, 2018
21e69d1
test: fix test-tty-get-color-depth
bzoz Jan 31, 2018
cae9ff2
src: fix upcoming V8 deprecation warnings
SirR4T Mar 20, 2018
ee4390a
repl: fix tab completion of inspector module
targos Mar 21, 2018
99e3c77
url: refactor "escapeParam" function to make it common
daynin Mar 1, 2018
fdc51a1
url: remove redundant function
daynin Mar 1, 2018
8a8b43e
fs,net: emit 'ready' for fs streams and sockets
sameer-coder Mar 17, 2018
dac5f67
http: support server options on createServer
wesleytodd Mar 19, 2018
7b850a7
http2: destroy() stream, upon errnoException
SirR4T Mar 16, 2018
d3d1ee7
lib: add internal check macros
devsnek Mar 2, 2018
a45f3f8
lib: document nextTick queue internals
addaleax Mar 20, 2018
1a38b9b
src: remove unused 'ares.h' include from env.h
addaleax Mar 23, 2018
6c46681
src: name all builtin init functions Initialize
danbev Mar 23, 2018
94a10ba
n-api: bump version of n-api supported
mhdawson Mar 20, 2018
274eff5
test: update link according to NIST bibliography
tniessen Mar 25, 2018
7555dee
doc: improve zero-fill-buffers text
Trott Mar 26, 2018
b0a3a44
n-api: ensure in-module exceptions are propagated
Mar 22, 2018
2ea7f90
doc: fix grammar error in process.md
kenjiO Mar 27, 2018
0daa063
test: amplify and optimize doctool/test-make-doc
vsemozhetbyt Mar 24, 2018
2c5d53f
tools: fix nits in tools/doc/type-parser.js
vsemozhetbyt Mar 26, 2018
97a92c4
deps: turn in std::string for ICU
srl295 Mar 5, 2018
0786161
doc: guard against md list parsing edge case
vsemozhetbyt Mar 28, 2018
278e8af
test: rename tests with descriptive filenames
ryzokuken Mar 22, 2018
889a3b4
lib: fix a typo in lib/timers "read through"
adispring Mar 29, 2018
2f09ee7
test: refactor test-http-expect-continue
Trott Mar 27, 2018
806bc0d
test: fix assert.throws error in test-http-parser
Trott Mar 27, 2018
677b613
test: fix typo in test-tls-cnnic-whitelist
danbev Mar 28, 2018
a89ba21
test: refactor test-net-dns-error
lpinca Mar 27, 2018
7ae2ca4
test: removed default message from assert.strictEqual
jaspal-yupana Mar 28, 2018
94b28aa
test: use createReadStream instead of ReadStream
danbev Mar 27, 2018
9f20534
doc: shorten character encoding introduction
Trott Mar 28, 2018
01e3190
src: general C++ cleanup in node_url.cc
addaleax Mar 25, 2018
140611b
tools: fix comment nits in tools/doc/*.js files
vsemozhetbyt Mar 30, 2018
7043e95
tools: dry utility function in tools/doc/json.js
vsemozhetbyt Mar 30, 2018
0b27416
test: make test-http-expect-continue more strict
Trott Mar 29, 2018
75d23ab
src: fix warnings in aliased_buffer
kfarnung Mar 24, 2018
c8fa8f1
doc: remove ES6/ECMAScript 2015 from buffer.md
Trott Mar 29, 2018
ff7f28c
test: remove 3rd argument from assert.strictEqual
Axxxx0n Mar 30, 2018
90c8546
test: rename regression tests more expressively
ryzokuken Mar 29, 2018
44361bd
doc: fix quotes mistypes in inline code blocks
ChALkeR Mar 31, 2018
bb32bc8
doc: fix links in vm.md
vsemozhetbyt Apr 1, 2018
859b719
module: skip preserveSymlinks for main
guybedford Mar 16, 2018
239a036
tools: remove src dir from JS editorconfig rule
tniessen Mar 21, 2018
b80d169
tools: apply editorconfig rules to tools also
tniessen Mar 21, 2018
54b84f3
buffer: remove "new" from deprecation message
Trott Mar 30, 2018
d111037
doc: favor utf16le over ucs2 in buffer.md
Trott Mar 30, 2018
3a3ae01
doc: do not identify string as "JavaScript string"
Trott Mar 30, 2018
c5469bb
doc: remove "if provided" for optional arguments
Trott Mar 30, 2018
0bcad33
inspector: report client-visible host and port
eugeneo Mar 6, 2018
e44b777
test: fix flaky test-cluster-send-handle-twice
Trott Mar 30, 2018
152a86c
lib: make isStackOverflowError() engine-agnostic
Mar 30, 2018
5149e18
doc: deprecation clarifications
jasnell Mar 21, 2018
1aaad92
doc: fix lint nits in COLLABORATOR_GUIDE.md
vsemozhetbyt Apr 2, 2018
58f61db
deps: ICU 61.1 bump
srl295 Mar 26, 2018
e0c7d78
lint: change require-buffer rule message
devsnek Mar 30, 2018
c1b83fc
doc: update to adding listens on SIGUSR1
willhayslett Mar 30, 2018
a0a5873
n-api: back up env before finalize
Apr 1, 2018
53d7fbb
tools: don’t emit illegal utf-8 from icutrim/iculslocs
srl295 Apr 2, 2018
42671f2
doc: add mafintosh to collaborators
mafintosh Apr 3, 2018
e1f44a6
http: fix `request` when `setHost` is `true`
XadillaX Mar 21, 2018
46569d6
test: remove third argument from call to assert.strictEqual()
ForrestWeiswolf Mar 27, 2018
f379167
test: improve assert message
q3e Mar 27, 2018
4df3377
test: update test to comply with lint rule
Trott Apr 4, 2018
041f6cd
doc: improve Buffer.allocUnsafeSlow() and related
Trott Apr 2, 2018
92e9ed0
test: test process.setuid for bad argument types
dsinecos Mar 30, 2018
0127712
build: introduce make jstest
joyeecheung Mar 13, 2018
0bd78dc
buffer: use v8::TypedArray::kMaxLength as buffer::kMaxLength
joyeecheung Apr 2, 2018
ae86adc
doc: fix various nits
vsemozhetbyt Apr 2, 2018
5e90fc6
fs: use fs.access in fs.exists
bzoz Mar 28, 2018
ff7a116
src: move internal loaders out of bootstrap_node.js
joyeecheung Mar 3, 2018
ebdcf91
src: put bootstrappers in lib/internal/bootstrap/
joyeecheung Mar 6, 2018
83ebaf0
test: remove NODE_DEBUG in global module loading test
joyeecheung Mar 14, 2018
45c477c
lib: restructure cjs and esm loaders
joyeecheung Mar 6, 2018
8e44011
lib: add back lib/module.js redirection
joyeecheung Mar 14, 2018
2bdf3ca
http2: callback valid check before closing request
trivikr Feb 28, 2018
11c8db4
2018-04-04, Version 9.11.0 (Current)
targos Apr 4, 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
  •  
  •  
  •  
4 changes: 2 additions & 2 deletions .editorconfig
Expand Up @@ -9,7 +9,7 @@ insert_final_newline = true
[vcbuild.bat]
end_of_line = crlf

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

Expand All @@ -29,7 +29,7 @@ indent_size = 2
indent_style = tab
indent_size = 8

[{deps,tools}/**]
[{deps}/**]
indent_style = ignore
indent_size = ignore
end_of_line = ignore
Expand Down
1 change: 0 additions & 1 deletion .eslintrc.yaml
Expand Up @@ -214,4 +214,3 @@ globals:
LTTNG_HTTP_SERVER_RESPONSE: false
LTTNG_NET_SERVER_CONNECTION: false
LTTNG_NET_STREAM_END: false
internalBinding: false
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_V9.md#9.10.1">9.10.1</a></b><br/>
<b><a href="doc/changelogs/CHANGELOG_V9.md#9.11.0">9.11.0</a></b><br/>
<a href="doc/changelogs/CHANGELOG_V9.md#9.10.1">9.10.1</a><br/>
<a href="doc/changelogs/CHANGELOG_V9.md#9.10.0">9.10.0</a><br/>
<a href="doc/changelogs/CHANGELOG_V9.md#9.9.0">9.9.0</a><br/>
<a href="doc/changelogs/CHANGELOG_V9.md#9.8.0">9.8.0</a><br/>
Expand Down
20 changes: 11 additions & 9 deletions COLLABORATOR_GUIDE.md
Expand Up @@ -408,10 +408,8 @@ recommended but not required.

### Deprecations

_Deprecation_ refers to the identification of Public APIs that should no longer
be used and that may be removed or modified in backward-incompatible ways in
a future major release of Node.js. Deprecation may be used with internal APIs if
there is expected impact on the user community.
**Deprecation** refers to the identification of Public APIs that should no
longer be used.

Node.js uses three Deprecation levels:

Expand All @@ -420,9 +418,9 @@ Node.js uses three Deprecation levels:
notice indicating the deprecated status is added to the API documentation
but no functional changes are implemented in the code. There will be no
runtime deprecation warnings emitted for such deprecations by default.
Documentation-only deprecations may trigger a runtime warning when launched
with [`--pending-deprecation`][] flag (or its alternative,
`NODE_PENDING_DEPRECATION=1` environment variable).
Documentation-only deprecations may trigger a runtime warning when Node.js
is started with the [`--pending-deprecation`][] flag or the
`NODE_PENDING_DEPRECATION=1` environment variable is set.

* *Runtime Deprecation* refers to the use of process warnings emitted at
runtime the first time that a deprecated API is used. A command-line
Expand All @@ -432,7 +430,9 @@ Node.js uses three Deprecation levels:
deprecated status.

* *End-of-life* refers to APIs that have gone through Runtime Deprecation and
are ready to be removed from Node.js entirely.
are no longer subject to the semantic versioning rules used by the project.
Backward-incompatible changes including complete removal of such APIs may
occur at any time.

Documentation-Only Deprecations may be handled as semver-minor or semver-major
changes. Such deprecations have no impact on the successful operation of running
Expand All @@ -457,7 +457,9 @@ Deprecations may land in a Node.js minor release but must not be upgraded to
a Runtime Deprecation until the next major release.)

No API can be moved to End-of-life without first having gone through a
Runtime Deprecation cycle.
Runtime Deprecation cycle. However, there is no requirement that deprecated
code must progress ultimately to *End-of-Life*. Documentation-only and runtime
deprecations may remain indefinitely.

A best effort will be made to communicate pending deprecations and associated
mitigations with the ecosystem as soon as possible (preferably before the pull
Expand Down
33 changes: 31 additions & 2 deletions LICENSE
Expand Up @@ -99,8 +99,8 @@ The externally maintained libraries used by Node.js are:
"""
COPYRIGHT AND PERMISSION NOTICE (ICU 58 and later)

Copyright © 1991-2017 Unicode, Inc. All rights reserved.
Distributed under the Terms of Use in http://www.unicode.org/copyright.html
Copyright © 1991-2018 Unicode, Inc. All rights reserved.
Distributed under the Terms of Use in http://www.unicode.org/copyright.html.

Permission is hereby granted, free of charge, to any person obtaining
a copy of the Unicode data files and any associated documentation
Expand Down Expand Up @@ -482,6 +482,35 @@ The externally maintained libraries used by Node.js are:
# by ICANN or the IETF Trust on the database or the code. Any person
# making a contribution to the database or code waives all rights to
# future claims in that contribution or in the TZ Database.

6. Google double-conversion

Copyright 2006-2011, the V8 project authors. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided
with the distribution.
* Neither the name of Google Inc. nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
"""

- libuv, located at deps/uv, is licensed as follows:
Expand Down
28 changes: 16 additions & 12 deletions Makefile
Expand Up @@ -236,36 +236,40 @@ v8:
tools/make-v8.sh
$(MAKE) -C deps/v8 $(V8_ARCH).$(BUILDTYPE_LOWER) $(V8_BUILD_OPTIONS)

.PHONY: jstest
jstest: build-addons build-addons-napi ## Runs addon tests and JS tests
$(PYTHON) tools/test.py --mode=release -J \
$(CI_JS_SUITES) \
$(CI_NATIVE_SUITES)

.PHONY: test
# This does not run tests of third-party libraries inside deps.
test: all ## Runs default tests, linters, and builds docs.
# Build the addons before running the tests so the test results
# can be displayed together
$(MAKE) -s build-addons
$(MAKE) -s build-addons-napi
$(MAKE) -s doc-only
$(MAKE) -s lint
$(MAKE) -s test-doc
$(MAKE) -s cctest
$(PYTHON) tools/test.py --mode=release -J \
$(CI_JS_SUITES) \
$(CI_NATIVE_SUITES) \
$(CI_DOC)
$(MAKE) -s jstest

.PHONY: test-only
test-only: all ## For a quick test, does not run linter or build docs.
# Build the addons before running the tests so the test results
# can be displayed together
$(MAKE) build-addons
$(MAKE) build-addons-napi
$(MAKE) cctest
$(PYTHON) tools/test.py --mode=release -J \
$(CI_JS_SUITES) \
$(CI_NATIVE_SUITES)
$(MAKE) jstest

# Used by `make coverage-test`
test-cov: all
# Build the addons before running the tests so the test results
# can be displayed together
$(MAKE) build-addons
$(MAKE) build-addons-napi
# $(MAKE) cctest
$(PYTHON) tools/test.py --mode=release -J \
$(CI_JS_SUITES) \
$(CI_NATIVE_SUITES)
$(MAKE) jstest
$(MAKE) lint

test-parallel: all
Expand Down
2 changes: 2 additions & 0 deletions README.md
Expand Up @@ -252,6 +252,8 @@ For more information about the governance of the Node.js project, see
**James M Snell** &lt;jasnell@gmail.com&gt; (he/him)
* [joyeecheung](https://github.com/joyeecheung) -
**Joyee Cheung** &lt;joyeec9h3@gmail.com&gt; (she/her)
* [mafintosh](https://github.com/mafintosh)
**Mathias Buus** &lt;mathiasbuus@gmail.com&gt; (he/him)
* [mcollina](https://github.com/mcollina) -
**Matteo Collina** &lt;matteo.collina@gmail.com&gt; (he/him)
* [mhdawson](https://github.com/mhdawson) -
Expand Down
11 changes: 9 additions & 2 deletions configure
Expand Up @@ -439,6 +439,11 @@ intl_optgroup.add_option('--download-path',

parser.add_option_group(intl_optgroup)

parser.add_option('--debug-lib',
action='store_true',
dest='node_debug_lib',
help='build lib with DCHECK macros')

http2_optgroup.add_option('--debug-http2',
action='store_true',
dest='debug_http2',
Expand Down Expand Up @@ -949,6 +954,8 @@ def configure_node(o):
if options.enable_static:
o['variables']['node_target_type'] = 'static_library'

o['variables']['node_debug_lib'] = b(options.node_debug_lib)

if options.debug_http2:
o['variables']['debug_http2'] = 1
else:
Expand Down Expand Up @@ -1128,8 +1135,8 @@ def glob_to_var(dir_base, dir_sub, patch_dir):
def configure_intl(o):
icus = [
{
'url': 'https://ssl.icu-project.org/files/icu4c/60.2/icu4c-60_2-src.zip',
'md5': '115908818fd0324530b2acb1b029738d',
'url': 'https://ssl.icu-project.org/files/icu4c/61.1/icu4c-61_1-src.zip',
'md5': '780d8524c8a860ed8d8f6fe75cb7ce3f',
},
]
def icu_download(path):
Expand Down
33 changes: 31 additions & 2 deletions deps/icu-small/LICENSE
@@ -1,7 +1,7 @@
COPYRIGHT AND PERMISSION NOTICE (ICU 58 and later)

Copyright © 1991-2017 Unicode, Inc. All rights reserved.
Distributed under the Terms of Use in http://www.unicode.org/copyright.html
Copyright © 1991-2018 Unicode, Inc. All rights reserved.
Distributed under the Terms of Use in http://www.unicode.org/copyright.html.

Permission is hereby granted, free of charge, to any person obtaining
a copy of the Unicode data files and any associated documentation
Expand Down Expand Up @@ -383,3 +383,32 @@ Database section 7.
# by ICANN or the IETF Trust on the database or the code. Any person
# making a contribution to the database or code waives all rights to
# future claims in that contribution or in the TZ Database.

6. Google double-conversion

Copyright 2006-2011, the V8 project authors. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided
with the distribution.
* Neither the name of Google Inc. nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
4 changes: 2 additions & 2 deletions deps/icu-small/README-SMALL-ICU.txt
@@ -1,8 +1,8 @@
Small ICU sources - auto generated by shrink-icu-src.py

This directory contains the ICU subset used by --with-intl=small-icu (the default)
It is a strict subset of ICU 60 source files with the following exception(s):
* deps/icu-small/source/data/in/icudt60l.dat : Reduced-size data file
It is a strict subset of ICU 61 source files with the following exception(s):
* deps/icu-small/source/data/in/icudt61l.dat : Reduced-size data file


To rebuild this directory, see ../../tools/icu/README.md
4 changes: 2 additions & 2 deletions deps/icu-small/source/common/bmpset.cpp
Expand Up @@ -100,9 +100,9 @@ static void set32x64Bits(uint32_t table[64], int32_t start, int32_t limit) {
++lead;
}
if(lead<limitLead) {
bits=~((1<<lead)-1);
bits=~(((unsigned)1<<lead)-1);
if(limitLead<0x20) {
bits&=(1<<limitLead)-1;
bits&=((unsigned)1<<limitLead)-1;
}
for(trail=0; trail<64; ++trail) {
table[trail]|=bits;
Expand Down