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

v13.0.1 proposal #30081

Merged
merged 33 commits into from
Oct 23, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
828e171
doc: add server header into the discarded list of http message.headers
Huachao Oct 14, 2019
d80ece6
doc: re-enable passing remark-lint rule
nschonni Oct 14, 2019
dc83ff9
doc: remove unused Markdown reference links
nschonni Oct 14, 2019
b1b8663
test: add cb error test for fs.close()
teorossi82 Oct 14, 2019
3eae670
src: refine maps parsing for large pages
Oct 9, 2019
62b4ca6
doc: clarify readable.unshift null/EOF
ronag Oct 16, 2019
cfd45eb
module: refactor modules bootstrap
bfarias-godaddy Sep 30, 2019
9729c5d
esm: modify resolution order for specifier flag
MylesBorins Oct 14, 2019
2dc4da0
build: build benchmark addons like test addons
richardlau Oct 16, 2019
b92afcd
build: fix version checks in configure.py
targos Oct 14, 2019
ff4f299
doc: fix tls version typo
akitsu-sanae Oct 15, 2019
c096f25
test: remove common.skipIfInspectorEnabled()
Trott Oct 16, 2019
ccf5883
build: use python3 to build and test on Travis
cclauss Sep 5, 2019
b019ccd
src: initialize openssl only once
sam-github Oct 16, 2019
0299767
doc: update collaborator email address
JungMinu Oct 17, 2019
e110d81
test: fix test runner for Python 3 on Windows
targos Oct 18, 2019
e04d058
build: default Windows build to Visual Studio 2019
targos Oct 18, 2019
a25d2fc
build: make configure --without-snapshot a no-op
targos Oct 18, 2019
9d332ab
deps: upgrade to libuv 1.33.1
cjihrig Oct 19, 2019
9721440
src: remove unused iomanip include
danbev Oct 17, 2019
0c88dc1
src: fewer uses of NODE_USE_V8_PLATFORM
codebytere Oct 18, 2019
f155dfe
test: expand Worker test for non-shared ArrayBuffer
addaleax Oct 20, 2019
46aa481
stream: remove dead code
lpinca Oct 20, 2019
f3712df
stream: simplify uint8ArrayToBuffer helper
lpinca Oct 20, 2019
35bffcd
doc: join parts of disrupt section in cli.md
vsemozhetbyt Oct 19, 2019
13f3d6c
build: log the found compiler version if too old
richardlau Oct 18, 2019
8fcc039
src: expose ListNode<T>::prev_ on postmortem metadata
legendecas Oct 18, 2019
ed80c23
src: make implementing CancelPendingDelayedTasks for platform optional
addaleax Oct 19, 2019
19a983c
build: make linter failures fail `test-doc` target
richardlau Oct 17, 2019
d561321
src: remove unnecessary std::endl usage
danbev Oct 17, 2019
89b9115
doc: --enable-source-maps and prepareStackTrace are incompatible
bcoe Oct 21, 2019
2f36976
deps: npm: patch support for 13.x
ljharb Oct 22, 2019
bdc09c6
2019-10-23, Version 13.0.1 (Current)
MylesBorins Oct 23, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
4 changes: 3 additions & 1 deletion .mailmap
Original file line number Diff line number Diff line change
Expand Up @@ -270,7 +270,9 @@ Miguel Angel Asencio Hurtado <maasencioh@gmail.com> maasencioh <maasencioh@gmail
Mikael Bourges-Sevenier <mikeseven@gmail.com> <msevenier@motorola.com>
Mike Kaufman <mike.kaufman@microsoft.com> <mkaufman@microsoft.com>
Minqi Pan <pmq2001@gmail.com> P.S.V.R <pmq2001@gmail.com>
Minwoo Jung <jmwsoft@gmail.com> JungMinu <jmwsoft@gmail.com>
Minwoo Jung <nodecorelab@gmail.com> JungMinu <jmwsoft@gmail.com>
Minwoo Jung <nodecorelab@gmail.com> <jmwsoft@gmail.com>
Minwoo Jung <nodecorelab@gmail.com> <minwoo@nodesource.com>
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>
Expand Down
7 changes: 2 additions & 5 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,10 @@ x-ccache-setup-steps: &ccache-setup-steps

