Node.js 주간 뉴스 2015년 11월 27일

Node.js 뉴스 — 11월 27일

Node v0.12.8(LTS)을 릴리스했습니다

Node v0.12.8(LTS) 릴리스

이번 주에는 Node v0.12.8(LTS)을 릴리스했습니다. 전체 변경 사항은 GitHub에서 볼 수 있습니다.

주요 변경 사항

  • [7d11208f68] - build: tools/release.sh 백포트 (Rod Vagg) #3642
  • [6fb0b92fa0] - build: 새로운 CI 구조에 관한 백포트 설정 (Rod Vagg) #3642
  • [83441616a5] - build: --without-ssl 컴파일시 발생하던 에러 수정 (Ben Noordhuis) #3825

CVE-2015-8027 서비스 거부 취약점 / CVE-2015-6764 V8 Out-of-bounds 접근 취약점

  • 오는 12월 1일 또는 2일에(시간대에 따라 다름) 서비스 거부(DoS) 취약점을 해결한 보안 릴리스를 할 것입니다. 업데이트를 준비하세요!
  • 새로 출시되는 v0.12.x, v4.x, v5.x 버전에서 CVE-2015-8027과 CVE-2015-6764(v4.x, v5.x 전용) 취약점이 수정될 것입니다.
  • Node.js의 보안 취약점을 보고하고 싶다면 security@nodejs.org로 연락 바랍니다.

자세한 내용은 https://nodejs.org/en/blog/vulnerability/cve-2015-8027_cve-2015-6764/ 문서를 참고하세요.

NodeUp

  • NodeUp 96: Rebecca Turner, Rod Vagg, Rich Trott와 함께 하는 Node v5.0 쇼

커뮤니티 업데이트

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

다가오는 이벤트

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

CVE-2015-8027 서비스 거부 취약점 / CVE-2015-6764 V8 Out-of-bounds 접근 취약점

다음 보안 취약점을 알리는 글입니다.

  • CVE-2015-8027: 영향력이 큰 서비스 거부(Denial of Service, DoS) 취약점
  • CVE-2015-6764: 영향력이 낮은 V8 out-of-bounds 접근 취약점

CVE-2015-8027 서비스 거부(DoS) 취약점

설명 및 CVSS 점수

v0.12.x부터 v5.x까지 모든 Node.js 버전에 외부 공격자가 서비스 거부(DoS)를 일으킬 수 있는 버그가 있습니다. 이 문제의 심각도는 높게 평가되었으며(아래 CVSS 항목 참고) 해당 버전을 사용하고 있는 사용자는 버그 픽스가 나오면 업그레이드 해야합니다.

  • Node.js 0.10.x 버전은 아무런 영향이 없습니다.
  • Node.js 0.12.x 버전은 취약할 수 있습니다.
  • LTS Argon을 포함한 Node.js 4.x 버전은 취약할 수 있습니다.
  • Node.js 5.x 버전은 취약할 수 있습니다.

이 취약점에 관한 상세 내용은 2015년 12월 2일 수요일(UTC)(미국 시간 기준 12월 1일 화요일)에 새 버전이 릴리스되기 전까지 공개되지 않습니다.

공통 취약점 평가 체계 (CVSS) v3 기본 점수

평가 항목 점수
기본 점수: 7.5 (높음)
기본 벡터: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
공격 벡터: 네트워크 (AV:N)
공격 난이도: 낮음 (AC:L)
필요 권한: 없음 (PR:N)
사용자 상호작용: 없음 (UI:N)
영향 범위: 변경사항 없음 (S:U)
기밀성 영향: 없음 (C:N)
무결성 영향: 없음 (I:N)
가용성 영향: 높음 (A:H)

전체 CVSS v3 벡터: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H/E:F/RL:O/RC:R/CR:L/IR:L/AR:H/MAV:N/MAC:L/MPR:N/MUI:N/MS:U/MC:N/MI:N/MA:H. 벡터의 각 구성 요소의 의미와 적용은 CVSS v3 명세를 참고하기 바랍니다.

CVE-2015-8027은 MITRE CVE 사전NIST NVD에 등재되었습니다.

CVE-2015-6764 V8 Out-of-bounds 접근 취약점

설명 및 CVSS 점수

Node.js v4.x와 v5.x 모든 버전에 응용 프로그램이 사용자가 제공한 자바스크립트를 실행할 수 있을 때 공격자가 out-of-bounds 접근과 서비스 거부 공격을 일으킬 수 있는 버그가 있습니다. 이 문제의 심각도는 Node.js 사용자에게 중간 수준으로 평가되었지만(아래 CVSS 점수 참고), Node.js 애플리케이션에서 사용자가 제공한 자바스크립트를 실행할 때만 공격이 가능합니다. 이 취약점에 관한 버그 픽스는 CVE-2015-8027에 관한 버그 픽스와 함께 v4.x와 v5.x 릴리스에 포함될 것입니다.

  • Node.js 0.10.x 버전은 아무런 영향이 없습니다.
  • Node.js 0.12.x 버전은 아무런 영향이 없습니다.
  • LTS Argon을 포함한 Node.js 4.x 버전은 취약할 수 있습니다.
  • Node.js 5.x 버전은 취약할 수 있습니다.

이 취약점에 관한 상세 내용은 2015년 12월 2일 수요일(UTC)(미국 시간 기준 12월 1일 화요일)에 새 버전이 릴리스되기 전까지 공개되지 않습니다.

공통 취약점 평가 체계 (CVSS) v3 기본 점수

평가 항목 점수
기본 점수: 4.4 (중간)
기본 벡터: CVSS:3.0/AV:N/AC:H/PR:H/UI:N/S:U/C:N/I:N/A:H
공격 벡터: 네트워크 (AV:N)
공격 난이도: 중간 (AC:H)
필요 권한: 높음 (PR:H)
사용자 상호작용: 없음 (UI:N)
영향 범위: 변경사항 없음 (S:U)
기밀성 영향: 없음 (C:N)
무결성 영향: 없음 (I:N)
가용성 영향: 높음 (A:H)

