Node v5.2.0 (Current)

Rod Vagg

Notable changes

  • build:
    • Add support for Intel's VTune JIT profiling when compiled with --enable-vtune-profiling. For more information about VTune, see https://software.intel.com/en-us/node/544211. (Chunyang Dai) #3785.
    • Properly enable V8 snapshots by default. Due to a configuration error, snapshots have been kept off by default when the intention is for the feature to be enabled. (Fedor Indutny) #3962.
  • crypto:
    • Simplify use of ECDH (Elliptic Curve Diffie-Hellman) objects (created via crypto.createECDH(curve_name)) with private keys that are not dynamically generated via generateKeys(). The public key is now computed when explicitly setting a private key. Added validity checks to reduce the possibility of computing weak or invalid shared secrets. Also, deprecated the setPublicKey() method for ECDH objects as its usage is unnecessary and can lead to inconsistent state. (Michael Ruddy) #3511.
    • Update root certificates from the current list stored maintained by Mozilla NSS. (Ben Noordhuis) #3951.
    • Multiple CA certificates can now be passed with the ca option to TLS methods as an array of strings or in a single new-line separated string. (Ben Noordhuis) #4099
  • tools: Include a tick processor in core, exposed via the --prof-process command-line argument which can be used to process V8 profiling output files generated when using the --prof command-line argument. (Matt Loring) #4021.

Known issues

  • Surrogate pair in REPL can freeze terminal. #690
  • Calling dns.setServers() while a DNS query is in progress can cause the process to crash on a failed assertion. #894
  • url.resolve may transfer the auth portion of the url when resolving between two full hosts, see #1435.
  • Unicode characters in filesystem paths are not handled consistently across platforms or Node.js APIs. See #2088, #3401 and #3519.

