天天看點

[譯]Node v5.1.0 (Stable)釋出

原文: 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的支援.
  • 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)
  • 5d34c81a5c

    ] - async_wrap: allow some hooks to be optional (Trevor Norris)
  • 7bff0138e2

    ] - buffer: let WriteFloatGeneric silently drop values (P.S.V.R)
  • 56673693cd

    ] - buffer: neuter external

    nullptr

    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)
  • 9ef81ff5d3

    ] - deps: update V8 to 4.6.85.31 (Michaël Zasso) #3698
  • b48dbf9fce

    ] - deps: upgrade npm to 3.3.12 (Rebecca Turner)
  • 7caeb14e11

    ] - (SEMVER-MINOR) deps: update http-parser to 2.6.0 (James M Snell)
  • 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)
  • 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)
  • 7e60b81c81

    ] - doc: sort stream alphabetically (Tristian Flanagan)
  • cd931a8a13

    ] - doc: sort net alphabetically (Tristian Flanagan)
  • cfa8198af8

    ] - doc: sort process alphabetically (Tristian Flanagan)
  • e1a512607a

    ] - doc: sort zlib alphabetically (Tristian Flanagan)
  • 0996b97240

    ] - doc: sort util alphabetically (Tristian Flanagan)
  • df07072b66

    ] - doc: sort https alphabetically (Tristian Flanagan)
  • 6e9d01c7d8

    ] - doc: sort http alphabetically (Tristian Flanagan)
  • 18da02fa0f

    ] - doc: sort modules alphabetically (Tristian Flanagan)
  • 29054ffc0c

    ] - doc: sort readline alphabetically (Tristian Flanagan)
  • 389ead37ef

  • d383d624de

    ] - doc: sort string_decoder alphabetically (Tristian Flanagan)
  • 0d2262887c

    ] - doc: sort timers alphabetically (Tristian Flanagan)
  • 14b5a95d03

    ] - doc: sort tty alphabetically (Tristian Flanagan)
  • d4dda77e4a

    ] - doc: sort url alphabetically (Tristian Flanagan)
  • 39b8259bd5

    ] - doc: sort vm alphabetically (Tristian Flanagan)
  • d357b3090e

    ] - doc: sort querystring alphabetically (Tristian Flanagan)
  • 1f56abaa98

    ] - doc: sort punycode alphabetically (Tristian Flanagan)
  • bc63667456

    ] - doc: sort path alphabetically (Tristian Flanagan)
  • 22961e011c

    ] - doc: sort os alphabetically (Tristian Flanagan)
  • 4ba18489d3

    ] - doc: sort globals alphabetically (Tristian Flanagan)
  • c3f5ea704f

    ] - doc: sort fs alphabetically (Tristian Flanagan)
  • ce3ac8dd1e

    ] - doc: sort events alphabetically (Tristian Flanagan)
  • 63a78749b8

    ] - doc: sort errors alphabetically (Tristian Flanagan)
  • 488326da8d

    ] - doc: sort dgram alphabetically (Tristian Flanagan)
  • e1c357e881

    ] - doc: sort crypto alphabetically (Tristian Flanagan)
  • 4118fd5794

    ] - doc: sort dns alphabetically (Tristian Flanagan)
  • 3e046acc50

    ] - doc: sort console alphabetically (Tristian Flanagan)
  • 05f1af7124

    ] - doc: sort cluster alphabetically (Tristian Flanagan)
  • 5c30e5dada

    ] - doc: sort child_process alphabetically (Tristian Flanagan)
  • fb6a09cd0e

    ] - doc: sort buffer alphabetically (Tristian Flanagan)
  • c7c05d8f02

    ] - doc: sort assert alphabetically (Tristian Flanagan)
  • 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)
  • 2aa6a6d998

    ] - fs: return null error on readFile() success (Zheng Chaoping) #3740
  • c96400c572

    ] - gitignore: don't ignore 'debug' in deps/npm (Rebecca Turner)
  • a7f28a098e

    ] - http: remove unneeded cb check from setTimeout() (Ashok Suthar) #3631
  • d2b5dcb2de

    ] - lib: return boolean from child.send() (Rich Trott)
  • 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)
  • 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)
  • 828b786e48

    ] - test: add test for invalid DSA key size (Stefan Budeanu)
  • 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)
  • 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)
  • 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)
  • 2f16be2b70

    ] - tls: Use SHA1 for sessionIdContext in FIPS mode (Stefan Budeanu)
  • 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: enforce

    throw new Error()

    with lint rule (Rich Trott) #3714
  • 38bb0d864e

    ] - tools: Use

    throw new Error()

    consistently (Rich Trott)
  • e40d28283a

    ] - tools: update npm test tooling for 3.3.10+ (Rebecca Turner)
  • 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)
  • d70deabf90

    ] - zlib: pass kind to recursive calls to flush (Myles Borins)

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-----
           

繼續閱讀