Saúl Ibarra Corretgé [Fri, 5 Jun 2015 17:47:33 +0000 (19:47 +0200)]
deps: update libuv to version 1.6.1
PR-URL: https://github.com/nodejs/io.js/pull/1905
Refs: https://github.com/nodejs/io.js/pull/1791
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Vladimir Kurchatkin [Fri, 5 Jun 2015 07:37:11 +0000 (10:37 +0300)]
fs: use `kMaxLength` from binding
This allows `graceful-fs` to evaluate `fs` source
without access to internals.
This is a temporary workaround that makes npm work.
See: https://github.com/isaacs/node-graceful-fs/issues/41
Fixes: https://github.com/nodejs/io.js/issues/1898
PR-URL: https://github.com/nodejs/io.js/pull/1903
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Jackson Tian [Mon, 1 Jun 2015 14:12:25 +0000 (22:12 +0800)]
debugger: improve ESRCH error message
When using `iojs debug -p <pid>` with an invalid pid, the debugger
printed an internal error message because it wasn't smart enough
to figure out that the target process didn't exist. Now it is.
PR-URL: https://github.com/nodejs/io.js/pull/1863
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Fedor Indutny <fedor@indutny.com>
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: Yosuke Furukawa <yosuke.furukawa@gmail.com>
Yosuke Furukawa [Mon, 13 Apr 2015 17:46:52 +0000 (02:46 +0900)]
fs: Add string encoding option for Stream method
Add string encoding option for fs.createReadStream and
fs.createWriteStream. and check argument type more strictly
PR-URL: https://github.com/nodejs/io.js/pull/1845
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Fedor Indutny [Tue, 19 May 2015 11:18:42 +0000 (13:18 +0200)]
tls_wrap: invoke queued callbacks in DestroySSL
PR-URL: https://github.com/nodejs/io.js/pull/1702
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Fedor Indutny [Mon, 18 May 2015 18:24:19 +0000 (20:24 +0200)]
tls: prevent use-after-free
* Destroy `SSL*` and friends on a next tick to make sure that we are not
doing it in one of the OpenSSL callbacks
* Add more checks to the C++ methods that might be invoked during
destructor's pending queue cleanup
Fix: https://github.com/joyent/node/issues/8780
Fix: https://github.com/iojs/io.js/issues/1696
PR-URL: https://github.com/nodejs/io.js/pull/1702
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Fedor Indutny [Thu, 14 May 2015 08:38:18 +0000 (10:38 +0200)]
tls: emit errors on close whilst async action
When loading session, OCSP response, SNI, always check that the
`self._handle` is present. If it is not - the socket was closed - and we
should emit the error instead of throwing an uncaught exception.
Fix: https://github.com/joyent/node/issues/8780
Fix: https://github.com/iojs/io.js/issues/1696
PR-URL: https://github.com/nodejs/io.js/pull/1702
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Vladimir Kurchatkin [Thu, 28 May 2015 14:20:57 +0000 (17:20 +0300)]
smalloc: deprecate whole module
It makes no sense to allow people use constants from
`smalloc`, since it will be removed completely eventually.
PR-URL: https://github.com/nodejs/io.js/pull/1822
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Vladimir Kurchatkin [Thu, 28 May 2015 14:01:56 +0000 (17:01 +0300)]
util: introduce `printDeprecationMessage` function
`printDeprecationMessage` is used to deprecate modules
and execution branches.
PR-URL: https://github.com/nodejs/io.js/pull/1822
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Rich Trott [Wed, 3 Jun 2015 01:02:48 +0000 (18:02 -0700)]
test: remove TODO
It's not clear what additional tests are wanted.
The current malformed URL test seems adequate.
PR-URL: https://github.com/nodejs/io.js/pull/1875
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Evan Lucas <evanlucas@me.com>
Saúl Ibarra Corretgé [Wed, 27 May 2015 07:43:02 +0000 (09:43 +0200)]
dgram: partially revert 18d457b
Revert "dgram: call send callback asynchronously" partially, since the
fix is now done in libuv.
Refs: https://github.com/nodejs/io.js/pull/1313
Refs: https://github.com/libuv/libuv/pull/371
PR-URL: https://github.com/nodejs/io.js/pull/1889
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Saúl Ibarra Corretgé [Wed, 3 Jun 2015 19:18:55 +0000 (21:18 +0200)]
deps: update libuv to version 1.6.0
Fixes: https://github.com/joyent/node/issues/9310
PR-URL: https://github.com/nodejs/io.js/pull/1889
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Santiago Gimeno [Wed, 3 Jun 2015 07:13:56 +0000 (09:13 +0200)]
test: fix broken FreeBSD test
Fixes net-server-max-connections-close-makes-more-available
Handles connection 'error' event so the test ends.
PR-URL: https://github.com/nodejs/io.js/pull/1881
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Brendan Ashworth <brendan.ashworth@me.com>
Evan Lucas [Fri, 29 May 2015 20:08:16 +0000 (15:08 -0500)]
test: fix test-sync-io-option
This test was failing occasionally both locally and on CI. Switched
from using spawn to execFile for a more reliable test.
Fixes: https://github.com/nodejs/io.js/issues/1837
PR-URL: https://github.com/nodejs/io.js/pull/1840
Reviewed-By: Roman Reiss <me@silverwind.io>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Shigeki Ohtsu [Wed, 27 May 2015 01:41:43 +0000 (10:41 +0900)]
test: add -no_rand_screen for tls-server-verify
This improves the performance of openssl s_client on Windows and
gains several seconds to finish test-tls-server-verify.
Fixes: https://github.com/nodejs/io.js/issues/1461
PR-URL: https://github.com/nodejs/io.js/pull/1836
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Shigeki Ohtsu [Wed, 27 May 2015 01:33:38 +0000 (10:33 +0900)]
deps: add -no_rand_screen to openssl s_client
In openssl s_client on Windows, RAND_screen() is invoked to initialize
random state but it takes several seconds in each connection.
This added -no_rand_screen to openssl s_client on Windows to skip
RAND_screen() and gets a better performance in the unit test of
test-tls-server-verify.
Do not enable this except to use in the unit test.
Fixes: https://github.com/nodejs/io.js/issues/1461
PR-URL: https://github.com/nodejs/io.js/pull/1836
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Shigeki Ohtsu [Wed, 27 May 2015 01:16:51 +0000 (10:16 +0900)]
test: kill child in tls-server-verify for speed up
For better performance of the test, the parent kills child processes
so as not to wait them to be ended.
Fixes: https://github.com/nodejs/io.js/issues/1461
PR-URL: https://github.com/nodejs/io.js/pull/1836
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
João Reis [Fri, 22 May 2015 13:43:16 +0000 (14:43 +0100)]
test: improve console output of tls-server-verify
When running in parallel, it is not easy to identify what server and
client failed when the test fails. This adds identifiers to all lines
of console output.
Fixes: https://github.com/nodejs/io.js/issues/1461
PR-URL: https://github.com/nodejs/io.js/pull/1836
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
João Reis [Fri, 22 May 2015 13:28:11 +0000 (14:28 +0100)]
test: run tls-server-verify servers in parallel
Different servers must use different ports. Since we can count only on
common.PORT and common.PORT+1, run only 2 servers in parallel.
Fixes: https://github.com/nodejs/io.js/issues/1461
PR-URL: https://github.com/nodejs/io.js/pull/1836
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
João Reis [Fri, 22 May 2015 13:16:07 +0000 (14:16 +0100)]
test: running tls-server-verify clients in parallel
OpenSSL s_client introduces some delay on Windows. With all clients
running sequentially, this delay is big enough to break CI. This fix runs
the clients in parallel (unless the test includes renegotiation),
reducing the total run time.
Fixes: https://github.com/nodejs/io.js/issues/1461
PR-URL: https://github.com/nodejs/io.js/pull/1836
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Rod Vagg [Wed, 3 Jun 2015 11:37:25 +0000 (21:37 +1000)]
test: remove hardwired references to 'iojs'
PR-URL: https://github.com/nodejs/io.js/pull/1882
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Roman Reiss <me@silverwind.io>
Rich Trott [Sat, 30 May 2015 14:49:56 +0000 (07:49 -0700)]
test: more test coverage for maxConnections
If the server is not accepting connections because maxConnections
is exceeded, the server should start accepting connections again
when a connection closes.
PR-URL: https://github.com/nodejs/io.js/pull/1855
Reviewed-By: Brendan Ashworth <brendan.ashworth@me.com>
Ben Noordhuis [Wed, 27 May 2015 19:25:04 +0000 (21:25 +0200)]
src: hide InitializeICUDirectory symbol
Exporting it seems like an oversight. It's not safe to call once
V8 is running so there doesn't seem to be a point in exporting it
to add-ons. Un-export it.
PR-URL: https://github.com/nodejs/io.js/pull/1815
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Yosuke Furukawa [Sat, 30 May 2015 17:12:07 +0000 (02:12 +0900)]
fs: set encoding on fs.createWriteStream
Enable encoding option on fs.createWriteStream.
PR-URL: https://github.com/nodejs/io.js/pull/1844
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Ben Noordhuis [Thu, 28 May 2015 12:11:20 +0000 (14:11 +0200)]
crypto: update root certificates
Update the list of root certificates in src/node_root_certs.h with
tools/mk-ca-bundle.pl.
PR-URL: https://github.com/nodejs/io.js/pull/1833
Reviewed-By: Shigeki Ohtsu <ohtsu@iij.ad.jp>
Ben Noordhuis [Thu, 28 May 2015 12:08:45 +0000 (14:08 +0200)]
tools: update certdata.txt
This is the latest certdata.txt from [0], last updated on 2015-04-20.
[0] https://hg.mozilla.org/mozilla-central/raw-file/
aa275ad846f1/security/nss/lib/ckfw/builtins/certdata.txt
PR-URL: https://github.com/nodejs/io.js/pull/1833
Reviewed-By: Shigeki Ohtsu <ohtsu@iij.ad.jp>
Ben Noordhuis [Wed, 25 Mar 2015 12:57:22 +0000 (13:57 +0100)]
tools: customize mk-ca-bundle.pl
Remove unneeded functionality and tweak the generated output so we
can #include it in C++ source code.
This commit essentially reapplies the changes from commit e159073
("tools: customize mk-ca-bundle.pl") to the updated script.
PR-URL: https://github.com/nodejs/io.js/pull/1833
Reviewed-By: Shigeki Ohtsu <ohtsu@iij.ad.jp>
Ben Noordhuis [Wed, 25 Mar 2015 12:31:13 +0000 (13:31 +0100)]
tools: update mk-ca-bundle.pl to HEAD of upstream
PR-URL: https://github.com/nodejs/io.js/pull/1833
Reviewed-By: Shigeki Ohtsu <ohtsu@iij.ad.jp>
Santiago Gimeno [Tue, 2 Jun 2015 08:39:55 +0000 (10:39 +0200)]
test: fix test-child-process-stdout-flush-exit
Make sure all the stdout data is available before
performing the assertions.
Fixes: https://github.com/nodejs/io.js/issues/944
PR-URL: https://github.com/nodejs/io.js/pull/1868
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Yosuke Furukawa [Mon, 1 Jun 2015 04:19:23 +0000 (13:19 +0900)]
test: loosen condition to detect infinite loop
PR-URL: https://github.com/nodejs/io.js/pull/1857
Reviewed-By: Roman Reiss <me@silverwind.io>
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Сковорода Никита Андреевич [Mon, 1 Jun 2015 20:54:27 +0000 (23:54 +0300)]
doc: fix http.IncomingMessage.socket documentation
Remove the reference to net.Socket.verifyPeer().
That was removed in ea540c9 and was missed in the 032f80e.
Refer to the net.Socket instance by the .socket property.
This avoids unneeded confusion.
'.socket' is the variant that is used internally.
Add a markdown link to net.Socket.getPeerCertificate().
PR-URL: https://github.com/nodejs/io.js/pull/1867
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Ben Noordhuis [Fri, 29 May 2015 12:34:35 +0000 (14:34 +0200)]
test: remove smalloc add-on test
The smalloc module is about to be deprecated and removed. Remove the
add-on test now so it's not forgotten about in the upcoming purge.
PR-URL: https://github.com/nodejs/io.js/pull/1835
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Rich Trott [Mon, 1 Jun 2015 04:34:04 +0000 (21:34 -0700)]
test: remove unneeded comment task
PR-URL: https://github.com/nodejs/io.js/pull/1858
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Tyler Anton [Sun, 8 Mar 2015 02:52:18 +0000 (21:52 -0500)]
docs: add return value for sync fs functions
Clarify that synchronous functions in fs with no return value return
undefined.
Specify that fs.openSync() returns an integer and fs.existsSync()
returns true or false.
Fixes: https://github.com/joyent/node/issues/9313
PR: https://github.com/joyent/node/pull/9359
Reviewed-By: Julien Gilli <julien.gilli@joyent.com>
PORT-FROM: joyent/node @
51fe319faf4399fd027f8b32d1c425200b911e44
PR-URL: https://github.com/nodejs/io.js/pull/1770
Reviewed-By: Roman Reiss <me@silverwind.io>
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Conflicts:
doc/api/fs.markdown
Robert Kowalski [Wed, 7 Jan 2015 21:51:15 +0000 (22:51 +0100)]
docs: delete unused/duplicate css files
- `sh.css` already exists in `api_assets`
- `sh_vim-dark.css` is unused, but used in the repo `node-website`
now
Reviewed-by: Trevor Norris <trev.norris@gmail.com>
Signed-off-by: Julien Gilli <julien.gilli@joyent.com>
PORT-FROM: joyent/node @
0c50195071a57bc40df82c8f57d341a435ff1eb6
PR-URL: https://github.com/nodejs/io.js/pull/1770
Reviewed-By: Roman Reiss <me@silverwind.io>
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Evan Lucas [Mon, 1 Jun 2015 14:15:10 +0000 (09:15 -0500)]
Revert "src: add getopt option parser"
This reverts commit
c0e7bf2d8ceb65ad3840bc4ebf3cbd9fef8e8c14.
There are a few edge cases that can cause a crash
and need to be properly handled.
PR-URL: https://github.com/nodejs/io.js/pull/1862
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Evan Lucas [Tue, 19 May 2015 18:12:26 +0000 (13:12 -0500)]
src: add getopt option parser
Options have been moved into the NodeOptions class.
A new global, node_options now exists and is used
to access the options after the command line arguments
have been parsed.
PR-URL: https://github.com/nodejs/io.js/pull/1804
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Rod Vagg [Mon, 1 Jun 2015 05:47:12 +0000 (15:47 +1000)]
doc: adjust changelog to clarify `client` revert
PR-URL: https://github.com/nodejs/io.js/pull/1859
Reviewed-By: Brendan Ashworth <brendan.ashworth@me.com>
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
thefourtheye [Sun, 31 May 2015 17:18:18 +0000 (22:48 +0530)]
tools: Fix copying contents of deps/npm
This fixes a platform inconsistency between BSD and GNU `cp` where
`deps/npm` would be copied into a subdirectory of `test-npm` on Linux,
but not on OS X.
PR-URL: https://github.com/nodejs/io.js/pull/1853
Reviewed-By: Roman Reiss <me@silverwind.io>
Reviewed-By: Johan Bergström <bugs@bergstroem.nu>
Rod Vagg [Mon, 1 Jun 2015 04:08:27 +0000 (14:08 +1000)]
Working on v2.2.2
Rod Vagg [Mon, 1 Jun 2015 03:21:15 +0000 (13:21 +1000)]
2015-06-01 io.js v2.2.1 Release
PR-URL: https://github.com/nodejs/io.js/pull/1856
Notable Changes:
* http: reverts the removal of an undocumented `client` property on client
connections, this property is being used in the wild, most notably by
https://github.com/request/request which is used by npm.
(Michaël Zasso) [#1852](nodejs#1852).
Johan Bergström [Mon, 25 May 2015 03:10:14 +0000 (13:10 +1000)]
build: avoid passing empty strings to build flags
While checking the return values from icu-i18n, we didn't
validate the content before passing it to the build system.
Also make cflags parsing more robust by avoiding empty strings.
Fixes: https://github.com/nodejs/io.js/issues/1787
PR-URL: https://github.com/nodejs/io.js/pull/1789
Reviewed-By: Rod Vagg <rod@vagg.org>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Michaël Zasso [Sun, 31 May 2015 11:25:27 +0000 (13:25 +0200)]
http: revert deprecation of client property
The improper deprecation of the property broke a feature in the
request module used by the bundled npm. This reverts the deprecation
part of this change.
PR-URL: https://github.com/nodejs/io.js/pull/1852
Fixes: https://github.com/nodejs/io.js/issues/1850
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Roman Reiss <me@silverwind.io>
Rod Vagg [Sun, 31 May 2015 06:04:57 +0000 (16:04 +1000)]
doc: put SEMVER-MINOR on pre-load module fix 2.2.0
Rod Vagg [Sun, 31 May 2015 06:03:28 +0000 (16:03 +1000)]
Working on v2.2.1
Rod Vagg [Sun, 31 May 2015 05:23:39 +0000 (15:23 +1000)]
2015-05-31 io.js v2.2.0 Release
PR-URL: https://github.com/nodejs/io.js/pull/1808
Notable Changes:
* node: Speed-up require() by replacing usage of fs.statSync() and
fs.readFileSync() with internal variants that are faster for this use-case
and do not create as many objects for the garbage collector to clean up.
The primary two benefits are: significant increase in application start-up
time on typical applications and better start-up time for the debugger by
eliminating almost all of the thousands of exception events.
(Ben Noordhuis) #1801.
* node: Resolution of pre-load modules (-r or --require) now follows the
standard require() rules rather than just resolving paths, so you can now
pre-load modules in node_modules. (Ali Ijaz Sheikh) #1812.
* npm: Upgraded npm to v2.11.0. New hooks for preversion, version, and
postversion lifecycle events, some SPDX-related license changes and license
file inclusions. See the release notes for full details.
Rich Trott [Thu, 28 May 2015 05:46:12 +0000 (22:46 -0700)]
test: check error type from net.Server.listen()
This change eliminates an unnecessary setTimeout() in the test.
PR-URL: https://github.com/nodejs/io.js/pull/1821
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Brendan Ashworth <brendan.ashworth@me.com>
Ali Ijaz Sheikh [Wed, 27 May 2015 17:11:30 +0000 (10:11 -0700)]
src: fix module search path for preload modules
When the preload module is not a abs/relative path, we should use
the standard search mechanism of looking into the node_modules folders
outwards. The current working directory is deemed to be the 'requiring
module', i.e. parent. The search path starts from cwd outwards.
Fixes: https://github.com/nodejs/io.js/issues/1803
PR-URL: https://github.com/nodejs/io.js/pull/1812
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Bert Belder [Wed, 25 Mar 2015 04:00:12 +0000 (21:00 -0700)]
win,node-gyp: enable delay-load hook by default
The delay-load hook allows node.exe/iojs.exe to be renamed. See efadffe
for more background.
This commit is a combined squash of the following previous patches:
ba93c583bca993be9d16d9a1819ecdb23697b73a,
3bda6cbfa4a9bb073790d53bc14e85b6e575bbe5,
0d6d3dda95e3fff30996c224197fac88fba85b5b.
PR-URL: https://github.com/nodejs/io.js/pull/1763
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
cjihrig [Fri, 27 Feb 2015 18:40:58 +0000 (13:40 -0500)]
deps: make node-gyp work with io.js
Every npm version bump requires a few patches to be floated on
node-gyp for io.js compatibility. These patches are found in
03d199276e21c1fa08d8df14eeb654c90cc5aa20,
5de334c23096492014a097ff487f07ad8eaee6d2, and
da730c76e98fb9fd18dac445dafbbec74d79f802. This commit squashes
them into a single commit.
PR-URL: https://github.com/iojs/io.js/pull/990
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Forrest L Norvell [Fri, 29 May 2015 02:27:26 +0000 (22:27 -0400)]
deps: upgrade npm to 2.11.0
PR-URL: https://github.com/iojs/io.js/pull/1829
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Brendan Ashworth [Thu, 28 May 2015 03:42:33 +0000 (20:42 -0700)]
src: remove old code
The Socket writable only change was added and implemented in the
constructor around
5885f464f0ad372efa7e, but this was never removed.
The libev counter issue is no longer prudent; the test remains in
test/sequential/test-regress-GH-1726.
PR-URL: https://github.com/nodejs/io.js/pull/1819
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Johan Bergström [Sat, 30 May 2015 03:46:12 +0000 (13:46 +1000)]
tools: pass constant to logger instead of string
On a few of our installations (namely CentOS), passing 'INFO'
resulted in a silent loglevel. Use a logging constant instead.
Fixes: https://github.com/nodejs/build/issues/104
PR-URL: https://github.com/nodejs/io.js/pull/1842
Reviewed-By: Rod Vagg <rod@vagg.org>
Vladimir Kurchatkin [Wed, 13 May 2015 15:52:49 +0000 (18:52 +0300)]
http: flush stored header
`flushHeaders` should work for header written
with `writeHead`.
PR-URL: https://github.com/nodejs/io.js/pull/1695
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Ben Noordhuis [Thu, 28 May 2015 19:46:54 +0000 (21:46 +0200)]
test: add heap profiler add-on regression test
Add a regression test for https://github.com/nodejs/io.js/pull/1827.
PR-URL: https://github.com/nodejs/io.js/pull/1828
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Ben Noordhuis [Thu, 28 May 2015 19:11:12 +0000 (21:11 +0200)]
Revert "core: set PROVIDER type as Persistent class id"
This reverts commit
3c44100558b4e9e48e0e711e38acc91e0f870a9f.
Reverted for breaking node-heapdump[0].
AsyncWrap assigns a class id but does not set a v8::RetainedObjectInfo
provider callback with v8::HeapProfiler::SetWrapperClassInfoProvider().
The result is a null pointer dereference when taking a heap snapshot.
It can probably be solved by setting a generic provider callback inside
the AsyncWrap constructor but that may have performance ramifications
that need to be investigated first. I move to revert it for now.
[0] https://github.com/bnoordhuis/node-heapdump
PR-URL: https://github.com/nodejs/io.js/pull/1827
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Evan Lucas [Fri, 22 May 2015 14:52:05 +0000 (09:52 -0500)]
child_process: expose ChildProcess constructor
Creates two new internal modules (child_process and socket_list) for
better readability.
Exposes the ChildProcess constructor from the child_process module so
one can now `require(‘child_process’).ChildProcess`
Fixes: https://github.com/nodejs/io.js/issues/1751
PR-URL: https://github.com/nodejs/io.js/pull/1760
Reviewed-By: Chris Dickinson <christopher.s.dickinson@gmail.com>
Evan Lucas [Fri, 22 May 2015 14:50:36 +0000 (09:50 -0500)]
tools: add objectLiteralShorthandProperties to .eslintrc
Required to make linting pass for using object literal
shorthand properties.
PR-URL: https://github.com/nodejs/io.js/pull/1760
Reviewed-By: Chris Dickinson <christopher.s.dickinson@gmail.com>
Rich Trott [Wed, 27 May 2015 03:11:38 +0000 (20:11 -0700)]
doc: `fs.*File()` also accept encoding strings
Fixes: https://github.com/nodejs/io.js/issues/1797
PR-URL: https://github.com/nodejs/io.js/pull/1806
Reviewed-By: fishrock123@rocketmail.com
Ben Noordhuis [Tue, 26 May 2015 14:50:16 +0000 (16:50 +0200)]
lib: speed up require(), phase 2
Replace calls to fs.readFileSync() with an internal variant that does
not create Error objects on failure and is a bit speedier in general.
A secondary benefit is that it improves start-up times in the debugger
because it no longer emits thousands of exception debug events.
On a medium-sized application[0], this commit and its predecessor reduce
start-up times from about 1.5s to 0.5s and reduce the number of start-up
exceptions from ~6100 to 32, half of them internal to the application.
[0] https://github.com/strongloop/loopback-sample-app
PR-URL: https://github.com/nodejs/io.js/pull/1801
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Ben Noordhuis [Tue, 26 May 2015 11:23:26 +0000 (13:23 +0200)]
lib: speed up require(), phase 1
Replace calls to fs.statSync() with an internal variant that does not
create Error or Stat objects that put strain on the garbage collector.
A secondary benefit is that it improves start-up times in the debugger
because it no longer emits thousands of exception debug events.
PR-URL: https://github.com/nodejs/io.js/pull/1801
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Steve Sharp [Sun, 28 Sep 2014 22:36:31 +0000 (15:36 -0700)]
doc: add documentation for AtExit hook
Fixes: https://github.com/nodejs/io.js/issues/999
PR-URL: https://github.com/nodejs/io.js/pull/1014
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Ben Noordhuis [Mon, 25 May 2015 15:29:26 +0000 (17:29 +0200)]
test: don't lint autogenerated test/addons/doc-*/
The JS source files in test/addons/doc-*/ are scraped from the reference
documentation in doc/api and need not conform to the style guide.
PR-URL: https://github.com/nodejs/io.js/pull/1793
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Ben Noordhuis [Mon, 25 May 2015 14:49:18 +0000 (16:49 +0200)]
test: remove stray copyright notices
Commit 3e1b1dd ("Remove excessive copyright/license boilerplate") left
in a few lines of boilerplate here and there. This commit removes them.
PR-URL: https://github.com/nodejs/io.js/pull/1793
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Ben Noordhuis [Mon, 25 May 2015 14:45:11 +0000 (16:45 +0200)]
test: fix deprecation warning in addons test
The non-isolate version of node::FatalException() is deprecated, switch
to the version that takes an isolate as its first argument.
PR-URL: https://github.com/nodejs/io.js/pull/1793
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Ben Noordhuis [Mon, 25 May 2015 14:37:49 +0000 (16:37 +0200)]
src: fix deferred events not working with -e
Defer evaluation of the script for a tick. This is a workaround for
events not firing when evaluating scripts on the command line with -e.
Fixes: https://github.com/nodejs/io.js/issues/1600
PR-URL: https://github.com/nodejs/io.js/pull/1793
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Rich Trott [Sat, 23 May 2015 00:01:10 +0000 (17:01 -0700)]
doc: clarify stability of fs.watch and relatives
Fixes: https://github.com/nodejs/io.js/issues/1754
PR-URL: https://github.com/nodejs/io.js/pull/1775
Reviewed-By: Brendan Ashworth <brendan.ashworth@me.com>
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Brian White [Mon, 4 May 2015 18:40:25 +0000 (14:40 -0400)]
lib: simplify nextTick() usage
This commit removes unnecessary nextTick() closures and adds some
shared nextTick() callbacks for better re-use.
PR-URL: https://github.com/nodejs/io.js/pull/1612
Reviewed-By: Yosuke Furukawa <yosuke.furukawa@gmail.com>
Reviewed-By: Brendan Ashworth <brendan.ashworth@me.com>
Josh Gummersall [Tue, 19 May 2015 04:35:48 +0000 (21:35 -0700)]
doc: state url decoding behavior
Explicitly states the fact that no decoding is performed on the url
path or pathname or the query string by default in the URL module.
Fixes: https://github.com/nodejs/io.js/issues/1538
PR-URL: https://github.com/nodejs/io.js/pull/1731
Reviewed-By: Roman Reiss <me@silverwind.io>
Brian White [Sat, 2 May 2015 01:37:05 +0000 (21:37 -0400)]
http: simplify code and remove unused properties
PR-URL: https://github.com/nodejs/io.js/pull/1572
Reviewed-By: Chris Dickinson <christopher.s.dickinson@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Rod Vagg [Sun, 24 May 2015 06:31:11 +0000 (16:31 +1000)]
doc: remove bad semver-major entry from CHANGELOG
PR-URL: https://github.com/nodejs/io.js/pull/1782
Reviewed-By: Roman Reiss <me@silverwind.io>
Rod Vagg [Sun, 24 May 2015 03:56:20 +0000 (13:56 +1000)]
doc: fix changelog s/2.0.3/2.1.0
Rod Vagg [Sun, 24 May 2015 02:10:22 +0000 (12:10 +1000)]
Working on v2.1.1
Rod Vagg [Sat, 23 May 2015 22:43:41 +0000 (08:43 +1000)]
2015-05-24 io.js v2.1.0 Release
PR-URL: https://github.com/nodejs/io.js/pull/1777
Notable Changes:
* crypto: Diffie-Hellman key exchange (DHE) parameters ('dhparams') must now be
1024 bits or longer or an error will be thrown. A warning will also be printed
to the console if you supply less than 2048 bits. See https://weakdh.org/ for
further context on this security concern. (Shigeki Ohtsu) #1739.
* node: A new --trace-sync-io command line flag will print a warning and a stack
trace whenever a synchronous API is used. This can be used to track down
synchronous calls that may be slowing down an application.
(Trevor Norris) #1707.
* node: To allow for chaining of methods, the setTimeout(), setKeepAlive(),
setNoDelay(), ref() and unref() methods used in 'net', 'dgram', 'http',
'https' and 'tls' now return the current instance instead of undefined
(Roman Reiss & Evan Lucas) #1699 #1768 #1779.
* npm: Upgraded to v2.10.1, release notes can be found in
https://github.com/npm/npm/releases/tag/v2.10.1 and
https://github.com/npm/npm/releases/tag/v2.10.0.
* util: A significant speed-up (in the order of 35%) for the common-case of a
single string argument to util.format(), used by console.log()
(Сковорода Никита Андреевич) #1749.
Bert Belder [Wed, 25 Mar 2015 04:00:12 +0000 (21:00 -0700)]
win,node-gyp: enable delay-load hook by default
The delay-load hook allows node.exe/iojs.exe to be renamed. See efadffe
for more background.
This commit is a combined squash of the following previous patches:
ba93c583bca993be9d16d9a1819ecdb23697b73a,
3bda6cbfa4a9bb073790d53bc14e85b6e575bbe5,
0d6d3dda95e3fff30996c224197fac88fba85b5b.
PR-URL: https://github.com/nodejs/io.js/pull/1763
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
cjihrig [Fri, 27 Feb 2015 18:40:58 +0000 (13:40 -0500)]
deps: make node-gyp work with io.js
Every npm version bump requires a few patches to be floated on
node-gyp for io.js compatibility. These patches are found in
03d199276e21c1fa08d8df14eeb654c90cc5aa20,
5de334c23096492014a097ff487f07ad8eaee6d2, and
da730c76e98fb9fd18dac445dafbbec74d79f802. This commit squashes
them into a single commit.
PR-URL: https://github.com/iojs/io.js/pull/990
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Rebecca Turner [Fri, 22 May 2015 07:14:39 +0000 (03:14 -0400)]
deps: upgrade to npm 2.10.1
PR-URL: https://github.com/nodejs/io.js/pull/1763
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Rod Vagg [Sat, 23 May 2015 00:31:57 +0000 (10:31 +1000)]
doc: update AUTHORS list
Update AUTHORS list using tools/update-authors.sh
PR-URL: https://github.com/nodejs/io.js/pull/1776
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Roman Reiss [Sat, 23 May 2015 05:48:13 +0000 (07:48 +0200)]
net: return this from setNoDelay and setKeepAlive
Modifies the Socket.setNoDelay and Socket.setKeepAlive methods to return
the socket instance instead of undefined, to allow for chaining.
PR-URL: https://github.com/nodejs/io.js/pull/1779
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Roman Reiss [Fri, 22 May 2015 16:35:57 +0000 (18:35 +0200)]
net,dgram: return this from ref and unref methods
Modifies the following methods to return the instance instead
of undefined, to allow for chaining these methods:
- net.Server.ref
- net.Server.unref
- net.Socket.ref
- net.Socket.unref
- dgram.Socket.ref
- dgram.Socket.unref
PR-URL: https://github.com/nodejs/io.js/pull/1768
Reviewed-By: Evan Lucas <evanlucas@me.com>
Brendan Ashworth [Sat, 16 May 2015 02:24:34 +0000 (19:24 -0700)]
buffer: optimize Buffer.byteLength
Buffer.byteLength is important for speed because it is called whenever a
new Buffer is created from a string.
This commit optimizes Buffer.byteLength execution by:
- moving base64 length calculation into JS-land, which is now much
faster
- remove redundant code and streamline the UTF8 length calculation
It also adds a benchmark and better tests.
PR-URL: https://github.com/nodejs/io.js/pull/1713
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Malte-Thorben Bruns [Fri, 22 May 2015 19:12:59 +0000 (21:12 +0200)]
tls: emit errors happening before handshake finish
This fixes a race condition introduced in 80342f6.
`socket.destroy(err)` only emits the passed error when
`socket._writableState.errorEmitted === false`, `ssl.onerror`
sets `errorEmitted = true` just before calling
`socket.destroy()`.
See: https://github.com/nodejs/io.js/issues/1119
See: https://github.com/nodejs/io.js/issues/1711
PR-URL: https://github.com/nodejs/io.js/pull/1769
Reviewed-By: Fedor Indutny <fedor@indutny.com>
Rich Trott [Thu, 21 May 2015 05:46:02 +0000 (22:46 -0700)]
doc: fix typo in CONTRIBUTING.md
PR-URL: https://github.com/nodejs/io.js/pull/1755
Reviewed-By: Evan Lucas <evanlucas@me.com>
Reviewed-By: Roman Reiss <me@silverwind.io>
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Maurice Butler [Thu, 21 May 2015 04:00:16 +0000 (14:00 +1000)]
doc: path is ignored in url.format
Made it obvious that path is ignored in url.format
PR-URL: https://github.com/nodejs/io.js/pull/1753
Fedor Indutny [Fri, 15 May 2015 19:21:06 +0000 (21:21 +0200)]
tls: use `.destroy(err)` instead of destroy+emit
Emit errors using `.destroy(err)` instead of `.destroy()` and
`.emit('error', err)`. Otherwise `close` event is emitted with the
`error` argument set to `false`, even if the connection was torn down
because of the error.
See: https://github.com/nodejs/io.js/issues/1119
PR-URL: https://github.com/nodejs/io.js/pull/1711
Reviewed-By: Chris Dickinson <christopher.s.dickinson@gmail.com>
Johan Bergström [Mon, 4 May 2015 03:57:17 +0000 (13:57 +1000)]
build: refactor pkg-config for shared libraries
Improve detection and usage of pkg-config. This simplifies the setup
of all our shared libraries.
If pkg-config is installed on the host and `--shared` flags are passed
by the user, we try to get defaults from pkg-config instead of using the
default provided by configure.
PR-URL: https://github.com/nodejs/io.js/pull/1603
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Сковорода Никита Андреевич [Wed, 20 May 2015 19:26:37 +0000 (22:26 +0300)]
util: speed up common case of formatting string
PR-URL: https://github.com/nodejs/io.js/pull/1749
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Shigeki Ohtsu [Wed, 20 May 2015 05:20:26 +0000 (14:20 +0900)]
tls: make server not use DHE in less than 1024bits
DHE key lengths less than 1024bits is already weaken as pointed out in
https://weakdh.org/ . 1024bits will not be safe in near future. We
will extend this up to 2048bits somedays later.
PR-URL: https://github.com/nodejs/io.js/pull/1739
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Fedor Indutny <fedor@indutny.com>
Felipe Batista [Sun, 17 May 2015 21:20:41 +0000 (18:20 -0300)]
doc: fix spelling in CHANGELOG
Reviewed-By: Roman Reiss <me@silverwind.io>
Rich Trott [Sun, 17 May 2015 02:33:13 +0000 (19:33 -0700)]
doc: add notes to child_process.fork() and .exec()
Adds notes about the difference to their POSIX counterparts.
PR-URL: https://github.com/nodejs/io.js/pull/1718
Fixes: https://github.com/nodejs/io.js/issues/224
Reviewed-By: Roman Reiss <me@silverwind.io>
Michaël Zasso [Wed, 20 May 2015 09:29:08 +0000 (11:29 +0200)]
test: fix jslint error
PR-URL: https://github.com/nodejs/io.js/pull/1743
Fixes: https://github.com/nodejs/io.js/issues/1742
Reviewed-By: Roman Reiss <me@silverwind.io>
Santiago Gimeno [Tue, 19 May 2015 08:22:37 +0000 (10:22 +0200)]
test: fix test-sync-io-option
Wait for all the data to be available in stderr before checking its
contents. In FreeBSD this was failing because stderr data was being
emitted in multiple chunks. 4 WARNINGS are printed instead of 2 for
each sync call inside readFileSync. require('fs') does not print any
trace.
PR-URL: https://github.com/nodejs/io.js/pull/1734
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Roman Reiss [Tue, 19 May 2015 11:00:06 +0000 (13:00 +0200)]
test: enable linting for tests
Enable linting for the test directory. A number of changes was made so
all tests conform the current rules used by lib and src directories. The
only exception for tests is that unreachable (dead) code is allowed.
test-fs-non-number-arguments-throw had to be excluded from the changes
because of a weird issue on Windows CI.
PR-URL: https://github.com/nodejs/io.js/pull/1721
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Evan Lucas [Wed, 18 Feb 2015 18:02:01 +0000 (12:02 -0600)]
net: persist net.Socket options before connect
Remembers net.Socket options called before connect and retroactively
applies them after the handle has been created.
This change makes the following function calls more user-friendly:
- setKeepAlive()
- setNoDelay()
- ref()
- unref()
Related: https://github.com/joyent/node/issues/7077 and
https://github.com/joyent/node/issues/8572
Fixes: https://github.com/joyent/node/issues/7077
Fixes: https://github.com/joyent/node/issues/8572
PR-URL: https://github.com/nodejs/io.js/pull/1518
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Roman Reiss <me@silverwind.io>
Trevor Norris [Mon, 18 May 2015 22:39:53 +0000 (16:39 -0600)]
core: set PROVIDER type as Persistent class id
Pass along the PROVIDER type, that is already passed to AsyncWrap, along
to BaseObject to set the handle_'s class id. This will allow all
Persistents to be transversed and uniquely identified by what type they
are using APIs such as v8::PersistentHandleVisitor.
PR-URL: https://github.com/nodejs/io.js/pull/1730
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Sharat M R [Sun, 26 Apr 2015 23:55:33 +0000 (05:25 +0530)]
win,node-gyp: make delay-load hook C89 compliant
This fixes building compiled addons with Visual Studio 2010.
PR-URL: https://github.com/TooTallNate/node-gyp/pull/616
Reviewed-By: Bert Belder <bertbelder@gmail.com>
Trevor Norris [Thu, 14 May 2015 17:46:54 +0000 (11:46 -0600)]
core: implement runtime flag to trace sync io
Use the --trace-sync-io flag to print a stack trace whenever a sync
method is used after the first tick, excluding during the process exit
event. (e.g. fs.readFileSync()) It does not track if the warning has
occurred at a specific location in the past and so will print the
warning every time.
Reason for not printing during the first tick of the appication is so
all necessary resources can be required. Also by excluding synchronous
calls during exit is necessary in case any data needs to be logged out
by the application before it shuts down.
Fixes: https://github.com/nodejs/io.js/issues/1674
PR-URL: https://github.com/nodejs/io.js/pull/1707
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Fedor Indutny <fedor@indutny.com>
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: Petka Antonov <petka_antonov@hotmail.com>
Frederic Hemberger [Sat, 16 May 2015 06:04:36 +0000 (08:04 +0200)]
doc: update links from iojs/io.js to nodejs/io.js
Replaced all links in doc and comments to point to the new org.
PR-URL: https://github.com/nodejs/io.js/pull/1715
Reviewed-By: Roman Reiss <me@silverwind.io>
smikes [Thu, 14 May 2015 23:43:35 +0000 (17:43 -0600)]
doc: recommend against use of NODE_PATH
PR-URL: https://github.com/nodejs/io.js/pull/1708
Reviewed-By: Roman Reiss <me@silverwind.io>
Yazhong Liu [Sun, 17 May 2015 17:25:19 +0000 (01:25 +0800)]
repl: remove unnecessary check for globals
There is no need to check for globals and also check if it is
an array.
PR-URL: https://github.com/nodejs/io.js/pull/1722
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>