Commits

  • [08a3f29fd4] - buffer: fix range checking for slowToString (Matt Loring) #4019
  • [e3a8e8bba4] - buffer: Prevent Buffer constructor deopt (Bryce Baril) #4158
  • [0e18e68324] - buffer: fix writeInt{B,L}E for some neg values (Peter A. Bigot) #3994
  • [ab5b529dd2] - buffer: default to UTF8 in byteLength() (Tom Gallacher) #4010
  • [fcf0e8ebdf] - buffer: move checkFloat from lib into src (Matt Loring) #3763
  • [12649f4496] - build: add "--partly-static" build options (Super Zheng) #4152
  • [a76d788119] - build: update signtool description, add url (Rod Vagg) #4011
  • [ed255abdc1] - (SEMVER-MINOR) build,src: add Intel Vtune profiling support (Chunyang Dai) #3785
  • [7793c364fc] - child_process: flush consuming streams (Dave) #4071
  • [f29c5d6e70] - configure: v8_use_snapshot should be true (Fedor Indutny) #3962
  • [da5ac55c83] - (SEMVER-MINOR) crypto: simplify using pre-existing keys with ECDH (Michael Ruddy) #3511
  • [cfc97641ee] - crypto: fix native module compilation with FIPS (Stefan Budeanu) #4023
  • [b81b45dabd] - crypto: update root certificates (Ben Noordhuis) #3951
  • [def681a07e] - crypto: disable crypto.createCipher in FIPS mode (Stefan Budeanu) #3754
  • [ce423f3624] - debugger: introduce exec method for debugger (Jackson Tian)
  • [99fd1ec28d] - deps: backport 819b40a from V8 upstream (Michaël Zasso) #3937
  • [82252b2a17] - doc: add brief Node.js overview to README (wurde) #4174
  • [634c5f1f81] - doc: url.format - true slash postfix behaviour (fansworld-claudio) #4119
  • [6f957a70d8] - doc: s/node.js/Node.js in readme (Rod Vagg) #3998
  • [0cd4a52392] - doc: improve child_process.markdown wording (yorkie) #4138
  • [fd5ed6888d] - doc: add JungMinu to collaborators (Minwoo Jung) #4143
  • [fa0cdf75d9] - doc: add iarna to collaborators (Rebecca Turner) #4144
  • [424eb962b1] - doc: add zkat to collaborators (Kat Marchán) #4142
  • [85b601224b] - doc: add HTTP working group (James M Snell) #3919
  • [f4164bd8df] - doc: update links to use https where possible (jpersson) #4054
  • [3169eed1e3] - doc: add links and backticks around names (jpersson) #4054
  • [f3417e2574] - doc: standardize references to node.js in docs (Scott Buchanan) #4136
  • [95dd60c657] - doc: reword https.Agent example text (Jan Krems) #4075
  • [c61237d3ea] - doc: fix internal link to child.send() (Luigi Pinca) #4089
  • [aaeced915e] - doc: fix the exception description (yorkie) #3658
  • [a2b7596ac0] - doc: fix color of linked code blocks (jpersson) #4068
  • [f3c50f5fb5] - doc: fix rare case of misaligned columns (Roman Reiss) #3948
  • [f0a2e2cdec] - doc: message.header duplication correction (Bryan English) #3997
  • [b1dfa8bebb] - doc: fix typo in README (Rich Trott) #4000
  • [4602e01221] - doc: replace sane with reasonable (Lewis Cowper) #3980
  • [4849a54386] - doc: Adding best practises for crypto.pbkdf2 (Tom Gallacher) #3290
  • [77251d99de] - doc: numeric flags to fs.open (Carl Lei) #3641
  • [f4ca007b42] - doc: clarify that fs streams expect blocking fd (Carl Lei) #3641
  • [26eeae8016] - doc: fix broken references (Alexander Gromnitsky) #3944
  • [f90227b0e8] - doc: move fs.existsSync() deprecation message (Martin Forsberg) #3942
  • [bbcb2a2e65] - doc: clarify module loading behavior (cjihrig) #3920
  • [0997178037] - doc: add reference for buffer.inspect() (cjihrig) #3921
  • [6c16c40283] - doc: clarify v5.1.1 notable items (Rod Vagg) #4156
  • [4c8800c2de] - fs,doc: use target instead of destination (yorkie) #3912
  • [1f0e8dca8e] - installer: install the tick processor (Matt Loring) #3032
  • [e8e4e0718b] - meta: remove use of profanity in source (Myles Borins) #4122
  • [13834caa28] - module: fix column offsets in errors (Tristian Flanagan) #2867
  • [8988e1e117] - module,repl: remove repl require() hack (Ben Noordhuis) #4026
  • [baac81d95f] - net: add local address/port for better errors (Jan Schär) #3946
  • [12754c5dc3] - net: small code cleanup (Jan Schär) #3943
  • [8a5e4345fd] - node: s/doNTCallbackX/nextTickCallbackWithXArgs/ (Rod Vagg) #4167
  • [0869ef3c55] - (SEMVER-MINOR) repl: allow leading period in multiline input (Zirak) #3835
  • [aaab108dfe] - repl: attach location info to syntax errors (cjihrig) #4013
  • [b08126dc9d] - src: refactor vcbuild configure args creation (Rod Vagg) #3399
  • [da3137d0c5] - src: don't print garbage errors (cjihrig) #4112
  • [9e9346fa32] - src: use GetCurrentProcessId() for process.pid (Ben Noordhuis) #4163
  • [d969c0965c] - src: define Is* util functions with macros (cjihrig) #4118
  • [458facdf66] - src: define getpid() based on OS (cjihrig) #4146
  • [7e18f2ec62] - (SEMVER-MINOR) src: add BE support to StringBytes::Encode() (Bryon Leung) #3410
  • [756ab9caad] - stream: be less eager with readable flag (Brian White) #4141
  • [8f845ba28a] - stream_wrap: error if stream has StringDecoder (Fedor Indutny) #4031
  • [1c1af81ea0] - streams: update .readable/.writable to false (Brian White) #4083
  • [1d50819c85] - test: check range fix for slowToString (Sakthipriyan Vairamani) #4019
  • [0c2a0dc859] - test: skip long path tests on non-Windows (Rafał Pocztarski) #4116
  • [8a60aa1303] - test: don't check the # of chunks in test-http-1.0 (Santiago Gimeno) #3961
  • [e84aeec883] - test: mark test-cluster-shared-leak flaky (Rich Trott) #4162
  • [b3f3b2e157] - test: fix cluster-worker-isdead (Santiago Gimeno) #3954
  • [da6be4d31a] - test: fix time resolution constraint (Gireesh Punathil) #3981
  • [9d16729b20] - test: skip instead of fail when mem constrained (Michael Cornacchia) #3697
  • [be41eb751b] - test: refactor test-http-exit-delay (Rich Trott) #4055
  • [4b43bf0385] - test: fix flaky test-net-socket-local-address (Rich Trott) #4109
  • [cb55c67a00] - test: improve cluster-disconnect-handles test (Brian White) #4084
  • [2b5b127e14] - test: fix cluster-disconnect-handles flakiness (Santiago Gimeno) #4009
  • [430264817b] - test: add test for repl.defineCommand() (Bryan English) #3908
  • [22b0971222] - test: eliminate multicast test FreeBSD flakiness (Rich Trott) #4042
  • [c50003746b] - test: mark test flaky on FreeBSD (Rich Trott) #4016
  • [69c95bbdb7] - test: move ArrayStream to common (cjihrig) #4027
  • [d94a70ec51] - test: fix test-domain-exit-dispose-again (Julien Gilli) #3990
  • [00b839a2b8] - test: use platform-based timeout for reliability (Rich Trott) #4015
  • [054a216b6f] - test: mark cluster-net-send test flaky on windows (Rich Trott) #4006
  • [d0621c5649] - test: mark fork regression test flaky on windows (Rich Trott) #4005
  • [19ed33df80] - test: skip test if in FreeBSD jail (Rich Trott) #3995
  • [a863e8d667] - test: remove flaky status for cluster test (Rich Trott) #3975
  • [dd0d15fc47] - test: add TAP diagnostic message for retried tests (Rich Trott) #3960
  • [1fe4d30efc] - test: retry on smartos if ECONNREFUSED (Rich Trott) #3941
  • [665a35d45e] - test: address flaky test-http-client-timeout-event (Rich Trott) #3968
  • [f9fe0aee53] - test: numeric flags to fs.open (Carl Lei) #3641
  • [54aafa17af] - test: http complete list of non-concat headers (Bryan English) #3930
  • [788541b40c] - test: fix race condition in unrefd interval test (Michael Cornacchia) #3550
  • [e129d83996] - test: skip/replace weak crypto tests in FIPS mode (Stefan Budeanu) #3757
  • [bc27379453] - test: avoid test timeouts on rpi (Stefan Budeanu) #3902
  • [272732e76b] - test: fix flaky test-child-process-spawnsync-input (Rich Trott) #3889
  • [781f8c0d1e] - test: add OS X to module loading error test (Evan Lucas) #3901
  • [f99c6363de] - test: module loading error fix solaris #3798 (fansworld-claudio) #3855
  • [1279adc756] - timers: optimize callback call: bind -> arrow (Andrei Sedoi) #4038
  • [80f7f65464] - (SEMVER-MINOR) tls: support reading multiple cas from one input (Ben Noordhuis) #4099
  • [939f305d56] - tls_wrap: slice buffer properly in ClearOut (Fedor Indutny) #4184
  • [6d4a03d3d2] - (SEMVER-MINOR) tools: list missing whitespace/if-one-line cpplint (Ben Noordhuis) #4099
  • [1c1c1a0f2b] - (SEMVER-MINOR) tools: add --prof-process flag to node binary (Matt Loring) #4021
  • [d7a7d3e6f7] - tools: update certdata.txt (Ben Noordhuis) #3951
  • [1b434e0654] - util: determine object types in C++ (cjihrig) #4100
  • [c93e2678f0] - util: fix constructor/instanceof checks (Brian White) #3385
  • [098a3113e1] - util: move .decorateErrorStack to internal/util (Ben Noordhuis) #4026
  • [e68ea16c32] - util: add decorateErrorStack() (cjihrig) #4013
  • [c584c3e08f] - util,src: allow lookup of hidden values (cjihrig) #3988