전체 CVSS v3 벡터: CVSS:3.0/AV:N/AC:H/PR:H/UI:N/S:U/C:N/I:N/A:H/E:U/RL:O/RC:R/CR:L/IR:L/AR:M/MAV:N/MAC:H/MPR:N/MUI:N/MS:U/MC:N/MI:N/MA:H. 벡터의 각 구성 요소의 의미와 적용은 CVSS v3 명세를 참고하기 바랍니다.

CVE-2015-6764는 MITRE CVE 사전NIST NVD에 등재되었습니다.

조치 및 업데이트

**2015년 12월 2일 수요일(UTC)**에 CVS-2015-8027과 CVE-2015-6764(v4.x와 v5.x만 해당)에 대한 버그 픽스를 탑재한 v0.12.x, v4.x, v5.x 버전이 새로 릴리스됩니다. 또한 사용자가 전체 영향 평가를 해볼 수 있도록 해당 버그에 관한 상세 사항도 새 릴리스와 함께 공개됩니다.

연락처 및 향후 업데이트

Node.js의 취약점을 보고하고 싶다면 security@nodejs.org으로 연락주시기 바랍니다.

Node.js 및 nodejs GitHub 조직에서 유지하는 프로젝트의 보안 취약점에 관한 최신 정보를 받아보고 싶다면 nodejs-sec 메일링 리스트를 구독하세요. nodejs-sec 메일링 리스트는 https://groups.google.com/forum/#!forum/nodejs-sec에서 구독 신청할 수 있습니다.

Node v0.12.8 (LTS)

이번에 릴리스한 v0.12.8은 v0.12가 안정 버전에서 LTS(Long-term Support, 장기 지원) 상태로 변하고 난 후 첫 번째 릴리스입니다. Node.js 프로젝트의 새로운 장기 지원 계획에 따르면, v0.12에 대한 장기 지원은 2015년 말까지 지속됩니다. 그 시점부터는 유지(Maintenance) 상태가 되어 관리가 중단되는 2016년 말까지 지원됩니다.

장기 지원 기간 동안 v0.12.x 릴리스는 버그 수정, 보안 업데이트, npm 업데이트(npm v2 LTS까지로 제한), 문서 업데이트, 기존 애플리케이션에 문제를 일으키지 않는 수준의 성능 개선 정도로 제한적으로 업데이트됩니다. 2015년 말부터 유지 모드가 된 후부터는 심각한 버그, 심각한 보안 픽스, 문서 업데이트 정도만 합니다.

Node.js 코어 팀은 2016년 말까지는 v0.12를 실제 제품에 사용할 수 있는 플랫폼으로 유지할 것입니다. 하지만, v0.12 버전 사용자라면 최소한 v4 LTS (Argon) 버전으로 가능한 빨리 옮길 계획을 세워두어야 합니다.

새로운 빌드 기반

이번 버전은 Node.js 재단이 운영하는 새로운 빌드 기반으로 만들어진 첫 번째 v0.12 버전입니다. 빌드 과정과 도구를 가능한 기존 기반에 가깝게 만들려고 노력했지만, 변화로 인해 몇 가지 문제점이 발생할 수도 있습니다. v0.12.7에서 v0.12.8로 업그레이드하면서 문제가 발생했다면 Node.js GitHub 저장소에 버그를 보고해주세요.

Commits

Windows 32-bit Installer: https://nodejs.org/dist/v0.12.8/node-v0.12.8-x86.msi

Windows 64-bit Installer: https://nodejs.org/dist/v0.12.8/x64/node-v0.12.8-x64.msi

Windows 32-bit Binary: https://nodejs.org/dist/v0.12.8/node.exe

Windows 64-bit Binary: https://nodejs.org/dist/v0.12.8/x64/node.exe

Mac OS X Universal Installer: https://nodejs.org/dist/v0.12.8/node-v0.12.8.pkg

Mac OS X 64-bit Binary: https://nodejs.org/dist/v0.12.8/node-v0.12.8-darwin-x64.tar.gz

Mac OS X 32-bit Binary: https://nodejs.org/dist/v0.12.8/node-v0.12.8-darwin-x86.tar.gz

Linux 32-bit Binary: https://nodejs.org/dist/v0.12.8/node-v0.12.8-linux-x86.tar.gz

Linux 64-bit Binary: https://nodejs.org/dist/v0.12.8/node-v0.12.8-linux-x64.tar.gz

SmartOS 32-bit Binary: https://nodejs.org/dist/v0.12.8/node-v0.12.8-sunos-x86.tar.gz

SmartOS 64-bit Binary: https://nodejs.org/dist/v0.12.8/node-v0.12.8-sunos-x64.tar.gz

Source Code: https://nodejs.org/dist/v0.12.8/node-v0.12.8.tar.gz

Other release files: https://nodejs.org/dist/v0.12.8/

Documentation: https://nodejs.org/docs/v0.12.8/api/

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

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