os: linux
language: cpp
# Currently this file can only support one PYTHON_VERSION.
# To experiment with Python 3, comment out Python 2.7 and uncomment one of the Python 3 versions.
env:
global:
- PYTHON_VERSION="2.7.15"
# - PYTHON_VERSION="3.6.7"
# - PYTHON_VERSION="3.7.1"
- PYTHON_VERSION="3.7.1"
- PYTHON=python3
jobs:
include:
- stage: "Compile"
Expand Down
9 changes: 5 additions & 4 deletions BUILDING.md
Original file line number Diff line number Diff line change
Expand Up @@ -498,9 +498,9 @@ $ backtrace

* [Python 2.7](https://www.python.org/downloads/)
* The "Desktop development with C++" workload from
[Visual Studio 2017](https://www.visualstudio.com/downloads/) or the
"Visual C++ build tools" workload from the
[Build Tools](https://www.visualstudio.com/downloads/#build-tools-for-visual-studio-2017),
[Visual Studio 2017 or 2019](https://visualstudio.microsoft.com/downloads/) or
the "Visual C++ build tools" workload from the
[Build Tools](https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio-2019),
with the default optional components.
* Basic Unix tools required for some tests,
[Git for Windows](https://git-scm.com/download/win) includes Git Bash
Expand All @@ -513,7 +513,8 @@ $ backtrace
Optional requirements to build the MSI installer package:

* The [WiX Toolset v3.11](https://wixtoolset.org/releases/) and the
[Wix Toolset Visual Studio 2017 Extension](https://marketplace.visualstudio.com/items?itemName=RobMensching.WixToolsetVisualStudio2017Extension).
[Wix Toolset Visual Studio 2017 Extension](https://marketplace.visualstudio.com/items?itemName=RobMensching.WixToolsetVisualStudio2017Extension)
or the [Wix Toolset Visual Studio 2019 Extension](https://marketplace.visualstudio.com/items?itemName=WixToolset.WixToolsetVisualStudio2019Extension).

Optional requirements for compiling for Windows 10 on ARM (ARM64):

Expand Down
3 changes: 2 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,8 @@ release.
</tr>
<tr>
<td valign="top">
<b><a href="doc/changelogs/CHANGELOG_V13.md#13.0.0">13.0.0</a></b><br/>
<b><a href="doc/changelogs/CHANGELOG_V13.md#13.0.1">13.0.1</a></b><br/>
<a href="doc/changelogs/CHANGELOG_V13.md#13.0.0">13.0.0</a><br/>
</td>
<td valign="top">
<b><a href="doc/changelogs/CHANGELOG_V12.md#12.12.0">12.12.0</a></b><br/>
Expand Down
39 changes: 15 additions & 24 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -347,24 +347,6 @@ test-valgrind: all
test-check-deopts: all
$(PYTHON) tools/test.py $(PARALLEL_ARGS) --mode=$(BUILDTYPE_LOWER) --check-deopts parallel sequential

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

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

DOCBUILDSTAMP_PREREQS = tools/doc/addon-verify.js doc/api/addons.md

ifeq ($(OSTYPE),aix)
Expand Down Expand Up @@ -470,6 +452,17 @@ test/node-api/.buildstamp: $(ADDONS_PREREQS) \
# TODO(bnoordhuis) Force rebuild after gyp or node-gyp update.
build-node-api-tests: | $(NODE_EXE) test/node-api/.buildstamp

BENCHMARK_NAPI_BINDING_GYPS := $(wildcard benchmark/napi/*/binding.gyp)

BENCHMARK_NAPI_BINDING_SOURCES := \
$(wildcard benchmark/napi/*/*.c) \
$(wildcard benchmark/napi/*/*.cc) \
$(wildcard benchmark/napi/*/*.h)

benchmark/napi/.buildstamp: $(ADDONS_PREREQS) \
$(BENCHMARK_NAPI_BINDING_GYPS) $(BENCHMARK_NAPI_BINDING_SOURCES)
@$(call run_build_addons,"$$PWD/benchmark/napi",$@)

.PHONY: clear-stalled
clear-stalled:
@echo "Clean up any leftover processes but don't error if found."
Expand Down Expand Up @@ -599,11 +592,10 @@ test-hash-seed: all
$(NODE) test/pummel/test-hash-seed.js

.PHONY: test-doc
test-doc: doc-only ## Builds, lints, and verifies the docs.
test-doc: doc-only lint ## Builds, lints, and verifies the docs.
@if [ "$(shell $(node_use_openssl))" != "true" ]; then \
echo "Skipping test-doc (no crypto)"; \
else \
$(MAKE) lint; \
$(PYTHON) tools/test.py $(PARALLEL_ARGS) doctool; \
fi

Expand Down Expand Up @@ -1163,13 +1155,12 @@ bench: bench-addons-build

# Build required addons for benchmark before running it.
.PHONY: bench-addons-build
bench-addons-build: benchmark/napi/function_call/build/$(BUILDTYPE)/binding.node \
benchmark/napi/function_args/build/$(BUILDTYPE)/binding.node
bench-addons-build: | $(NODE_EXE) benchmark/napi/.buildstamp

.PHONY: bench-addons-clean
bench-addons-clean:
$(RM) -r benchmark/napi/function_call/build
$(RM) -r benchmark/napi/function_args/build
$(RM) -r benchmark/napi/*/build
$(RM) benchmark/napi/.buildstamp

.PHONY: lint-md-rollup
lint-md-rollup:
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -345,7 +345,7 @@ For information about the governance of the Node.js project, see
* [julianduque](https://github.com/julianduque) -
**Julian Duque** &lt;julianduquej@gmail.com&gt; (he/him)
* [JungMinu](https://github.com/JungMinu) -
**Minwoo Jung** &lt;minwoo@nodesource.com&gt; (he/him)
**Minwoo Jung** &lt;nodecorelab@gmail.com&gt; (he/him)
* [kfarnung](https://github.com/kfarnung) -
**Kyle Farnung** &lt;kfarnung@microsoft.com&gt; (he/him)
* [kunalspathak](https://github.com/kunalspathak) -
Expand Down
1 change: 1 addition & 0 deletions benchmark/napi/ref/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
build/
28 changes: 15 additions & 13 deletions configure.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
import bz2

from distutils.spawn import find_executable as which
from distutils.version import StrictVersion

# If not run from node/, cd to node/.
os.chdir(os.path.dirname(__file__) or '.')
Expand Down Expand Up @@ -506,7 +507,7 @@

parser.add_option('--without-snapshot',
action='store_true',
dest='without_snapshot',
dest='unused_without_snapshot',
help=optparse.SUPPRESS_HELP)

parser.add_option('--without-siphash',
Expand Down Expand Up @@ -774,7 +775,8 @@ def check_compiler(o):
if not ok:
warn('failed to autodetect C++ compiler version (CXX=%s)' % CXX)
elif clang_version < (8, 0, 0) if is_clang else gcc_version < (6, 3, 0):
warn('C++ compiler too old, need g++ 6.3.0 or clang++ 8.0.0 (CXX=%s)' % CXX)
warn('C++ compiler (CXX=%s, %s) too old, need g++ 6.3.0 or clang++ 8.0.0' %
(CXX, ".".join(map(str, clang_version if is_clang else gcc_version))))

ok, is_clang, clang_version, gcc_version = try_check_compiler(CC, 'c')
if not ok:
Expand All @@ -783,7 +785,8 @@ def check_compiler(o):
# clang 3.2 is a little white lie because any clang version will probably
# do for the C bits. However, we might as well encourage people to upgrade
# to a version that is not completely ancient.
warn('C compiler too old, need gcc 4.2 or clang 3.2 (CC=%s)' % CC)
warn('C compiler (CC=%s, %s) too old, need gcc 4.2 or clang 3.2' %
(CC, ".".join(map(str, gcc_version))))

o['variables']['llvm_version'] = get_llvm_version(CC) if is_clang else '0.0'

Expand Down Expand Up @@ -966,13 +969,13 @@ def configure_node(o):
cross_compiling = (options.cross_compiling
if options.cross_compiling is not None
else target_arch != host_arch)
want_snapshots = not options.without_snapshot
o['variables']['want_separate_host_toolset'] = int(
cross_compiling and want_snapshots)
if options.unused_without_snapshot:
warn('building --without-snapshot is no longer possible')

o['variables']['want_separate_host_toolset'] = int(cross_compiling)

if not options.without_node_snapshot:
o['variables']['node_use_node_snapshot'] = b(
not cross_compiling and want_snapshots)
o['variables']['node_use_node_snapshot'] = b(not cross_compiling)
else:
o['variables']['node_use_node_snapshot'] = 'false'

Expand Down Expand Up @@ -1176,7 +1179,6 @@ def configure_v8(o):
o['variables']['v8_random_seed'] = 0 # Use a random seed for hash tables.
o['variables']['v8_promise_internal_field_count'] = 1 # Add internal field to promises for async hooks.
o['variables']['v8_use_siphash'] = 0 if options.without_siphash else 1
o['variables']['v8_use_snapshot'] = 0 if options.without_snapshot else 1
o['variables']['v8_trace_maps'] = 1 if options.trace_maps else 0
o['variables']['node_use_v8_platform'] = b(not options.without_v8_platform)
o['variables']['node_use_bundled_v8'] = b(not options.without_bundled_v8)
Expand Down Expand Up @@ -1231,10 +1233,10 @@ def without_ssl_error(option):
# supported asm compiler for AVX2. See https://github.com/openssl/openssl/
# blob/OpenSSL_1_1_0-stable/crypto/modes/asm/aesni-gcm-x86_64.pl#L52-L69
openssl110_asm_supported = \
('gas_version' in variables and float(variables['gas_version']) >= 2.23) or \
('xcode_version' in variables and float(variables['xcode_version']) >= 5.0) or \
('llvm_version' in variables and float(variables['llvm_version']) >= 3.3) or \
('nasm_version' in variables and float(variables['nasm_version']) >= 2.10)
('gas_version' in variables and StrictVersion(variables['gas_version']) >= StrictVersion('2.23')) or \
('xcode_version' in variables and StrictVersion(variables['xcode_version']) >= StrictVersion('5.0')) or \
('llvm_version' in variables and StrictVersion(variables['llvm_version']) >= StrictVersion('3.3')) or \
('nasm_version' in variables and StrictVersion(variables['nasm_version']) >= StrictVersion('2.10'))

if is_x86 and not openssl110_asm_supported:
error('''Did not find a new enough assembler, install one or build with
Expand Down
3 changes: 2 additions & 1 deletion deps/npm/lib/utils/unsupported.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ var supportedNode = [
{ver: '9', min: '9.0.0'},
{ver: '10', min: '10.0.0'},
{ver: '11', min: '11.0.0'},
{ver: '12', min: '12.0.0'}
{ver: '12', min: '12.0.0'},
{ver: '13', min: '13.0.0'}
]
var knownBroken = '<6.0.0'

Expand Down
8 changes: 8 additions & 0 deletions deps/uv/AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -403,3 +403,11 @@ Vladimir Karnushin <v.karnushin@mail.ru>
MaYuming <maym@appexnetworks.com>
Eneas U de Queiroz <cotequeiroz@gmail.com>
Daniel Hahler <git@thequod.de>
Yang Yu <yang.yu@disigma.org>
David Carlier <devnexen@gmail.com>
Calvin Hill <calvin@hakobaito.co.uk>
Isabella Muerte <63051+slurps-mad-rips@users.noreply.github.com>
Ouyang Yadong <oyydoibh@gmail.com>
ZYSzys <zyszys98@gmail.com>
Carl Lei <xecycle@gmail.com>
Stefan Bender <stefan.bender@ntnu.no>
42 changes: 33 additions & 9 deletions deps/uv/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,15 @@
# TODO: determine CMAKE_SYSTEM_NAME on OS/390. Currently assumes "OS/390".
cmake_minimum_required(VERSION 2.8.12)
project(libuv)
cmake_minimum_required(VERSION 3.4)
project(libuv LANGUAGES C)

include(CMakePackageConfigHelpers)
include(CMakeDependentOption)
include(GNUInstallDirs)
include(CTest)

cmake_dependent_option(LIBUV_BUILD_TESTS
"Build the unit tests when BUILD_TESTING is enabled and we are the root project" ON
"BUILD_TESTING;CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR" OFF)

if(MSVC)
list(APPEND uv_cflags /W4)
Expand All @@ -14,6 +23,7 @@ set(uv_sources
src/fs-poll.c
src/idna.c
src/inet.c
src/random.c
src/strscpy.c
src/threadpool.c
src/timer.c
Expand Down Expand Up @@ -72,7 +82,6 @@ set(uv_test_sources
test/test-idna.c
test/test-ip4-addr.c
test/test-ip6-addr.c
test/test-ip6-addr.c
test/test-ipc-heavy-traffic-deadlock-bug.c
test/test-ipc-send-recv.c
test/test-ipc.c
Expand Down Expand Up @@ -108,6 +117,7 @@ set(uv_test_sources
test/test-process-title-threadsafe.c
test/test-process-title.c
test/test-queue-foreach-delete.c
test/test-random.c
test/test-ref.c
test/test-run-nowait.c
test/test-run-once.c
Expand Down Expand Up @@ -236,6 +246,7 @@ else()
src/unix/pipe.c
src/unix/poll.c
src/unix/process.c
src/unix/random-devurandom.c
src/unix/signal.c
src/unix/stream.c
src/unix/tcp.c
Expand Down Expand Up @@ -284,6 +295,14 @@ if(APPLE OR CMAKE_SYSTEM_NAME MATCHES "DragonFly|FreeBSD|NetBSD|OpenBSD")
list(APPEND uv_sources src/unix/bsd-ifaddrs.c src/unix/kqueue.c)
endif()

if(CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
list(APPEND uv_sources src/unix/random-getrandom.c)
endif()

if(APPLE OR CMAKE_SYSTEM_NAME STREQUAL "OpenBSD")
list(APPEND uv_sources src/unix/random-getentropy.c)
endif()

if(APPLE)
list(APPEND uv_defines _DARWIN_UNLIMITED_SELECT=1 _DARWIN_USE_64_BIT_INODE=1)
list(APPEND uv_sources
Expand All @@ -300,6 +319,8 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
src/unix/linux-inotify.c
src/unix/linux-syscalls.c
src/unix/procfs-exepath.c
src/unix/random-getrandom.c
src/unix/random-sysctl.c
src/unix/sysinfo-loadavg.c)
endif()

Expand Down Expand Up @@ -356,11 +377,7 @@ target_compile_options(uv_a PRIVATE ${uv_cflags})
target_include_directories(uv_a PUBLIC include PRIVATE src)
target_link_libraries(uv_a ${uv_libraries})

option(libuv_buildtests "Build the unit tests when BUILD_TESTING is enabled." ON)

include(CTest)
if(BUILD_TESTING AND libuv_buildtests)
enable_testing()
if(LIBUV_BUILD_TESTS)
add_executable(uv_run_tests ${uv_test_sources})
target_compile_definitions(uv_run_tests
PRIVATE ${uv_defines} USING_UV_SHARED=1)
Expand All @@ -380,7 +397,6 @@ endif()

if(UNIX)
# Now for some gibbering horrors from beyond the stars...
include(GNUInstallDirs)
foreach(x ${uv_libraries})
set(LIBS "${LIBS} -l${x}")
endforeach(x)
Expand All @@ -402,3 +418,11 @@ if(UNIX)
install(TARGETS uv LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
install(TARGETS uv_a ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
endif()

if(WIN32)
install(DIRECTORY include/ DESTINATION include)
install(FILES LICENSE DESTINATION .)
install(TARGETS uv uv_a
RUNTIME DESTINATION lib/$<CONFIG>
ARCHIVE DESTINATION lib/$<CONFIG>)
endif()