原文:https://nodejs.org/en/blog/release/v5.1.0/ by Jeremiah Senkpiel
主要改动
-
buffer:
noAssert
选项对许多Buffer函数将静默地减少无效写入数据,而不是造成崩溃 (P.S.V.R) #3767.- 这使得行为符合文档的建议。
- child_process:
child.send()
现在像文档建议的那样,正确地返回一个boolean (Rich Trott) #3577. - doc: 所有的API文档已经被重新排序,所以可以按照字母顺序进行阅读了。 (Tristian Flanagan) #3662.
-
http_parser: 升级http-parser,从2.5.0到2.6.0 (James M Snell) #3569.
- 现在支持这些HTTP方法了:
LINK
,UNLINK
,BIND
,REBIND
,UNBIND
. - 也添加了ACL和IPv6 Zone ID的支持.
- 现在支持这些HTTP方法了:
-
npm: 升级npm,从v3.3.6到3.3.12 (Rebecca Turner) #3685.
- repl: 如果持久历史文件无法打开,REPL不会再崩溃。 (Evan Lucas) #3630.
- tls: 默认的
sessionIdContext
在FIPS模式下现在使用SHA1,而不是MD5 (Stefan Budeanu) #3755. - v8: 添加了一些更有用的事后剖析数据 (Fedor Indutny) #3779.
Known issues
- Surrogate pair in REPL can freeze terminal. #690
- 当一个DNS查询正在进行中时,调用
dns.setServers()
会因为一个失败的断言导致进程崩溃。 #894 -
url.resolve
may transfer the auth portion of the url when resolving between two full hosts, see #1435. - 在文件路径中的Unicode字符在跨平台或跨API之间还没有一致地处理。参见 #2088, #3401 和 #3519.
Commits
- [
b663d2bbb5
] - async_wrap: call callback in destructor (Trevor Norris) #3461 - [
eccbec99ea
] - async_wrap: new instances get uid (Trevor Norris) #3461 - [
5d34c81a5c
] - async_wrap: allow some hooks to be optional (Trevor Norris) #3461 - [
7bff0138e2
] - buffer: let WriteFloatGeneric silently drop values (P.S.V.R) #3767 - [
56673693cd
] - buffer: neuter externalnullptr
buffers (Fedor Indutny) #3624 - [
2d0ca0293a
] - build: fix configuring with prebuilt libraries (Markus Tzoe) #3135 - [
2a69b6820f
] - build: fix --with-intl=system-icu for x-compile (Steven R. Loomis) #3808 - [
8f5a2550a7
] - build: omit -gline-tables-only for --enable-asan (Ben Noordhuis) #3680 - [
84bb74547d
] - child_process: add safety checks on stdio access (cjihrig) #3799 - [
e888471a11
] - child_process: don't fork bomb ourselves from -e (Ben Noordhuis) #3575 - [
47f3735e88
] - cluster: send suicide message on disconnect (cjihrig) #3720 - [
d64a56cba5
] - cluster: remove handles when disconnecting worker (Ben Noordhuis) #3677 - [
5ed30da5a0
] - console: use 'label' argument for time and timeEnd (Roman Reiss) #3590 - [
7a290abea6
] - crypto: DSA parameter validation in FIPS mode (Stefan Budeanu) #3756 - [
2c9fb147be
] - crypto: Improve error checking and reporting (Stefan Budeanu) #3753 - [
66dccaf0cd
] - debugger: also exit when the repl emits 'exit' (Felix Böhm) #2369 - [
fd0253be4d
] - deps: backport bc2e393 from v8 upstream (evan.lucas) #3792 - [
59077acc3d
] - deps: cherry-pick 68e89fb from v8's upstream (Fedor Indutny) #3779 - [
9ef81ff5d3
] - deps: update V8 to 4.6.85.31 (Michaël Zasso) #3698 - [
b48dbf9fce
] - deps: upgrade npm to 3.3.12 (Rebecca Turner) #3685 - [
7caeb14e11
] - (SEMVER-MINOR) deps: update http-parser to 2.6.0 (James M Snell) #3569 - [
08e0de59fa
] - deps: upgrade npm to 3.3.10 (Rebecca Turner) #3599 - [
ac9e4ffe8e
] - dns: prevent undefined values in results (Junliang Yan) #3696 - [
ea67d870f4
] - doc: document release types in readme (Rod Vagg) #3482 - [
60d3daa65c
] - doc: replace head of readme with updated text (Rod Vagg) #3482 - [
df1fdba2ae
] - doc: sort repl alphabetically (Tristian Flanagan) #3859 - [
7ecd5422c8
] - doc: address use of profanity in code of conduct (James M Snell) #3827 - [
c2393d1f2a
] - doc: consistent reference-style links (Bryan English) #3845 - [
96f53c6b02
] - doc: add link to [customizing util.inspect colors]. (Jesse McCarthy) #3749 - [
132297d3f6
] - doc: Updated streams simplified constructor API (Tom Gallacher) #3602 - [
d137f0fd28
] - doc: add warning about Windows process groups (Roman Klauke) #3681 - [
45ff31cf94
] - doc: added what buf.copy returns (Manuel B) #3555 - [
5d1faa28cb
] - doc: reword message.headers to indicate they are not read-only (Tristian Flanagan) #3814 - [
25c3807051
] - doc: clarify duplicate header handling (Bryan English) #3810 - [
ae2d1ee302
] - doc: repl: add defineComand and displayPrompt (Bryan English) #3765 - [
09e524d013
] - doc: sort tls alphabetically (Tristian Flanagan) #3662 - [
7e60b81c81
] - doc: sort stream alphabetically (Tristian Flanagan) #3662 - [
cd931a8a13
] - doc: sort net alphabetically (Tristian Flanagan) #3662 - [
cfa8198af8
] - doc: sort process alphabetically (Tristian Flanagan) #3662 - [
e1a512607a
] - doc: sort zlib alphabetically (Tristian Flanagan) #3662 - [
0996b97240
] - doc: sort util alphabetically (Tristian Flanagan) #3662 - [
df07072b66
] - doc: sort https alphabetically (Tristian Flanagan) #3662 - [
6e9d01c7d8
] - doc: sort http alphabetically (Tristian Flanagan) #3662 - [
18da02fa0f
] - doc: sort modules alphabetically (Tristian Flanagan) #3662 - [
29054ffc0c
] - doc: sort readline alphabetically (Tristian Flanagan) #3662 - [
389ead37ef
] - doc: sort repl alphabetically (Tristian Flanagan) #3662 - [
d383d624de
] - doc: sort string_decoder alphabetically (Tristian Flanagan) #3662 - [
0d2262887c
] - doc: sort timers alphabetically (Tristian Flanagan) #3662 - [
14b5a95d03
] - doc: sort tty alphabetically (Tristian Flanagan) #3662 - [
d4dda77e4a
] - doc: sort url alphabetically (Tristian Flanagan) #3662 - [
39b8259bd5
] - doc: sort vm alphabetically (Tristian Flanagan) #3662 - [
d357b3090e
] - doc: sort querystring alphabetically (Tristian Flanagan) #3662 - [
1f56abaa98
] - doc: sort punycode alphabetically (Tristian Flanagan) #3662 - [
bc63667456
] - doc: sort path alphabetically (Tristian Flanagan) #3662 - [
22961e011c
] - doc: sort os alphabetically (Tristian Flanagan) #3662 - [
4ba18489d3
] - doc: sort globals alphabetically (Tristian Flanagan) #3662 - [
c3f5ea704f
] - doc: sort fs alphabetically (Tristian Flanagan) #3662 - [
ce3ac8dd1e
] - doc: sort events alphabetically (Tristian Flanagan) #3662 - [
63a78749b8
] - doc: sort errors alphabetically (Tristian Flanagan) #3662 - [
488326da8d
] - doc: sort dgram alphabetically (Tristian Flanagan) #3662 - [
e1c357e881
] - doc: sort crypto alphabetically (Tristian Flanagan) #3662 - [
4118fd5794
] - doc: sort dns alphabetically (Tristian Flanagan) #3662 - [
3e046acc50
] - doc: sort console alphabetically (Tristian Flanagan) #3662 - [
05f1af7124
] - doc: sort cluster alphabetically (Tristian Flanagan) #3662 - [
5c30e5dada
] - doc: sort child_process alphabetically (Tristian Flanagan) #3662 - [
fb6a09cd0e
] - doc: sort buffer alphabetically (Tristian Flanagan) #3662 - [
c7c05d8f02
] - doc: sort assert alphabetically (Tristian Flanagan) #3662 - [
f2c2e53321
] - doc: add note to util.isBuffer (Evan Lucas) #3790 - [
35fb9f91eb
] - doc: Describe FIPSDIR environment variable (Stefan Budeanu) #3752 - [
da911f158b
] - doc: update lts description in the collaborator guide (James M Snell) #3668 - [
597f8751d1
] - doc: add note on tls connection meta data methods (Tyler Henkel) #3746 - [
a32d9e31dc
] - doc: add romankl to collaborators (Roman Klauke) #3725 - [
e5b9109d12
] - doc: add thealphanerd to collaborators (Myles Borins) #3723 - [
a05a0b47e3
] - doc: add saghul as a collaborator (Saúl Ibarra Corretgé) #3724 - [
b14d9c5f16
] - doc: add method links in events.markdown (Alejandro Oviedo) #3187 - [
44f779b112
] - doc: add caveats of algs and key size in crypto (Shigeki Ohtsu) #3479 - [
a0db5fb355
] - doc: stdout/stderr can block when directed to file (Ben Noordhuis) #3170 - [
409f29972e
] - doc: rename iojs- groups to nodejs- (Steven R. Loomis) #3634 - [
801866280e
] - doc: fix wrong date and known issue in changelog.md (James M Snell) #3650 - [
325c4c7af5
] - doc: fix function param order in assert doc (David Woods) #3533 - [
045e04e531
] - doc: typo fix in readme.md (Sam P Gallagher-Bishop) #3649 - [
7fd8f1371e
] - doc: add note about timeout delay > TIMEOUT_MAX (Guilherme Souza) #3512 - [
7d0b589644
] - doc: fix crypto spkac function descriptions (Jason Gerfen) #3614 - [
efa19bdcb5
] - doc: add final full stop in CONTRIBUTING.md (Emily Aviva Kapor-Mater) #3576 - [
90723afe32
] - doc: made code spans more visible in the API docs (phijohns) #3573 - [
530bb9144f
] - docs: improve discoverability of Code of Conduct (Ashley Williams) #3774 - [
73e40f0327
] - docs: fs - change links to buffer encoding to Buffer class anchor (fansworld-claudio) #2796 - [
7a84fa6c60
] - docs: fs - remove encoding list and link to buffer (fansworld-claudio) #2796 - [
2aa6a6d998
] - fs: return null error on readFile() success (Zheng Chaoping) #3740 - [
c96400c572
] - gitignore: don't ignore 'debug' in deps/npm (Rebecca Turner) #3599 - [
a7f28a098e
] - http: remove unneeded cb check from setTimeout() (Ashok Suthar) #3631 - [
d2b5dcb2de
] - lib: return boolean from child.send() (Rich Trott) #3577 - [
5c54fa0095
] - module: cache regular expressions (Evan Lucas) #3869 - [
89285db128
] - module: remove unnecessary JSON.stringify (Andres Suarez) #3578 - [
fd3f0d8e6e
] - querystring: Parse multiple separator characters (Yosuke Furukawa) #3807 - [
75dbafc3f8
] - repl: To exit, press ^C again or type .exit. (Hemanth.HM) #3368 - [
5073da0481
] - repl: don't crash if cannot open history file (Evan Lucas) #3630 - [
59cd28114d
] - src: Add missing va_end before return (Ömer Fadıl Usta) #3565 - [
02e012e984
] - src: force line buffering for stderr (Rich Trott) #3701 - [
2498e29344
] - src: Revert "nix stdin _readableState.reading" (Roman Reiss) #3490 - [
65cd03cda6
] - src: wrap source before doing syntax check (Evan Lucas) #3587 - [
d72bb1e96a
] - Revert "src: fix stuck debugger process" (Ben Noordhuis) #3585 - [
047abbd6eb
] - test: move test-specific function out of common (Rich Trott) #3871 - [
19a36ff355
] - test: fix flaky SmartOS test (Rich Trott) #3830 - [
4bb27baf8d
] - test: skip test if FreeBSD jail will break it (Rich Trott) #3839 - [
1c1e70864b
] - test: fix path to module for repl test on Windows (Michael Cornacchia) #3608 - [
413ca53107
] - test: increase crypto strength for FIPS standard (Stefan Budeanu) #3758 - [
2ec5e17d16
] - test: add test-zlib-flush-drain (Myles Borins) #3534 - [
de707f0876
] - test: add hasFipsCrypto to test/common.js (Stefan Budeanu) #3756 - [
828b786e48
] - test: add test for invalid DSA key size (Stefan Budeanu) #3756 - [
252e810059
] - test: Fix test-cluster-worker-exit.js for AIX (Imran Iqbal) #3666 - [
91248b1094
] - test: run pipeline flood test in parallel (Rich Trott) #3811 - [
583f58e5d6
] - test: stronger crypto in test fixtures (Stefan Budeanu) #3759 - [
2e67db3104
] - test: refactor test-http-pipeline-flood (Rich Trott) #3636 - [
1ab59ab9b3
] - test: fix flaky test test-http-pipeline-flood (Devin Nakamura) #3636 - [
1c8a7c6351
] - test: enhance fs-watch-recursive test (Sakthipriyan Vairamani) #2599 - [
81997840f2
] - test: fix test-module-loading-error for musl (Hugues Malphettes) #3657 - [
9cdceac782
] - test: use really invalid hostname (Sakthipriyan Vairamani) #3711 - [
f3594e77b2
] - test: fix test-net-persistent-keepalive for AIX (Imran Iqbal) #3646 - [
81522480f1
] - test: more regression tests for minDHSize option (Ben Noordhuis) #3629 - [
935b97769e
] - test: add regression test for 512 bits DH key (Ben Noordhuis) #3629 - [
e302c33bb0
] - test: mark http-pipeline-flood flaky (Rich Trott) #3616 - [
5977963bce
] - test: remove flaky designation from ls-no-sslv3 (Rich Trott) #3620 - [
1e98d90db8
] - test: add regression test for --debug-brk -e 0 (Ben Noordhuis) #3585 - [
2f16be2b70
] - tls: Use SHA1 for sessionIdContext in FIPS mode (Stefan Budeanu) #3755 - [
05f0549b50
] - tls: copy client CAs and cert store on CertCb (Fedor Indutny) #3537 - [
bea35424a2
] - tools: add tap output to cpplint (Johan Bergström) #3448 - [
d036b35349
] - tools: enforcethrow new Error()
with lint rule (Rich Trott) #3714 - [
38bb0d864e
] - tools: Usethrow new Error()
consistently (Rich Trott) #3714 - [
e40d28283a
] - tools: update npm test tooling for 3.3.10+ (Rebecca Turner) #3599 - [
cbd358ce33
] - tools: fix gyp to work on MacOSX without XCode (Shigeki Ohtsu) iojs/io.js#1325 - [
3137e46cb8
] - tools: update gyp to b3cef02 (Imran Iqbal) #3487 - [
d61cb90ee3
] - util: use Object.create(null) for dictionary object (Minwoo Jung) #3831 - [
9a45c21e6c
] - util: use regexp instead of str.replace().join() (qinjia) #3689 - [
33ffc62670
] - zlib: only apply drain listener if given callback (Craig Cavalier) #3534 - [
d70deabf90
] - zlib: pass kind to recursive calls to flush (Myles Borins) #3534
Windows 32-bit Installer: https://nodejs.org/dist/v5.1.0/node-v5.1.0-x86.msi
Windows 64-bit Installer: https://nodejs.org/dist/v5.1.0/node-v5.1.0-x64.msi
Windows 32-bit Binary: https://nodejs.org/dist/v5.1.0/win-x86/node.exe
Windows 64-bit Binary: https://nodejs.org/dist/v5.1.0/win-x64/node.exe
Mac OS X 64-bit Installer: https://nodejs.org/dist/v5.1.0/node-v5.1.0.pkg
Mac OS X 64-bit Binary: https://nodejs.org/dist/v5.1.0/node-v5.1.0-darwin-x64.tar.gz
Linux 32-bit Binary: https://nodejs.org/dist/v5.1.0/node-v5.1.0-linux-x86.tar.gz
Linux 64-bit Binary: https://nodejs.org/dist/v5.1.0/node-v5.1.0-linux-x64.tar.gz
SunOS 32-bit Binary: https://nodejs.org/dist/v5.1.0/node-v5.1.0-sunos-x86.tar.gz
SunOS 64-bit Binary: https://nodejs.org/dist/v5.1.0/node-v5.1.0-sunos-x64.tar.gz
ARMv6 32-bit Binary: https://nodejs.org/dist/v5.1.0/node-v5.1.0-linux-armv6l.tar.gz
ARMv7 32-bit Binary: https://nodejs.org/dist/v5.1.0/node-v5.1.0-linux-armv7l.tar.gz
ARMv8 64-bit Binary: https://nodejs.org/dist/v5.1.0/node-v5.1.0-linux-arm64.tar.gz
Source Code: https://nodejs.org/dist/v5.1.0/node-v5.1.0.tar.gz
Other release files: https://nodejs.org/dist/v5.1.0/
Documentation: https://nodejs.org/docs/v5.1.0/api/
Shasums (GPG signing hash: SHA512, file hash: SHA256):
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
4752961731e579a26dd45d765f76e67f70683b0026c0035fc4c30d70c7baf4f0 node-v5.1.0-darwin-x64.tar.gz
b5fe63b95720c4d76cfeba06fabbea2cc30ad346ce3c781476b55c1edae4512d node-v5.1.0-darwin-x64.tar.xz
2dd57f72e3dc7bcce841b2390edd6c8e6257ec41ed85aa4ad4d380a3685cb768 node-v5.1.0-headers.tar.gz
f2c631510630f20b1ccd5f4abb3d63676bc6eec136423ebca87bc938578f10d9 node-v5.1.0-headers.tar.xz
8e6eb18b4499c4c509b4132d3393121a7d344d4053400798614c843977696ff3 node-v5.1.0-linux-arm64.tar.gz
9474ffa69fdd737570123558ed28933ab0c08e5b8ee9f8592a104db095daff33 node-v5.1.0-linux-arm64.tar.xz
a6a64bf9d2e6b792505841b187eeb1c3ac971551840dab2a9a4a4719d1e7d150 node-v5.1.0-linux-armv6l.tar.gz
0d1a715ae7b4bc4dc4c2dde448cbd2bbde235d30f0c52ee8ec820840493db2a3 node-v5.1.0-linux-armv6l.tar.xz
c7bbb8c51bdaf9b46daffbebdc889ce561c8f7b6cdd3c804c5e8cb7314a4d40d node-v5.1.0-linux-armv7l.tar.gz
ba9f8443eaf46ca13454a568174da28591a01fd6e4bfeffdee2a77610d1a54b1 node-v5.1.0-linux-armv7l.tar.xz
510e7a2e8639a3ea036f5f6a9f7a66037e3acf8d0c953aeac8d093dea7e41d4c node-v5.1.0-linux-x64.tar.gz
f08c2cadb965a4f85700e1b3a8645faf3192e8fefe5c740b4c581c0d6110ced1 node-v5.1.0-linux-x86.tar.gz
a1088d6968a57a5e19c66628561c57825a7251045f3d20ab768b87c657bb87a0 node-v5.1.0.pkg
eb4497a705e720e38ee71580c94c9d911922211dd5819eeb55d217f4f4839b69 node-v5.1.0-sunos-x64.tar.gz
c59b474c8c43ceb0a368f07419f60f488f4b931ad43da1e4c8ac434c405b9ed6 node-v5.1.0-sunos-x64.tar.xz
d51d05e57e77ca780f43e315a5477eee9fbb954822f473985ff6a8ce5d3b05ca node-v5.1.0-sunos-x86.tar.gz
7ebd42449b8998aae13b2741a7878b80b4e6b94fd693461800b4fe80adc4bb11 node-v5.1.0-sunos-x86.tar.xz
25b2d3b7dd57fe47a483539fea240a3c6bbbdab4d89a45a812134cf1380ecb94 node-v5.1.0.tar.gz
8f1235cfd61828084c0ebea3266faab231e0ec1a748f200a4bcfa02d5263eaea node-v5.1.0.tar.xz
d21c1bdff99c01983646af6f5a1448b81ec12527259a42d0ae5c30eaaf739ccc node-v5.1.0-x64.msi
31dff8ce817ebb7a30ad7a1588aeb7599c077398dad14b06aaaca61af611adae node-v5.1.0-x86.msi
237b38f781e5137b3f76658e1116f74557305d65e09e3211ad0842166a76795b win-x64/node.exe
f675ba445f63fa720fb3136de4375393972602dc1806b37470d907a309e414c7 win-x64/node.lib
cedd73b96045b6c07007946c87725f2f6d98ca7cd92ba7eab9860befb873749a win-x86/node.exe
051086542859f57a829878977253a73b649279e8466f1d0f31ea75c73ff71d4e win-x86/node.lib
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org
iQIcBAEBCgAGBQJWS6BnAAoJEEX17r2BPa6OciwQALg6PWKmWiyNDQdFRzexGk/P
sN/MyZ3zdwm+1vz646xQ5CSMeO1Pdhz1StR6SdOe8LWvyyDgF3GgyzMO4tJv5QSW
cNei+v4FpqrB70BkCnZL5vorFGe/Sz21bG2ghHvq5qEQ/TRZOlLhpRLsOkfCLh1E
YZFq1hwXqnpaM9zCmSCnuJeJokLwYv/LAPKs4pSTfBVzt4vdZu3liL0swsnxNJmu
tNXK5zSL2fWwa5CQS1Nq0+0i9ZuRcAkpUGN+bkURoo012144/CVK0INqT5+RBhqX
AFDpNrZa78dC7wSIDTZgYebeQcAfS2uu4JiPmdV7GZgmMrA0HkxJk+1Kc34egmgF
iw6Bs5G1hdDSGuKx4cZ/ObFkgbWMXmNEczbxVZOkIl2EI5yYFYt3qKGjXQJCKkOH
mDjFMjJ8M9F6biZyKGfr2XcXs7g+SXB6JuqSAMohLJxjz2TWFwI12UfVP3fMgyTA
GAuYzkFAmlTuUQe4kTrK8++XmQPjZtS19GBFwU1DN4v15uAa2mhW09ncU8q+rsI3
zQczDfybsZd2umnhlssOCc3pIM+2brQ93ivvJMwX/ASicnDrGV98JfcYKSMnYLK0
Dcs8jDyG0ctyoLAZ29Iga0t2EGTbXnJruxAJ4hWYN/Lc94RGxLbSjVqOsGN+sL00
DxxpULMDf4Jmojgtg2+1
=jm9B
-----END PGP SIGNATURE-----