c510a03310053182b20af10e4400877421255c1a72d9c98d8ad87bb7602fcdf5  node.exe
495c1e492874bac2cdaf0bbb6507476bc33ec2b8c30799d9dc50692d4d5ab553  node.exp
60d6248a9073130e6c16ae79eafcce53acabe5565249364855242e15aa7de86b  node.lib
aa790268a830e32678a851356dc9a848b2caa26b64ccf2a897f9a63447322cc0  node.pdb
857155d09d62b59c675baf4091a4e76af0972f8c99a26259a18e3ac99575697b  node-v0.12.8-darwin-x64.tar.gz
2ec14c53fa69836caf79822b2de071659fadb2c105b1344371b404df398bad39  node-v0.12.8-darwin-x86.tar.gz
9ad0c77d0c5c2236ba42519dbd7375e9462412e812b6c60e776fcc129ef97084  node-v0.12.8-headers.tar.gz
99f9f8792850867a21caeaf12b1f84da9f64d0cf0ac602920facc0fc4b81e8b4  node-v0.12.8-linux-x64.tar.gz
b82e3b4a01f9be1f130d97cf6a8534ae727396448fb1bfeb7eb74ec58592bd88  node-v0.12.8-linux-x86.tar.gz
94c46f6418175d43b47229b57d54c25d2ed9bb9a6cd51331de0c3b7df86be1e2  node-v0.12.8.pkg
c8ca60698f99b7dc7722b94c5b4110636d08d3a20cb3df80807bd420e2c34376  node-v0.12.8-sunos-x64.tar.gz
8d9553a684b6717f0f0f2f5dcc8ed78139db50129e1402ce6033e2494c06cfd3  node-v0.12.8-sunos-x86.tar.gz
e0c96a6702978e2ed7f031315bebeb86b042e2c80e66d99af8ad864dc0e56436  node-v0.12.8.tar.gz
d9c97de01f95bd99fcb9a21dc36db1916c46db6a4b1992f235c01acc1dba8b0c  node-v0.12.8-x86.msi
4ce3651ccb4c0c3ffc968d2580ea9cd219a4697b0bd3e3c18b3e478d80402cfe  openssl-cli.exe
745e656d36508a38ec307a81f540425d3e0befa1c8614d86cdc3dcb38de2cd3c  openssl-cli.pdb
5d0455af75857a96d53593f23defb38e55706697cd638e0b442f6d7208864256  x64/node.exe
c546e1e8f21ac580c30b8ca7d1653b180b6dd9ba07cca0fd661fa5c0c432f4f4  x64/node.exp
44173c6b7b0978e28bb78b865954ec8d68a9b8843daf8586c67b520bc4f0c0a6  x64/node.lib
f5f0ba7d83ff186fed1bae22700218d406335f8a668975993c0a94ec6fc4a959  x64/node.pdb
d0b235299d85527b30f5901e059b4f56cf289b1f99d49d404b7776aa53f873f1  x64/node-v0.12.8-x64.msi
2dc5b7ceaa8ae58d77c00701d97c5d52c2d369410f94a1b3f43b4e6aa7e01c3d  x64/openssl-cli.exe
8bbc2c70d4afa149b58f60aa8ca5d835540a46bb92759b950a9d18c626db329f  x64/openssl-cli.pdb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQEcBAEBAgAGBQJWVPhlAAoJEMJzeS99g1RdJlsIAN9VwrQTaxTbUcenm2KPUMPA
1Va6Fj3BBERCTPuHxLf+XJIAz9qlMsJLRU1y7tqdzjUKDWBf5007RYY5KGmc0m0H
oKKu1lnT+jc87IAYveBD/QldXibPwCc9e0rou7iO3OUPtttXRHlSMw/tYSkzg2ba
x3E/wCQlNQmrAOrRdBd0Qzi3nlnosIWAoCMp8Hbw0TkjUD4LOq0zFCl/5AK+qnB6
jiXpSWNXTciOhRb779NmF7UHYbrdjeEhOxcLE8ODq9U4PsBZXVZKaU2rQ4Lp/CAk
wabJBZ3RQKT6okzbhlz0TbgbsjZ4VeVCpDJWVA4gBlEboXDoF9IWJ37hu+qqEaE=
=vHgI
-----END PGP SIGNATURE-----

Node.js Interactive 2015의 키노트 공개

미국 오리건 주 포틀랜드에서 2015년 12월 8일부터 9일까지 열리는 최초의 Node.js 재단 이벤트에서 GoDaddy, IBM, NodeSource, Uber 등이 키노트를 합니다.

샌프란시스코, 2015년 11월 20일 – 커뮤니티가 주도하고 기업들이 지원하는 컨소시엄으로 Node.js
플랫폼의 개발을 돕는 Node.js 재단에서
Node.js Interactive
최종 키노트와 프로그램을 공개했습니다. 이번 이벤트에서는 사물인터넷(IoT)에서 Node.js의 미래부터
커뮤니티와 기업 간의 협업까지 모든 주제에 대한 대담과 발표가 있을 예정입니다.

Node.js는 모바일, 웹, 클라우드 애플리케이션을 만드는 런타임입니다. Node.js는 다양한 기술과 기능
덕분에 개인 금융부터 로봇 공학까지 거의 모든 생태계에서 사용됩니다. 플랫폼의 변경사항과 앞으로 추가될
새로운 기능을 강조하기 위해 Node.js Interactive는 프론트엔드, 백엔드, 사물인터넷(IoT) 세 가지
트랙에 집중할 것입니다. 각 트랙에서 주목할 만한 발표는
여기
볼 수 있습니다. 전체 프로그램은
여기서 볼 수 있습니다.

Node.js Interactive에서는 차후 Node.js 개발에 도움이 될 인사이트를 얻고 팁이나 좋은 사례,
새로운 기술을 배우려는 Node.js 경험자와 초심자를 도울 수 있도록 다양한 분야의 발표자를 모집했습니다.

2015 Node.js Interactive에는 다음과 같은 키노트가 있습니다.

1일 차, 2015년 12월 8일

  • Jason Gartner, 부사장, WebSphere 재단과 IBM의 PureApplication Dev
  • James Snell, IBM의 오픈 테크놀로지, “Convergence: Evolving Node.js with Open Governance and an Open Community”
  • Joe McCann, NodeSource의 공동창업자이자 CEO, “Enterprise Adoptions Rates and How They Benefit the Community”
  • Ashley Williams, npm의 개발자 커뮤니티와 컨텐츠 관리자
  • Tom Croucher, Uber의 엔지니어 관리자, “Node.js at Uber”