Windows 32-bit Installer: https://nodejs.org/dist/v5.2.0/node-v5.2.0-x86.msi
Windows 64-bit Installer: https://nodejs.org/dist/v5.2.0/node-v5.2.0-x64.msi
Windows 32-bit Binary: https://nodejs.org/dist/v5.2.0/win-x86/node.exe
Windows 64-bit Binary: https://nodejs.org/dist/v5.2.0/win-x64/node.exe
Mac OS X 64-bit Installer: https://nodejs.org/dist/v5.2.0/node-v5.2.0.pkg
Mac OS X 64-bit Binary: https://nodejs.org/dist/v5.2.0/node-v5.2.0-darwin-x64.tar.gz
Linux 32-bit Binary: https://nodejs.org/dist/v5.2.0/node-v5.2.0-linux-x86.tar.gz
Linux 64-bit Binary: https://nodejs.org/dist/v5.2.0/node-v5.2.0-linux-x64.tar.gz
SmartOS 32-bit Binary: https://nodejs.org/dist/v5.2.0/node-v5.2.0-sunos-x86.tar.gz
SmartOS 64-bit Binary: https://nodejs.org/dist/v5.2.0/node-v5.2.0-sunos-x64.tar.gz
ARMv6 32-bit Binary: https://nodejs.org/dist/v5.2.0/node-v5.2.0-linux-armv6l.tar.gz
ARMv7 32-bit Binary: https://nodejs.org/dist/v5.2.0/node-v5.2.0-linux-armv7l.tar.gz
ARMv8 64-bit Binary: https://nodejs.org/dist/v5.2.0/node-v5.2.0-linux-arm64.tar.gz
Source Code: https://nodejs.org/dist/v5.2.0/node-v5.2.0.tar.gz
Other release files: https://nodejs.org/dist/v5.2.0/
Documentation: https://nodejs.org/docs/v5.2.0/api/

