OpenSSL 업그레이드와 심각도가 낮은 Node.js 보안 수정사항

요약

Node.js 프로젝트는 다음 주 초에 현재 진행 중인 모든 릴리스 라인의 새 버전을 출시할 예정입니다. 출시 일정은 전체 영향 평가에 따라 더 빨라질 수도 있습니다. 이번 릴리스에서는 OpenSSL에서 나온 업스트림 패치를 포함하며 그 밖에 HTTP 처리와 관련된 심각도가 낮은 문제점 몇 가지를 수정합니다. 전체 상세 내용은 관련 문서를 참고하기 바랍니다.

OpenSSL

OpenSSL 프로젝트는 UTC 기준으로 1월 28일에 1.0.2f와 1.0.1r 버전을 릴리스할 것이라고 이번 주에 발표했습니다. 이번 릴리스에서는 OpenSSL의 보안 정책에서 “높은” 심각도로 평가된 보안 결함을 수정할 것입니다. 여기서 “높은” 심각도는 다음을 의미합니다.

보편적이지 않은 설정에 영향을 거거나 이용 가능성이 크지 않기 때문에 낮은 위험성을 가지는 이슈

Node.js v0.10과 v0.12는 모두 OpenSSL v1.0.1을 사용하고 Node.js v4와 v5는 OpenSSL v1.0.2를 사용합니다. 일반적으로 정적으로 컴파일되어 있으므로 모든 릴리스 라인이 이번 업데이트의 영향을 받습니다.

지금 단계에서는 엠바고 때문에 이 결함에 대한 자세한 내용이 확실하지 않고 Node.js 사용자에 대한 영향도 확실하지 않습니다.

심각도가 낮은 Node.js 보안 수정

추가로 Node.js의 HTTP 처리와 관련된 수정사항이 있습니다. 이 문제는 낮은 심각도로 분류되었고 이 결함을 이용한 어떤 방법도 발견되지 않았습니다. 새 릴리스가 나올 때까지는 전체 상세 내용을 공개하지 않습니다.

공통 취약점 점수 시스템(CVSS, Common Vulnerability Scoring System) v3의 기본 점수

Metric Score
기초 점수: 4.8 (Medium)
기초 벡터: CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
공격 벡터: 네트워크 (AV:N)
공격 복잡도: 높음 (AC:H)
권한 필요성: 없음 (PR:N)
사용자 상호작용: 없음 (UI:N)
권한 변경: 변화없음 (S:U)
비밀 보호 영향도: 낮음 (C:L)
무결성 영향도: 낮음 (I:L)
가용성 영향도: 없음 (A:N)

영향도

OpenSSL 업데이트와 Node.js 수정사항은 모두 Node.js에서 관리하는 모든 릴리스 라인에 영향을 줍니다.

  • Node.js 0.10.x 버전은 영향을 받습니다.
  • Node.js 0.12.x 버전은 영향을 받습니다.
  • Node.js LTS Argon을 포함한 4.x 버전은 영향을 받습니다.
  • Node.js 5.x 버전은 영향을 받습니다.

릴리스 시기

OpenSSL 릴리스가 이번 주 후반으로 계획되어 있으므로 다음 주 초까지 Node.js의 릴리스 계획은 연기하고 있습니다. 이는 업그레이드 과정이 복잡하기도 하고 평일 후반이나 주말에 보안 수정사항을 릴리스하는 것은 피하기 때문입니다.

UTC 기준 2월 1일 월요일 오전 11시 (태평양시 기준 2월 1일 월요일 오후 3시) 직후에 릴리스할 예정이며 이때 사용자가 전체 영향 평가를 할 수 있도록 자세한 결함 내용도 공개할 것입니다.

하지만 28일에 OpenSSL의 자세한 결함이 공개될 때 Node.js의 crypto 팀에서 Node.js 사용자에게 예상되는 심각도에 대한 자세한 평가 내용을 만들 것입니다. Node.js 사용자에게 실제로 중요한 수정사항이라고 판단된다면 공개된 취약점을 막기 위해 사용자들이 배포할 수 있도록 금요일이나 토요일에 릴리스를 추진할 수도 있습니다.

nodejs-sec 구글 그룹에 OpenSSL 릴리스 이후 24시간 이내에 확정된 릴리스 시기와 최종 릴리스에 포함될 자세한 결함 내용을 올릴 예정이나 참고하길 바랍니다. https://groups.google.com/forum/#!forum/nodejs-sec

연락처와 차기 업데이트

현재 Node.js 보안 정책은 https://nodejs.org/en/security/에서 볼 수 있습니다.

Node.js 취약점에 대해 보고하고 싶다면 security@nodejs.org로 연락을 주세요.

보안 취약점과 보안과 관련된 릴리스에 대한 최신 정보를 받고 싶다면 https://groups.google.com/forum/#!forum/nodejs-sec에서 약간의 공지만 올라오는 nodejs-sec 메일링 리스트를 구독하기 바랍니다. 프로젝트는 nodejs GitHub 조직에서 관리되고 있습니다.

(2016년 1월 29일 갱신됨) OpenSSL 영향 평가

OpenSSL 1.0.1r과 1.0.21 버전이 릴리스 되었습니다. 공지는 https://mta.openssl.org/pipermail/openssl-announce/2016-January/000061.html에서 볼 수 있습니다.