2일 차, 2015년 12월 9일

  • Mikeal Rogers, Linux 재단의 Node.js 재단 커뮤니티 관리자, “Node.js Foundation Growth and Goals”
  • Danese Cooper, 기술 스태프 중 두드러진 회원 - PayPal의 오픈 소스이면서 Node.js 재단의 의장
  • Node.js 재단 기술 결정 위원회 회원과의 패널 토의

키노트외에도 Node.js 재단에서는 가장 크고 빠르게 성장하는 조직에서 어떻게 Node.js를 사용하는가에
대한 간단한 세션과 패널토의를 가질 예정입니다.

여기에는 다음과 같은 프로그램이 있습니다.

  • Robert Schultz, Ancestry의 애플리케이션 아키텍트
  • Azat Mardan, Capital One의 기술 연구원
  • Charlie Robbins, GoDaddy의 엔지니어링 UX 플랫폼 책임자
  • Chris Saint-Amant, Netflix의 UI 엔지니어랑 책임자
  • Kim Trott, Netflix의 UI 플랫폼 엔지니어링 책임자
  • Bill Scott, PayPal의 차세대 커머스(Next Generation Commerce) 부사장
  • 패널토의 - GoDaddy, Symantec, StrongLoop Inc와 함께하는 Node.js로 만드는 API
  • 패널토의 - Joyent, Ancestry, nearForm과 함께하는 Node.js와 Docker
  • 패널토의 - Condé Nast, Mic, Bloomberg와 함께하는 미디어에서의 Node.js

Node.js 재단의 커뮤니티 관리자인 Mikeal Rogers는 "Node.js Interactive의 발표자와 세션은
초심자든 전문가든 상관없이 Node.js에 빠져들기에 좋은 방법입니다."라며 "커뮤니티와 함께하며 Node.js
기술의 미래에 관해 배우고 공유하고 더 잘 이해하기도 좋은 방법이죠. 이번 이벤트의 케이스 스터디,
키노트, 세션은 기업 시장에서 Node.js가 얼마나 빠르게 성장하고 있는지 보여줍니다."라고 말했습니다.

정식 등록은 2015년 11월 27일에 종료되고 이후부터는 컨퍼런스 참가 비용이 $425에서 $525로 오를
것입니다. 등록하려면
https://www.regonline.com/Register/Checkin.aspx?EventID=1753707
방문하세요.

Node.js Interactive는 플래티넘 스폰서사인 IBM, 골드 스폰서사인 Joyent, Microsoft,
Modulus Inc., Red Hat, 실버 스폰서사인 NodeSource, nearForm, npm과 Synchro
덕에 열릴 수 있었습니다.

추가 자료

Node.js 재단에 대해

Node.js 재단은 Node.js 플랫폼과 그 외 관련 모듈을 만들고 지원하는데 집중하는 협업 오픈 소스
프로젝트입니다. Node.js는 매달 2백만 건 이상의 다운로드가 이뤄지고 200여개국의 수만 개의 회사에서
사용되고 있고 엔터프라이즈 애플리케이션, 로봇, API 엔진, 클라우드 스택, 모바일 웹사이트의 모든 것을
운영하는 고성능, 저지연 애플리케이션의 런타임입니다. 재단은 플래티넘 회원사인 Famous, IBM, Intel,
Joyent, Microsoft, PayPal과 골드 회원사인 GoDaddy, NodeSource, Modulus/Progress
Software, 실버 회원사인 Apigee, Codefresh, DigitalOcean, Fidelity, Groupon,
nearForm, npm, Sauce Labs, SAP, StrongLoop, YLD를 포함한 다양한 회사로 구성되었습니다!
참여하려면 http://nodejs.org를 방문하세요.
Node.js 재단은 Linux 재단 산하의 협업 프로젝트(Collaborative Project)입니다. Linux 재단
협업 프로젝트는 협업 개발의 힘을 이용해 산업과 생태계 전반에 걸친 혁신을 돕기 위한 소프트웨어 프로젝트로
독립적으로 투자를 받습니다. https://nodejs.org/en/foundation/

Node.js 주간 뉴스 2015년 11월 20일

Node.js 뉴스 - 11월 20일

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

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

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

주요 변경 사항

  • 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에서 v3.3.12로 업그레이드 했습니다. (Rebecca Turner) #3685

npm, 기관을 위한 비공개 패키지 발표

  • npm이 기관을 위한 비공개 패키지를 릴리스했습니다.
  • 이번 릴리스를 통해 팀에서는 비공개 npm 패키지를 더 효율적으로 사용할 수 있습니다.
  • 이 기능은 다양한 권한과 여러 프로젝트로 개발팀을 관리하는 기업을 위한 것입니다.

Node 기반의 오픈소스 Visual Studio Code

  • 마이크로소프트가 Visual Studio Code를 오픈소스로 공개했는데, 상당 부분 TypeScript와 Node로 작성되었습니다.
  • Visual Studio Code는 Electron을 기반으로 작성되었습니다. Electron은 Node.js 애플리케이션을 Blink 레이아웃 엔진 기반의 데스크톱 환경에서 실행할 때 사용하는 프레임워크입니다.

자세한 정보는 https://github.com/Microsoft/vscode를 참고하세요.

NodeUp

  • NodeUp 95: Rod Vagg, Alexis Campailla, João Reis, Hans Kristian Flaatten과 함께 하는 Build/CI 쇼.

커뮤니티 업데이트