Shasums (GPG signing hash: SHA512, file hash: SHA256):

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

e3d690b8a1f3aae3caaa57d931aac5ace7dbdea7237d3e9413041c30feecb4e0  node-v5.2.0-darwin-x64.tar.gz
e93d2b2b594ee64f4bac42e4b659c033208340b21f597d3e86b41a58f8a32103  node-v5.2.0-darwin-x64.tar.xz
72e3e0dfbbb37e85004c6a37a0233464eb10b910775baf9f69f3253de099319e  node-v5.2.0-headers.tar.gz
f9f04bfbe6315c731b48e1f909808b0d0299f653b45b932d329895015c79b1ba  node-v5.2.0-headers.tar.xz
3517d9ba80217985cac970272d387f4a905f17e5b87a7c7243efcc1173751531  node-v5.2.0-linux-arm64.tar.gz
ffe8c113e0e377af8ede966a15b57ca7333fb4dc028a9335d1fcbd5a55e29f3c  node-v5.2.0-linux-arm64.tar.xz
c3f2c2d3105e66d2d895711defb53becc5f8fddde177cd5cc2d981f6d9a5bd4b  node-v5.2.0-linux-armv6l.tar.gz
3e60473ecc6e4a20559e4425c769b6bcf43095de3aaced634408e0a1dc4e7452  node-v5.2.0-linux-armv6l.tar.xz
392cf0f1e1d3c64dbb940ddb750f436310b85f68261714639712816dd539365d  node-v5.2.0-linux-armv7l.tar.gz
1a671cccb15c5ba31d5c3bc2ad3ca65eb940fbc2b1328708e98b5639b32ec653  node-v5.2.0-linux-armv7l.tar.xz
7f31f5db97e1def61454d268d5206a6826385d157f444c21a36230a6c18f40d2  node-v5.2.0-linux-x64.tar.gz
c4b09bdd3235504af67ad298da636333246d2c8c7aa1b71e04d860172beda430  node-v5.2.0-linux-x64.tar.xz
963e3b4e23245db09581901ead2901bc2d516ddc69b7043fcb0cc76263d50152  node-v5.2.0-linux-x86.tar.gz
0ae2106989f24e300625afca946639b54b1f1c801b48275ab1ec46cbf863ad9f  node-v5.2.0-linux-x86.tar.xz
caefc6710a5a67bfc038738bb51b7de1ffcbd5743287ebc4309a938784bc2a7d  node-v5.2.0.pkg
3f9eafb213c293ad09637056646ccc7a7746865d65508b01ad425005397fb25f  node-v5.2.0-sunos-x64.tar.gz
dbdb5f10539e2abf0f88e064dc728c2cf844a998f32479bc6128498fa2ff164f  node-v5.2.0-sunos-x64.tar.xz
4391329491781c0cb1a49360162198d8fe48190dfa9f1a8676b1e12b18a63afe  node-v5.2.0-sunos-x86.tar.gz
07fc53c83355a954844d707484eee2336841855688e7bf79d85c30c2260c4f6d  node-v5.2.0-sunos-x86.tar.xz
5df5682f9fdd8e747f652e0b09fed46478a1e3df159797852787a074b8787664  node-v5.2.0.tar.gz
0cda6254aea3330a711f5b30425ad363568456ee1fd70336b21890b1c605f356  node-v5.2.0.tar.xz
5c2a92d6f90ce19b19c8a87ffe7b0284b25174fead9665ebd04bc68369f2fee4  node-v5.2.0-x64.msi
801b4a113615f6c81e1f9aaeb54bb7340d5bb4c7915c1264838d8dac91a24953  node-v5.2.0-x86.msi
5eadf89f76550502414ad78f3ab920ff12aebcdbddf53c498959d604c672d153  win-x64/node.exe
afeb574d979496b7bae4139051b520bd103e04efaf7452d0725069a5b9ef919f  win-x64/node.lib
15e259ba6826931de2aaee0ee793970673643099a4663ba742023097bc037cb5  win-x86/node.exe
a4790c00b2b03eadf09078bfc4bc373185a6acb057b35ae935ca21173d1ee55f  win-x86/node.lib
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQEcBAEBAgAGBQJWZ7rtAAoJEMJzeS99g1Rd8oQIAJJjWZ+oOZk47DKH0/FWyQOZ
ukwiGWuFBLQyY72rATtE83SPDruf0+4ZGxiBk6k52/cXV8aLKj8LwUhvm6nYC35G
sCiXUGQ0OxCvEMp3+62RA7W6hTTFtkXDMs0Ys1RYS+dNHIg7SZPZIj7v4U5AYktc
vYR5WXM6Z35TMaNm64TB1yUsePhoPbchQ9YxNA+dFkT7zCM7h/xfCE0oTLEHm9Ya
xgfpjMNC/fgyYq4lOH6TvHmyLccZdhfGtJQplW80V1Yz8kRvWO5KL3PG8yKk+fls
dlYjECgZ55s1uU8Gg6nqCnvk3D0K+C6E6DQDaGzJqdzysMBGzuVaQHE7+OD/Yx8=
=+GgE
-----END PGP SIGNATURE-----

Last Updated
Dec 09, 2015
Reading Time
7 min read
Contribute
Edit this page
Table of Contents
  1. Notable changes
  2. Known issues
  3. Commits