Node.js 팀에서 공개된 결함에 대한 영향도를 평가한 결과 이번 릴리스와 관련해서는 Node.js의 수정 버전에는 급한 이슈가 없다고 결론지었습니다. 그래서 계획한 대로 진행해 UTC 기준 2월 1일 월요일 오후 11시 (태평양시 기준 2월 1일 월요일 오후 3시)에 관리 중인 각 릴리스 라인의 새 버전을 릴리스하기로 했습니다. 이는 단순 추정한 릴리스 시기입니다. 릴리스가 완료되었다는 공지는 nodejs-sec (https://groups.google.com/forum/#!forum/nodejs-sec)에 올릴 것입니다.

자세한 내용

DH small 하위 그룹 (CVE-2016-0701)

v0.10과 v0.12 버전의 Node.js는 이 취약성에 영향을 받지 않습니다.

v4와 v5 버전의 Node.js는 SSL_OP_SINGLE_DH_USE 옵션을 이미 사용하기 때문에 이 취약성에 영향을 받지 않습니다.

SSLv2가 비활성화된 암호를 막지 않음 (CVE-2015-3197)

기본적으로 v0.10과 v0.12 버전의 Node.js에서는 SSLv2를 사용하지 않고, --enable-ssl2 명령행 인수가 사용되지 않는 한 영향을 받지 않습니다. (이 인수는 사용하지 않는 것을 추천합니다.)

Node.js v4 버전과 v5 버전은 SSLv2를 지원하지 않습니다.

DHE man-in-the-middle 보호 업데이트(Logjam)

이전 버전의 OpenSSL에서는(Node.js v0.10.39, v0.12.5, v4.0.0, v5.0.0 버전 이상) 디피-헬만 파라미터가 768비트보다 짧으면 서버에서 접속을 거부하여 TLS 클라이언트로그잼 문제를 방지했습니다.

모든 Nodes.js 라인에 적용된 OpenSSL 새 버전에서는 이 값을 1024비트로 증가시켰습니다. 이번 변경 사항은 길이가 짧은 DH 파라미터를 사용해 서버에 접속하는 TLS 클라이언트에만 영향이 있습니다.

(2016년 1월 30일 갱신됨) 릴리스 연기

공지했던 보안 릴리스는 이전에 공지한 2월 1일에는 진행되지 않을 예정입니다. 대신 UTC 기준 2월 9일 화요일 오후 11시 (태평양시 기준 2월 9일 화요일 오후 3시) 정도에 릴리스할 것입니다.

계획했던 수정사항이 일반적인 상황에서 하위 호환성이 깨지는 관계로 Node.js의 다음 주 버전인 v6가 나올 때까지 지연될 것입니다. 하지만 수정사항이 모든 릴리스 라인(LTS 라인인 v4, v0.12, v0.10을 포함해서)에 존재하는 보안 문제를 해결하기 때문에 변경사항을 더 자세히 리뷰하고 사용자에게 영향을 최소화하는 가장 좋은 방법을 찾는 데 조금 더 시간이 필요합니다.

이 일정 변경으로 발생한 불편함이 있다면 사과드립니다.

이후의 변경내용을 보려면 nodejs-sec(https://groups.google.com/forum/#!forum/nodejs-sec)를 보시기 바랍니다.

Node.js 주간 뉴스 2016년 1월 22일

Node.js 뉴스

Node v4.2.6(LTS), Node v5.5.0(안정 버전), Node v4.2.5(LTS)가 릴리스됐습니다

2016년 선거 후보자 등록

지난 금요일에 Node.js 재단 이사회에 참여할 개인 회원 대표의 후보자 등록이 마감되었습니다. 전부 12명이 후보자로 등록했습니다.

투표 용지는 1월 20일에 개인 회원에게 배부될 예정이며, 선거는 1월 30일까지 치뤄집니다.

투표 자격을 얻으려면 Node.js 재단에 개인 회원으로 등록해야 합니다. 자세한 정보는 https://nodejs.org/en/blog/community/individual-membership/ 페이지에서 확인하세요.

커뮤니티 업데이트

Node.js에 관한 글을 쓰거나 발견했다면, Evangelism 팀 저장소이슈 페이지에 주간 업데이트 이슈로 알려주세요.

다가오는 이벤트

  • NodeConf Adventure 2016, “NodeConf Adventure의 1차 티켓을 신청할 수 있습니다!”. 미국 캘리포니아 주 마린 카운티 Walker Creek Ranch에서 2016년 6월 9일부터 12일까지 열립니다.
  • NationJS Node Day Conference. 지금 표를 살 수 있습니다. 워싱턴 DC에서 2016년 3월 11일에 열립니다.

계획 중인 Node.js 이벤트가 있나요? Evangelism 팀 저장소이슈 페이지에 주간 업데이트 이슈를 통해 알릴 수 있습니다.

Node v5.5.0(안정 버전)

주요 변경 사항

  • events: 콘솔 함수가 항상 존재하도록 수정합니다. (Dave) #4479
  • fs: fs.createWriteStream에 autoClose 옵션을 추가합니다. (Saquib) #3679
  • http: Expect 헤더 처리 부분을 개선했습니다. (Daniel Sellers) #4501
  • node: -i 옵션을 통해 모듈을 미리 읽을 수 있게 합니다. (Evan Lucas) #4696
  • v8,src: 힙 스페이스에 관한 통계(v8.getHeapSpaceStatistics())를 노출합니다. (Ben Ripkens) #4463
  • 사소한 성능 개선:
    • lib: 가능한 경우 bind 대신 화살표 함수를 사용합니다. (Minwoo Jung) #3622.
      • (v5.4.0에서 실수로 누락됨)
    • module: stat()의 결과를 조금 더 과감하게 캐시합니다 (Ben Noordhuis) #4575
    • querystring: parse()의 성능을 개선합니다. (Brian White) #4675

알려진 이슈

  • REPL에 입력된 서로게이트 페어가 터미널을 얼릴 수 있습니다. #690
  • DNS 질의 진행 중에 호출된 dns.setServers()는 단언문 실패로 프로세스를 크래시시킬 수 있습니다. #894
  • url.resolve가 두 호스트 사이를 해석하는 중 URL의 인증 정보를 교환할 수 있습니다. #1435
  • 파일 시스템 경로의 유니코드 문자를 플랫폼이나 Node.js API에 따라 다르게 처리하는 문제가 있습니다. #2088, #3401, #3519

Commits

  • [8d0ca10752] - buffer: make byteLength work with Buffer correctly (Jackson Tian) #4738
  • [83d2b7707e] - buffer: remove unnecessary TODO comments (Peter Geiss) #4719
  • [8182ec094d] - build: add option to select VS version (julien.waechter) #4645
  • [4383acd9f4] - build: fix and refactor VTune config in vcbuild.bat (Rod Vagg) #4192
  • [be0b0b8cb9] - build: minor corrections in VTune configure text (Rod Vagg) #4192
  • [9571be12f6] - cluster: fix race condition setting suicide prop (Santiago Gimeno) #4349
  • [ebd9addcd1] - crypto: clear error stack in ECDH::Initialize (Fedor Indutny) #4689
  • [66b9c0d8bd] - debugger: remove variable redeclarations (Rich Trott) #4633
  • [88b2889679] - dgram: prevent disabled optimization of bind() (Brian White) #4613
  • [d56e3f8b67] - doc: restore ICU third-party software licenses (Richard Lau) #4762
  • [212a44df03] - doc: clarify protocol default in http.request() (cjihrig) #4714
  • [3297036345] - doc: update branch-diff arguments in release doc (Rod Vagg) #4691
  • [666c089e68] - doc: fix named anchors in addons.markdown and http.markdown (Michael Theriot) #4708
  • [310530b7ec] - doc: add path property to Write/ReadStream in fs.markdown (Claudio Rodriguez) #4368
  • [3470574cb6] - doc: clarify explanation of first stream section (Vitor Cortez) #4234
  • [d91646b9c7] - doc: rebuild LICENSE using tools/license-builder.sh (Rod Vagg) #4194
  • [265e2f557b] - doc: fix typo in doc/node.1 (Jérémy Lal) #4680
  • [4c132fe61e] - doc: make references clickable (Roman Klauke) #4654
  • [d139704ff7] - doc: improve child_process.execFile() code example (Ryan Sobol) #4504
  • [eeb6fdcd0f] - doc: add docs for more stream options (zoubin) #4639
  • [b6ab6d2de5] - doc: add branch-diff example to releases.md (Myles Borins) #4636
  • [287325c5e8] - docs: update gpg key for Myles Borins (Myles Borins) #4657
  • [65825b79aa] - docs: fix npm command in releases.md (Myles Borins) #4656
  • [f9a59c1d3b] - (SEMVER-MINOR) events: make sure console functions exist (Dave) #4479
  • [6039a7c1b5] - (SEMVER-MINOR) fs: add autoClose option to fs.createWriteStream (Saquib) #3679
  • [ed55169834] - gitignore: never ignore debug module (Michaël Zasso) #2286
  • [d755432fa9] - (SEMVER-MINOR) http: improves expect header handling (Daniel Sellers) #4501
  • [7ce0e04f44] - lib: fix style issues after eslint update (Michaël Zasso) nodejs/io.js#2286
  • [ae5bcf9528] - lib: use arrow functions instead of bind (Minwoo Jung) #3622
  • [0ec093cd41] - lib,test: remove extra semicolons (Michaël Zasso) #2205
  • [d8f5bd4fe1] - module: avoid ArgumentsAdaptorTrampoline frame (Ben Noordhuis) #4575
  • [83f8d98806] - module: cache stat() results more aggressively (Ben Noordhuis) #4575
  • [ff64a4c395] - (SEMVER-MINOR) node: allow preload modules with -i (Evan Lucas) #4696
  • [4bc1a47761] - querystring: improve parse() performance (Brian White) #4675
  • [ad63d350d4] - readline: Remove XXX and output debuglog (Kohei TAKATA) #4690
  • [da550aa063] - repl: make sure historyPath is trimmed (Evan Lucas) #4539
  • [1a6e7d1b52] - src: fix negative values in process.hrtime() (Ben Noordhuis) #4757
  • [8bad51977a] - src: return UV_EAI_NODATA on empty lookup (cjihrig) #4715
  • [761cf2bf6a] - src: don’t check failure with ERR_peek_error() (Ben Noordhuis) #4731
  • [953f4a3999] - stream: prevent object map change in ReadableState (Evan Lucas) #4761
  • [e65f1f7954] - test: fix tls-multi-key race condition (Santiago Gimeno) #3966
  • [3727ae0d7d] - test: use addon.md block headings as test dir names (Rod Vagg) #4412
  • [47960a07c0] - test: make test-cluster-disconnect-leak reliable (Rich Trott) #4736
  • [9926b5a25f] - test: fix issues for space-in-parens ESLint rule (Roman Reiss) #4753
  • [d1aabd6264] - test: fix style issues after eslint update (Michaël Zasso) nodejs/io.js#2286
  • [e98bcfa2cb] - test: remove 1 second delay from test (Rich Trott) #4616
  • [6cfd0b5a32] - test: fix flaky test-net-socket-local-address (cjihrig) #4650
  • [e22cc6c2eb] - test: fix race in test-net-server-pause-on-connect (Rich Trott) #4637
  • [9164c00bdb] - test: move resource intensive tests to sequential (Rich Trott) #4615
  • [d8ba2c0de4] - test: fix http-upgrade-client flakiness (Santiago Gimeno) #4602
  • [6018fa1f57] - test: fix http-upgrade-agent flakiness (Santiago Gimeno) #4520
  • [c33f6a87d0] - tools: enable space-in-parens ESLint rule (Roman Reiss) #4753
  • [162e16afdb] - tools: enable no-extra-semi rule in eslint (Michaël Zasso) #2205
  • [031b87d42d] - tools: add license-builder.sh to construct LICENSE (Rod Vagg) #4194
  • [ec8e0ae697] - tools: fix style issue after eslint update (Michaël Zasso) nodejs/io.js#2286
  • [4d5ee7a512] - tools: update eslint config (Michaël Zasso) nodejs/io.js#2286
  • [2d441493a4] - tools: update eslint to v1.10.3 (Michaël Zasso) nodejs/io.js#2286
  • [aba3cc834e] - tools: fix license-builder.sh for ICU (Richard Lau) #4762
  • [5f57005ec9] - (SEMVER-MINOR) v8,src: expose statistics about heap spaces (Ben Ripkens) #4463

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

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

d4fd29e2d501963235104fc715fb0b55b302a40b605f432c456069606b939a46 node-v5.5.0-darwin-x64.tar.gz
d993c26c6a3127911345f09a7b41a6d124bb894c819e30333ea110c16fe54f7f node-v5.5.0-darwin-x64.tar.xz
67ebc3989b98980c13ef17c1336b98ed2975aa093d9b69f399dfb93de5ae74b4 node-v5.5.0-headers.tar.gz
f98d73e8e466faa526308e57a4f912a9eea0704a9b4cda8db89fee48062b1514 node-v5.5.0-headers.tar.xz
a9ebfce36675cc8d5e1bea6fa57de7fd80e8016f5957340831fcd03560e59845 node-v5.5.0-linux-arm64.tar.gz
81e51ee6dafc19bdb3b81fd136010212ee08ed6f58f44788923a2a56a9be86b6 node-v5.5.0-linux-arm64.tar.xz
a156dfda7fa00ac7ea86ac3cff8d445c44bcec3c677db375776a0489ad7155bd node-v5.5.0-linux-armv6l.tar.gz
9cbbcd4ec70b2f2ff2a478c1d83ccda47af3dd96e66d47fee5869212f0d35c5a node-v5.5.0-linux-armv6l.tar.xz
cf9832efa0cac6365b4fec83df5dee8ecb67d39931c4e7cdaaa4cb933fb4b78b node-v5.5.0-linux-armv7l.tar.gz
cb8a11d3dd154c834373b6243edbd353e637b701ed05db0f3015577efbc66444 node-v5.5.0-linux-armv7l.tar.xz
3e593d91b6d2ad871efaaf8e9a17b3608ca98904959bcfb7c42e6acce89e80f4 node-v5.5.0-linux-x64.tar.gz
33b4d062f5ba5c8db86119b693273f0ca764fe0d076558bb8e645c37ea0b22fc node-v5.5.0-linux-x64.tar.xz
e384f8beb392cd5df882cd3401e449371190bc139010d391888c2f3346fb5107 node-v5.5.0-linux-x86.tar.gz
7e4bd588e165aede4df22ea743548c61cee79faed4fd034b4e08e6b429576dfb node-v5.5.0-linux-x86.tar.xz
c192270ecc0e1c15513c27cab48811f52f37b3216b20d3bcfdd2172f0a06d7cb node-v5.5.0.pkg
e8abb364fc8db51e3a6c8dc14f24ec2c289940386c18da4ecb33462021c1bcef node-v5.5.0-sunos-x64.tar.gz
84737dc228b203077d0fe0a55247e7d0f2f68f2e9700bade8eb8cdd1ce1c2872 node-v5.5.0-sunos-x64.tar.xz
c49c8ce8c997da2cf1ee1cccb55ed457d31aa85d4ec6f58edd868daaf29ddc45 node-v5.5.0-sunos-x86.tar.gz
cd034dcac4018aa0c8c01142d3d16238ac73d643b7a9b4294542b2ee93e07d09 node-v5.5.0-sunos-x86.tar.xz
d69b18cc20699a35434858fb853997616762280610a510ec4b4ff1a94798b432 node-v5.5.0.tar.gz
9c46b4dc9548e43826f71f6571f56e39783c456b9516045b496ea73321731e22 node-v5.5.0.tar.xz
ba1dcd3035b045fb4ecb254bab1e0dda24934f2a773e6e05d0a54ac4adc4ee3b node-v5.5.0-x64.msi
40b667ca279927aacbf65f32f0a3400ff2aba15db46fd3eb1a1d8b94b182bb12 node-v5.5.0-x86.msi
74abfa53909b3011d67d0b76115d134642b946d19a17293f3421ee5d5d00f20a win-x64/node.exe
0cb30f8ab20fc91d72067e7812216b166a71b8de94a16ca79d3b316a76f476ed win-x64/node.lib
142156b0b895f4f4f0df80816bf4acde05a6b5166580e8124cfedc8e1a408783 win-x86/node.exe
ff0f93aff2caaef5c45d1ca261a940ff6ad27148da4ded01d76dfe868a0904db win-x86/node.lib
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org

iQIcBAEBCgAGBQJWoEGjAAoJELY7U1pMIGypci0QALw8WgMkTd4rqEqsE6QKoEdB
iLXXCWf90IDa/4qJHYUX9roxyEV+XEaZjrIkd3HnUYZrjdqTl5Z1Rhe+wD7zH8Jk
n31JOKaD+btxmhV6Exg2SBLZt38J3eoOwdnrSN0B3bEbC6FEKDdWDk3KPOu9Eh0j
uIH+chSAlGJqYwC6NO6bxHKh3vlz7klD7KUMzVj2bas32UmdNKNT6r2LRFZMVknd
+GsM5LuHnD/nwh/ENnA2QjcHJEjmxxL1CmJFSMX0ITTMLzBDjcj8FCoDPdYQp0YQ
ZKCJrvrBUAW+rSWxrDuKP0DqO2/47LmOcssGO3eR/w+q3lXvdj3f0EeLT2tdaiQ5
eHn6RaJpzk0BTWrYh21C3BkAuZs3+nNG3i7rYxHBtCkYdjx4sNkwxCjblEEJtzJK
39ygB0zNIrAFFNeqytSzkqjzkx+XD9CwzXVcC+s+zw0fCVOzvwh91jaNaG2haszD
fDS02nW4VEy+7UQJ3Hf2ojIjetqZTWmGdFH/Y6016s+b9VEObgtEtGU38phatRuQ
1k34Fk82u2LGAyaTEXuMILDPrONSXOtkaFlM3hkCV/V/1EgSRHTEfQetrrR7fW4R
LYoyc03CsrjL3hm3gePbOjHqu/vDejqD8zttBwvGE1uPZlCOPiM8bb0IFuAZUzEo
CtOuU8IYfoBYo8fOVLvl
=xfMB
-----END PGP SIGNATURE-----

Node v4.2.6(LTS)

주요 변경 사항

  • 디버거와 프로파일러 기능에서 재발생한 문제를 수정했습니다.

알려진 이슈

  • beforeExit 중에 참조 해제된 타이머에 대한 문제가 아직 남아 있습니다. #1264
  • REPL에 입력된 서로게이트 페어가 터미널을 얼릴 수 있습니다. #690
  • DNS 질의 진행 중에 호출된 dns.setServers()는 단언문 실패로 프로세스를 크래시시킬 수 있습니다. #894
  • url.resolve가 두 호스트 사이를 해석하는 중 URL의 인증 정보를 교환할 수 있습니다. #1435

Commits

  • [1408f7abb1] - module,src: do not wrap modules with -1 lineOffset (cjihrig) #4298
  • [1f8e1472cc] - test: add test for debugging one line files (cjihrig) #4298

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

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

259ea77784013c1124506e3d90ee6847b2b9d3c066b6626ed62ebb31ed8e6fe3 node-v4.2.6-darwin-x64.tar.gz
2d7091eed56ede7c28ee5499697b84c289c37c06152c804f4eff7e0edd5fe7e1 node-v4.2.6-darwin-x64.tar.xz
a83ba921b951809aec81259a64c6d071c7ed443e8460898c42a8269c598930f9 node-v4.2.6-headers.tar.gz
9df143eaead3b60bf2dce35a25e9c2d3f48bd10b0200e7218e3d45d7a83a7d36 node-v4.2.6-headers.tar.xz
f0aadf2941d91bfac449cdc8c904a926f6d384e45a8f6443a2f0153501753427 node-v4.2.6-linux-arm64.tar.gz
29e9c0ff27a5ec560f1d4ec8749e99d36a3640d0c7ef26f7c9dfa46bffd6c88a node-v4.2.6-linux-arm64.tar.xz
61eb9963c188fb63565461032db1ccce1bae741f985b7f237043dea16ca85531 node-v4.2.6-linux-armv6l.tar.gz
f57d818a2e65c301704e251bf18a12c81248b0322762f83a3d17a089c8aa19e9 node-v4.2.6-linux-armv6l.tar.xz
104d75d428a77a23cc646757cc5624d22fd8705026cf712ef6b826368efeae6f node-v4.2.6-linux-armv7l.tar.gz
a27e40d7cb808345b0c773f93895b64660b882cbe292cef9cea0ac23cbb0c00c node-v4.2.6-linux-armv7l.tar.xz
656d8bff06cc5e108b83176f81de7e1eb16392ae0958ec4a7bca2a3a309333a1 node-v4.2.6-linux-x64.tar.gz
919498f2eb855ef0468b428b97d9d3f604d0f83417502d65b98c136786eb94d5 node-v4.2.6-linux-x64.tar.xz
a96ce235e67e994aa5adec8255e13d4fbccd9c5b09b5e9554347dac2b1c5c8a1 node-v4.2.6-linux-x86.tar.gz
3530eced1fa40393ff9e9c412879924e98dee6a5a57347e6d4f764b0d110944a node-v4.2.6-linux-x86.tar.xz
417b613ccae913e8ecb7e9836c7c0b2163feb27736c2478127d8046875aeaa0f node-v4.2.6.pkg
96ccfeb7e15123111215d2093aa6c78abc7a43898c0a6c1838a56896e0b5493e node-v4.2.6-sunos-x64.tar.gz
cb7f3901da967c1d71c04603a6ddf5488be9f149e26c54d3d40ab66efe64b4cc node-v4.2.6-sunos-x64.tar.xz
83505ceb87e584ff15f47a2ab25ee77378791be56b06cfe94fe24155f229e772 node-v4.2.6-sunos-x86.tar.gz
41bb9a20ec77f42632345557d42f9603eb3a7785f729ce7c2742caa0f1a720af node-v4.2.6-sunos-x86.tar.xz
ea5e357db8817052b17496d607c719d809ed1383e8fcf7c8ffc5214e705aefdd node-v4.2.6.tar.gz
dcb935647f9e32fc90db52d393f00c9868ba9d84c5ebe5ddd766e225deb52c40 node-v4.2.6.tar.xz
31556639d865e20fabe104dfe36ce148b4d046d00b35122a7261ff03ed5ded3a node-v4.2.6-x64.msi
b631c71151f127311c2a81fc65a9b4fc403acf570810b5b2563300db49eb2d98 node-v4.2.6-x86.msi
3b595ef2e9232b5bebabc69dbf52316d0e7a7c2b2a2e62abae89787e6f001e44 win-x64/node.exe
6863f29249ce79ddccb2ffcf1966d630e4f6efea695c6b20695d4d6a64828799 win-x64/node.lib
4e9ca71d4bd56df6b2afa51c2a0937ff94ae7c3f04c1306a4d3bd77ca232cea8 win-x86/node.exe
fd653c44129836021be6ad5f2822807158fb50f92c4bc4c91eda3e19ce0e0c40 win-x86/node.lib
-----BEGIN PGP SIGNATURE-----

iQEcBAEBAgAGBQJWoVpPAAoJEJM7AfQLXKlGE1UH/2AjSQrV3Gi46uImVEg2NiAO
qRYxoUL0ET1qESFcmSoufRfedFrG3Y1ukPNv4qRlMKSRvEuxSWYG6lEX/z6nUyJv
9l8xii1yY2/gFIuwqEkjJzowEhi/yCSMZRg5iXE+0uD9IBYjFIyaTI24G6IjfUTE
xt4vGxomqZeJij3JNJw+t4RReO56UIFcYS8cKp9g1NDdpkLab7qcjQ8QwpUZA+Oi
IuQ9H5rLLXtqOOjHbo+TAtEM66K38BU1g0tneWznMecsjuAWWzSDTNNbZPaRY9hJ
f8g37cwLOSO8GVviKfBwIaT0egfjexPrc3fPLQ6WMLSEAghwOib1zB/x1f6MzLg=
=ivFL
-----END PGP SIGNATURE-----

Node v4.2.5(LTS)

주요 변경 사항

  • assert
    • Error를 확장하는 ES6 클래스를 허용합니다. (Rich Trott) #4166
  • build
    • “–partly-static” 빌드 옵션을 추가합니다. (Super Zheng) #4152
  • deps
    • V8 업스트림에서 066747e를 백포트합니다. (Ali Ijaz Sheikh) #4655
    • V8 업스트림에서 200315c를 백포트합니다. (Vladimir Kurchatkin) #4128
    • libuv의 버전을 1.8.0으로 업그레이드합니다. (Saúl Ibarra Corretgé)
  • docs
    • 70개의 커밋을 통해 다양하게 업데이트되었습니다!
  • repl
    • 문법 에러에 발생 위치 정보를 추가합니다. (cjihrig) #4013
    • 디렉터리를 읽을 때 에러 메시지를 표시합니다. (Prince J Wesley) #4170
  • tests
    • 50개 이상의 커밋을 통해 다양하게 업데이트되었습니다.
  • tools
    • cpplint에 탭 출력을 추가합니다. (Johan Bergström) #3448
  • util
    • 숨겨진 값의 검색을 허용합니다. (cjihrig) #3988

알려진 이슈

  • REPL에 입력된 서로게이트 페어가 터미널을 얼릴 수 있습니다. #690
  • DNS 질의 진행 중에 호출된 dns.setServers()는 단언문 실패로 프로세스를 크래시시킬 수 있습니다. #894
  • url.resolve가 두 호스트 사이를 해석하는 중 URL의 인증 정보를 교환할 수 있습니다. #1435

Commits

  • [ff539c5bb5] - cluster: ignore queryServer msgs o
  • [87181cd74c] - assert: accommodate ES6 classes that extend Error (Rich Trott) #4166
  • [901172a783] - assert: typed array deepequal performance fix (Claudio Rodriguez) #4330
  • [55336810ee] - async_wrap: call callback in destructor (Trevor Norris) #3461
  • [a8b45e9e96] - async_wrap: new instances get uid (Trevor Norris) #3461
  • [49f16d77c4] - async_wrap: allow some hooks to be optional (Trevor Norris) #3461
  • [44ee33f945] - buffer: refactor create buffer (Jackson Tian) #4340
  • [138d004ac0] - buffer: faster case for create Buffer from new Buffer(0) (Jackson Tian) #4326
  • [c6dc2a1609] - buffer: Prevent Buffer constructor deopt (Bryce Baril) #4158
  • [a320045e68] - buffer: default to UTF8 in byteLength() (Tom Gallacher) #4010
  • [c5f71ac771] - build: add “–partly-static” build options (Super Zheng) #4152
  • [e6c25335ea] - build: omit -gline-tables-only for –enable-asan (Ben Noordhuis) #3680
  • [80b4ba286c] - build: Updates for AIX npm support - part 1 (Michael Dawson) #3114
  • [35e32985ca] - child_process: guard against race condition (Rich Trott) #4418
  • [48564204f0] - child_process: flush consuming streams (Dave) #4071
  • [481d59a74c] - configure: fix arm vfpv2 (Jörg Krause) #4203
  • [d19da6638d] - crypto: load PFX chain the same way as regular one (Fedor Indutny) #4165
  • [b8e75de1f3] - crypto: fix native module compilation with FIPS (Stefan Budeanu) #4023
  • [b7c3fb7f75] - crypto: disable crypto.createCipher in FIPS mode (Stefan Budeanu) #3754
  • [31b4091a1e] - debugger: also exit when the repl emits ‘exit’ (Felix Böhm) #2369
  • [9baa5618f5] - deps: backport 066747e from upstream V8 (Ali Ijaz Sheikh) #4655
  • [c3a9d8a62e] - deps: backport 200315c from V8 upstream (Vladimir Kurchatkin) #4128
  • [1ebb0c0fdf] - deps: upgrade libuv to 1.8.0 (Saúl Ibarra Corretgé) #4276
  • [253fe3e7c8] - dns: remove nonexistant exports.ADNAME (Roman Reiss) #3051
  • [8c2b65ad82] - doc: clarify protocol default in http.request() (cjihrig) #4714
  • [33e72e135f] - doc: update links to use https where possible (jpersson) #4054
  • [5f4aa79410] - doc: clarify explanation of first stream section (Vitor Cortez) #4234
  • [295ca5bfb2] - doc: add branch-diff example to releases.md (Myles Borins) #4636
  • [18f5cd8710] - doc: update stylesheet to match frontpage (Roman Reiss) #4621
  • [2f40715f08] - doc: adds usage of readline line-by-line parsing (Robert Jefe Lindstaedt) #4609
  • [5b45a464ee] - doc: document http’s server.listen return value (Sequoia McDowell) #4590
  • [bd31740339] - doc: label http.IncomingMessage as a Class (Sequoia McDowell) #4589
  • [bcd2cbbb93] - doc: fix description about the latest-codename (Minwoo Jung) #4583
  • [0b12bcb35d] - doc: add Evan Lucas to Release Team (Evan Lucas) #4579
  • [e20b1f6f10] - doc: add Myles Borins to Release Team (Myles Borins) #4578
  • [54977e63eb] - doc: add missing backtick for readline (Brian White) #4549
  • [5d6bed895c] - doc: bring releases.md up to date (cjihrig) #4540
  • [0cd2252e85] - doc: fix numbering in stream.markdown (Richard Sun) #4538
  • [8574d91f27] - doc: stronger suggestion for userland assert (Wyatt Preul) #4535
  • [a7bcf8b84d] - doc: close backtick in process.title description (Dave) #4534
  • [0ceb3148b0] - doc: improvements to events.markdown copy (James M Snell) #4468
  • [bf56d509b9] - doc: explain ClientRequest#setTimeout time unit (Ben Ripkens) #4458
  • [d927c51be3] - doc: improvements to errors.markdown copy (James M Snell) #4454
  • [ceea6df581] - doc: improvements to dns.markdown copy (James M Snell) #4449
  • [506f2f8ed1] - doc: add anchors for _transform _flush _writev in stream.markdown (iamchenxin) #4448
  • [74bcad0b78] - doc: improvements to dgram.markdown copy (James M Snell) #4437
  • [e244d560c9] - doc: improvements to debugger.markdown copy (James M Snell) #4436
  • [df7e1281a5] - doc: improvements to console.markdown copy (James M Snell) #4428
  • [abb17cc6c1] - doc: fix spelling error in lib/url.js comment (Nik Nyby) #4390
  • [823269db2d] - doc: improve assert.markdown copy (James M Snell) #4360
  • [2b1804f6cb] - doc: copyedit releases.md (Rich Trott) #4384
  • [2b142fd876] - doc: catch the WORKING_GROUPS.md bootstrap docs up to date (James M Snell) #4367
  • [ed87873de3] - doc: fix link in addons.markdown (Nicholas Young) #4331
  • [fe693b7a4f] - doc: Typo in buffer.markdown referencing buf.write() (chrisjohn404) #4324
  • [764df2166e] - doc: document the cache parameter for fs.realpathSync (Jackson Tian) #4285
  • [61f91b2f29] - doc: fix, modernize examples in docs (James M Snell) #4282
  • [d87ad302ce] - doc: clarify error events in HTTP module documentation (Lenny Markus) #4275
  • [7983577e41] - doc: fix improper http.get sample code (Hideki Yamamura) #4263
  • [6c30d087e5] - doc: Fixing broken links to the v8 wiki (Tom Gallacher) #4241
  • [cf214e56e4] - doc: move description of ‘equals’ method to right place (janriemer) #4227
  • [fb8e8dbb92] - doc: copyedit console doc (Rich Trott) #4225
  • [4ccf04c229] - doc: add mcollina to collaborators (Matteo Collina) #4220
  • [59654c21d4] - doc: add rmg to collaborators (Ryan Graham) #4219
  • [bfe1a6bd2b] - doc: add calvinmetcalf to collaborators (Calvin Metcalf) #4218
  • [5140c404ae] - doc: harmonize description of ca argument (Ben Noordhuis) #4213
  • [2e642051cf] - doc: copyedit child_process doc (Rich Trott) #4188
  • [7920f8dbde] - doc: copyedit buffer doc (Rich Trott) #4187
  • [c35a409cbe] - doc: clarify assert.fail doc (Rich Trott) #4186
  • [6235fdf72e] - doc: copyedit addons doc (Rich Trott) #4185
  • [990e7ff93e] - doc: update AUTHORS list (Rod Vagg) #4183
  • [8d676ef55e] - doc: change references from node to Node.js (Roman Klauke) #4177
  • [1c34b139a2] - doc: add brief Node.js overview to README (wurde) #4174
  • [27b9b72ab0] - doc: add iarna to collaborators (Rebecca Turner) #4144
  • [683d8dd564] - doc: add JungMinu to collaborators (Minwoo Jung) #4143
  • [17b06dfa94] - doc: add zkat to collaborators (Kat Marchán) #4142
  • [39364c4c72] - doc: improve child_process.markdown wording (yorkie) #4138
  • [abe452835f] - doc: url.format - true slash postfix behaviour (fansworld-claudio) #4119
  • [6dd375cfe2] - doc: document backlog for server.listen() variants (Jan Schär) #4025
  • [b71a3b363a] - doc: fixup socket.remoteAddress (Arthur Gautier) #4198
  • [e2fe214857] - doc: add links and backticks around names (jpersson) #4054
  • [bb158f8aed] - doc: s/node.js/Node.js in readme (Rod Vagg) #3998
  • [f55491ad47] - doc: move fs.existsSync() deprecation message (Martin Forsberg) #3942
  • [8c5b847f5b] - doc: Describe FIPSDIR environment variable (Stefan Budeanu) #3752
  • [70c95ea0e5] - doc: add warning about Windows process groups (Roman Klauke) #3681
  • [46c59b7256] - doc: add CTC meeting minutes 2015-10-28 (Rod Vagg) #3661
  • [7ffd299a1d] - doc: add final full stop in CONTRIBUTING.md (Emily Aviva Kapor-Mater) #3576
  • [1f78bff7ce] - doc: add TSC meeting minutes 2015-10-21 (Rod Vagg) #3480
  • [2e623ff024] - doc: add TSC meeting minutes 2015-10-14 (Rod Vagg) #3463
  • [b9c69964bb] - doc: add TSC meeting minutes 2015-10-07 (Rod Vagg) #3364
  • [f31d23c724] - doc: add TSC meeting minutes 2015-09-30 (Rod Vagg) #3235
  • [ae8e3af178] - doc: update irc channels: #node.js and #node-dev (Nelson Pecora) #2743
  • [830caeb1bd] - doc, test: symbols as event names (Bryan English) #4151
  • [82cbfcdcbe] - docs: update gpg key for Myles Borins (Myles Borins) #4657
  • [50b72aa5a3] - docs: fix npm command in releases.md (Myles Borins) #4656
  • [5bf56882e1] - fs,doc: use target instead of destination (yorkie) #3912
  • [41fcda840c] - http: use self.keepAlive instead of self.options.keepAlive (Damian Schenkelman) #4407
  • [3ff237333d] - http: Remove an unnecessary assignment (Bo Borgerson) #4323
  • [39dc054572] - http: remove excess calls to removeSocket (Dave) #4172
  • [751fbd84dd] - https: use servername in agent key (Fedor Indutny) #4389
  • [7a1a0a0055] - lib: remove unused modules (Rich Trott) #4683
  • [3d81ea99bb] - lib,test: update let to const where applicable (Sakthipriyan Vairamani) #3152
  • [8a9869eeab] - module: fix column offsets in errors (Tristian Flanagan) #2867
  • [0ae90ecd3d] - module,repl: remove repl require() hack (Ben Noordhuis) #4026
  • [a7367fdc1e] - net: small code cleanup (Jan Schär) #3943
  • [03e9495cc2] - node: remove unused variables in AppendExceptionLine (Yazhong Liu) #4264
  • [06113b8711] - node: s/doNTCallbackX/nextTickCallbackWithXArgs/ (Rod Vagg) #4167
  • [8ce6843fe4] - os: fix crash in GetInterfaceAddresses (Martin Bark) #4272
  • [53dcbb6aa4] - repl: remove unused function (Rich Trott)
  • [db0e906fc1] - repl: Fixed node repl history edge case. (Mudit Ameta) #4108
  • [9855fab05f] - repl: use String#repeat instead of Array#join (Evan Lucas) #3900
  • [41882e4077] - repl: fix require(‘3rdparty’) regression (Ben Noordhuis) #4215
  • [93afc39d4a] - repl: attach location info to syntax errors (cjihrig) #4013
  • [d4806675a6] - repl: display error message when loading directory (Prince J Wesley) #4170
  • [3080bdc7d7] - src: define Is* util functions with macros (cjihrig) #4118
  • [2b8a32a13b] - src: refactor vcbuild configure args creation (Rod Vagg) #3399
  • [d47f6ba768] - src: fix deprecation message for ErrnoException (Martin von Gagern) #4269
  • [5ba08fbf76] - src: fix line numbers on core errors (cjihrig) #4254
  • [70974e9362] - src: use GetCurrentProcessId() for process.pid (Ben Noordhuis) #4163
  • [c96eca164f] - src: don’t print garbage errors (cjihrig) #4112
  • [f61412c753] - test: mark test-debug-no-context is flaky (Rich Trott) #4421
  • [46d8c93ed2] - test: don’t use cwd for relative path (Johan Bergström) #4477
  • [b6124ea39c] - test: write to tmp dir rather than fixture dir (Rich Trott) #4489
  • [350fa664bb] - test: don’t assume a certain folder structure (Johan Bergström) #3325
  • [6b2ef0efac] - test: make temp path customizable (Johan Bergström) #3325
  • [f1837703a9] - test: remove unused vars from parallel tests (Rich Trott) #4511
  • [b4964b099a] - test: remove unused variables form http tests (Rich Trott) #4422
  • [0d5a508dfb] - test: extend timeout in Debug mode (Rich Trott) #4431
  • [6e4598d5da] - test: remove unused variables from TLS tests (Rich Trott) #4424
  • [7b1aa045a0] - test: remove unused variables from HTTPS tests (Rich Trott) #4426
  • [da9e5c1b01] - test: remove unused variables from net tests (Rich Trott) #4430
  • [13241bd24b] - test: remove unused vars in ChildProcess tests (Rich Trott) #4425
  • [2f4538ddda] - test: remove unused vars (Rich Trott) #4536
  • [dffe83ccd6] - test: remove unused modules (Rich Trott) #4684
  • [c4eeb88ba1] - test: fix flaky cluster-disconnect-race (Brian White) #4457
  • [7caf87bf6c] - test: fix flaky test-http-agent-keepalive (Rich Trott) #4524
  • [25c41d084d] - test: remove flaky designations for tests (Rich Trott) #4519
  • [b8f097ece2] - test: fix flaky streams test (Rich Trott) #4516
  • [c24fa1437c] - test: inherit JOBS from environment (Johan Bergström) #4495
  • [7dc90e9e7f] - test: remove time check (Rich Trott) #4494
  • [7ca3c6c388] - test: refactor test-fs-empty-readStream (Rich Trott) #4490
  • [610727dea7] - test: clarify role of domains in test (Rich Trott) #4474
  • [1ae0e355b9] - test: improve assert message (Rich Trott) #4461
  • [e70c88df56] - test: remove unused assert module imports (Rich Trott) #4438
  • [c77fc71f9b] - test: remove unused var from test-assert.js (Rich Trott) #4405
  • [f613b3033f] - test: add test-domain-exit-dispose-again back (Julien Gilli) #4256
  • [f5bfacd858] - test: remove unused util imports (Rich Trott) #4562
  • [d795301025] - test: remove unnecessary assignments (Rich Trott) #4563
  • [acc3d66934] - test: move ArrayStream to common (cjihrig) #4027
  • [6c0021361c] - test: refactor test-net-connect-options-ipv6 (Rich Trott) #4395
  • [29804e00ad] - test: use platformTimeout() in more places (Brian White) #4387
  • [761af37d0e] - test: fix race condition in test-http-client-onerror (Devin Nakamura) #4346
  • [980852165f] - test: fix flaky test-net-error-twice (Brian White) #4342
  • [1bc44e79d3] - test: try other ipv6 localhost alternatives (Brian White) #4325
  • [44dbe15640] - test: fix debug-port-cluster flakiness (Ben Noordhuis) #4310
  • [73e781172b] - test: add test for tls.parseCertString (Evan Lucas) #4283
  • [15c295a21b] - test: use regular timeout times for ARMv8 (Jeremiah Senkpiel) #4248
  • [fd250b8fab] - test: parallelize test-repl-persistent-history (Jeremiah Senkpiel) #4247
  • [9a0f156e5a] - test: fix domain-top-level-error-handler-throw (Santiago Gimeno) #4364
  • [6bc1b1c259] - test: don’t assume openssl s_client supports -ssl3 (Ben Noordhuis) #4204
  • [d00b9fc66f] - test: fix tls-inception flakiness (Santiago Gimeno) #4195
  • [c41b280a2b] - test: fix tls-inception (Santiago Gimeno) #4195
  • [6f4ab1d1ab] - test: mark test-cluster-shared-leak flaky (Rich Trott) #4162
  • [90498e2a68] - test: skip long path tests on non-Windows (Rafał Pocztarski) #4116
  • [c9100d78f3] - test: fix flaky test-net-socket-local-address (Rich Trott) #4109
  • [ac939d51d9] - test: improve cluster-disconnect-handles test (Brian White) #4084
  • [22ba1b4115] - test: eliminate multicast test FreeBSD flakiness (Rich Trott) #4042
  • [2ee7853bb7] - test: fix http-many-ended-pipelines flakiness (Santiago Gimeno) #4041
  • [a77dcfec06] - test: use platform-based timeout for reliability (Rich Trott) #4015
  • [3f0ff879cf] - test: fix time resolution constraint (Gireesh Punathil) #3981
  • [22b88e1c48] - test: add TAP diagnostic message for retried tests (Rich Trott) #3960
  • [22d2887b1c] - test: add OS X to module loading error test (Evan Lucas) #3901
  • [e2141cb75e] - test: skip instead of fail when mem constrained (Michael Cornacchia) #3697
  • [166523d0ed] - test: fix race condition in unrefd interval test (Michael Cornacchia) #3550
  • [86b47e8dc0] - timers: optimize callback call: bind -> arrow (Andrei Sedoi) #4038
  • [4d37472ea7] - tls_wrap: clear errors on return (Fedor Indutny) #4709
  • [5b695d0343] - tls_wrap: inherit from the AsyncWrap first (Fedor Indutny) #4268
  • [0efc35e6d8] - tls_wrap: slice buffer properly in ClearOut (Fedor Indutny) #4184
  • [628cb8657c] - tools: add .editorconfig (ronkorving) #2993
  • [69fef19624] - tools: implement no-unused-vars for eslint (Rich Trott) #4536
  • [3ee16706f2] - tools: enforce throw new Error() with lint rule (Rich Trott) #3714
  • [32801de4ef] - tools: Use throw new Error() consistently (Rich Trott) #3714
  • [f413fae0cd] - tools: add tap output to cpplint (Johan Bergström) #3448
  • [efa30dd2f0] - tools: enable prefer-const eslint rule (Sakthipriyan Vairamani) #3152
  • [dd0c925896] - udp: remove a needless instanceof Buffer check (ronkorving) #4301
  • [f4414102ed] - util: faster arrayToHash (Jackson Tian)
  • [b421119984] - util: determine object types in C++ (cjihrig) #4100
  • [6a7c9d9293] - util: move .decorateErrorStack to internal/util (Ben Noordhuis) #4026
  • [422a865d46] - util: add decorateErrorStack() (cjihrig) #4013
  • [2d5380ea25] - util: fix constructor/instanceof checks (Brian White) #3385
  • [1bf84b9d41] - util,src: allow lookup of hidden values (cjihrig) #3988

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

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

c504aa1a0b7d7a51efe2403d72ef35a4742b5321fd23a2af52e06f9986a5ca70 node-v4.2.5-darwin-x64.tar.gz
e06aa1fbbc35e46e1bc550f72ee01f89f1671b1341a73890eb75de995253d7f3 node-v4.2.5-darwin-x64.tar.xz
01edb44794cfe365560b644b7c8f8431b3531f2c8ad0a47e91d7d0c8761b900f node-v4.2.5-headers.tar.gz
c287b624980bf86d6d050fa7f41b4a288929c37d4ff3ce03a256cc8df40d0481 node-v4.2.5-headers.tar.xz
b09a144acb67a8de6f873bbf05ccdf2accc1fd005127a5ab385f78a830fd3ddc node-v4.2.5-linux-arm64.tar.gz
e2d68f48153548ec9c0a51c91c3b169d0a9e205ae357919acfd03cdc0fcea0a9 node-v4.2.5-linux-arm64.tar.xz
bcc74b00760293b886624c844abf3d4502baab06c454a856b46b165bf5a48b78 node-v4.2.5-linux-armv6l.tar.gz
72b9b7d5277747d84b061513991b671ee0aa4448e596721fe6cbb6dfb86d56f3 node-v4.2.5-linux-armv6l.tar.xz
0146ba2fe72e81a4a682ac114cb58c802100717ed900172f3ec3664c8f3ee0f7 node-v4.2.5-linux-armv7l.tar.gz
4e77203e648d8e090ccc3b49f90bd4a9f2c0edcadaf4b3978d35f02b394b0529 node-v4.2.5-linux-armv7l.tar.xz
3ed12d7ee8d911b87aed7f19640ec3d97a038330709ca4e0d137e8882b0f9cc4 node-v4.2.5-linux-x64.tar.gz
59e5296e241d98714c452630b62b8f6c71fe7fbbde883bfda191ba29d8bfb457 node-v4.2.5-linux-x64.tar.xz
64e1564c0302503c98d70824b940c6679bfe38da74fa7bb387ee0f4665969031 node-v4.2.5-linux-x86.tar.gz
90a4aa5279963939d8d445702659d6222e0c797db376ada123f12651e3891d50 node-v4.2.5-linux-x86.tar.xz
178d9ccd9408d8d5b59f37768d98a78f71437b30e7a02e96885a4f0f5324e060 node-v4.2.5.pkg
3ce9a69bed1b15f251b6ca714901e45cb429a8e9e0ff9250a7735e7e58e942c9 node-v4.2.5-sunos-x64.tar.gz
abf7faeeb2aa460d383b6f7bc9b7bf57a43fe64de7b6e386e2fa6bd0f66dff49 node-v4.2.5-sunos-x64.tar.xz
8acc5a595e3d9bdcdfdb0cfcd7524266fc091306d570fc84cb8cbad5490ca091 node-v4.2.5-sunos-x86.tar.gz
f79f802b706ab275571109459051567b2a8ece7c8bc59c548a93064821aa712a node-v4.2.5-sunos-x86.tar.xz
00162c5a8fcc5c35b27df26c49a83c7f4d52b1c963339a8a20401b81743f7fad node-v4.2.5.tar.gz
8a3c73f41096069f84d77c2501d34a29b40ec3aac44a57b079707b58e59b2c66 node-v4.2.5.tar.xz
4d3a54e85e1d4f5b761be17c9a605d2e66a3a6b0979ec9aee657ed5e50a0f475 node-v4.2.5-x64.msi
7425c143ee231961de530db4d8728bc2fae029ed230d25eac55dbc9b00b82294 node-v4.2.5-x86.msi
4278bf5c1254ab4032ce9de6f3fa6db6534743b0fff0952c9b31d2911c4b70c3 win-x64/node.exe
aac282baed734bff1f1fcd2716a592929a8dddd926388f6f6cb5fdb41637e96e win-x64/node.lib
9acbcfdd5a56795892f282a3f51e07de28ad6fe803e5882e10466aaf361c5ab2 win-x86/node.exe
59b8959365e95d71270b3031b879c7263f76a36e1643d28129fd38f71ef28ab3 win-x86/node.lib
-----BEGIN PGP SIGNATURE-----

iQEcBAEBAgAGBQJWoAAFAAoJEJM7AfQLXKlGV0AH/jiA0DA6haJmXVBzwlRRFFxg
9Yg90MdMZN6jPM4gUp+LE5Dy7MYKi6oO00GW8Socfn5GLzBide4U4Iwe93Bpxd6A
6o35rcTtT9sKil4nvHgk54O0vxiUQY13FvWnRIzP+kATK3swzVkXR4zRqSjW6+Dn
m+uLdGLoHwn3gOO4r6OhNBAC4luF5FupMYaLybwARvr6qFfFFieUqV3BPSSpUORx
JoOIDXmf8fjGIG3o6tjrSMpFfqs2rwHHucb83fZ0MjQPP+DCsw11LTqhhxYzqPgg
vUZhPiuXQTGAVOAg864DvzHlNlBGqNoF1VFak/cpzza9CX2AIHWNcA3k9j0P88Q=
=68ul
-----END PGP SIGNATURE-----

Node.js 주간 뉴스 2016년 1월 18일

Node.js 뉴스

Node v5.4.1(안정 버전)이 릴리스됐습니다

Node v5.4.1(안정 버전) 릴리스

이번 주에는 Node v5.4.1(안정 버전)이 릴리스됐습니다. 이전 버전과 달라진 전체 변경 사항은 GitHub에서 볼 수 있습니다.

주요 변경 사항

  • 몇 가지 사소한 성능 개선이 포함됐습니다:
    • module: 빠르게 반환할 때 불필요한 작업 몇 가지의 위치를 옮겼습니다. (Andres Suarez) #3579
  • 여러 버그를 수정했습니다.
  • 여러 문서를 수정했습니다.
  • 여러 테스트를 개선했습니다.

Nodesource 업데이트

2016년 선거 후보자 등록

지난 금요일에 Node.js 재단 이사회에 참여할 개인 회원 대표의 후보자 등록이 마감되었습니다. 전부 12명이 후보자로 등록했습니다.

투표 용지는 1월 20일에 개인 회원에게 배부될 예정이며, 선거는 1월 30일까지 치뤄집니다.

투표 자격을 얻으려면 Node.js 재단에 개인 회원으로 등록해야 합니다. 자세한 정보는 https://nodejs.org/en/blog/community/individual-membership/ 페이지에서 확인하세요.

Nodeup 업데이트

커뮤니티 업데이트

Node.js에 관한 글을 쓰거나 발견했다면, Evangelism 팀 저장소이슈 페이지에 주간 업데이트 이슈로 알려주세요.

다가오는 이벤트

  • NodeConf Adventure 2016. “NodeConf Adventure의 1차 티켓을 신청할 수 있습니다!”. 미국 캘리포니아 주 마린 카운티 Walker Creek Ranch에서 2016년 6월 9일부터 12일까지 열립니다.
  • NationJS Node Day Conference. 지금 표를 살 수 있습니다. 워싱턴 DC에서 2016년 3월 11일에 열립니다.

계획 중인 Node.js 이벤트가 있나요? Evangelism 팀 저장소이슈 페이지에 주간 업데이트 이슈를 통해 알릴 수 있습니다.

Node v5.4.1(안정 버전)

주요 변경 사항

  • 몇 가지 사소한 성능 개선이 포함됐습니다:
    • module: 빠르게 반환할 때 불필요한 작업 몇 가지의 위치를 옮겼습니다. (Andres Suarez) #3579
  • 여러 버그를 수정했습니다.
  • 여러 문서를 수정했습니다.
  • 여러 테스트를 개선했습니다.

알려진 이슈

  • REPL에 입력된 서로게이트 페어가 터미널을 얼릴 수 있습니다. #690
  • DNS 질의 진행 중에 호출된 dns.setServers()는 단언문 실패로 프로세스를 크래시시킬 수 있습니다. #894
  • url.resolve가 두 호스트 사이를 해석하는 중 URL의 인증 정보를 교환할 수 있습니다. #1435
  • 파일 시스템 경로의 유니코드 문자를 플랫폼이나 Node.js API에 따라 다르게 처리하는 문제가 있습니다. #2088, #3401, #3519

commits

  • [ff539c5bb5] - cluster: ignore queryServer msgs on disconnection (Santiago Gimeno) #4465
  • [00148b3de1] - deps: backport 066747e from upstream V8 (Ali Ijaz Sheikh) #4625
  • [3912b5cbda] - doc: adds usage of readline line-by-line parsing (Robert Jefe Lindstaedt) #4609
  • [102fb7d3a1] - doc: remove “above” and “below” references (Richard Sun) #4499
  • [df87176ae0] - doc: update stylesheet to match frontpage (Roman Reiss) #4621
  • [ede98d1f98] - doc: stronger suggestion for userland assert (Wyatt Preul) #4535
  • [fdfc72c977] - doc: label http.IncomingMessage as a Class (Sequoia McDowell) #4589
  • [b181e26975] - doc: document http’s server.listen return value (Sequoia McDowell) #4590
  • [97aaeb8519] - doc: fix description about the latest-codename (Minwoo Jung) #4583
  • [0126615d1e] - doc: add Evan Lucas to Release Team (Evan Lucas) #4579
  • [ec73c69412] - doc: add Myles Borins to Release Team (Myles Borins) #4578
  • [e703c9a4e2] - doc: bring releases.md up to date (cjihrig) #4540
  • [ac1108d5e7] - doc: add missing backtick for readline (Brian White) #4549
  • [09bc0c6a05] - doc: improvements to crypto.markdown copy (James M Snell) #4435
  • [787c5d96bd] - http: remove variable redeclaration (Rich Trott) #4612
  • [145b66820f] - module: move unnecessary work for early return (Andres Suarez) #3579
  • [ffb7deb443] - net: remove hot path comment from connect (Evan Lucas) #4648
  • [799aa74d90] - net: fix dns lookup for android (Josh Dague) #4580
  • [9accebe087] - net, doc: fix line wrapping lint in net.js (James M Snell) #4588
  • [37a546b490] - src: remove redeclarations of variables (Rich Trott) #4605
  • [b515ccc2a1] - stream: remove useless if test in transform (zoubin) #4617
  • [ea6e26d904] - test: remove duplicate fork module import (Rich Trott) #4634
  • [b14b2aec5e] - test: require common module only once (Rich Trott) #4611
  • [f28a640505] - test: only include http module once (Rich Trott) #4606
  • [6f9a96f497] - test: fix flaky unrefed timers test (Rich Trott) #4599
  • [b70eec8f7b] - tls_legacy: do not read on OpenSSL’s stack (Fedor Indutny) #4624

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

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

c523472a5972823e8b6baf2419f837885321c772612ec508a65614c758e25a46 node-v5.4.1-darwin-x64.tar.gz
c4c721d7ef2fba4e5b21dfc8017bda10c8a4d8ff322f7545e74943ca9828ee89 node-v5.4.1-darwin-x64.tar.xz
fd91d8fcbe72c76d1e58ddb3ba8bc08073c8c1e6d595bfe4b8b22e9b92855ed7 node-v5.4.1-headers.tar.gz
17424fc015dc668480537fd32f67f4d85d6e78e37f87d5eef58ef12d40bcd335 node-v5.4.1-headers.tar.xz
362ae4539b6be075b6757ba689f0ae522cfc9340c81061aca880f92fce9595c7 node-v5.4.1-linux-arm64.tar.gz
40f8e6485759a5c5f166745f7d8f33285ef425d2fe569d085220fd954fb790b9 node-v5.4.1-linux-arm64.tar.xz
21617e86758f1f95a3b9444be965aa87907410d786529cfd6aa2169ab7b5e15b node-v5.4.1-linux-armv6l.tar.gz
2698fdd1bcfb2234f65b786c0a46ac29bf2c301c992fd72045fd03553a57e298 node-v5.4.1-linux-armv6l.tar.xz
af36dff32934dea9446673a5453efcda6e4621ce7fa73e0a401f1444c2f929af node-v5.4.1-linux-armv7l.tar.gz
09b346ee665e3510fe8679df95bc32e8dda5953e05807c21816a25b9f5969dd4 node-v5.4.1-linux-armv7l.tar.xz
1880f3421da5579678803a523c314b345f5db00799b51b7fd9484a3248efc068 node-v5.4.1-linux-x64.tar.gz
9d264641df98742246bfd868e84cf98f649077f31eeae58931a31b0b5eee05a0 node-v5.4.1-linux-x64.tar.xz
184790d2ec8f95a75e7e746b3007e848aeba91be14ad7cec415b425df0df92e5 node-v5.4.1-linux-x86.tar.gz
a18707f7ac559563220e3319f251a2a5479b8445538f757df3a6c2dead007f1b node-v5.4.1-linux-x86.tar.xz
059aae464e48cc11c5af1a12f47e6859da28b0fcf794f5c33d14ab7235fee1db node-v5.4.1.pkg
956b3b0790b5742765966c6851e43c6fca298ecfb8c7102fd87e5fb6294bebd4 node-v5.4.1-sunos-x64.tar.gz
5644e5998d58bfac337a7c8672de68ec0a6dc55366a098b2364b9fbad6b345d8 node-v5.4.1-sunos-x64.tar.xz
a3eb11d58760b4b9007ac882c02e7608549fe7f65124ca90a387ba71c524b3e2 node-v5.4.1-sunos-x86.tar.gz
b8e78738f2714e34705eebd207400af422cee0842e7c599ab5077a4e51ed8453 node-v5.4.1-sunos-x86.tar.xz
78455ef2e3dea06b7d13d393c36711009048a91e5de5892523ec4a9be5a55e0c node-v5.4.1.tar.gz
4e7d3fdfeac85c46ddaef0224695620f218e7a178e97d6e210d6d643483f1d53 node-v5.4.1.tar.xz
a65a1eaeb1bd234516232803839ef5a2f6526730abfef98724c103f76a8b5440 node-v5.4.1-x64.msi
d06e7a697d7519b83dbaf631ad45103f8768f6bfef13fa3ce8bddba9d9f436f2 node-v5.4.1-x86.msi
85311ba0ce30a6f41c6d677c33f4c198e3a3f4a4e62754a84c6c3036a1fc6e4f win-x64/node.exe
e2715e5383d61c67d4f7d41f1fc760ef311c89b365b931720a452f1409ccabb4 win-x64/node.lib
3edae51060629596c592e2bee4da15a4b3f7e36f0cb80c8a2fd6eedcefd0de13 win-x86/node.exe
0dbb491180a380170bb89dc6976207c96c50aaf849021c7b049065c169fd09ef win-x86/node.lib
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org

iQIcBAEBCgAGBQJWlZAFAAoJEEX17r2BPa6Oo3wQAKVEfZyDKAhbhg6r+x87tRqO
zsyNpefHA3KPvnRJbZsVD2vvj2Arvv8uaYwHk9rE0IdErP55MzGzJpaf6s2CsKaZ
qLZc+vcmvtdUFv5oiXrwCGZ2YSUtUrudHXyyve/qo4y1SuUagpDRT8ohjhn7Vlds
qnJ2FohUU4oVclHXYKxpH5+5rd4WP4mtz8WIXrmzXn+OHmc9io1qzyzx7tVTK9J4
BGZYZa1BAZ76ETCy8juipiN06T7CYnYYKJ/ti4dDCnG8cRZ5ohqPI5XtqLr4HVmv
6Pfrjw3RRRvmTgqHxX0MZF2TZjDi9Rl6fzYmOWJL9emG3lVZmCI96V7t7JGZWbFi
zVEIFoNE/UBw+Rqd4aUELJ4xALcj+vDWvvC2x+W5bEndorgbNWEBUyq6SwwQ1k/T
9xlXddo92LVWVQjD+PJzV517MKgyHcch2xzAxaAXIRsNuVGMpkThSXeTX0n11HAV
I+R0NHV5vuOdFt+KiENJmsD9RiszmRK3KWeRETwaelmHMR1jq25JcijOHokE0gB7
oV64W9uuVkzrOEQUgBvRF/4Ov+PVM8IPAj9EqZM6xkIGEyq9fCSn9ddJMTF2xKDO
9lD3o44MNAL/ml3wAnm10WltUkCLSHd3Cyi0/7ygeIp0KeUXuaix1sVrGJmZpgIn
bNZ8ZbcRnuEiPnh8a/if
=o+WC
-----END PGP SIGNATURE-----

Node.js 주간 뉴스 2016년 1월 11일

Node.js 뉴스

Node v5.4.0(안정 버전)이 릴리스됐습니다

Node v5.4.0(안정 버전) 릴리스

이번 주에는 Node v5.4.0(안정 버전)이 릴리스됐습니다. 이전 버전과 달라진 전체 변경 사항은 GitHub에서 볼 수 있습니다.

주요 변경 사항

  • http:
    • 451 - “법적인 이유로 사용할 수 없음”이라는 새로운 상태 코드를 추가했습니다. (Max Barinov) #4377
    • 이제 연결이 유지되어 있는(keep alive) 유휴(idle) 소켓도 에러를 처리합니다. (José F. Romaniello) #4482
  • 이번 릴리스에는 몇 가지 사소한 성능 개선이 포함됐습니다.
    • assert: TypedArray를 비교할 때 deepEqual이 더 빨라졌습니다. (Claudio Rodriguez) #4330
    • lib: 가능한 경우 bind 대신 화살표 함수를 사용합니다. (Minwoo Jung) #3622
    • node: process.env의 접근자 성능을 개선했습니다. (Trevor Norris) #3780
    • node: process.hrtime()의 성능을 개선했습니다. (Trevor Norris) #3780, (Evan Lucas) #4484
    • node: GetActiveHandles의 성능을 개선했습니다. (Trevor Norris) #3780
    • util: util.format()에서 반복을 더 빠르게 수행합니다. (Jackson Tian) #3964

커뮤니티 업데이트

Node.js에 관한 글을 쓰거나 발견했다면, Evangelism 팀 저장소이슈 페이지에 주간 업데이트 이슈로 알려주세요.

다가오는 이벤트

  • NodeConf Adventure 2016. “NodeConf Adventure의 첫 번째 일괄 티켓을 신청할 수 있습니다!”. 미국 캘리포니아 주 마린 카운티 Walker Creek Ranch에서 6월 9일부터 12일까지 열립니다.
  • NationJS Node Day Conference. 지금 표를 살 수 있습니다. 워싱턴 DC에서 2016년 3월 11일에 열립니다.

계획 중인 Node.js 이벤트가 있나요? Evangelism 팀 저장소이슈 페이지에 주간 업데이트 이슈를 통해 알릴 수 있습니다.

Node v5.4.0(안정 버전)

주요 변경 사항

  • http:
    • 451 - “법적인 이유로 사용할 수 없음”이라는 새로운 상태 코드를 추가했습니다. (Max Barinov) #4377
    • 이제 연결이 유지되어 있는(keep alive) 유휴(idle) 소켓도 에러를 처리합니다. (José F. Romaniello) #4482
  • 이번 릴리스에는 몇 가지 사소한 성능 개선이 포함됐습니다.
    • assert: TypedArray를 비교할 때 deepEqual이 더 빨라졌습니다. (Claudio Rodriguez) #4330
    • lib: 가능한 경우 bind 대신 화살표 함수를 사용합니다. (Minwoo Jung) #3622
    • node: process.env의 접근자 성능을 개선했습니다. (Trevor Norris) #3780
    • node: process.hrtime()의 성능을 개선했습니다. (Trevor Norris) #3780, (Evan Lucas) #4484
    • node: GetActiveHandles의 성능을 개선했습니다. (Trevor Norris) #3780
    • util: util.format()에서 반복을 더 빠르게 수행합니다. (Jackson Tian) #3964

알려진 이슈

  • REPL에 입력된 서로게이트 페어가 터미널을 얼릴 수 있습니다. #690
  • DNS 질의 진행 중에 호출된 dns.setServers()는 단언문 실패로 프로세스를 크래시시킬 수 있습니다. #894
  • url.resolve가 두 호스트 사이를 해석하는 중 URL의 인증 정보를 교환할 수 있습니다. #1435
  • 파일 시스템 경로의 유니코드 문자를 플랫폼이나 Node.js API에 따라 다르게 처리하는 문제가 있습니다. #2088, #3401, #3519

Commits

  • [d265fc821a] - assert: typed array deepequal performance fix (Claudio Rodriguez) #4330
  • [6d8053ab56] - buffer: faster case for create Buffer from new Buffer(0) (Jackson Tian) #4326
  • [8781c59878] - buffer: refactor create buffer (Jackson Tian) #4340
  • [252628294b] - child_process: guard against race condition (Rich Trott) #4418
  • [fcf632bc6a] - crypto: load PFX chain the same way as regular one (Fedor Indutny) #4165
  • [a5094a35a0] - debugger: guard against call from non-node context (Ben Noordhuis) #4328
  • [b4c51c5b76] - deps: backport 200315c from V8 upstream (Vladimir Kurchatkin) #4128
  • [334e73942e] - doc: fix heading level error in Buffer doc (Shigeki Ohtsu) #4537
  • [5be0259181] - doc: close backtick in process.title description (Dave) #4534
  • [35aec4c14d] - doc: fix numbering in stream.markdown (Richard Sun) #4538
  • [982f3227a5] - doc: improvements to dgram.markdown copy (James M Snell) #4437
  • [6cdfa38d23] - doc: improvements to errors.markdown copy (James M Snell) #4454
  • [6c7bcd5007] - doc: fix website wg mislink (jona) #4357
  • [eee50821dc] - doc: mention that http.Server inherits from net.Server (Ryan Sobol) #4455
  • [c745b4d5f8] - doc: explain ClientRequest#setTimeout time unit (Ben Ripkens) #4458
  • [40076bf7f8] - doc: fix spelling error in lib/url.js comment (Nik Nyby) #4390
  • [5a223d64e3] - doc: add anchors for _transform _flush _writev in stream.markdown (iamchenxin) #4448
  • [e8bbeecc4c] - doc: improvements to debugger.markdown copy (James M Snell) #4436
  • [ccd75fe3fb] - doc: improvements to events.markdown copy (James M Snell) #4468
  • [ed15962777] - doc: improvements to dns.markdown copy (James M Snell) #4449
  • [e177cc9fdf] - doc: improvements to console.markdown copy (James M Snell) #4428
  • [c1bc9a1023] - doc: improve child_process.markdown copy (James M Snell) #4383
  • [150f62847c] - doc: copyedit setTimeout() documentation (Rich Trott) #4434
  • [9e667354be] - doc: fix formatting in process.markdown (Rich Trott) #4433
  • [bc1c0dc3fb] - doc: catch the WORKING_GROUPS.md bootstrap docs up to date (James M Snell) #4367
  • [c835ba3601] - doc: improve assert.markdown copy (James M Snell) #4360
  • [e79eda74c0] - doc: copyedit releases.md (Rich Trott) #4384
  • [6450d8667f] - doc: improve grammar in tls docs (Adri Van Houdt) #4315
  • [474a0f081a] - doc: improvements to buffer.markdown copy (James M Snell) #4370
  • [57684d650e] - doc: improve addons.markdown copy (James M Snell) #4320
  • [04dd861221] - doc: fix, modernize examples in docs (James M Snell) #4282
  • [5ce6e99474] - doc: Typo in buffer.markdown referencing buf.write() (chrisjohn404) #4324
  • [699bf2c464] - doc: fix link in addons.markdown (Nicholas Young) #4331
  • [e742422757] - fs: use pushValueToArray for readdir(Sync) (Trevor Norris) #3780
  • [1dd2d015d2] - (SEMVER-MINOR) http: handle errors on idle sockets (José F. Romaniello) #4482
  • [083ae166bb] - http: use self.keepAlive instead of self.options.keepAlive (Damian Schenkelman) #4407
  • [ffb4a6e0e4] - http: fix non-string header value concatenation (Brian White) #4460
  • [c77fd6829a] - (SEMVER-MINOR) http: 451 status code “Unavailable For Legal Reasons” (Max Barinov) #4377
  • [8f7af9a489] - http: remove excess calls to removeSocket (Dave) #4172
  • [b841967103] - http: Remove an unnecessary assignment (Bo Borgerson) #4323
  • [b8366e76dd] - http_parser: use pushValueToArray for headers (Trevor Norris) #3780
  • [ca97e7276e] - https: use servername in agent key (Fedor Indutny) #4389
  • [b5aaccc6af] - lib: remove unused modules (Rich Trott) #4396
  • [921fb540c1] - node: improve performance of process.hrtime() (Evan Lucas) #4484
  • [ecef817a28] - node: improve accessor perf of process.env (Trevor Norris) #3780
  • [89f056bdf3] - node: improve performance of hrtime() (Trevor Norris) #3780
  • [c8fc217dc7] - node: improve GetActiveHandles performance (Trevor Norris) #3780
  • [8464667071] - node: fix erroneously named function call (Trevor Norris) #3780
  • [e57fd51a5e] - os: fix crash in GetInterfaceAddresses (Martin Bark) #4272
  • [65c40d753f] - repl: remove unused function (Rich Trott)
  • [3d41a44dba] - repl: Fixed node repl history edge case. (Mudit Ameta) #4108
  • [d11930d604] - repl: use String#repeat instead of Array#join (Evan Lucas) #3900
  • [4220d25626] - test: fix linting for the v5.x branch (Jeremiah Senkpiel) #4547
  • [4b14f1c983] - test: remove unused vars (Rich Trott) #4536
  • [2a69ab32ec] - test: add test-domain-exit-dispose-again back (Julien Gilli) #4256
  • [ae0246641c] - test: remove unused vars from parallel tests (Rich Trott) #4511
  • [984db93e7c] - test: fix flaky test-cluster-shared-leak (Rich Trott) #4510
  • [30b0d7583a] - test: fix flaky streams test (Rich Trott) #4516
  • [46fefbc1b5] - test: fix flaky test-http-agent-keepalive (Rich Trott) #4524
  • [e04a8401d9] - test: remove flaky designations for tests (Rich Trott) #4519
  • [a703b1bf73] - test: remove time check (Rich Trott) #4494
  • [02b3a5be52] - test: refactor test-fs-empty-readStream (Rich Trott) #4490
  • [ab3e5c1417] - test: write to tmp dir rather than fixture dir (Rich Trott) #4489
  • [06043fdfa3] - test: remove unused modules (Rich Trott) #4475
  • [f1a66bc249] - test: clarify role of domains in test (Rich Trott) #4474
  • [08a3490dd6] - test: inherit JOBS from environment (Johan Bergström) #4495
  • [3bfc18763a] - test: improve assert message (Rich Trott) #4461
  • [d46d850461] - test: shorten path for bogus socket (Rich Trott) #4478
  • [f68f86cd0a] - test: fix race condition in test-http-client-onerror (Devin Nakamura) #4346
  • [ec0b6362cf] - test: remove unused assert module imports (Rich Trott) #4438
  • [ba2445046c] - test: don’t use cwd for relative path (Johan Bergström) #4477
  • [5110e4deed] - test: don’t assume a certain folder structure (Johan Bergström) #3325
  • [55c6946400] - test: make temp path customizable (Johan Bergström) #3325
  • [b19d19efaa] - test: extend timeout in Debug mode (Rich Trott) #4431
  • [c6a99ddd37] - test: remove unused variables from net tests (Rich Trott) #4430
  • [54004f0e26] - test: remove unused vars in ChildProcess tests (Rich Trott) #4425
  • [e72112f90e] - test: fix flaky cluster-disconnect-race (Brian White) #4457
  • [715afc9bbd] - test: fix flaky cluster-net-send (Brian White) #4444
  • [03c4bc704f] - test: fix flaky child-process-fork-regr-gh-2847 (Brian White) #4442
  • [684eb32072] - test: remove unused variables from HTTPS tests (Rich Trott) #4426
  • [585c01f674] - test: remove unused variables from TLS tests (Rich Trott) #4424
  • [c36ca37e2a] - test: remove unused variables form http tests (Rich Trott) #4422
  • [c639d0f1fe] - test: mark test-debug-no-context is flaky (Rich Trott) #4421
  • [cd79ec268d] - test: remove unnecessary assignments (Rich Trott) #4408
  • [0799a9abaf] - test: remove unused var from test-assert.js (Rich Trott) #4405
  • [3710028a85] - test: remove unused util imports (Rich Trott) #4397
  • [8c9d0c1f6f] - test: refactor test-net-connect-options-ipv6 (Rich Trott) #4395
  • [874209022f] - test: fix http-response-multiheaders (Santiago Gimeno) #3958
  • [71b79bcf54] - test: test each block in addon.md contains js & cc (Rod Vagg) #4411
  • [00b37de243] - test: fix domain-top-level-error-handler-throw (Santiago Gimeno) #4364
  • [6d14b6520f] - test: use platformTimeout() in more places (Brian White) #4387
  • [82f74caa56] - test: fix flaky test-net-error-twice (Brian White) #4342
  • [96501e55be] - test: try other ipv6 localhost alternatives (Brian White) #4325
  • [69343d6d2e] - tls_wrap: clear errors on return (Fedor Indutny) #4515
  • [ca9812cf4d] - tools: fix warning in doc parsing (Shigeki Ohtsu) #4537
  • [386030b524] - tools: implement no-unused-vars for eslint (Rich Trott) #4536
  • [14a947fc70] - tools: run tick processor without forking (Matt Loring) #4224
  • [8039ca06eb] - util: faster arrayToHash (Jackson Tian) #3964

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

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

efc7422f46ff2c9961ea984ced72b74f9c6c2e4e73f51ad83ff35c63835323f9 node-v5.4.0-darwin-x64.tar.gz
d30efc022f6f893aa452c55a04832e44dda208c887230bb49d12a0bbeb3d0e95 node-v5.4.0-darwin-x64.tar.xz
6f3de4df2ac30c1205ea228a1a9de6acd841255ee19229169bbb92318a75db0b node-v5.4.0-headers.tar.gz
19efc897e1a90e5aa66be9637dfc1e9b26950acb68f1521d52f9db62d8e5fa38 node-v5.4.0-headers.tar.xz
0cb2c093e75090281423a2b3681629c663c83dac4587a12b77022afccd7aedc0 node-v5.4.0-linux-arm64.tar.gz
c29e7d39457375b9bafd078019a7efa116d1aa2536a4d2af542e070fb49ef9f9 node-v5.4.0-linux-arm64.tar.xz
108e6314f0b88ab6fdebe85885797a59dbfd7c4857f2976ce5b98c981162e01b node-v5.4.0-linux-armv6l.tar.gz
30c3c3d00e117cfe8afc3f19ae67ca00d129b14c085d6b6fd1c27175b350be53 node-v5.4.0-linux-armv6l.tar.xz
e69b3f90b56f027dd0435b8b7a2f4ffa7ed3d8185e2162a08d6d2cf097370a97 node-v5.4.0-linux-armv7l.tar.gz
1307e47e10d230cfbaf0eadb8bcfcf24bccca90108f2b3f91d2944d6739528e3 node-v5.4.0-linux-armv7l.tar.xz
f037e2734f52b9de63e6d4a4e80756477b843e6f106e0be05591a16b71ec2bd0 node-v5.4.0-linux-x64.tar.gz
ca1d6567716b47441c4f38ed344b00ba9fc48f83b333edfa5bc6b54d9253279f node-v5.4.0-linux-x64.tar.xz
8c3d8afb79d9ba5f381ed549521ca8183975dfad2d50290686657b8ce4304a4c node-v5.4.0-linux-x86.tar.gz
5e06288b4a816d0d32686d40734745cf04259d54392e41bd1853d5a84bffa324 node-v5.4.0-linux-x86.tar.xz
4882333d6e4dad5e39599f918aa7e60f5125ce14f2c6f4ba32a58d08bb1781fe node-v5.4.0.pkg
97a90d9ee302949b5b8f0e1d64933cc1d64725b09d2eb034bb24deb4c336a511 node-v5.4.0-sunos-x64.tar.gz
9748663f02aedcbebd0e0dcfbe34c37ac9dc9e4330b6ad73258deb8c104be074 node-v5.4.0-sunos-x64.tar.xz
dcfe2748bcbc6bd6250be0d91b0f3a432b4e01a8d809fdd769a9b8e646e009a3 node-v5.4.0-sunos-x86.tar.gz
a664e69f12222d28cd8476faa950a2859367a9c200fdad415b59caf479498b7f node-v5.4.0-sunos-x86.tar.xz
1dfe37a00cf0ed62beb73071f571ac56697f544a98cc2ff3318faec6363d72ab node-v5.4.0.tar.gz
744a31979b7c48a9c605fbfa7c159fcd60732ce27061671fe03847ffe448a5a3 node-v5.4.0.tar.xz
198afe1118b310714f785e360f45928e25818cb03821bf941b1138b271676342 node-v5.4.0-x64.msi
d1d2805d2ecb7695339d4092314635ca4fa602472af98ac0685aac5ff61ece91 node-v5.4.0-x86.msi
f70cf7863ae4b69ab0cdbbc38a40cac40b13c52a4d2e91e5d4d6d2c1067553f5 win-x64/node.exe
efd4ab0aa6888abc697319444772d182eda025c54b0bf730e7f38b71ba43ddf6 win-x64/node.lib
3da18aeb3578bc5a683d2f1d853180c591d02fbbb2d6a43246dbf67003eb0307 win-x86/node.exe
9f836eba3f5d231f981173ee0a3fc5fdafee97298e031669a3ff94e886279a1b win-x86/node.lib
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org

iQIcBAEBCgAGBQJWjZeGAAoJEEX17r2BPa6Oi4oQAIe0+WIY0g+C5zIDfKxVz1jW
5BZVT/eQKDbZG94p+ONIJElmeexRsNKm0389DD/lXmG7ilJLAUGQgeYLgyyRfpF9
iQRKdUVJICuuHNzUQH2lkDdILbYESBM9MPCVQXUALO7ZP4/D0zZeHIwD3Au5QRJU
hsxeMLeooP21PBuAR/t1Xxm3OrXMd7bRDinUCXmYcAHZ4SNLkxbI86oQPOTsyPLz
dI8cOW/50REvyocGK0tqVRlsx46ZAYDBTZpUBOAdew1dmpDfsJfawZCBPke+FBY2
PSJymxKK2GaZMu92s9wdyKtFk6wf17ySGm5w3DvoqLG3VjK7GgPdsEW1y5rm5xp3
uR68sS/us63Om1VHYo/GtD7u1bnoXvugvILqazZA4b0iVstFzG0Wpde7OuB6v+MB
wTKLrY8Y9MU5xf3uUk00KkaUvsAielpgDEJzkjYTEff+zNnwcV+CRwW8RKaGwQBu
GBuO9SGLwTW1a/oLWvzMH7D21dnzNG327GSHUH4tzKVuefloHovWxcXUYk1SjFlv
nXIFUx9uaiE2m4qMA+RBZqm7B6USwHi74219ABAZEyf4MTWpASNZPZZxJjtucfvC
Z3drrsZ7gJerovpvBu0HdqQxAHOxBJFc7eJK6PjoFaMKveR5/LXZ08bo1Wgyqtv9
BJeCTm2GksNuW04aimOZ
=/3YZ
-----END PGP SIGNATURE-----

Node.js 주간 뉴스 2016년 1월 1일

Node.js 뉴스 - 1월 1일

Node v4.2.4(LTS)가 릴리스됐습니다

Node v4.2.4(LTS) 릴리스

이번 주에는 Node v4.2.4(LTS)가 릴리스됐습니다. 이전 버전과 달라진 전체 변경 사항은 GitHub에서 볼 수 있습니다.

주요 변경 사항

Node.js v4.2.4는 장기 지원 유지 버전입니다. 몇 가지 수정 사항과 문서 업데이트가 있습니다.

  • 커밋 중 약 78% 정도가 문서 및 테스트를 개선하는 것입니다.
  • domains:
    • 잡히지 않은 예외의 처리를 수정했습니다. (Julien Gilli) #3884
  • deps:
    • npm의 버전을 2.14.12로 업그레이드했습니다. (Kat Marchán) #4110
    • V8 업스트림에서 819b40a 백포팅했습니다. (Michaël Zasso) #3938
    • node의 LICENSE 파일에서 npm 라이센스 부분을 업데이트했습니다. (Kat Marchán) #4110

커뮤니티 업데이트

Node.js에 관한 글을 쓰거나 발견했다면, Evangelism 팀 저장소이슈 페이지에 주간 업데이트 이슈로 알려주세요.

다가오는 이벤트

계획 중인 Node.js 이벤트가 있나요? Evangelism 팀 저장소이슈 페이지에 주간 업데이트 이슈를 통해 알릴 수 있습니다.