다가오는 이벤트

  • NodeConf Barcelona, 11월 21일 스페인 바르셀로나에서 열립니다.
  • CampJS VI, 11월 20일부터 23일까지 오스트레일리아 퀸즐랜드에서 열립니다.
  • Node.js Interactive, 12월 8일부터 9일까지 미국 포틀랜드에서 열립니다.

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

Node v5.1.0(안정 버전)

주요 변경 사항

  • buffer: noAssert 옵션이 켜진 상태에서 버퍼 함수를 실행할 때 잘못된 쓰기 값을 만나면 강제 종료되는 대신 잘못된 값을 조용히 무시합니다. (P.S.V.R) #3767
    • 이제 문서에 서술된 대로 동작합니다.
  • child_process: child.send()가 문서에 기술된 것처럼 불리언 값을 적절하게 반환합니다. (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에서 v3.3.12로 업그레이드 했습니다. (Rebecca Turner) #3685
  • repl: 이제 이력 저장(persistent history) 파일을 열 수 없어도 REPL이 강제 종료되지 않습니다. (Evan Lucas) #3630
  • tls: sessionIdContext의 기본값이 FIPS 모드에서는 MD5 대신 SHA1을 사용하도록 변경됐습니다. (Stefan Budeanu) #3755
  • v8: 몇 가지 유용한 검사용 데이터를 추가했습니다. (Fedor Indutny) #3779

알려진 이슈

  • REPL에 입력된 서로게이트 페어가 터미널을 얼릴 수 있습니다. #690
  • DNS 질의 진행 중에 호출된 dns.setServers()가 단언문 실패로 프로세스를 크래시시킬 수 있습니다. #894
  • url.resolve가 다른 두 호스트 사이를 해석하는 중 URL의 인증 정보 부분을 교환할 수 있습니다. #1435.
  • 파일 시스템 경로의 유니코드 문자를 플랫폼이나 Node.js 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 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) #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] - Revertsrc: 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: enforce throw new Error() with lint rule (Rich Trott) #3714
  • [38bb0d864e] - tools: Use throw 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):

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

Node.js 주간 뉴스 2015년 11월 13일

Node.js 뉴스 - 11월 13일

Node.js 재단 개인 회원 모집

  • 리눅스 재단의 지원 덕분에 개인 회원 프로그램을 열 수 있게 됐습니다.
  • 개인 회원은 Node.js 재단 경영진에서 Node.js 커뮤니티의 다양한 요구 사항을 대표하는 대표 2명을 오는 1월에 선출합니다.

자세한 내용은 https://nodejs.org/en/blog/community/individual-membership/ 페이지를 참고하세요.

샌프란시스코 Node 미트업

커뮤니티 업데이트

다가오는 이벤트

  • JSConf.Asia, 11월 19일부터 20일까지 싱가포르에서 열립니다.
  • NodeConf Barcelona, 11월 21일 스페인 바르셀로나에서 열립니다.
  • CampJS VI, 11월 20일부터 23일까지 오스트레일리아 퀸즐랜드에서 열립니다.
  • Node.js Interactive, 12월 8일부터 9일까지 미국 포틀랜드에서 열립니다.

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

Node.js 주간 뉴스 2015년 11월 06일

Node.js 뉴스 - 11월 6일

Node.js v4.2.2 (LTS) 릴리스

Node.js v4.2.2 (LTS) 릴리스

이번 주에는 Node.js v4.2.2 (LTS) 릴리스가 있었습니다. 이전 버전의 전체 변경사항은 GitHub에서 확인할 수 있습니다.

주요 변경사항

이 릴리스는 장기 지원(LTS) 유지 버전이며 다음과 같은 이슈를 다루고 있습니다.

  • [1d0f2cbf87] - buffer: writeInt{B,L}E의 값 확인 부분을 수정했습니다 (Trevor Norris) #3500
  • [2a45b72b4a] - buffer: 크기가 없는(zero-sized) realloc은 확인하지 않습니다 (Ben Noordhuis) #3499

NodeUp 팟캐스트

  • 이번 주에는 NodeUp 팟캐스트 에피소드 93과 94가 나왔습니다. http://nodeup.com/ninetythree, http://nodeup.com/ninetyfour.
  • 이번 팟캐스트의 주제는 “Kat Marchán, James Snell, Rich Trott과 함께하는 LTS 쇼”, "Dan Shaw, Mikeal Rogers, Kassandra Perch와 함께하는 Node.js 인터랙티브 쇼"입니다.

커뮤니티 업데이트

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

다가오는 이벤트

  • NodeFest, 11월 7일 일본 도쿄에서 열립니다.
  • Node Knockout, 11월 7일부터 8일까지 전 세계에서 열립니다.
  • Node Girls London, 11월 7일 영국 런던에서 열립니다.
  • Playnode, 11월 12일 대한민국 서울에서 열립니다.
  • Nodevember, 11월 14일부터 15일까지 미국 Tennessee의 Nashville에서 열립니다.
  • JSConf.Asia, 11월 19일부터 20일까지 싱가포르에서 열립니다.
  • NodeConf Barcelona, 11월 21일 스페인 바르셀로나에서 열립니다.
  • CampJS VI, 11월 20일부터 23일까지 오스트레일리아 퀸즐랜드에서 열립니다.
  • Node.js Interactive, 12월 8일부터 9일까지 미국 포틀랜드에서 열립니다.

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

Node.js 재단 개인 회원 모집

Node.js 재단은 회원이 지원하는 조직입니다. 지금까지 20개가 넘는 기업이 회원으로 가입하여 재단이 번창하는 데 필요한 재정적인 지원을 해주었습니다.

리눅스 재단의 지원 덕분에 개인 회원 프로그램도 열 수 있게 됐습니다. 개인 회원은 Node.js 재단 경영진에서 Node.js 커뮤니티의 다양한 요구 사항을 대표하는 대표 2명을 오는 1월에 선출합니다.

회원은 어떻게 될 수 있나요?

회원비는 연간 $100이며, 학생은 $25입니다.
워킹 그룹, 하위 프로젝트를 포함한 Node.js 프로젝트의 공헌자는 무료로 회원 자격을 가질 수 있습니다.

이사회는 누가 운영할 수 있나요?

등록된 회원이라면 누구든지 가능합니다.

모든 이사회 회의는 정족수를 충족시켜야 결의안 통과가 가능하므로 정기적이고 꾸준하게 참여할 수 있는 사람만 운영하려 해야 합니다.

이사회 회의에서는 무슨 일을 하나요?

매달 이루어지는 이사회 회의에서는 Node.js 재단 관리 사항을 논의하고 이에 관한 결의안을 승인합니다.
재단이 주최하는 콘퍼런스나 이니셔티브에 관한 법적인 사안, 예산, 인가 등도 회의 내용에 포함됩니다.
기술 거버넌스는 이사회가 아니라 기술 결정 위원회에서 감독합니다.

현 이사회의 구성은 여기에서 볼 수 있습니다.

임기는 얼마나 되나요?

개인 회원이 선출한 대표의 임기는 2년입니다. 매해 선거를 통해 새 대표를 한 명 뽑을 때 임기를 새로이 정할 수 있습니다.

다만 첫 번째 선거에서는 대표가 두 명 선출됩니다. 득표율이 가장 높은 대표의 임기는 2년이 될 것이며, 다른 대표의 임기는 1년이 될 것입니다. 따라서 2017년에는 2년 단임제 이사를 새롭게 한 명 선출합니다.

선거는 언제 하나요?

  • 1월 15일까지 후보 신청을 받습니다.
  • 1월 20일까지 투표용지가 배부됩니다.
  • 1월 30일까지 선거를 완료합니다.

2016년 선거에는 어떻게 참여할 수 있나요?

회원으로 등록한 후에 여기에 있는 안내를 따르면 됩니다.

Node v4.2.2 (LTS)

주요 변경 사항

많은 이슈를 해결한 LTS 유지 관리 릴리스입니다:

  • [1d0f2cbf87] - buffer: writeUInt{B,L}E를 위한 값 검사 부분을 수정했습니다. (Trevor Norris) #3500
  • [2a45b72b4a] - buffer: 크기 0의 realloc를 검사하지 않습니다. (Ben Noordhuis) #3499
  • [a6469e901a] - deps: V8에서 010897c 백포트 (Ali Ijaz Sheikh) #3520
  • [cadee67c25] - deps: V8에서 8d6a228 백포트 (Fedor Indutny) #3549
  • [46c8c94055] - fs: fs.write()에서 중복 코드를 제거했습니다. (ronkorving) #2947
  • [0427cdf094] - http: 정체된 파이프라인 버그를 수정했습니다. (Fedor Indutny) #3342
  • [2109708186] - lib: 클러스터 처리 시 발생하는 누수를 수정했습니다. (Rich Trott) #3510
  • [f49c7c6955] - lib: 완료 오류에서 REPL이 종료되지 않도록 수정했습니다. (Rich Trott) #3358
  • [8a2c4aeeaa] - repl: 주석을 적절하게 다룹니다. (Sakthipriyan Vairamani) #3515
  • [a04408acce] - repl: 로드 시 지속적인 기록을 제한합니다. (Jeremiah Senkpiel) #2356
  • [3bafe1a59b] - src: 종료 시 디버그 신호에서 발생하는 경쟁 조건을 수정했습니다. (Ben Noordhuis) #3528
  • [fe01d0df7a] - src: Windows에서 예외 메시지 인코딩을 수정했습니다. (Brian White) #3288
  • [4bac5d9ddf] - stream: 단일 버퍼의 불필요한 concat를 피합니다. (Calvin Metcalf) #3300
  • [8d78d687d5] - timers: setTimeout().unref()에서 타이머를 재사용합니다. (Fedor Indutny) #3407
  • [e69c869399] - tls: TLSSocket 옵션 중 isServer의 기본값은 false입니다. (Yuval Brik) #2614

알려진 이슈

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

Commits

  • [1d0f2cbf87] - buffer: fix value check for writeUInt{B,L}E (Trevor Norris) #3500
  • [2a45b72b4a] - buffer: don’t CHECK on zero-sized realloc (Ben Noordhuis) #3499
  • [dc655e1dd2] - build: rectify --link-module help text (P.S.V.R) #3379
  • [a6469e901a] - deps: backport 010897c from V8 upstream (Ali Ijaz Sheikh) #3520
  • [cadee67c25] - deps: backport 8d6a228 from the v8’s upstream (Fedor Indutny) #3549
  • [1ebd35550b] - doc: fix typos in changelog (reggi) #3291
  • [fbd93d4c1c] - doc: more use-cases for promise events (Domenic Denicola) #3438
  • [6ceb9af407] - doc: remove old note, ‘cluster’ is marked stable (Balázs Galambosi) #3314
  • [a5f0d64ddc] - doc: createServer’s key option can be an array (Sakthipriyan Vairamani) #3123
  • [317e0ec6b3] - doc: binary encoding is not deprecated (Trevor Norris) #3441
  • [b422f6ee1a] - doc: mention the behaviour if URL is invalid (Sakthipriyan Vairamani) #2966
  • [bc29aad22b] - doc: fix indent in tls resumption example (Roman Reiss) #3372
  • [313877bd8f] - doc: fix typo in changelog (Timothy Gu) #3353
  • [4be432862a] - doc: show keylen in pbkdf2 as a byte length (calebboyd) #3334
  • [23a1140ddb] - doc: add information about Assert behavior and maintenance (Rich Trott) #3330
  • [e04cb1e1fc] - doc: clarify API buffer.concat (Martii) #3255
  • [eae714c370] - doc: clarify the use of option.detached (Kyle Smith) #3250
  • [b884899e67] - doc: label v4.2.1 as LTS in changelog heading (Phillip Johnsen) #3360
  • [9120a04981] - docs: add missing shell option to execSync (fansworld-claudio) #3440
  • [46c8c94055] - fs: reduced duplicate code in fs.write() (ronkorving) #2947
  • [0427cdf094] - http: fix stalled pipeline bug (Fedor Indutny) #3342
  • [2109708186] - lib: fix cluster handle leak (Rich Trott) #3510
  • [f49c7c6955] - lib: avoid REPL exit on completion error (Rich Trott) #3358
  • [8a2c4aeeaa] - repl: handle comments properly (Sakthipriyan Vairamani) #3515
  • [a04408acce] - repl: limit persistent history correctly on load (Jeremiah Senkpiel) #2356
  • [5d1f1c5fa8] - src: wrap source before doing syntax check (Evan Lucas) #3587
  • [3bafe1a59b] - src: fix race condition in debug signal on exit (Ben Noordhuis) #3528
  • [fe01d0df7a] - src: fix exception message encoding on Windows (Brian White) #3288
  • [4bac5d9ddf] - stream: avoid unnecessary concat of a single buffer. (Calvin Metcalf) #3300
  • [117fb47a16] - stream: fix signature of _write() in a comment (Fábio Santos) #3248
  • [c563a34427] - test: split independent tests into separate files (Rich Trott) #3548
  • [3f62952d42] - test: add node::MakeCallback() test coverage (Ben Noordhuis) #3478
  • [6b75f10d8a] - test: use port number from env in tls socket test (Stefan Budeanu) #3557
  • [39ff44e94f] - test: fix heap-profiler link error LNK1194 on win (Junliang Yan) #3572
  • [a2786dd408] - test: fix missing unistd.h on windows (Junliang Yan) #3532
  • [5e6f7c9a23] - test: add regression test for --debug-brk -e 0 (Ben Noordhuis) #3585
  • [7cad182cb6] - test: port domains regression test from v0.10 (Jonas Dohse) #3356
  • [78d854c6ce] - test: remove util from common (Rich Trott) #3324
  • [c566c8b8c0] - test: remove util properties from common (Rich Trott) #3304
  • [eb7c3fb2f4] - test: split up buffer tests for reliability (Rich Trott) #3323
  • [b398a85e19] - test: parallelize long-running test (Rich Trott) #3287
  • [b5f3b4956b] - test: change call to deprecated util.isError() (Rich Trott) #3084
  • [32149cacb5] - test: improve tests for util.inherits (Michaël Zasso) #3507
  • [5be686fab8] - test: print helpful err msg on test-dns-ipv6.js (Junliang Yan) #3501
  • [0429131e32] - test: fix domain with abort-on-uncaught on PPC (Julien Gilli) #3354
  • [788106eee9] - test: cleanup, improve repl-persistent-history (Jeremiah Senkpiel) #2356
  • [ea58fa0bac] - test: add Symbol test for assert.deepEqual() (Rich Trott) #3327
  • [d409ac473b] - test: disable test-tick-processor - aix and be ppc (Michael Dawson) #3491
  • [c1623039dd] - test: harden test-child-process-fork-regr-gh-2847 (Michael Dawson) #3459
  • [3bb4437abb] - test: fix test-net-keepalive for AIX (Imran Iqbal) #3458
  • [af55641a69] - test: wrap assert.fail when passed to callback (Myles Borins) #3453
  • [7c7ef01e65] - test: skip test-dns-ipv6.js if ipv6 is unavailable (Junliang Yan) #3444
  • [a4d1510ba4] - test: repl-persistent-history is no longer flaky (Jeremiah Senkpiel) #3437
  • [a5d968b8a2] - test: fix flaky test-child-process-emfile (Rich Trott) #3430
  • [eac2acca76] - test: remove flaky status from eval_messages test (Rich Trott) #3420
  • [155c778584] - test: fix flaky test for symlinks (Rich Trott) #3418
  • [74eb632483] - test: apply correct assert.fail() arguments (Rich Trott) #3378
  • [0a4323dd82] - test: replace util with backtick strings (Myles Borins) #3359
  • [93847694ec] - test: add test-child-process-emfile fail message (Rich Trott) #3335
  • [8d78d687d5] - timers: reuse timer in setTimeout().unref() (Fedor Indutny) #3407
  • [e69c869399] - tls: TLSSocket options default isServer false (Yuval Brik) #2614
  • [0b32bbbf69] - v8: pull fix for builtin code size on PPC (Michael Dawson) #3474

Windows 32-bit Installer: https://nodejs.org/dist/v4.2.2/node-v4.2.2-x86.msi

Windows 64-bit Installer: https://nodejs.org/dist/v4.2.2/node-v4.2.2-x64.msi

Windows 32-bit Binary: https://nodejs.org/dist/v4.2.2/win-x86/node.exe

Windows 64-bit Binary: https://nodejs.org/dist/v4.2.2/win-x64/node.exe

Mac OS X 64-bit Installer: https://nodejs.org/dist/v4.2.2/node-v4.2.2.pkg

Mac OS X 64-bit Binary: https://nodejs.org/dist/v4.2.2/node-v4.2.2-darwin-x64.tar.gz

Linux 32-bit Binary: https://nodejs.org/dist/v4.2.2/node-v4.2.2-linux-x86.tar.gz

Linux 64-bit Binary: https://nodejs.org/dist/v4.2.2/node-v4.2.2-linux-x64.tar.gz

SunOS 32-bit Binary: https://nodejs.org/dist/v4.2.2/node-v4.2.2-sunos-x86.tar.gz

SunOS 64-bit Binary: https://nodejs.org/dist/v4.2.2/node-v4.2.2-sunos-x64.tar.gz

ARMv6 32-bit Binary: https://nodejs.org/download/release/latest-v4.x/node-v4.2.2-linux-armv6l.tar.gz

ARMv7 32-bit Binary: https://nodejs.org/dist/v4.2.2/node-v4.2.2-linux-armv7l.tar.gz

ARMv8 64-bit Binary: https://nodejs.org/dist/v4.2.2/node-v4.2.2-linux-arm64.tar.gz

Source Code: https://nodejs.org/dist/v4.2.2/node-v4.2.2.tar.gz

Other release files: https://nodejs.org/dist/v4.2.2/

Documentation: https://nodejs.org/docs/v4.2.2/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
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

17e60f59cfd40bd0a74f62106dfe2d6cf14aea53490c5e872fa7530138d0dfef node-v4.2.2-darwin-x64.tar.gz
949fe7a06e097e1f1b15196020e4c0ef5f132b146b000811e59513de9d22a9ef node-v4.2.2-darwin-x64.tar.xz
787a89963b9b0ea41f7d4964705ed3561d16d023e1b5aae80700f973ba7ec4e7 node-v4.2.2-headers.tar.gz
663c5a6fdc2c6abab7e8e528299f414a75b544d775c43aef2303272c8a3560bf node-v4.2.2-headers.tar.xz
125b2236da6c0c7fed39b6652b3867646200c3fe7c9284df3f8ac07a84d39010 node-v4.2.2-linux-arm64.tar.gz
d51b08a018f91440658b077c7ea92296516208f008df66cebfc882086be9e2b0 node-v4.2.2-linux-arm64.tar.xz
dfe30ab4dbfb66c31259c0b176609f2dbace29f03d3cf12c5d8bee3dd25db035 node-v4.2.2-linux-armv6l.tar.gz
35015424950ec585f4c4f882f0433bd2b64111020c59075d4de19b34d1990a97 node-v4.2.2-linux-armv6l.tar.xz
2170dea2d74b6a1c5c82be6b93a9b84ad5a78cafa47415661095be2b358d964a node-v4.2.2-linux-armv7l.tar.gz
7ce4aa955d98a1023b13c11175a8381db78fac0ea91d69ad9ec48f7f16993eec node-v4.2.2-linux-armv7l.tar.xz
5c39fac55c945be3b8ac381a12bdbe3a64a9bdc5376d27e2ce0c72160eff5942 node-v4.2.2-linux-x64.tar.gz
8e08eb5da9d2ea14c5dcf268a09725f0e44ba3f03b2c549949a827f97f893611 node-v4.2.2-linux-x64.tar.xz
7fe7d716cf52db39fa0590885e2f39a0bdee9ecbba230621f042c8154e8100fe node-v4.2.2-linux-x86.tar.gz
5b8e8a25faad1d4600c695df9887b6925eff8a9bb9151576f845fb3ab7e01fd2 node-v4.2.2-linux-x86.tar.xz
0b2ca2deecfeb37d23745c374c2332a11b291b58df8b39803c27b089c16bb1d2 node-v4.2.2.pkg
23d47dee4057a4105c53158b07c2362ad0e962332e9a939c841de9867e541da3 node-v4.2.2-sunos-x64.tar.gz
5dff7b74011335176af73e845e0f0aff2b21fb72e472bfa961c0269e0b7554c9 node-v4.2.2-sunos-x64.tar.xz
ed69c2a73a55100c044ae16f244119e889d502722ada7df8640793c1fb1a5195 node-v4.2.2-sunos-x86.tar.gz
9c433f01cb09f3bcd8a10646195bbe5b408bf329ca5e87b68477bcb590002968 node-v4.2.2-sunos-x86.tar.xz
00e709353435b436b5bbf5e62272ebb15fe801065422c4c2afe2b93456210cb1 node-v4.2.2.tar.gz
b016c3d2f434f86d8d3da9ad90ffb2fd35b32223e9081e3d4f67b8de0370ce69 node-v4.2.2.tar.xz
aee3b5506adcef036b5db4d2cbc978fe4de5786cdd4803fc65305482904c26fe node-v4.2.2-x64.msi
84dcb146c2eef134643d47f9f772a6a3a84c5bb8d254cef223cb4df43698b7c9 node-v4.2.2-x86.msi
56b7acccf89d073b7e71ef73b19fcb02bc7ac23f3222528f1d36c0c83c114c9a win-x64/node.exe
e73cbd09bac9338df5f5aea804358e36ae33af1a1664f1d9c6d6161801e3147c win-x64/node.lib
ca722e26b0edc14043085e1a7794b1281b4cfacd11ae00a96d9009e97d8ecb0b win-x86/node.exe
238388ba03873b40988e37a5f83867f9fb6dbe51a1c9f85e5fc371f555a3f648 win-x86/node.lib
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org

iQEcBAEBCgAGBQJWORyQAAoJEHNBsVwHCHesJfMH/19SGfkAjguPYgfprKyG32jZ
rE9slmg0pz+VGEJCv+yepgvRBHfu0w9sxZ/TjBHg2ioh4ZgWNoLrZcTNmYvaqY/K
ifyLeoDcOSoXbYmqw8vZvKbGTpS7p10Bi9cNfr49YiE814RbdRulIDqKlcymxYIt
vecnX+X/ZiFBipIDmak1n582dikmFe5gPvwx5vCydKCo89l7Ja7XCLy484cEkQo/
aRHI0dnjwcC7+/EBXBhpGAM42ls4AcN5FtuUKgpUT609rcH0Z4SwKW3CShU3nDO1
IecVUMtE1G8uy4dmCFozpA2IXzGSoNSGIEWYAWNDbc8JtPMRyBhcBOUDox2utjY=
=0leN
-----END PGP SIGNATURE-----