Node v7.7.1(현재 버전)

주요 변경사항

Node.js 7.7.0에는 네이티브 모듈을 읽어 들이지 못하는 버그가 있습니다. 이 패치는 해당 문제를 수정합니다. 7.7.0 버전의 영향을 받은 분들에게 사과드립니다.

Commits

  • [c8e34b61f6] - build: add missing src/tracing header files (Daniel Bevenius) #10851
  • [96f55f9e59] - src: move trace_event.h include to internal header (Ben Noordhuis) #10959
  • [30c80cbe6f] - src: fix TracingController cleanup (Jason Ginchereau) #10623
  • [b89b2a7d36] - src: always initialize tracing controller in agent (Matt Loring) #10507
  • [54e55e05ca] - test: make test-intl-no-icu-data more robust (Michaël Zasso) #10992
  • [7b253eb3ed] - test: increase strictness for test-trace-event (Rich Trott) #11065
  • [3dc4a5f1f4] - tracing: fix -Wunused-private-field warning (Santiago Gimeno) #10416
  • [8a918bf411] - tracing: fix -Wreorder warning (Santiago Gimeno) #10416

Windows 32-bit Installer: https://nodejs.org/dist/v7.7.1/node-v7.7.1-x86.msi
Windows 64-bit Installer: https://nodejs.org/dist/v7.7.1/node-v7.7.1-x64.msi
Windows 32-bit Binary: https://nodejs.org/dist/v7.7.1/win-x86/node.exe
Windows 64-bit Binary: https://nodejs.org/dist/v7.7.1/win-x64/node.exe
macOS 64-bit Installer: https://nodejs.org/dist/v7.7.1/node-v7.7.1.pkg
macOS 64-bit Binary: https://nodejs.org/dist/v7.7.1/node-v7.7.1-darwin-x64.tar.gz
Linux 32-bit Binary: https://nodejs.org/dist/v7.7.1/node-v7.7.1-linux-x86.tar.xz
Linux 64-bit Binary: https://nodejs.org/dist/v7.7.1/node-v7.7.1-linux-x64.tar.xz
Linux PPC LE 64-bit Binary: https://nodejs.org/dist/v7.7.1/node-v7.7.1-linux-ppc64le.tar.xz
Linux PPC BE 64-bit Binary: https://nodejs.org/dist/v7.7.1/node-v7.7.1-linux-ppc64.tar.xz
Linux s390x 64-bit Binary: https://nodejs.org/dist/v7.7.1/node-v7.7.1-linux-s390x.tar.xz
AIX 64-bit Binary: https://nodejs.org/dist/v7.7.1/node-v7.7.1-aix-ppc64.tar.gz
SunOS 32-bit Binary: https://nodejs.org/dist/v7.7.1/node-v7.7.1-sunos-x86.tar.xz
SunOS 64-bit Binary: https://nodejs.org/dist/v7.7.1/node-v7.7.1-sunos-x64.tar.xz
ARMv6 32-bit Binary: Coming soon
ARMv7 32-bit Binary: https://nodejs.org/dist/v7.7.1/node-v7.7.1-linux-armv7l.tar.xz
ARMv8 64-bit Binary: https://nodejs.org/dist/v7.7.1/node-v7.7.1-linux-arm64.tar.xz
Source Code: https://nodejs.org/dist/v7.7.1/node-v7.7.1.tar.gz
Other release files: https://nodejs.org/dist/v7.7.1/
Documentation: https://nodejs.org/docs/v7.7.1/api/

SHASUMS

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
48
49
50
51
52
53
54
55
56
57
58
59
60
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

c6ae32c741a007b443092a85f5dfd5b244a1c9eaf3f0cc27052d3d2017019953 node-v7.7.1-aix-ppc64.tar.gz
b554032d488fdabb6ec9753fa2841bdf074808203595454c1fe480a9ce7dc068 node-v7.7.1-darwin-x64.tar.gz
0e9fbc473e3deb1274f979dc8447519b00f673611d4ee9d78c3c04ab08ded34d node-v7.7.1-darwin-x64.tar.xz
65c6173d4e3a94a22f1bbbe3b69104d9c6134289d2417d857f958ef635159805 node-v7.7.1-headers.tar.gz
277c32f5f45c15a4f1f1aa08007dcf333413f3a1dc39cf989226a1c0420395d2 node-v7.7.1-headers.tar.xz
3eb8d507eaa4ea1e01b863d95c268e0d55b780563696867d682adbad968cc18e node-v7.7.1-linux-arm64.tar.gz
a130783c14d8487b5905d49bcffba9396e19276cd1cd86b376ba2a9a55c385e2 node-v7.7.1-linux-arm64.tar.xz
6521ac2d6188256a92ffe6be8af37ae4c1dc8f3e155dec7c932d6c09d752c87d node-v7.7.1-linux-armv7l.tar.gz
343b105f3b1f9fb63dfb3272b1018f6f13f3ff5194b09bf454985cd4b0011bad node-v7.7.1-linux-armv7l.tar.xz
f1e6fc224349aee3715b603a3fbe9f3ff1a386cede4def0590a4935e26880674 node-v7.7.1-linux-ppc64le.tar.gz
42d1c80a5f6dc057c50bbc01ef60588d6d4f320683f985367674de362f0be88e node-v7.7.1-linux-ppc64le.tar.xz
23416b1c1eb23c8c7dd8698d5e537d1f88bb1b7c1dd90563359b6e59de20b2a0 node-v7.7.1-linux-ppc64.tar.gz
203bfe4533c3210872416babc915ed913ea4eef7fb83cd5ff315e3221eedb0ac node-v7.7.1-linux-ppc64.tar.xz
949530ca9051e0e009914a14b675634a87908fbaa74cba36df7a7b937eeefe7b node-v7.7.1-linux-s390x.tar.gz
f06cd6f8d4d87d74af62747c67a62a900724d198440371d4687ab462915dc6fd node-v7.7.1-linux-s390x.tar.xz
26524c315f20062d625410357415e1b5069cabedfe51ebb3a0c7ad5d01420068 node-v7.7.1-linux-x64.tar.gz
b5a88d7b2dd0d116fdcad5767521cb1a17672405ccb1c341c351d8315c1f9db2 node-v7.7.1-linux-x64.tar.xz
9a61259bfb85b5a1a9cb12ae607af94d00bee170de58f84d751993eb9728fda2 node-v7.7.1-linux-x86.tar.gz
6cf12d0c8e1da5882f8efcf7f8f6b72cd101fc54e34f18c357e0681fdd2c25f7 node-v7.7.1-linux-x86.tar.xz
f90287cc460ec5db85a645e7e2d93c054e0a5c8a142384e42b3d81a2c875374e node-v7.7.1.pkg
06924e708a4349a3d440d111f5d76985ad232332f64f72bcb0538e3e5a0780b8 node-v7.7.1-sunos-x64.tar.gz
b75c9a6b07883f07b95a3cfa91d8f15d53aee66d4c1d7be788dc03939e109485 node-v7.7.1-sunos-x64.tar.xz
2090d64748defed4c5d67272b496311a7ddff5517098d51404847a408a43f1e6 node-v7.7.1-sunos-x86.tar.gz
847ae98b01aab5d4a3a9dff96d01c24c7c6aac4d1435cb840d79e15339674781 node-v7.7.1-sunos-x86.tar.xz
9e87ec5420d558ca9651d13b10dd4a1be954fea0fc7a909016a1cc4aedfa651c node-v7.7.1.tar.gz
965fc82aa767223be574e41d7f78ec4bd2ab3da619cef1256e46c30d053b7611 node-v7.7.1.tar.xz
b17cae9092d3c8e23d5977b9740059c14076ca8defda4dabe7242156a3466126 node-v7.7.1-win-x64.7z
d907f7cd20aff2e9ae087b0293b9c85ad3a61ea6ae6b1bdaa8f40696a6347878 node-v7.7.1-win-x64.zip
9f307a3a975eeedb7fb930e474e0e4c8350569bb3e4f96208572aae2bd0add2a node-v7.7.1-win-x86.7z
2bd6d27c2fb4b708e88d976eeb4c15bb059de468e943d08ddec10ccf432b6122 node-v7.7.1-win-x86.zip
283a71889531f942664967e91e554036deb53effbbca663b8e5c079045cd6be6 node-v7.7.1-x64.msi
9947a4b357f9d0300bbc4310c74d2444b5cb31f95fff7706386a67417ade00d8 node-v7.7.1-x86.msi
f6ca56c1d659354d8a41fa3d5e13ae1be2be950bc890b6ee79274949bef1c33c win-x64/node.exe
823dc13ecd98fe5aa3ccf27ffd7eaf015c1244f005d2d755d7126c50426bee6b win-x64/node.lib
eb94364ad62c661ef62a306fa0eb9789f57d5cbaa5f2cd25ec5c395f1bf1a892 win-x64/node_pdb.7z
0b634161a40048d89fae2276828358426d8a4541394a5cea0a1a1ce97d8865ff win-x64/node_pdb.zip
95e2ac059dd687a9c1079bda0b38761c6e8078edfdf6fe84d12477f2319d75a7 win-x86/node.exe
0445a2d3ecf702f6ddbe5fc05c307109cf4630537f1daa3e56efb549ef233a01 win-x86/node.lib
1b17d0b8e5dbf0e8eeb14b0f3d0bc11f98bfa9f241f3eee8536434231ab35bc1 win-x86/node_pdb.7z
505c0a62435610c94722ce9364d3571186a5e1ffb0d254793951d66ccf8bbd2c win-x86/node_pdb.zip
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCAAGBQJYt20CAAoJECPv7+k8TP/+woIQALVWbo5PO9HHv+2siZ8W+V41
YV4FnWOGdrKx+68boq0EsrKCRbXKS3Ff9uOschJSIA++qgDVn9c4ktBeJUcliDLM
0MUD6B9ig93OY2pFfKzMsK+Yi1iQXQ3RlOb0HYcmvJ6Twl7ScAJ2/MDtn0CGd+b7
AkxT6KMT8H0Q/54QhkL9gfj3H2BYQ2WVm0JWM4JzooAWuTaj2YmFJCP6Q/LIjeh8
k3tT0PTjx8xoJaqZ7SnyZPe9kb1S7V1hEDUWdJIzNFHj+eJyv1vZFKxDFqq0m0TS
FaeRu2bWhNkx2eUEfpyiqFLJg7dYzUfU+IyO1NM3fI+j9JunKHHL5uZfm8EIySNl
WdOTsOoH1ZsLBr8euYxTkmM3M0AHxAoi1o+Ci6S6+vww40VsuzxBMWWm1kKmGqM6
Ju1ogf4IMRB9hwO7Be0iophC45SccEPwRZy9zmAIKQh6SuWU33QzaBG423BkZXrB
/x8G6DV9V2o1yMcZkeXSDwqJe4W9fD4u0y8RijPlpy1O52D1t85qJhPeHdHK9DPU
HwkHkLEesPhQ+0Adh7YW2dzcx4d96OYQWNnvG+VDIZhGQDifxfyt7CBHOCeHpBwd
eeGrs9tjmCwZ1zTmDs9NL7XEbnUdRVdgJoa/uMH1TnCcpi5PsOpb/oECSjTMijbz
gonT40S1UAjehUFI4rGz
=bq8w
-----END PGP SIGNATURE-----

Node v7.7.0(현재 버전)

이 릴리스에 관하여

이번 릴리스에는 네이티브 모듈을 읽어 들이지 못하는 버그가 있습니다.

패치 릴리스 7.7.1 버전이 곧 배포될 예정입니다.

이 문제에 관한 자세한 내용은 해당 이슈를 확인해주세요.

주요 변경사항

  • child_process: 자식 프로세스가 시그널로 종료된 경우 spawnSync() 종료 코드가 null이 됩니다. (cjihrig) #11288
  • http: 전송하는 HTTP 메시지 헤더에 접근하는 함수를 추가했습니다. (Brian White) #11562
  • lib: 런타임에서 node –debug를 폐지 예정으로 변경했습니다. (Josh Gavant) #11275
  • tls: new tls.TLSSocket()를 실행할 때 sec ctx 옵션을 지원합니다. (Sam Roberts) #11005
  • url: URL.prototype.toJSON이 추가됐습니다. (Michaël Zasso) #11236
  • doc: API 문서 항목에 변경 기록(changelog)이 있을 수 있습니다. (Anna Henningsen) #11489
  • crypto: OPENSSL_CONF를 다시 지원합니다. (Sam Roberts) #11006
  • src: Trace 이벤트 추적을 지원합니다. (misterpoe) #11106

Commits

Windows 32-bit Installer: https://nodejs.org/dist/v7.7.0/node-v7.7.0-x86.msi
Windows 64-bit Installer: https://nodejs.org/dist/v7.7.0/node-v7.7.0-x64.msi
Windows 32-bit Binary: https://nodejs.org/dist/v7.7.0/win-x86/node.exe
Windows 64-bit Binary: https://nodejs.org/dist/v7.7.0/win-x64/node.exe
macOS 64-bit Installer: https://nodejs.org/dist/v7.7.0/node-v7.7.0.pkg
macOS 64-bit Binary: https://nodejs.org/dist/v7.7.0/node-v7.7.0-darwin-x64.tar.gz
Linux 32-bit Binary: https://nodejs.org/dist/v7.7.0/node-v7.7.0-linux-x86.tar.xz
Linux 64-bit Binary: https://nodejs.org/dist/v7.7.0/node-v7.7.0-linux-x64.tar.xz
Linux PPC LE 64-bit Binary: https://nodejs.org/dist/v7.7.0/node-v7.7.0-linux-ppc64le.tar.xz
Linux PPC BE 64-bit Binary: https://nodejs.org/dist/v7.7.0/node-v7.7.0-linux-ppc64.tar.xz
Linux s390x 64-bit Binary: https://nodejs.org/dist/v7.7.0/node-v7.7.0-linux-s390x.tar.xz
AIX 64-bit Binary: https://nodejs.org/dist/v7.7.0/node-v7.7.0-aix-ppc64.tar.gz
SunOS 32-bit Binary: https://nodejs.org/dist/v7.7.0/node-v7.7.0-sunos-x86.tar.xz
SunOS 64-bit Binary: https://nodejs.org/dist/v7.7.0/node-v7.7.0-sunos-x64.tar.xz
ARMv6 32-bit Binary: https://nodejs.org/dist/v7.7.0/node-v7.7.0-linux-armv6l.tar.xz
ARMv7 32-bit Binary: https://nodejs.org/dist/v7.7.0/node-v7.7.0-linux-armv7l.tar.xz
ARMv8 64-bit Binary: https://nodejs.org/dist/v7.7.0/node-v7.7.0-linux-arm64.tar.xz
Source Code: https://nodejs.org/dist/v7.7.0/node-v7.7.0.tar.gz
Other release files: https://nodejs.org/dist/v7.7.0/
Documentation: https://nodejs.org/docs/v7.7.0/api/

SHASUMS

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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

2faca08ec1b3266625fc7c3b130f3598f4552a780242dc077d2f26205b2ef837 node-v7.7.0-aix-ppc64.tar.gz
168a11e744bd50eb49cf654ff2e51671657fecb3ceb71a2466903005cb3fa209 node-v7.7.0-darwin-x64.tar.gz
40186490d3e6650ab6616aa5f97c63b4677f7582d7eee814dc68d957b91ea8c1 node-v7.7.0-darwin-x64.tar.xz
14f06806449af11951ee0bd4056f0cd09dc16533eea2275eba993d7f9e5baa32 node-v7.7.0-headers.tar.gz
ebf477f96ffebcd08b1c992e857dc98a9ecaf55cbf5de5a9c33ba4a0fe022601 node-v7.7.0-headers.tar.xz
339a9e9602114a84420bcb0b732cf2ce0a76b983f6f1569808a5c5668911441e node-v7.7.0-linux-arm64.tar.gz
76d5c5f50c8a5c1ac16036dc5e19a8ae17c5038d9404be3e7b5fc96f5c430c56 node-v7.7.0-linux-arm64.tar.xz
da7b4b376052b20d9aad5f04b4da62202e69693c1785c8f9688357440df98180 node-v7.7.0-linux-armv6l.tar.gz
9b5f722cd75daf49b4eb7cbfc98f1bf57369f36840360e1ebe432eb00aaafcf5 node-v7.7.0-linux-armv6l.tar.xz
230ee629bd7fd46fbc7355b8fb082ed687cdd55ac4ca93e92f060168500cfd68 node-v7.7.0-linux-armv7l.tar.gz
350f189ccfd6de3e1ef3dcc0af747eefd1decf93c6a6d55eb147f9749fdc3d66 node-v7.7.0-linux-armv7l.tar.xz
59476c540794ca7b75384c31d13ce4cb49d8c2a451c7974b836bc771d3ec6240 node-v7.7.0-linux-ppc64le.tar.gz
7bb7809f617934c79b45a8649de8e772b0bc51da7e27498f48b26aa137782445 node-v7.7.0-linux-ppc64le.tar.xz
9c353ca2e25640a56e5758f9c0ece2107d871dc81ec32e7fe90892a4775b2331 node-v7.7.0-linux-ppc64.tar.gz
c210c98640eee2034c7d9f8038ace007e2dd2ece3dce1ae783be9d8da598556d node-v7.7.0-linux-ppc64.tar.xz
d86dae214aef2b955e6014e01a70270efa1a7197f3f7064bc464765e80f5c17f node-v7.7.0-linux-s390x.tar.gz
9481c092ed0d8f6e1b24c2bfb93d31ad727869332136b2d07d64b8783b493fc8 node-v7.7.0-linux-s390x.tar.xz
67c21170ed0a19da6f859666510ebc19b24f79a1f6b4acc5fc0d7af233d5dab3 node-v7.7.0-linux-x64.tar.gz
679d65591cd84fa0e0998477d58498c2b5e668eba5eab75ed70e07553a5250a8 node-v7.7.0-linux-x64.tar.xz
6be0d11303a2ae0179d2a6fff3d58d6f3b181f4c19ed67fe6e8138f73054cc1c node-v7.7.0-linux-x86.tar.gz
042a0a5cdb34b608e7d70e6464de4c53dc7ecd6aacdf74bbd60b9de0d9b2159f node-v7.7.0-linux-x86.tar.xz
4020686534a8ea31c9bbb84b43b5d3628546fc09b3a05c02d16458d2c778e679 node-v7.7.0.pkg
d7648db62f6912a1dcebd014dff66cf965e904ccbcfb30d9668b7286907190ed node-v7.7.0-sunos-x64.tar.gz
c292d6b14ffa370028bb56b5a116abdd67c58c5a75e5694fb4a250d33c4f8f6d node-v7.7.0-sunos-x64.tar.xz
57c1dfaa14e78260b962ff55a02ebc244e41bc23b47f84f19c7828a3e6dcc031 node-v7.7.0-sunos-x86.tar.gz
9d739cc35e5bade11b6ce5f3503b2d30923fdae2fd0f8f7a2226fd55b85e36d1 node-v7.7.0-sunos-x86.tar.xz
6716b933ff69f23399e743fd34e08352cd265e559caec5f06ee04b9222721efe node-v7.7.0.tar.gz
a0f743d63d5b29f96864ab74d5b13ab12f50c11c53395f2fc8d1e75ba13f1086 node-v7.7.0.tar.xz
b57d8dbfb8871805024618d7db8b5318163dd838ca543b69ffd509e8389ad002 node-v7.7.0-win-x64.7z
627749137dec7ad583a208919e1f5ea3a7a043911a6429cb3b6b9395a4efc773 node-v7.7.0-win-x64.zip
8a9a58d912936d24cd920af7e0771da935d73c343e0c954118d6b660c6e39798 node-v7.7.0-win-x86.7z
d5e32ee55d2529f6ce88bc0b1878af21322f93e2b2ce996c24756ea9321226d2 node-v7.7.0-win-x86.zip
bff87fb2927e852e75f03c54d9365b47f6100b9e542c939f092c44c0a82148c3 node-v7.7.0-x64.msi
164f62bb9a304ea1407b89f30bf784c64feb910ba612c4382337f99758213c20 node-v7.7.0-x86.msi
cb673070192d52fdd3b55d7b72deb536cc2477fe5f720f2b106e10384af143c7 win-x64/node.exe
6678abc1d660d563b5907ffbccdd6900e9fcd4b600f452d9cf1443aa276831a3 win-x64/node.lib
d5eb68912ca034bdf472a9d82c41e0d1f0969f0eafe1204e4640eae20c8085f4 win-x64/node_pdb.7z
ab6610dcdd3590b3eb93c4b55811ce6a60ed086ccf4e862219f4efd40813ac56 win-x64/node_pdb.zip
07262f4947c2ab76567b7bde2fb5ab26141741c77d79ac38a398d5de32ea1f80 win-x86/node.exe
5cd1430677af55e18cdcffce5b49a6b69e4d007063bf13b79d9e99681f774c09 win-x86/node.lib
669dbcc4f41e61e2175ca9daa579fe97b12f1be8e081a65e2a8f806cd64923f5 win-x86/node_pdb.7z
59e50d34d1b7ebc9d0a1ffd659e8cc794234157565aa450df4cc69e465718a2f win-x86/node_pdb.zip
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCAAGBQJYtjXEAAoJECPv7+k8TP/+n/4QAJ1NWHgOUhiW3u6zMIFX5H0D
kOhnyVMCb9M+rHeeHaJ4TlXNZ/NgwDEeM9E8R/R9JAM/Xy+z5ThQdSo5snhx6Jnd
zGouptogm5AVSCW5klabK1ECwOPH5AA9nZusS67H2mDZfCusvIA8oAKXP+NookPr
AOlTH5gl5GSrHN7c3vaa2IlLSDGUNrczfA1IHWyx3SArOj+YpJvtjF5jOSRUQxl8
UbsdPSkbyiVgqFKaOwhLzT7Uq2XmAj1tkfu/hKijrA4KSi4fE1poSMsJ50RGFnKH
OPQpSnLjbvAQGD3b4F6jFtVG+zcX9arBlUdPHoDIvKt/GZNYise2WtkDbMZxuh+3
wxrWZu2Pu/6U6ngm5QjT4c5cJuvdlyYNho6gNPt80+tJvVP0rA4mzKXFKi7mjaww
sWajEnQiMkAT/FGFqwQmYGfaanXgztFg/SAVPT9uUjlwmEb1CLZGjQsROrcyKXqm
PIeevqQqOdhZhLdJUoYv+VD+Qz50REXS+CgrKkY0BXFaiwmhIhFrdmQ2y248x3uQ
P6vpKs6ljS8tLOrvvVtW0z09cMAfJ0E9dJU7DgwGAkk+UY8GhqtYjn60bEcJJO0i
cFT9wlywzJvvKZFKDLUZh4jtaJptJ+plJgvESU8VFeqlppBIhOVlg0obIdJyFEaU
f8LpcH3mTvDt2HHcEELO
=Jguv
-----END PGP SIGNATURE-----

진단 워킹그룹 업데이트 - 새로운 많은 도구, 예전 도구의 퇴출

Node.js 사용자의 설문조사와 논의에서 작성 중인 모듈과 애플리케이션을 이해하고 디버깅하기 위해 더 좋은 도구와 API가 필요하다는 요구를 계속 들어왔습니다. 사실 작년 Node.js 재단의 설문조사에서 개발자들과 기술 리더들로부터 가장 많이 받았던 요청은 더 좋은 도구였습니다.

이러한 피드백에 기반을 둔 커뮤니티의 기여와 협업으로 지난 몇 년간 다음과 같은 여러 실험적인 진단 API와 도구가 Node에 포함되거나 Node.js 재단에 도입되었습니다.

  • async_hooks는 비동기 경계를 넘어 컨텍스트를 공유합니다.
  • Inspectornode-inspect로 단계를 진행해보고 프로파일링을 할 수 있습니다.
  • Trace Controller로 V8과 Node에서 트레이스 정보를 모으거나 스트리밍합니다.
  • node-reportllnode는 포스트모템 분석을 합니다.

앞으로 몇 달 동안 이 프로젝트의 안정성을 높이면서 사용자들의 피드백과 도움을 받아 실험 상태에서 벗어나기를 바라고 있습니다. nodejs GitHub 조직에서 diag-agenda, tracing, inspector 라벨을 검색하고 Diagnostics WG에서 이슈를 살펴보면 현재 진행 중인 작업과 참여할만한 부분을 알 수 있습니다.

레거시 V8 디버거를 교체할 Inspector

예전 구현체를 단계적으로 제거해야 한다는 필요성에 따라 새로운 구현체가 사용자의 요구사항을 맞출 수 있도록 개선하고 완성하는데 집중할 수 있습니다. 특히 몇 달 이내에 Inspector가 실험 상태를 벗어남에 따라 V8과 Node의 레거시 디버거 API는 폐기 예정이 될 것이고 새로운 Inspector API가 있으므로 결국 제거될 것입니다.

이 변경사항의 중요성을 고려해서 레거시 인터페이스를 사용하는 사용자들이 준비할 수 있도록 최대한 빨리 폐기 예정 경고를 추가하기로 했습니다. 그래서 Node 7.7.0부터 node --debug를 실행하면(또는 비슷한 기능은 --debug-brk--debug-port=12345) stderr로 폐기 예정 경고가 출력될 것입니다. 이 메시지를 보지 않으려면 --no-deprecation 플래그로 node를 시작하면 됩니다.

차후 디버깅을 하려면 node --inspect--inspect-brk를 사용해서 새로운 Inspector API를 활성화할 수 있습니다. 인기 있는 많은 에디터와 도구는 이미 Node 6 이상부터 이 API를 자동으로 지원하고 있습니다.

또한, 보통 node debug myscript.js로 실행하는 Node 내장 CLI 디버거는 이제(7.6.0+) Inspector에 기반을 둔 같은 기능으로 강화되었고 이는 node inspect myscript.js로 호출할 수 있습니다. node inspect가 있으므로 node debug myscript.js는 결국은 제거될 것입니다.

시도해 보세요!

--inspect와 Inspector를 사용해보려면 디버깅 가이드 문서를 읽어보세요.

항상 그렇지만 특히 이번 변경과정에서는 Node.js 런타임과 모듈에서 필요한 정보를 포함해서 기존 및 신규 도구와 API에서 정보를 얻는 경험에 대해 피드백을 받고 싶습니다. 논의할 부분이 있으면 Diagnostics WG에 이슈를 등록하고 코드를 기여하고 싶다면 nodejs/node에 PR을 올려주세요.

Node v7.6.0(현재 버전)

주요 변경사항

  • deps:
    • V8을 5.5 버전으로 업데이트했습니다. (Michaël Zasso) #11029
    • libuv를 1.11.0 버전으로 업그레이드했습니다. (cjihrig) #11094
    • node-inspect 1.10.4를 추가했습니다. (Jan Krems) #10187
    • zlib를 1.2.11 버전으로 업그레이드했습니다. (Sam Roberts) #10980
  • lib: node inspectnode에 추가했습니다. (Anna Henningsen) #10187
  • crypto: CNNIC 화이트리스트에서 만료된 인증서를 제거했습니다. (Shigeki Ohtsu) #9469
  • inspector: --inspect-brk를 추가했습니다. (Josh Gavant) #11149
  • fs: WHATWG URL 객체를 경로로서 추가했습니다. (James M Snell) #10739
  • src: 컴파일된 JS 소스 파일에서 UTF-8을 지원합니다. (Ben Noordhuis) #11129
  • url: url.format이 WHATWG URL도 지원하게 됐습니다. (James M Snell) #10857

Commits

  • [5059b6fcee] - benchmark: fix typos (Nikolai Vavilov) #11287
  • [b4f3a300de] - benchmark: URLSearchParams v.s. querystring (Joyee Cheung) #11170
  • [6d2797bd80] - benchmark: fix first call to URL in useWHATWG (Joyee Cheung) #11170
  • [8f34181b95] - benchmark: add assert.deep[Strict]Equal benchmarks (Joyee Cheung) #11092
  • [94555c949a] - benchmark: simplify URLSearchParams import (Timothy Gu) #11111
  • [599c947276] - benchmarks: add spread operator benchmark (James M Snell) #11227
  • [8fdfa08ed0] - (SEMVER-MINOR) build: add node-inspect integration test (Jan Krems) #10187
  • [67d4dc061c] - build: clear stalled jobs on POSIX CI hosts (Rich Trott) #11246
  • [ae39dcbffb] - build: disable C4267 conversion compiler warning (Ben Noordhuis) #11205
  • [92ed2b5001] - (SEMVER-MINOR) build: support for mips64el (nanxiongchao) #10991
  • [1dc438fd8b] - crypto: remove unused access of tlsext_hostname (David Benjamin) #10882
  • [7af03ba3f6] - crypto: Remove expired certs from CNNIC whitelist (Shigeki Ohtsu) #9469
  • [5e98e34648] - crypto: add cert check issued by StartCom/WoSign (Shigeki Ohtsu) #9469
  • [af0154535c] - deps: upgrade zlib to 1.2.11 (Sam Roberts) #10980
  • [85f54908bf] - (SEMVER-MINOR) deps: add node-inspect 1.10.2 (Jan Krems) #10187
  • [445794e0c9] - deps: upgrade libuv to 1.11.0 (cjihrig) #11094
  • [20127e0c0a] - deps: back-port b049d1a from V8 upstream (Ben Noordhuis) #11204
  • [5446fa7e8c] - (SEMVER-MINOR) deps: work around SmartOS 14 incompatibility (Michaël Zasso) #11029
  • [028bb632b2] - (SEMVER-MINOR) deps: revert breaking UTF-8 decoder changes in V8 (Michaël Zasso) #11029
  • [22e2288f3a] - (SEMVER-MINOR) deps: ensure V8 5.4 ABI compatibility (Michaël Zasso) #11029
  • [53e00e1617] - (SEMVER-MINOR) deps: limit regress/regress-crbug-514081 v8 test (Michael Dawson) #11029
  • [7fea966a1d] - (SEMVER-MINOR) deps: cherry-pick workaround for clang-3.4 ICE (Michaël Zasso) #11029
  • [61870b429a] - (SEMVER-MINOR) deps: update V8 to 5.5.372.40 (Michaël Zasso) #11029
  • [d9ed965ae1] - dgram: remove this aliases (cjihrig) #11243
  • [2f1ce2952d] - doc: update link to V8 Embedder’s guide (Franziska Hinkelmann) #11336
  • [3db54c93f8] - doc: update email and add personal pronoun (JungMinu) #11318
  • [1b08f766b1] - doc: drop “and io.js” from release section (Ben Noordhuis) #11054
  • [a5e8176fee] - doc: improve consistency in documentation titles (Vse Mozhet Byt) #11230
  • [5d2ba44fca] - doc: edit maxBuffer/Unicode paragraph for clarity (Rich Trott) #11228
  • [d5b1a4b265] - doc: clarify the behavior of Buffer.byteLength (Nikolai Vavilov) #11238
  • [0d4b0edb56] - doc: add links between cork() and uncork() (Matteo Collina) #11222
  • [266c41c2b1] - doc: add and fix System Error properties (Daiki Arai) #10986
  • [71f8a23da4] - doc: fix typo in dgram doc (Rich Trott) #11186
  • [73b32a31e0] - doc: remove extraneous paragraph from assert doc (Rich Trott) #11174
  • [abae26421e] - doc: improve testing guide (Joyee Cheung) #11150
  • [803f6b3091] - doc: fix linting command for vcbuild (Rich Trott) #11151
  • [177e9797cd] - doc: add common.WPT to test README (Rich Trott) #11127
  • [1fbbcc3c07] - doc: add not-an-aardvark as ESLint contact (Rich Trott) #11169
  • [5649174dda] - doc: typographical fixes in COLLABORATOR_GUIDE.md (Anna Henningsen) #11163
  • [ae33a15d01] - doc: fix “initial delay” link in http.md (Timo Tijhof) #11108
  • [5d58756b41] - doc: remove assertions about assert (Rich Trott) #11113
  • [3ebe306bb0] - doc: edit stability text for clarity and style (Rich Trott) #11112
  • [535492d321] - doc: clarify msg when doc/api/cli.md not updated (Stewart X Addison) #10872
  • [3ae25a0bca] - doc: add personal pronouns option (Rich Trott) #11089
  • [265a59b60f] - doc: replace newlines in deprecation with space (Sakthipriyan Vairamani (thefourtheye)) #11074
  • [598d35c087] - doc: fix confusing example in dns.md (Vse Mozhet Byt) #11022
  • [989d2cdbac] - doc: edit CONTRIBUTING.md for clarity (Rich Trott) #11045
  • [6cf06cf518] - (SEMVER-MINOR) fs: allow WHATWG URL and file: URLs as paths (James M Snell) #10739
  • [9339891b07] - fs: re-enable watch facility in AIX (Gireesh Punathil) #10085
  • [2952512b86] - lib: replace \u2019 with regular ascii quote (Ben Noordhuis) #11129
  • [3596d156c1] - (SEMVER-MINOR) lib: build node inspect into node (Anna Henningsen) #10187
  • [3074c6de7e] - meta: adding Italo A. Casas PGP Fingerprint (Italo A. Casas) #11202
  • [e530b5ae43] - meta: remove Chris Dickinson from CTC (Chris Dickinson) #11267
  • [17314eb9ca] - meta: add explicit deprecation and semver-major policy (James M Snell) #7964
  • [6a45c81edd] - readline: update 6 comparions to strict (Umair Ishaq) #11078
  • [fe2f058f17] - (SEMVER-MINOR) repl: remove workaround for function redefinition (Michaël Zasso) #11029
  • [3380cd5fdb] - src: support UTF-8 in compiled-in JS source files (Ben Noordhuis) #11129
  • [308df11658] - src: fix delete operator on vm context (Franziska Hinkelmann) #11266
  • [af06f62e35] - src: fix -Wunused-result compiler warning (Ben Noordhuis) #11197
  • [44b17a21ad] - src: refactor CopyProperties to remove JS (AnnaMag) #11102
  • [ce3dcca619] - src: update v8_platform.StartInspector signature (Myk Melez) #11157
  • [d8a5e1c37f] - src: don’t overwrite non-writable vm globals (Franziska Hinkelmann) #11109
  • [9264131fb3] - src: unconsume stream fix in internal http impl (Roee Kasher) #11015
  • [c5210b203d] - src: remove usage of V8 deprecated API in node_url.cc (Timothy Gu) #11066
  • [0b64f7fc0e] - src, inspector: add –inspect-brk (Josh Gavant) #11149
  • [0d52aced0c] - stream: move legacy to lib/internal dir (yorkie) #8197
  • [0610cc707b] - test: skip IPv6 test on non-IPv6 systems (Rich Trott) #11432
  • [93d3a3a6b5] - test: add coverage for dgram _createSocketHandle() (cjihrig) #11291
  • [b140dec930] - test: refactor test-repl-sigint-nested-eval (Rich Trott) #11303
  • [1085a4675a] - test: skip when openssl CLI doesn’t exist (Sota Yamashita) #11095
  • [6f866ae002] - test: improve punycode test coverage (Sebastian Van Sande) #11144
  • [68eb97442d] - test: cover cluster error during dgram socket bind (cjihrig) #11295
  • [5350f04e42] - test: refactor test-repl-sigint (Rich Trott) #11309
  • [1f3eee4f5d] - test: increase setMulticastLoopback() coverage (cjihrig) #11277
  • [6ee11f82b3] - test: refactor test-dgram-address.js (cjihrig) #11271
  • [d2ee7e20b2] - test: refactor test-readline-keys (Rich Trott) #11281
  • [f096235d04] - test: improve test-assert.js (jobala) #11193
  • [b4056994c4] - test: improve test-http-agent-destroyed-socket.js (Shubheksha Jalan) #11201
  • [803be085be] - test: querystring.escape with multibyte characters (Daijiro Wachi) #11251
  • [809aea3081] - test: refactor test-dgram-setBroadcast.js (cjihrig) #11252
  • [69f5a754e2] - test: add vm module edge cases (Franziska Hinkelmann) #11265
  • [2f15efb05b] - test: adapt test-debugger-pid to localized Windows (Vse Mozhet Byt) #11270
  • [5e5d72eb5a] - test: remove nan + weak (Ben Noordhuis) #11239
  • [969b85cdf5] - test: remove dependency on node-weak (Ben Noordhuis) #11239
  • [0cded6aac1] - test: don’t call process.exit() in gc tests (Ben Noordhuis) #11239
  • [7ff32bf705] - test: add coverage for dgram send() errors (cjihrig) #11248
  • [e1beb9fbfc] - test: add coverage for string array dgram send() (cjihrig) #11247
  • [2333cd3155] - test: increase dgram ref()/unref() coverage (cjihrig) #11240
  • [480d4cc9df] - test: add coverage to dgram receive error case (cjihrig) #11241
  • [ccd1163b46] - test: refactor test-fs-buffer (Rich Trott) #11232
  • [25226ced6a] - test: improve checks in test-path-parse-format (cjihrig) #11223
  • [540dca1d18] - test: fix incorrect indentation (cjihrig) #11219
  • [f0eba7811d] - test: add common.mustNotCall() (cjihrig) #11152
  • [f6dfc3193a] - test: remove obsolete comment from dgram test (ALJCepeda) #8689
  • [9d5ffa6e49] - test: add test cases to test-readline-keys.js (abouthiroppy) #10772
  • [7ec6a69a7d] - test: add missing initialization in test-assert (Rich Trott) #11191
  • [b766dab81c] - test: increase specificity in dgram test (Rich Trott) #11187
  • [9c729211e4] - test: improve crypto.setEngine coverage to check for errors (Sebastian Van Sande) #11143
  • [3ca483f4cc] - test: throw Error objects instead of literals (Rich Trott) #11168
  • [8612a004a3] - (SEMVER-MINOR) test: move test-vm-function-redefinition to parallel (Franziska Hinkelmann) #11029
  • [fbd495583e] - test: simplify output handling in repl tests (Rich Trott) #11124
  • [7f9b436c4b] - test: make module testing stricter (Rich Trott) #11116
  • [cf098688e4] - test: fix test.py command line options processing (Julien Gilli) #11153
  • [e9f6bc60e9] - test: improve coverage on removeListeners functions (matsuda-koushi) #11140
  • [815e668209] - test: add –abort-on-timeout option to test.py (Julien Gilli) #11086
  • [cf3700b0e8] - test: fix timing sensitivity in debugger test (Ali Ijaz Sheikh) #11008
  • [3d35dcff9a] - test: make test-fs-access stricter (Rich Trott) #11087
  • [e2d9c23e72] - test: use repeat() instead of new Array().join() (Jackson Tian) #11071
  • [ea5bef5efe] - test: add path.join’s test (Yuta Hiroto) #11063
  • [8d2a9138fc] - test: improve error messages in test-npm-install (Gonen Dukas) #11027
  • [8ac6a709b9] - test: add fs-assert-encoding’s test (abouthiroppy) #10913
  • [e4b139d300] - timer: remove duplicated word in comment (asafdav2) #11323
  • [a2948fbe74] - tools: enable ES2017 syntax support in ESLint (Michaël Zasso) #11211
  • [7e465b9c21] - tools: add compile_commands.json gyp generator (Ben Noordhuis) #7986
  • [2dc8aac1a9] - tools: enable no-throw-literal ESLint rule (Rich Trott) #11168
  • [8547871ea2] - url: fix setting url.search to the empty string (Timothy Gu) #11105
  • [322fc20333] - (SEMVER-MINOR) url: extend url.format to support WHATWG URL (James M Snell) #10857
  • [cfadbc2661] - util: improve inspect for AsyncFunction (Michaël Zasso) #11211

Windows 32-bit Installer: https://nodejs.org/dist/v7.6.0/node-v7.6.0-x86.msi
Windows 64-bit Installer: https://nodejs.org/dist/v7.6.0/node-v7.6.0-x64.msi
Windows 32-bit Binary: https://nodejs.org/dist/v7.6.0/win-x86/node.exe
Windows 64-bit Binary: https://nodejs.org/dist/v7.6.0/win-x64/node.exe
macOS 64-bit Installer: https://nodejs.org/dist/v7.6.0/node-v7.6.0.pkg
macOS 64-bit Binary: https://nodejs.org/dist/v7.6.0/node-v7.6.0-darwin-x64.tar.gz
Linux 32-bit Binary: https://nodejs.org/dist/v7.6.0/node-v7.6.0-linux-x86.tar.xz
Linux 64-bit Binary: https://nodejs.org/dist/v7.6.0/node-v7.6.0-linux-x64.tar.xz
Linux PPC LE 64-bit Binary: https://nodejs.org/dist/v7.6.0/node-v7.6.0-linux-ppc64le.tar.xz
Linux PPC BE 64-bit Binary: https://nodejs.org/dist/v7.6.0/node-v7.6.0-linux-ppc64.tar.xz
Linux s390x 64-bit Binary: https://nodejs.org/dist/v7.6.0/node-v7.6.0-linux-s390x.tar.xz
AIX 64-bit Binary: https://nodejs.org/dist/v7.6.0/node-v7.6.0-aix-ppc64.tar.gz
SunOS 32-bit Binary: https://nodejs.org/dist/v7.6.0/node-v7.6.0-sunos-x86.tar.xz
SunOS 64-bit Binary: https://nodejs.org/dist/v7.6.0/node-v7.6.0-sunos-x64.tar.xz
ARMv6 32-bit Binary: Coming soon
ARMv7 32-bit Binary: https://nodejs.org/dist/v7.6.0/node-v7.6.0-linux-armv7l.tar.xz
ARMv8 64-bit Binary: https://nodejs.org/dist/v7.6.0/node-v7.6.0-linux-arm64.tar.xz
Source Code: https://nodejs.org/dist/v7.6.0/node-v7.6.0.tar.gz
Other release files: https://nodejs.org/dist/v7.6.0/
Documentation: https://nodejs.org/docs/v7.6.0/api/

SHASUMS

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
48
49
50
51
52
53
54
55
56
57
58
59
60
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

242445e5353b20b14d3c986dbb7b84b4017982340b4c0c049935e2e983608a7f node-v7.6.0-aix-ppc64.tar.gz
da91ae27b942151feac38a7ec424c8dc1bdd72a5db5eb6fa792f0fcf4c1e80b0 node-v7.6.0-darwin-x64.tar.gz
7f0a825f9416b9f06b4bcb9c0d0373f617bd7e1c505629669fdee8aa81c5dd54 node-v7.6.0-darwin-x64.tar.xz
562774922e9dcc3a61e4393821a8568fb31183c4ef2254ed513f41c1ca2e65dc node-v7.6.0-headers.tar.gz
dc034c2c95d11354fcae873a3f894a1d95f85e6325ce4b4acddf44477ebc0896 node-v7.6.0-headers.tar.xz
5d45b0990200431d95696db51094198eeb6a90bdcbd38c317e8fe420d63552d9 node-v7.6.0-linux-arm64.tar.gz
bf1aba762fe0e2da14484afc12b6d3f91b00330e132d29d3343ffb4e983c6240 node-v7.6.0-linux-arm64.tar.xz
6afb4e68303641a398b6701b36d0af9de774847e7e853679fe7765ef62d04aff node-v7.6.0-linux-armv7l.tar.gz
707c4685413077f3d0294e3495f64abfa79fb6fe161b4c5c7aea7c0451959d04 node-v7.6.0-linux-armv7l.tar.xz
066a819e5ad16a5ef14f948f187586b3c742632e94ade50e7f3a09153d5979d2 node-v7.6.0-linux-ppc64le.tar.gz
96916ca4f300cc78b28ed037ad2ba9b99ae5278e7de8e73b7acc99fb057f45c9 node-v7.6.0-linux-ppc64le.tar.xz
351caf5e6a3a18f99a8fd98c05c089115a6b91fa2e6484e5fdfab24ff2eeb32f node-v7.6.0-linux-ppc64.tar.gz
1914d0362ed62810ffcac9a56515a788cd75f1b5508b8d0d7cb0a56871386deb node-v7.6.0-linux-ppc64.tar.xz
ea071c2e281f310117b8eac7af364bd3bc08d0e0e9b59427befc80074e06c581 node-v7.6.0-linux-s390x.tar.gz
89e70608616b72a7ec4eef03eb4499367ff0d917f0c3443be970f9cdae594418 node-v7.6.0-linux-s390x.tar.xz
0a8da7b260a93dae7c43a6f49b81fed5a3c19689feee67ce711e85b5a218b44e node-v7.6.0-linux-x64.tar.gz
97c6483fdb4fe8ae43dbcf95733cb7e9c6fa10abd63c5f880890bdc8fbc0ded5 node-v7.6.0-linux-x64.tar.xz
3fafdacd96b6edbedad9ae8201272dd622d4ac5fb0dce5235ec7f7eb498ec984 node-v7.6.0-linux-x86.tar.gz
18736a7d26c55f172abebad13254b913b1be17a0fa6dd7817415252a2f1aca84 node-v7.6.0-linux-x86.tar.xz
e4a06a6d521f3000c969fb82f68df2b5b00723a1dfb62c804283afcf02775751 node-v7.6.0.pkg
675be245f79e3ed6991154780158cd3fe7a5823d0989e59bab0d9ce2c5e7a297 node-v7.6.0-sunos-x64.tar.gz
151c4df389ed5adb457388b401b74a0270942f0ec1b1b4e4bb4750fd1615a630 node-v7.6.0-sunos-x64.tar.xz
f5447f0e8e9f74471346f25c99722f0fffd9939d3f5179f15d0852c4089af5e8 node-v7.6.0-sunos-x86.tar.gz
29db67287ac97e6c309b795b4c212f38773c0ebd692222ae8bf034ed32854202 node-v7.6.0-sunos-x86.tar.xz
809e80265e332fe1a8268e5a73eb219c356810fe86c69fd2d931c52e07211970 node-v7.6.0.tar.gz
6ff9042696fff0b49647f5864e71cb495e554e4f66e61443494210f5e16ab4a9 node-v7.6.0.tar.xz
c8bc4d97a72e114b8dce2c4769444aa006a3a26a0257b15102eaeb438913ff83 node-v7.6.0-win-x64.7z
9cc8fd129483aa64557155842dc8f1e7ed288efeab1a7fbb0210314bc7213058 node-v7.6.0-win-x64.zip
9a6bfa5d86714ab046e0cba272b4bb6553465ac7952570c9f4661ceb5e789db6 node-v7.6.0-win-x86.7z
738604089007e243980db223bdccaa491b693703565a68998355a1184169557e node-v7.6.0-win-x86.zip
91c67cb35090999abab87485f5c793d95c59d415a0722b9e6b214b842a9edcbd node-v7.6.0-x64.msi
e678efafda218d0e2c69e57356d65a765fdae747dcee18790360dc8f0c44ab5f node-v7.6.0-x86.msi
f1ad8802b3cc6cb914514c548eda0c307f1d28fa7b3ad214ec902e141eb091e9 win-x64/node.exe
00536645f19ad4e0b3bb14f472ca56f866635c9bb61f50eef128e1d50cb3d0d0 win-x64/node.lib
e9a846fde142a267a705fcc09489d186f2b8d61abbe102efb13de9ec00d6a9de win-x64/node_pdb.7z
07245480af59727da08d45744201fd4434f89c0198cc7a484469d4df170d6008 win-x64/node_pdb.zip
d767a2d38ae8f0b4ed9de3d6ecf55235b666721e3ced10f0703244b618dccdc5 win-x86/node.exe
5b65d348828dfc914ac92b1dea8c6eeda631327d7411c23252824fd1fd6dbfd6 win-x86/node.lib
c3003d17f2270ff773dc1639e7ae13ec7929f3a75af85d13cf5b1363a27999ba win-x86/node_pdb.7z
b83068fb0f19293ed89c07275be622943e7245a3f35570ce78fccd35b718117c win-x86/node_pdb.zip
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCAAGBQJYrPgMAAoJECPv7+k8TP/+7v0P/0kmMr4Yhnr+i6iMq62bmELF
p4WRscDIwvLLsTuGocdq9nwdV7+e/LVel5MaZY/HiSOivwT3h5TrluVRJu3zfbRK
nNNZ4ef9Udmz29VJGFct0k8q/WIqLKfaouLhHIHVgeGAARNSxswMx+scNRzKva2R
MTyOSl6LYszxFu3lkjc29sSe7qs0PK6IjJHS1jXOLQ+QEZgQ0HpomSCRpIF5huA1
tVC5O1mkAVVDarc/2PpvRoCuY8/w6MyQgV2FTgoe2ZK+sGZxOTCB763ovcz7j2DP
halOCyRoB9FBVEUXKlaYUanwdFzlUKuZxcrn6dUZODKudlDDgra+Ol3b12wWIsfQ
Ufng1tn1wZB5XH8PEHdyEZRFl2sqDr8Sa0sMXuVgxVjyHNUjiATeqVj3ZiRXCYrB
hDNynvJ8va9Z8eValRJI7cGLbbop0nrtwlInYjB48nsCqXBmO1ohkXDBkgFoum1g
4FwNenRwZ7eymNlb+y4uuSH/4TgP/vsOzyKiZWreRpyACisgXI2i8vj4Ws4u1y8e
4F5vMnd0aIy3reVELEkWc7rO4ATNWZdurIpFgr6f3Y3H0G0V/plcIGULhFi6xHB3
CQjF7IIh7FBKbyQtcBhGWZDUz5RS3gtHc8mz9yDa1GY9QF7T2dTAP6szpyvrApKJ
/fMOR8PsG0lc+tKjkKLm
=mu6u
-----END PGP SIGNATURE-----

Node v4.8.0(LTS)

주요 변경사항

  • child_process: spwan()에 셸 옵션을 추가했습니다. (cjihrig) #4598
  • deps:
    • v8: 힙 스페이스에 관한 통계를 볼 수 있습니다. (Ben Ripkens) #4463
  • crypto:
    • ALPN을 지원합니다. (Shigeki Ohtsu) #2564
    • 잘 알려진 CA 목록에 별도 인증서를 추가할 수 있습니다. (Sam Roberts) #9139
  • fs: fs.mkdtemp() 함수를 추가했습니다. (Florian MARGAINE) #5333
  • process:
    • externalMemoryprocess에 추가했습니다. (Fedor Indutny) #9587
    • process.cpuUsage()를 추가했습니다. (Patrick Mueller) #10796

Commits

  • [78010aa0cd] - build: add /opt/freeware/… to AIX library path (Stewart X Addison) #10128
  • [0bb77f24fa] - build: add (not) cross-compiled configure flags (Jesús Leganés-Combarro ‘piranna) #10287
  • [58245225ef] - (SEMVER-MINOR) child_process: add shell option to spawn() (cjihrig) #4598
  • [1595328b44] - (SEMVER-MINOR) crypto: allow adding extra certs to well-known CAs (Sam Roberts) #9139
  • [bf882fba35] - crypto: Use reference count to manage cert_store (Adam Majer) #9409
  • [4cf7dcff99] - crypto: remove unnecessary variables of alpn/npn (Shigeki Ohtsu) #10831
  • [d8b902f787] - debugger: call this.resume() after this.run() (Lance Ball) #10099
  • [4e07bd45d6] - deps: update patch level in V8 (Myles Borins) #10668
  • [a234d445c4] - deps: backport a715957 from V8 upstream (Myles Borins) #10668
  • [ce66c8e424] - deps: backport 7a88ff3 from V8 upstream (Myles Borins) #10668
  • [8bd3d83e01] - deps: backport d800a65 from V8 upstream (Myles Borins) #10668
  • [81e9a3bfcb] - deps: V8: fix debug backtrace for symbols (Ali Ijaz Sheikh) #10732
  • [d8961bdb3b] - doc: correct vcbuild options for windows testing (Jonathan Boarman) #10686
  • [d3c5bc1c63] - doc: update BUILDING.md (rainabba) #8704
  • [d61c181085] - doc: unify dirname and filename description (Sam Roberts) #10527
  • [8eeccd82d2] - doc: killSignal option accepts integer values (Sakthipriyan Vairamani (thefourtheye)) #10424
  • [7db7e47d7b] - doc: change logical to bitwise OR in dns lookup (Sakthipriyan Vairamani (thefourtheye)) #11037
  • [28b707ba42] - doc: replace newlines in deprecation with space (Sakthipriyan Vairamani (thefourtheye)) #11074
  • [79d49866f2] - doc: update CONTRIBUTING.MD with link to V8 guide (sarahmeyer) #10070
  • [acbe4d3516] - doc: add joyeecheung to collaborators (Joyee Cheung) #10603
  • [c7378c4d5f] - doc: warn about unvalidated input in child_process (Matthew Garrett) #10466
  • [08e924e45c] - doc: require two-factor authentication (Rich Trott) #10529
  • [d260fb2e7e] - doc: use “Node.js” in V8 guide (Rich Trott) #10438
  • [4f168a4a31] - doc: require() tries first core not native modules (Vicente Jimenez Aguilar) #10324
  • [5777c79c52] - doc: clarify the review and landing process (Joyee Cheung) #10202
  • [d3a7fb8a9e] - doc: redirect ‘Start a Working Group’ to TSC repo (William Kapke) #9655
  • [0e51cbb827] - doc: add Working Group dissolution text (William Kapke) #9656
  • [919e0cb8f2] - doc: more efficient example in the console.md (Vse Mozhet Byt) #10451
  • [70ea38f2ee] - doc: var -> const / let in the console.md (Vse Mozhet Byt) #10451
  • [dda777bf9e] - doc: consistent ‘Returns:’ part two (Myles Borins) #10391
  • [3b252a69a0] - doc: clarify macosx-firewall suggestion BUILDING (Chase Starr) #10311
  • [c4df02c815] - doc: add Michaël Zasso to the CTC (Michaël Zasso)
  • [2269d7db0f] - (SEMVER-MINOR) fs: add the fs.mkdtemp() function. (Florian MARGAINE) #5333
  • [2eda3c7c75] - lib,test: use consistent operator linebreak style (Michaël Zasso) #10178
  • [7505b86d2f] - os: fix os.release() for aix and add test (jBarz) #10245
  • [7a9c8d8f10] - (SEMVER-MINOR) process: add process.cpuUsage() - implementation, doc, tests (Patrick Mueller) #10796
  • [23a573f7cb] - (SEMVER-MINOR) process: add process.memoryUsage.external (Fedor Indutny) #9587
  • [be6203715a] - src: describe what NODE_MODULE_VERSION is for (Sam Roberts) #10414
  • [3f29cbb5bc] - src: fix string format mistake for 32 bit node (Alex Newman) #10082
  • [271f5783fe] - stream, test: test _readableState.emittedReadable (Joyee Cheung) #10249
  • [c279cbe6a9] - test: fix test.py command line options processing (Julien Gilli) #11153
  • [0f5d82e583] - test: add –abort-on-timeout option to test.py (Julien Gilli) #11086
  • [735119c6fb] - test: cleanup stream tests (Italo A. Casas) #8668
  • [f9f8e4ee3e] - test: refactor test-preload (Rich Trott) #9803
  • [e7c4dfb83b] - test: invalid package.json causes error when require()ing in directory (Sam Shull) #10044
  • [22226fa900] - test: refactoring test-pipe-head (Travis Bretton) #10036
  • [11115c0d85] - test: add second argument to assert.throws() (Ken Russo) #9987
  • [96ca40bdd8] - test: refactor test-tls-0-dns-altname (Richard Karmazin) #9948
  • [98496b6d3e] - test: test: refactor test-sync-fileread (Jason Wohlgemuth) #9941
  • [324c82b1c9] - test: use common.fixturesDir almost everywhere (Bryan English) #6997
  • [ce91bb21ba] - test: refactor test-repl-mode.js (Cesar Hernandez) #10061
  • [61cbc202a1] - test: refactor test-net-dns-custom-lookup (Kent.Fan) #10071
  • [812c6361ff] - test: refactor test-tls-server-verify (Hutson Betts) #10076
  • [19907c27a6] - test: use mustCall() for simple flow tracking (cjihrig) #7753
  • [42da81e6cc] - test: set stdin too for pseudo-tty tests (Anna Henningsen) #10149
  • [53404dbc1f] - test: add stdin-setrawmode.out file (Jonathan Darling) #10149
  • [1fac431307] - test: add tests for clearBuffer state machine (Safia Abdalla) #9922
  • [37a362275e] - test: update test-cluster-shared-handle-bind-error (cjihrig) #10547
  • [f5e54f5d5f] - test: avoid assigning this to variables (cjihrig) #10548
  • [28a5ce10af] - test: improve test-http-allow-req-after-204-res (Adrian Estrada) #10503
  • [52edebc8f3] - test: improve test-fs-empty-readStream.js (Adrian Estrada) #10479
  • [b74bc517a6] - test: use strictEqual in test-http-server (Fabrice Tatieze) #10478
  • [a9cd1d1267] - test: refactor test-stream2-unpipe-drain (Chris Story) #10033
  • [7020e9fd8b] - test: add test for SIGWINCH handling by stdio.js (Sarah Meyer) #10063
  • [56b193a9c2] - test: improve code in test-vm-preserves-property (Adrian Estrada) #10428
  • [8a26ba142f] - test: fix flaky test-https-timeout (Rich Trott) #10404
  • [eeb2d7885a] - test: improve test-cluster-worker-constructor.js (Adrian Estrada) #10396
  • [fd195b47d6] - test: stream readable resumeScheduled state (Italo A. Casas) #10299
  • [135a7c9e19] - test: stream readable needReadable state (Joyee Cheung) #10241
  • [f412b1fcfd] - test: clean up domain-no-error-handler test (weyj4) #10291
  • [14c28ebcf1] - test: update test-domain-uncaught-exception.js (Andy Chen) #10193
  • [928291c652] - test: refactor test-domain.js (Siddhartha Sahai) #10207
  • [13c6cec433] - test: fail for missing output files (Anna Henningsen) #10150
  • [544920f77b] - test: stream readableState readingMore state (Gregory) #9868
  • [2f8bc9a7bc] - test: s/ASSERT/assert/ (cjihrig) #10544
  • [380a5d5e12] - test: fix flaky test-http-client-timeout-with-data (Rich Trott) #10431
  • [14e07c96e1] - test: refactor test-stdin-from-file (Rob Adelmann) #10331
  • [424c86139d] - test: refactor the code in test-fs-chmod (Adrian Estrada) #10440
  • [31aa877003] - test: improve the code in test-pipe.js (Adrian Estrada) #10452
  • [4bbd50ee07] - test: improve code in test-fs-readfile-error (Adrian Estrada) #10367
  • [9840f505f0] - test: improve code in test-vm-symbols (Adrian Estrada) #10429
  • [4efdbafeb3] - test: refactor test-child-process-ipc (malen) #9990
  • [dbfec29663] - test: fix and improve debug-break-on-uncaught (Sakthipriyan Vairamani (thefourtheye)) #10370
  • [80f4a37023] - test: refactor test-pipe-file-to-http (Josh Mays) #10054
  • [a983400ac2] - test: refactor test-tls-interleave (Brian Chirgwin) #10017
  • [6db76da2c8] - test: refactor test-cluster-send-handle-twice.js (Amar Zavery) #10049
  • [19b314e40a] - test: update test-tls-check-server-identity.js (Kevin Cox) #9986
  • [ab3e4c6a9b] - test: improve test-cluster-net-listen.js (Rico Cai) #9953
  • [fb9a0ad6c0] - test: refactor test-child-process-stdin (Segu Riluvan) #10420
  • [122917df5a] - test: change var declarations, add mustCall check (Daniel Sims) #9962
  • [d5e911c51e] - test: refactoring test-cluster-worker-constructor (Christopher Rokita) #9956
  • [7d61bbf647] - test: refactor test-stdin-script-child (Emanuel Buholzer) #10321
  • [76bb3cbff9] - test: refactor test-stream2-writable (Rich Trott) #10353
  • [b87ee26b96] - test: change assert.strict to assert.strictEqual() (Ashita Nagesh) #9988
  • [4514fd78f4] - test: refactor the code in test-http-keep-alive (Adrian Estrada) #10350
  • [f301df405a] - test: use strictEqual in test-cwd-enoent-repl.js (Neeraj Sharma) #9952
  • [3b67001c99] - test: refactor test-net-reconnect-error (Duy Le) #9903
  • [34861efff6] - test: add test-require-invalid-package (Duy Le) #9903
  • [90a79b3967] - test: refactor test-timers-this (Rich Trott) #10315
  • [5335b0a0d1] - test: refactor test-tls-ecdh-disable (Aaron Williams) #9989
  • [0f8a323546] - test: cleanup test-stdout-close-catch.js (Travis Bretton) #10006
  • [fc67a955e2] - test: use const/let and common.mustCall (Outsider) #9959
  • [2f44d7f367] - test: refactor test-crypto-random (Rich Trott) #10232
  • [730c3b29e8] - test: refactor test-fs-fsync (Rob Adelmann) #10176
  • [9c9d422433] - test: refactor test-http-after-connect.js (larissayvette) #10229
  • [827bbe7985] - test: refactor assert.equal, update syntax to ES6 (Prieto, Marcos)
  • [121b68a283] - test: refactor http pipelined socket test (Rich Trott) #10189
  • [7ca31e38fb] - test: fix alpn tests for openssl1.0.2h (Shigeki Ohtsu) #6550
  • [278d718a93] - test: refactor test-handle-wrap-close-abort (Rich Trott) #10188
  • [f12bab65b8] - test: stream readableListening internal state (Italo A. Casas) #9864
  • [210290dfba] - test: check for error on invalid signal (Matt Phillips) #10026
  • [4f5f0e4975] - test: refactor test-net-keepalive.js (Kyle Corsi) #9995
  • [cfa2b87b5d] - test,lib,benchmark: match function names (Rich Trott) #9113
  • [a67ada7d32] - tls: copy the Buffer object before using (Sakthipriyan Vairamani) #8055
  • [e750f142ce] - (SEMVER-MINOR) tls, crypto: add ALPN Support (Shigeki Ohtsu) #2564
  • [ef547f3325] - (SEMVER-MINOR) tls,crypto: move NPN protcol data to hidden value (Shigeki Ohtsu) #2564
  • [31434a1202] - tools: enforce consistent operator linebreak style (Michaël Zasso) #10178
  • [9f13b5f7d5] - tools: forbid template literals in assert.throws (Michaël Zasso) #10301
  • [c801de9814] - tools: add ESLint rule for assert.throws arguments (Michaël Zasso) #10089
  • [b5e18f207f] - tools: add macosx-firwall script to avoid popups (Daniel Bevenius) #10114
  • [30d60cf81c] - (SEMVER-MINOR) v8,src: expose statistics about heap spaces (Ben Ripkens) #4463
  • [9556ef3241] - vm: add error message if we abort (Franziska Hinkelmann) #8634
  • [fa11f4b1fc] - win,msi: add required UIRef for localized strings (Bill Ticehurst) #8884

Windows 32-bit Installer: https://nodejs.org/dist/v4.8.0/node-v4.8.0-x86.msi
Windows 64-bit Installer: https://nodejs.org/dist/v4.8.0/node-v4.8.0-x64.msi
Windows 32-bit Binary: https://nodejs.org/dist/v4.8.0/win-x86/node.exe
Windows 64-bit Binary: https://nodejs.org/dist/v4.8.0/win-x64/node.exe
macOS 64-bit Installer: https://nodejs.org/dist/v4.8.0/node-v4.8.0.pkg
macOS 64-bit Binary: https://nodejs.org/dist/v4.8.0/node-v4.8.0-darwin-x64.tar.gz
Linux 32-bit Binary: https://nodejs.org/dist/v4.8.0/node-v4.8.0-linux-x86.tar.xz
Linux 64-bit Binary: https://nodejs.org/dist/v4.8.0/node-v4.8.0-linux-x64.tar.xz
Linux PPC LE 64-bit Binary: https://nodejs.org/dist/v4.8.0/node-v4.8.0-linux-ppc64le.tar.xz
Linux PPC BE 64-bit Binary: https://nodejs.org/dist/v4.8.0/node-v4.8.0-linux-ppc64.tar.xz
SunOS 32-bit Binary: https://nodejs.org/dist/v4.8.0/node-v4.8.0-sunos-x86.tar.xz
SunOS 64-bit Binary: https://nodejs.org/dist/v4.8.0/node-v4.8.0-sunos-x64.tar.xz
ARMv6 32-bit Binary: https://nodejs.org/dist/v4.8.0/node-v4.8.0-linux-armv6l.tar.xz
ARMv7 32-bit Binary: https://nodejs.org/dist/v4.8.0/node-v4.8.0-linux-armv7l.tar.xz
ARMv8 64-bit Binary: https://nodejs.org/dist/v4.8.0/node-v4.8.0-linux-arm64.tar.xz
Source Code: https://nodejs.org/dist/v4.8.0/node-v4.8.0.tar.gz
Other release files: https://nodejs.org/dist/v4.8.0/
Documentation: https://nodejs.org/docs/v4.8.0/api/

SHASUMS

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
48
49
50
51
52
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

ea4d8dc0e77e744d78dbb5221f2711e77f90394a5a5296fc231757dd52afe9b0 node-v4.8.0-darwin-x64.tar.gz
73e23e85fa3e91c06156deddd52a037b0e9a94849fff6a91693737ee49094cc7 node-v4.8.0-darwin-x64.tar.xz
ba8bcb2e4187ee6b705605b4d55b0f5a0f9ad0ba3d24bd6f5d70dff26e9bcf97 node-v4.8.0-headers.tar.gz
a3a75cfee533ea41219796a89a4407608196e38f325ebf3127b12630d4f98b2a node-v4.8.0-headers.tar.xz
f796af7ea3c2ac085ba4d24b367c4a9ec73a0d6f469628470a8b7ac14e05d0a4 node-v4.8.0-linux-arm64.tar.gz
e0f5f7a2458c715c60ecb3966ee29bcdae95acceb2a611bd920ce1c649174732 node-v4.8.0-linux-arm64.tar.xz
737c4bdaf68e4f347aaa90f6abb44f8822ee2234a862c2248fa800a58ac0600b node-v4.8.0-linux-armv6l.tar.gz
1c828dbd59a2b5e226c5cce772cd6c4a01aaaa06f9c19ef06d9666b53fd54b5b node-v4.8.0-linux-armv6l.tar.xz
a6b1e35a6f3fbf05fef76f2672b55f07ea7ebd179440f212d80605bd1ef548c0 node-v4.8.0-linux-armv7l.tar.gz
ad05bf930ecbcda934628b33fa4f8dda909cbd30a9577d0b70f18ecb3774900d node-v4.8.0-linux-armv7l.tar.xz
cfe003b8984af329132e1027fd2c4a91f7e8aace0facde1789f55986f5671e63 node-v4.8.0-linux-ppc64le.tar.gz
86a43cb714d724a84b83954d548687b291abeeb7e8811e40a7633bd8e9532646 node-v4.8.0-linux-ppc64le.tar.xz
2aab5c30ff56be5811ec1181877014592bd301d5f4b60c7be6aabaa2e30b2639 node-v4.8.0-linux-ppc64.tar.gz
48535d3a1054faff37e49eedb757613b048edde4dcd92833d8e9c0db80545355 node-v4.8.0-linux-ppc64.tar.xz
43e50dfa950ccd0caf03ad71c65f8235aca6fe173596f2804b2f9dfaa45cabf1 node-v4.8.0-linux-x64.tar.gz
4597861fbbcfc120be608ec6ba18a61c5951d4093cf149bf98097972a4927a80 node-v4.8.0-linux-x64.tar.xz
20b3018ee2e0a5bedc5aa357607ceb9bfaeb215dc48f878a0a92b78288637eb7 node-v4.8.0-linux-x86.tar.gz
cd5e5e35398dc0fb347fbfefbf167b653d2b304bbd6d33b634bbe96b1c381f94 node-v4.8.0-linux-x86.tar.xz
e3ce14f5b249c888a3fdaae0360239f121f99dcd4d098df76f2a535e438e6cfd node-v4.8.0.pkg
9fa8fd422985a4194d96161ac19b3b2cd1098bfd581483f6ea7c0bad6344d42b node-v4.8.0-sunos-x64.tar.gz
817da2014e1a30c5ddc070340996e6ff2dd8790dc87c5de626e94027ad1f6177 node-v4.8.0-sunos-x64.tar.xz
b1472060cef54c54d516c20210648cc2836ee2fd56c35bd721b9c32d02d33308 node-v4.8.0-sunos-x86.tar.gz
b26d3630fcc2d72b8df9f8f821b4acf605edbe13a66d8c00c2fa2c800397812d node-v4.8.0-sunos-x86.tar.xz
6e65d19e0135be474df53a350af766a8f1ba5ef1a5288a4da993a1a9b0e04942 node-v4.8.0.tar.gz
67ea720419f902bd47e5c45a16ed45f8083c38ccd307b206a1dc53e862fad965 node-v4.8.0.tar.xz
2c4ad7799609d284f54b004a1f9896890ba12796e5bb026d4c6f3e5b27312a76 node-v4.8.0-win-x64.7z
eb405edf1076b094fc3980ae8a83e91b15e05da057f4c5a96510de5b9636edf4 node-v4.8.0-win-x64.zip
58bcba2ce057a317bc7c3aff8e9ca6dfc3c9762bd51d91ddd4546ced7c598ef7 node-v4.8.0-win-x86.7z
bd5ac01b966de4936b6164d24f6d19ad89e79eea047aa7712b47e56106bee21e node-v4.8.0-win-x86.zip
07a44c3289f5fe8082388928b9511a75106392d01b10cc24b5a19e376912d264 node-v4.8.0-x64.msi
f6af223f732953981b94d576f492f59c168713d7c1148fc512e42e1dadd9b5e0 node-v4.8.0-x86.msi
9a24558be019277a9693083fe0cb2f99e531b678bcdb86c3136a4d647c10a500 win-x64/node.exe
bba83a782c15baca3ef81126ff4489b9ab33094383c9587d66b1551cf60a2f10 win-x64/node.lib
080cda13b6574ac545f1f10daf9d2442520549d238e33a5d575f554a6c41b3ee win-x64/node_pdb.7z
cd42e8b88d8816246ec08db2994ef13daf1ae599fb3aa1c5860c47d2e166bc0f win-x64/node_pdb.zip
cb46fddbd1aa986af7b50f8291015c02a3457649cd1fa5bb753c214f0efd5ba5 win-x86/node.exe
96d43ace5b353fe1dae498326a863b5725216e8a417e70dfc067dca2c3df061c win-x86/node.lib
b421d9c9f553e8fcdd5fd748a189ce4f7a45bf7d6302019d27ec22e53fcfb1f5 win-x86/node_pdb.7z
6ec54cb4666f39087257b32d0d11bf5db0465b68e849942f668d37dab54edf9e win-x86/node_pdb.zip
-----BEGIN PGP SIGNATURE-----

iQEcBAEBCAAGBQJYrOwtAAoJEJM7AfQLXKlG16IH/Rz3M9YWZjYtNq9q2aQfrV/k
VMt6+WtAnqzDex3oBlNLGldp5xORT9Xl8+Lqh0R0iIt0Sfdj8w30X2DgksreATXM
PkguqF0/3LRTQXWYggNooU/DWrKpKxSCVI0jnZJJPGDge7DWYLW88IHWmqm8lDxo
sPNMeYhn5zG3nRvPTFPMp91duXrOebs8yIIQMWx3L8mlub+DPEiBmwBWLyA/lwMn
p/Ufkrxu9HeqYqdqiEo8CIxvp0gDDslqwRgFe97TB6IT2UexwXfnnZzbDP5CsnSO
SHbYiUYfKKhuiLWNeT4ntfiw2SrWj8zuaEOkaf+5UuMRdJvA8Q8teLQtz1EhSBU=
=mkXD
-----END PGP SIGNATURE-----

Node.js - 속도를 동반한 품질

Node.js - 속도를 동반한 품질

Node.js 커뮤니티의 핵심 신조 중 하나는 혁신을 촉진할 수 있도록 빠른 속도로 변경할 수 있게 하고 Node.js가 점점 많아지는 사용 사례에서 사용될 수 있게 하는 것입니다.

커뮤니티는 동시에 품질에도 가치를 두고 있습니다. 새로운 버전의 런타임은 이전 버전만큼 좋거나 더 나아야 하고 의도치 않게라도 기존 애플리케이션을 깨뜨리지 않아야 합니다.

커뮤니티는 어느 한 쪽도 희생하는 일 없이 필요한 품질 수준을 지키면서 변경 속도를 관리할 방법을 찾고 있습니다.

작년 커뮤니티가 진행한 많은 활동은 이러한 목적 아래 이루어졌습니다.

이 글은 우리가 이러한 활동을 어떻게 어우러지게 하였는지를 설명합니다.

핵심 전략

품질을 유지하면서 변화와 혁신을 할 수 있게 하는 안전망을 만드는 다음과 같은 여러 가지 핵심 전략이 있습니다.

  • 다양한 릴리스 타입
  • 변경 흐름 과정
  • 강화된 제안 과정
  • 자동화와 테스트
    • 기능 테스트
    • 모듈 테스트
    • 부하 테스트
    • 플랫폼/OS 커버리지
    • 개발 작업 흐름
  • 성능 벤치마크
  • 도구

릴리스 타입

Node.js 프로젝트는 3가지 릴리스 타입을 관리하고 있습니다.

  • 야간 버전
  • 현재 버전
  • LTS

여러 가지 릴리스 타입을 가짐으로써 다가올 변경사항에 관해 빠른 피드백을 얻을 수 있는 야간 빌드에서 빠르게 혁신과 변경을 할 수 있습니다. 준비되면 각 수준에 맞게 품질과 안정성을 맞추는 등 더 제어된 방법으로 이러한 변경사항을 현재 버전과 LTS 릴리스에 적용합니다.

야간 버전

master에서 빌드하고 아주 최신 변경사항을 포함하고 있습니다. 최신 버전을 사용해 보고자 한다면 이 바이너리를 사용하면 됩니다. 이 릴리스에는 추가적인 테스트는 진행하지 않지만, 변경사항이 생길 때마다 표준 Node.js 유닛 테스트를 실행하므로 대부분은 사용하기 편할 것입니다.

현재 버전

master에 들어온 변경사항은 정기적으로 현재 버전에 백포트 됩니다. 보통은 master에 들어온 모든 변경사항이 현재 버전으로 백포트 됩니다만 어떤 문제가 있거나 큰 변경사항이라 커뮤니티가 확인하는데 더 많은 시간이 필요하다고 판단한 경우 지연될 수도 있습니다. 주된 예외사항 중 하나는 semver 호환성이 깨진 변경사항은 다음 주 버전까지는 백포트되지 않습니다.(예시 5 -> 6) 여기에는 v8이나 주요 수준에서 실행되도록 작성된 애플리케이션이나 모듈이 계속해서 실행되어야 하는 다른 컴포넌트도 포함됩니다.

이 릴리스는 변경사항에 기록되므로 각 릴리즈마다 변경사항을 확인할 수 있습니다. 현재 버전 릴리스는 보통 1~2주마다 진행됩니다.

현재 버전 릴리스에서는 Node.js 표준 유닛 테스트뿐만 아니라 CITGM도 실행됩니다.(뒷부분 참고)

작성한 애플리케이션이 수긍할 만한 수준 내에서 최신 버전으로 실행되길 원한다면 이 릴리스를 사용하면 됩니다.

LTS

현재 버전에서 변경사항이 입증되었다면 LTS 버전의 후보가 됩니다. (활성) LTS의 첫 단계에서 변경사항은 다음으로 제약합니다.

  • 버그 수정
  • 보안 업데이트
  • semver 주버전이 아닌 npm 업데이트
  • 적절한 문서 업데이트
  • 기존 애플리케이션을 깨뜨릴 위험이 거의 없는 일부 성능 개선
  • 많은 양의 코드가 포함되었지만, 기존 애플리케이션을 깨뜨릴 위험이 적거나 변경사항을 어지럽히지 않기 때문에 나중에 변경사항을 백포트 하기 쉽게 만들어 주는 변경사항

게다가 (유지보수) LTS의 두 번째 단계에서는 중요한 버그와 중요한 보안 수정사항만 포함될 것입니다.

현재 버전 릴리스처럼 CITGM(뒷부분 참고)는 LTS 릴리스에서도 실행됩니다. 그리고 매일 밤 벤치마크 테스트로 보고되는 benchmarking.nodejs.org로(뒷부분 참고) 성능도 추적합니다.

여기서 LTS 릴리스에 관해 더 자세히 볼 수 있습니다.

프로덕션 애플리케이션에서 안정성과 품질을 최고 수준으로 유지하고 싶다면 이 릴리스를 사용하세요.

변경 흐름 과정

여러 가지 릴리스 타입을 얘기하면서 이 부분을 설명했지만, 여기에서 이 전략을 좀 더 얘기할 것입니다.

핵심 아이디어는 변경사항이 야간 버전, 안정 버전, LTS 활성 버전, LTS 유지보수 버전으로 흘러가면서 다음의 기회를 늘리는 것입니다.

  • 검증
  • 시간

master에 들어간 변경사항은 제대로 리뷰를 받은 것이고 커뮤니티 사람들이 의견이나 리뷰를 할 수 있도록 충분한 시간(최소 48~72시간)이 보장됩니다. 하지만 우리가 알고 있듯이 여전히 문제가 생길 수 있습니다.

변경사항은 야간 빌드에서 현재 버전으로 들어가기 전에 master에서 더 많은 시간을 보내게 되는데 여기서 진행 중인 회귀 때문에 간헐적인 이슈를 겪을 수도 있고 이를 통해 사용자가 충분히 릴리스를 테스트하고 이슈를 보고할 수 있는 시간을 제공하게 됩니다. 게다가 현재 버전에 변경사항을 가져와도 깨지지 않는지 추가적인 리뷰와 이상이 없는지 검사를 하게 됩니다.

비슷하게 LTS 업데이트 릴리스에 변경사항을 가져오기 전 현재 버전 릴리스에서 최소 한주 이상이 지나야 합니다. 이를 통해 사용자가 변경사항을 완전히 확인하고 이슈를 보고할 수 있는 추가 시간을 확보합니다. 게다가 LTS로 변경사항을 가져오면서 더 신중하게 리뷰를 진행해서 변경사항이 의도치 않게 문제를 발생시킬 가능성을 줄입니다. LTS 릴리스의 기간, 특히 LTS가 유지보수 단계로 진입했다면 가져오는 변경사항의 범위를 줄여서 위험을 감소시킵니다.

새로운 LTS 버전에 변경사항이 들어올 때는 최신 릴리스에서 6개월까지 유지될 것입니다. 특히 v8 업그레이드 같은 큰 변경사항은 LTS 릴리스에 들어오기 전에 현재 버전에 충분히 적용되고 사용되면서 변경사항이 적용되는 과정을 더 빨리 마치게 됩니다.

이 전략으로 빠른 혁신과 변경을 할 수 있으면서 릴리스의 변경사항이 사용되고 검증받을 수 있게 하고 위험을 더 싫어하는 커뮤니티 사람들이 사용하는 릴리스에 적절한 방법으로 적용될 수 있게 합니다.

강화된 제안 과정

어떤 변경사항은 풀 리퀘스트에서 간단하게 리뷰할 수 없습니다. 제안된 변경사항이 Node.js 런타임에 필요하거나 적절한지 같은 결정을 해야 하는 큰 질문도 종종 있습니다.

이러한 변경사항에 대한 전략이 “강화된 제안” 과정입니다. 제안된 변경사항은 문서로 만들어 지고 논의되고 초안(DRAFT), 수락(ACCEPTED), 반려(REJECTED) 같은 단계로 넘어갑니다. 여기에서 과정에 대해 더 볼 수 있습니다.

이 과정으로 더 큰 변경사항을 미리 논의할 수 있고 커뮤니티의 동의를 얻을 수 있으므로 풀 리퀘스트의 최종 리뷰는 구현에 집중할 수 있습니다. 그 결과 상세 기술을 리뷰하지 않고 적절한 추상화 수준에서 개념을 논의할 수 있다는 장점이 있습니다.

자동화와 테스트

자동화와 테스트는 안전하게 빠른 변경을 가능케 하는 핵심 전략입니다.

자동화는 오류가 발생할 수 있는 수동 과정을 없애줍니다. 작업을 자동화하면 직접 수동으로 하는 것보다 오류 가능성의 규모가 줄어듭니다. 특히 이러한 작업을 여러 사람이 수행한다면 더 줄어듭니다.

우리의 핵심 원칙 중 하나는 가능한 한 많이 자동화하자는 것입니다. 여기에는 빌드 인프라스트럭처에서 Ansible로 머신을 구성하는 것부터 바이너리를 빌드하고 서명하고 릴리스하는 작업까지 자동화하는 모든 범위를 포함합니다.

자동화된 테스트가 테스트를 실행해서 회귀 문제를 빠르고 신뢰할 수 있게 잡아냅니다. 좋은 테스트 세트가 있을 때, 회귀문제가 발생한다면 어디서 문제가 생겼는지 확신하고 변경할 수 있습니다.

여러 단계의 테스트가 있고 합리적인 수준의 커버리지를 확보할 때까지 수준을 올리는 것이 전략입니다.

이러한 단계에는 다음을 포함합니다.

  • 기능 테스트
  • 플랫폼/OS 커버리지
  • 의존성 테스트
  • 모듈 테스트
  • 부하 테스트
  • 개발 작업 흐름
  • 사용 사례 테스트

기능 테스트

기능 테스트는 방어의 첫 단계입니다. 협업자 가이드라인에서는 새로운 모든 기능에 테스트 케이스를 필수로 요구하고 있고 협업자는 필수 테스트에 관해 높은 표준을 정해놓았습니다.

단순히 테스트를 하는 것으로는 충분치 않고 테스트는 런타임을 실행할 때 효과적이어야 합니다. 야간에 코드 커버리지를 측정하고 그 결과를 coverage.nodejs.org에 발행합니다. 이를 통해 테스트가 여전히 효과적인지 확인할 수 있고 테스트를 더 개선할 수 있는 필수 정보를 얻을 수 있습니다.

테스트가 신뢰할 수 있으면서 일관되게 통과할 수 있도록 많은 노력이 들어갔다는 것을 눈치챌 것입니다. 지속적인 통합(ci)가 실행되는 것을 보면 대부분은 녹색이고 드물게 일시적인 실패가 발생하는 것을 볼 수 있습니다.

플랫폼/OS 커버리지

이는 그 자체로 테스트의 형식은 아닙니다. 하지만 넓은 범위의 플랫폼과 OS에서 테스트를 실행하는 전력을 적용함으로써 기존 테스트의 유효성을 증가시킵니다.

특정 플랫폼이나 OS에서 발생한 이슈는 종종 해당 플랫폼이나 OS에 한정된 것이 아니라 타이밍이 다르거나 기본 설정이나 일반적인 환경을 제어하지 못한 것입니다. 다른 어떤 플랫폼에서도 발생할 수 있습니다.

광범위한 플랫폼에서 테스트하는 우리 전력의 목적은 지원 플랫폼에서 Node.js가 동작한다는 것을 보장하고 가능한 한 빨리 많은 플랫폼을 보여주는 다양성을 높이기 위함입니다.

의존성 테스트

Node.js에는 핵심 의존성이 많이 있습니다. 이러한 의존성에 적용하는 변경 사항은 부정적인 영향이 전혀 없도록 보장되어야 합니다.

그래서 Node.js 저장소에서 V8 트리의 v8 테스트를 실행하는 작업을 갖게 되었습니다. 이 작업은 매일 밤 실행되며 v8 트리에 변경사항이 있는 PR이 올라왔을 때 실행됩니다.

현재 다른 의존성에 대한 테스트는 실행하고 있지 않지만 Node.js 트리에서 v8 외 다른 의존성의 변경사항은 더 적은 편입니다.

모듈 테스트

모듈 테스트는 방어의 다음 단계입니다. 이는 변경사항이 최종 사용자의 코드를 깨뜨리지 않는다는 검사를 합니다. 대부분 애플리케이션은 다수의 모듈을 사용하고 인기 있는 다수의 모듈은 널리 사용됩니다. 이러한 모듈에 영향을 끼치는 변경사항은 커뮤니티에도 큰 영향을 줄 것입니다.

전략은 핵심 모듈 자체의 유닛 테스트를 가능한 한 자주 실행하는 것입니다. 현재는 현재 버전과 LTS 릴리스에서 이를 실행하고 빈도를 높이려고 작업 중입니다.

https://github.com/nodejs/citgm/에서 모듈 테스트에 관한 노력에 대해 더 볼 수 있습니다.

부하 테스트

어떤 문제는 장시간 동작할 때만 발생합니다. 부하 테스트는 장시간에 걸친 특정 시나리오를 실행해서 이러한 문제를 확인합니다.

지금은 부하 테스트를 전혀 실행하지 않지만, 모듈 테스트를 적절한 빈도로 실행할 수 있게 된 후에는 부하 테스트를 우선시하겠습니다.

개발 작업흐름

개발 작업 흐름은 모듈테스트의 또 다른 단계입니다. 변경사항이 이러한 개발 흐름에 어떤 회귀 문제도 만들지 않는다고 확인하기 위해 일반적인 개발 워크플로우를 테스트합니다.

여기에 더 작업해야 할 부분이 많이 있지만, 스트레스 테스트를 작업한 후에 할 목록에 있습니다.

사용 사례 테스트

이는 개발 작업 흐름 다음에 할 논리적 단계가 될 것이고 Node.js의 일반적인 사용 사례에 대한 테스트입니다.

현재 전략은 벤치마크를 구성해서 이러한 커버리지를 얻는 것이지만 다른 단계의 테스트를 구성하면 작업할 수 있는 또 하나의 영역입니다.

성능 벤치마크

기능 안전성을 보장하는 것은 좋지만 충분하지는 않습니다. 변경사항이 적용되면서 성능이 저하되지 않는다는 것도 보장해야 합니다.

Node.js에서 일반적인 사용 사례를 정의해서 벤치마크 세트를 만들고 실행한 뒤 그 결과를 정기적으로 발행하는 것이 전략입니다. 이 작업은 벤치마킹 워킹 그룹에서 진행중이지만 현재도 다수의 핵심 벤치마크는 주요 Node.js 버전에서 매일 밤 실행되고 있습니다. 다음 링크에서 이 데이터를 볼 수 있습니다.

https://benchmarking.nodejs.org/

이 데이터로 변경사항이 적용될 때 성능 관련 회귀 문제를 피할 수 있습니다.

요약

글이 꽤 길었지만, 작년에 Node.js 커뮤니티에서 당신이 본 많은 활동을 이해했기를 바랍니다. “왜 이런 작업을 하고 있는가?”라는 물음에 대한 대답은 이렇습니다.

Node.js - 속도를 동반한 품질

Node v6.10.0(LTS)

주요 변경사항

SEMVER-MINOR 변경사항은 다음과 같습니다.

  • crypto: 알려진 CA에 인증서를 추가할 수 있습니다.(Sam Roberts) #9139
  • deps: INTL ICU를 58 버전으로 업그레이드했습니다.(Steven R. Loomis) #9234
  • process: process.memoryUsage.external을 추가했습니다.(Fedor Indutny) #9587
  • src: process.emitWarning()의 래퍼를 추가했습니다.(Sam Roberts) #9139

주요 SEMVER-PATCH 변경사항은 다음과 같습니다.

  • fs: realpathSync에 심볼릭 링크가 아닌 경로를 캐시합니다.(Jeremy Yallop) #10253
  • repl: 스코프에 속한 패키지도 자동완성할 수 있게 됐습니다.(Evan Lucas) #10296

Commits

  • [d532d7497a] - async_wrap: clear destroy_ids vector (Trevor Norris) #10400
  • [75d6f111aa] - benchmark: refactor buffer benchmarks (Troy Connor) #10175
  • [40c7ec62e0] - buffer: fix single-character string filling (Anna Henningsen) #9837
  • [03f0d2ac21] - buffer: handle UCS2 .fill() properly on BE (Anna Henningsen) #9837
  • [9e76350372] - build: add /opt/freeware/… to AIX library path (Stewart X Addison) #10128
  • [7d519fa87c] - build: add (not) cross-compiled configure flags (Jesús Leganés-Combarro ‘piranna) #10287
  • [a2f02859b0] - (SEMVER-MINOR) crypto: allow adding extra certs to well-known CAs (Sam Roberts) #9139
  • [4e1a5a71c1] - crypto: fix handling of root_cert_store. (Adam Langley) #9409
  • [8c6ecce743] - crypto: Use reference count to manage cert_store (Adam Majer) #9409
  • [8bccd9ed67] - debugger: call this.resume() after this.run() (Lance Ball) #10099
  • [2a39d1c7a4] - deps: backport 7c3748a from upstream V8 (Cristian Cavalli) #10881
  • [5c5f5fb415] - deps: backport 224d376 from V8 upstream (jBarz) #10546
  • [687137eced] - deps: ICU 58.2 bump download URL (Steven R. Loomis) #10206
  • [ae477b7b62] - deps: ICU 58.2 bump (Steven R. Loomis) #10206
  • [ad807ad29b] - (SEMVER-MINOR) deps: Intl: ICU 58 bump - small icu (BIG COMMIT) (Steven R. Loomis) #9234
  • [0ee665c4ed] - (SEMVER-MINOR) deps: Intl: ICU 58 bump: configure/LICENSE/docs (Steven R. Loomis) #9234
  • [4197b9b041] - deps: update patch level in V8 (Myles Borins) #10666
  • [e71129ebbc] - deps: cherry-pick a715957 from V8 upstream (Myles Borins) #10666
  • [87839ca036] - deps: cherry-pick 7a88ff3 from V8 upstream (Myles Borins) #10666
  • [13983d474a] - deps: cherry-pick d800a65 from V8 upstream (Myles Borins) #10666
  • [f77fcf893f] - deps: cherry-pick baba152 from V8 upstream (Michaël Zasso) #10689
  • [fdc373d639] - deps: fix compile bug in v8/lookup.h (Matthew Avery) #10525
  • [055f666065] - doc: change logical to bitwise OR in dns lookup (Sakthipriyan Vairamani (thefourtheye)) #11037
  • [78b83e7249] - doc: killSignal option accepts integer values (Sakthipriyan Vairamani (thefourtheye)) #10424
  • [76e6e7ef55] - doc: correct vcbuild options for windows testing (Jonathan Boarman) #10686
  • [50c2ecdf0e] - doc: replace newlines in deprecation with space (Sakthipriyan Vairamani (thefourtheye)) #11074
  • [15df5c08ea] - doc: fix changelog for v6 (Myles Borins) #11090
  • [03302d6133] - doc: add joyeecheung to collaborators (Joyee Cheung) #10603
  • [447287c432] - doc: unify dirname and filename description (Sam Roberts) #10527
  • [c3882f4d8b] - doc: warn about unvalidated input in child_process (Matthew Garrett) #10466
  • [11d8f2439b] - doc: require two-factor authentication (Rich Trott) #10529
  • [017764018c] - doc: use “Node.js” in V8 guide (Rich Trott) #10438
  • [636335a1c3] - doc: require() tries first core not native modules (Vicente Jimenez Aguilar) #10324
  • [f7c0eb8ba6] - doc: clarify the review and landing process (Joyee Cheung) #10202
  • [b814b4cec7] - doc: update writable.write return value (Tanuja-Sawant) #9468
  • [3079ba6e78] - doc: redirect ‘Start a Working Group’ to TSC repo (William Kapke) #9655
  • [8dbba48f70] - doc: add Working Group dissolution text (William Kapke) #9656
  • [1dc7b8918d] - doc: fixup errors in stream.md (Fumiya KARASAWA) #10411
  • [c2156fcba1] - doc: more efficient example in the console.md (Vse Mozhet Byt) #10451
  • [809ae9da29] - doc: var -> const / let in the console.md (Vse Mozhet Byt) #10451
  • [3f289a3efe] - doc: improve common.mustCall() explanation (Rich Trott) #10390
  • [59aa4e9e29] - doc: consistent ‘Returns:’ part two (Myles Borins) #10391
  • [54dec23aba] - doc: clarify macosx-firewall suggestion BUILDING (Chase Starr) #10311
  • [c9c9b5c47e] - doc: modernize code examples in the cluster.md (Vse Mozhet Byt) #10270
  • [540ff7c123] - doc: add Michaël Zasso to the CTC (Michaël Zasso)
  • [c95adab452] - doc: fix broken link in COLLABORATOR_GUIDE.md (Emanuel Buholzer) #10337
  • [24bf75309a] - doc: fix typo in ecdhCurve, a tls property name (Sam Roberts) #10345
  • [2eccea06b5] - doc: expand common module material in test guide (Rich Trott) #10251
  • [843d4557e2] - doc: fix broken link in COLLABORATOR_GUIDE.md (Michael Dawson) #10267
  • [b662de6301] - doc: rework tls for accuracy and clarity (Sam Roberts) #9800
  • [e53262cda9] - doc: modernize child_process example code (Vse Mozhet Byt) #10102
  • [9988f02025] - doc: fix typo in code example of ‘path’ module (pallxk) #10136
  • [718b5902bc] - doc: standardizing on make -j4 (Jonathan Darling) #9961
  • [5b6317b10f] - doc: add note to parallelize make (Jonathan Darling) #9961
  • [7815efa5c1] - doc: add some info on tty#setRawMode() (Jeremiah Senkpiel) #10147
  • [639ef411b4] - doc: update path.format description and examples (anoff) #10046
  • [e6c74b37b3] - fs: remove needless assignment of null (Francis Gulotta) #10260
  • [709b9b4660] - fs: cache non-symlinks in realpathSync. (Jeremy Yallop) #10253
  • [b5f747187d] - http: remove stale timeout listeners (Karl Böhlmark) #9440
  • [90bd36bd15] - inspector: check if connected before waiting (Eugene Ostroukhov) #10094
  • [5ddd508304] - lib,test: use consistent operator linebreak style (Michaël Zasso) #10178
  • [3eb9373095] - os: fix os.release() for aix and add test (jBarz) #10245
  • [8ea4487ca7] - (SEMVER-MINOR) process: add process.memoryUsage.external (Fedor Indutny) #9587
  • [6f8b32e754] - promise: better stack traces for –trace-warnings (Anna Henningsen) #9525
  • [1d400ea484] - Revertrepl: disable Ctrl+C support on win32 for now” (Anna Henningsen) #8645
  • [57c4c6f5ae] - repl: allow autocompletion for scoped packages (Evan Lucas) #10296
  • [5e07bce166] - (SEMVER-MINOR) src: add wrapper for process.emitWarning() (Sam Roberts) #9139
  • [7da06088eb] - src: describe what NODE_MODULE_VERSION is for (Sam Roberts) #10414
  • [7897e7685f] - src: fix string format mistake for 32 bit node (Alex Newman) #10082
  • [cfa1b5a9e7] - src: fix memory leak introduced in 34febfbf4 (Ben Noordhuis) #9604
  • [cc0c736bcc] - src,tools: speed up startup by 2.5% (Ben Noordhuis) #5458
  • [9a8416258d] - stream, test: test _readableState.emittedReadable (Joyee Cheung) #10249
  • [f9227fe944] - stream_base: homogenize req_wrap_obj use (Fedor Indutny) #10184
  • [8f00f70d19] - test: fix test.py command line options processing (Julien Gilli) #11153
  • [fce1d10153] - test: add –abort-on-timeout option to test.py (Julien Gilli) #11086
  • [1c6e171de9] - test: add tests for clearBuffer state machine (Safia Abdalla) #9922
  • [8ede25964b] - test: update test-cluster-shared-handle-bind-error (cjihrig) #10547
  • [e34af8d647] - test: avoid assigning this to variables (cjihrig) #10548
  • [c07cfc83e4] - test: improve test-http-allow-req-after-204-res (Adrian Estrada) #10503
  • [e067c48889] - test: improve test-fs-empty-readStream.js (Adrian Estrada) #10479
  • [aca927e928] - test: refactor test-stream-pipe-after-end (Rich Trott) #10483
  • [82f4a33359] - test: use strictEqual in test-http-server (Fabrice Tatieze) #10478
  • [683b060050] - test: refactor test-stream2-unpipe-drain (Chris Story) #10033
  • [f1dea3fa41] - test: add test for SIGWINCH handling by stdio.js (Sarah Meyer) #10063
  • [c5ccffd387] - test: improve code in test-vm-preserves-property (Adrian Estrada) #10428
  • [c9ca82e58e] - test: basic functionality of readUIntLE() (larissayvette) #10359
  • [b1f2aeb801] - test: fix flaky test-https-timeout (Rich Trott) #10404
  • [9546ad7d4d] - test: basic functionality of readUIntBE() (larissayvette) #10417
  • [b0adda0335] - test: improve test-cluster-worker-constructor.js (Adrian Estrada) #10396
  • [d37443ca8d] - test: add known_issues test for #5350 (AnnaMag) #10319
  • [959860f55c] - test: stream readable resumeScheduled state (Italo A. Casas) #10299
  • [c604016cb4] - test: add known_issues test for #6287 (AnnaMag) #10272
  • [a24a35f668] - test: stream readable needReadable state (Joyee Cheung) #10241
  • [8d2f722541] - test: clean up domain-no-error-handler test (weyj4) #10291
  • [c5ef631fdc] - test: update test-domain-uncaught-exception.js (Andy Chen) #10193
  • [4b5587c5db] - test: refactor test-domain.js (Siddhartha Sahai) #10207
  • [99ba710bca] - test: fail for missing output files (Anna Henningsen) #10150
  • [25d6eed654] - test: stream readableState readingMore state (Gregory) #9868
  • [f3d1b7209d] - test: s/ASSERT/assert/ (cjihrig) #10544
  • [9cee6786f7] - test: refactor test-stream-unshift-read-race (Rich Trott) #10532
  • [19b3015201] - test: refactor test-stream-pipe-error-handling (Rich Trott) #10530
  • [33c47a6415] - test: refactor test-tls-alert-handling (Rich Trott) #10482
  • [1a7ca46544] - test: fix flaky test-http-client-timeout-with-data (Rich Trott) #10431
  • [328c14512f] - test: refactor the code in test-http-connect (Adrian Estrada) #10397
  • [99c9cda6d1] - test: refactor test-stdin-from-file (Rob Adelmann) #10331
  • [38d9c15edd] - test: refactor the code in test-dns-ipv4 (Adrian Estrada) #10200
  • [4f18943810] - test: refactor the code in test-fs-chmod (Adrian Estrada) #10440
  • [d89587c1bf] - test: swap var for let/const throughout (Paul Graham) #10177
  • [d2ce3909b1] - test: improve the code in test-pipe.js (Adrian Estrada) #10452
  • [3c642ee2ce] - test: improve code in test-fs-readfile-error (Adrian Estrada) #10367
  • [f1075a1726] - test: improve code in test-vm-symbols (Adrian Estrada) #10429
  • [5f18f0c448] - test: fix and improve debug-break-on-uncaught (Sakthipriyan Vairamani (thefourtheye)) #10370
  • [12d86aba49] - test: refactor test-init.js (Sakthipriyan Vairamani (thefourtheye)) #10384
  • [6370cbe9dc] - test: refactor code in test-cluster-http-pipe (Adrian Estrada) #10297
  • [781d04a1b3] - test: improve code in test-http-bind-twice.js (Adrian Estrada) #10318
  • [390cab8d1a] - test: change var declarations, add mustCall check (Daniel Sims) #9962
  • [e60be9ccc3] - test: refactor test-stdin-script-child (Emanuel Buholzer) #10321
  • [8b44fb30a1] - test: fix timers-same-timeout-wrong-list-deleted (Rich Trott) #10362
  • [1b9c125325] - test: refactor test-stream2-writable (Rich Trott) #10353
  • [4cf11d9f4a] - test: refactor test-cluster-net-listen (Segu Riluvan) #10047
  • [0e5ef4164d] - test: change assert.strict to assert.strictEqual() (Ashita Nagesh) #9988
  • [37ced4d324] - test: refactor the code in test-http-keep-alive (Adrian Estrada) #10350
  • [61105d75fb] - test: use strictEqual in test-cwd-enoent-repl.js (Neeraj Sharma) #9952
  • [40c55e73be] - test: refactor test-net-reconnect-error (Duy Le) #9903
  • [0c31802ea9] - test: add test-require-invalid-package (Duy Le) #9903
  • [c706a92373] - test: refactor test-child-process-kill (Duy Le) #9903
  • [d7a36fc2da] - test: use consistent block spacing (Rich Trott) #10377
  • [03bf87c703] - test: refactor test-timers-this (Rich Trott) #10315
  • [8792fb1788] - test: improve code in test-fs-open.js (Adrian Estrada) #10312
  • [d8405da44c] - test: refactor the code in test-dns-ipv6 (Adrian Estrada) #10219
  • [a18f72d8d2] - test: improve test-child-process-fork-and-spawn (Adrian Estrada) #10273
  • [4cba20c1c8] - test: fix flaky test-http-client-timeout-event (Rich Trott) #10293
  • [70f70478de] - test: improve test-child-process-exec-buffer (Adrian Estrada) #10275
  • [3a6fdd805d] - test: refactor test-fs-read-stream-inherit (Rich Trott) #10246
  • [92e3f8f26e] - test: refactor test-dgram-send-callback-multi-buffer (mfrance) #9999
  • [5ff6011cec] - test: refactor test-tls-ecdh-disable (Aaron Williams) #9989
  • [be3334709d] - test: fix http-client-timeout-option-listeners (Rich Trott) #10224
  • [713f04ce1d] - test: refactor test-stream-big-push (Rich Trott) #10226
  • [373755cad0] - test: refactor test-http-dns-fail (Adrian Estrada) #10243
  • [2f64d5a294] - test: refactor test-crypto-random (Rich Trott) #10232
  • [70e4fb8ca1] - test: refactor test-http-pause-resume-one-end (Rich Trott) #10210
  • [b0a5a3bb70] - test: fix flaky test-dgram-exclusive-implicit-bind (Rich Trott) #10212
  • [e3f926594e] - test: improvements in test fixtures symlinked (Adrian Estrada) #10182
  • [217e2c6fcf] - test: refactor test-fs-fsync (Rob Adelmann) #10176
  • [10747f4102] - test: refactor test-http-after-connect.js (larissayvette) #10229
  • [0b243ca178] - test: refactor assert.equal, update syntax to ES6 (Prieto, Marcos)
  • [c57d72089f] - test: refactor http pipelined socket test (Rich Trott) #10189
  • [3f17c180be] - test: var to const in tls-no-cert-required (Sam Roberts) #9800
  • [6b8d4cab41] - test: tls key/cert ordering not necessary (Sam Roberts) #9800
  • [b2b2774325] - test: refactor test-handle-wrap-close-abort (Rich Trott) #10188
  • [c65dfa9b12] - test: add ES6 and strictEqual to test-fs-truncate (Adrian Estrada) #10167
  • [951ddb3d53] - test: improving crypto fips (James Tenenbaum) #10002
  • [a75883ec7c] - test: stream readableListening internal state (Italo A. Casas) #9864
  • [56a512f7be] - test: check for error on invalid signal (Matt Phillips) #10026
  • [8e7f150a8e] - test: refactor test-http-unix-socket (davidmarkclements) #10072
  • [717b4b4e8a] - test: increase test coverage of BufferList (joyeecheung) #10171
  • [a56b22e881] - test: fix flaky test-net-socket-timeout (Rich Trott) #10172
  • [58c5bdc57c] - test: refactor test-net-keepalive.js (Kyle Corsi) #9995
  • [b868ce6763] - timers: fix handling of cleared immediates (hveldstra) #9759
  • [95a0a67ff3] - tls: do not refer to secureOptions as flags (Sam Roberts) #9800
  • [d50e8d8af9] - tls: document and test option-less createServer (Sam Roberts) #9800
  • [89db5fcc23] - tls: fix/annotate connect arg comments (Sam Roberts) #9800
  • [20665f408b] - tools: enable block-spacing rule in .eslintrc (Rich Trott) #10377
  • [e8effa434e] - tools: enforce consistent operator linebreak style (Michaël Zasso) #10178
  • [0162908708] - tools: add macosx-firwall script to avoid popups (Daniel Bevenius) #10114
  • [3ac9e01faa] - url: add a got host pattern in url.js (Axel Monroy) #9653
  • [9eaf2e9517] - watchdog: add flag to mark handler as disabled (Bartosz Sosnowski) #10248
  • [969dcab5aa] - win,msi: add required UIRef for localized strings (Bill Ticehurst) #8884

Windows 32-bit Installer: https://nodejs.org/dist/v6.10.0/node-v6.10.0-x86.msi
Windows 64-bit Installer: https://nodejs.org/dist/v6.10.0/node-v6.10.0-x64.msi
Windows 32-bit Binary: https://nodejs.org/dist/v6.10.0/win-x86/node.exe
Windows 64-bit Binary: https://nodejs.org/dist/v6.10.0/win-x64/node.exe
macOS 64-bit Installer: https://nodejs.org/dist/v6.10.0/node-v6.10.0.pkg
macOS 64-bit Binary: https://nodejs.org/dist/v6.10.0/node-v6.10.0-darwin-x64.tar.gz
Linux 32-bit Binary: https://nodejs.org/dist/v6.10.0/node-v6.10.0-linux-x86.tar.xz
Linux 64-bit Binary: https://nodejs.org/dist/v6.10.0/node-v6.10.0-linux-x64.tar.xz
Linux PPC LE 64-bit Binary: https://nodejs.org/dist/v6.10.0/node-v6.10.0-linux-ppc64le.tar.xz
Linux PPC BE 64-bit Binary: https://nodejs.org/dist/v6.10.0/node-v6.10.0-linux-ppc64.tar.xz
Linux s390x 64-bit Binary: https://nodejs.org/dist/v6.10.0/node-v6.10.0-linux-s390x.tar.xz
AIX 64-bit Binary: https://nodejs.org/dist/v6.10.0/node-v6.10.0-aix-ppc64.tar.gz
SunOS 32-bit Binary: https://nodejs.org/dist/v6.10.0/node-v6.10.0-sunos-x86.tar.xz
SunOS 64-bit Binary: https://nodejs.org/dist/v6.10.0/node-v6.10.0-sunos-x64.tar.xz
ARMv6 32-bit Binary: https://nodejs.org/dist/v6.10.0/node-v6.10.0-linux-armv6l.tar.xz
ARMv7 32-bit Binary: https://nodejs.org/dist/v6.10.0/node-v6.10.0-linux-armv7l.tar.xz
ARMv8 64-bit Binary: https://nodejs.org/dist/v6.10.0/node-v6.10.0-linux-arm64.tar.xz
Source Code: https://nodejs.org/dist/v6.10.0/node-v6.10.0.tar.gz
Other release files: https://nodejs.org/dist/v6.10.0/
Documentation: https://nodejs.org/docs/v6.10.0/api/

SHASUMS

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
48
49
50
51
52
53
54
55
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

28ec25cbe3b1f4000a2a9f3bb565c36ff89745db35d5db07b99d223eb52941c8 node-v6.10.0-aix-ppc64.tar.gz
ff0c23dad9202c8a70049aa73582eff6d5324100d8db810e9553576817aa59eb node-v6.10.0-darwin-x64.tar.gz
d522ab3cda6b66ab23535f4aaf1d2c6a9ab049074bf75a598249b95d52933b05 node-v6.10.0-darwin-x64.tar.xz
c00c9cb2a90b59c5d7d6960729a28dca03c04521ec8386710d48fe5676eccf11 node-v6.10.0-headers.tar.gz
12b4dc83ffdf149d9a38351b9bf22c167faa196c632d0a2047d5d06aacddf427 node-v6.10.0-headers.tar.xz
5f4024d2df1708ef80c5e7b1606d972e8f9779b350df832932174ce651e7795f node-v6.10.0-linux-arm64.tar.gz
fc020ac1c3e6d3148ff353dd3b2b11017e556cabf405e385392f599ce34cdf16 node-v6.10.0-linux-arm64.tar.xz
dc529455b6f85a5c9ba2e6709ca90d580ac297cb39a8444a90e2d579761f211f node-v6.10.0-linux-armv6l.tar.gz
41f5c6c106e8f3da4e139364739fcbbbc21012984533e2b6b33a61b234a40b3f node-v6.10.0-linux-armv6l.tar.xz
7b068e6a1090ca0765455f35f99a2c090690ac8312d4a410ef481960f79216d8 node-v6.10.0-linux-armv7l.tar.gz
95efb476886df15cc6586dd26ecc50834a768e347cf95e861461853cfb40fc78 node-v6.10.0-linux-armv7l.tar.xz
44a9fbd5870d7fa45a50fcb1c14864b3c9d7500d2e42e611e5ad71d9c99e176b node-v6.10.0-linux-ppc64le.tar.gz
2909cd33e7706cad999c0a424a8598c48be5894582a0d5afbc1051d3bb5a7347 node-v6.10.0-linux-ppc64le.tar.xz
182aa9ab11daa9dbb14a724c64a3cff52feaf010aae4bd27fab3a86644578126 node-v6.10.0-linux-ppc64.tar.gz
7ae1a65f4d62f899840cacd2017af4062e4167426b5d4ac56e186d91c2d8f4f8 node-v6.10.0-linux-ppc64.tar.xz
29ca73aec6d2adf33c9dfed20e62d7bea77ec5dc9b54001a1698c23d8bb815b7 node-v6.10.0-linux-s390x.tar.gz
e4dcd6cc4fccaa12fc9077e652a435090641391954853ecb718293fcbb9bd508 node-v6.10.0-linux-s390x.tar.xz
20b144da9bc3c314abfb760e90580a94091037257fc0b2c32871bc29257f7545 node-v6.10.0-linux-x64.tar.gz
0f28bef128ef8ce2d9b39b9e46d2ebaeaa8a301f57726f2eba46da194471f224 node-v6.10.0-linux-x64.tar.xz
e2e0fea44df5770f209bb80b8ec0269832958b67756445884e5e1abf20505eff node-v6.10.0-linux-x86.tar.gz
684b1121730af2d1373c157608329c5234decd57f2f335051ad734c250b28f6f node-v6.10.0-linux-x86.tar.xz
92d4da1a674b8a3376a6eb85f10ef3c3cbca50e4402e743309b9576af657834b node-v6.10.0.pkg
295f4658b41b892e1ed510807e5f2269a51530ac96e6bfb49edce047606ef30e node-v6.10.0-sunos-x64.tar.gz
f6abb0b6444cad6c4b46ae832ee12250d640a97d06741a85bac00d632128483b node-v6.10.0-sunos-x64.tar.xz
c594c2659e4153c6064bb5d8dfc9233d044ac83286f522d9d19b0ace2d5086a2 node-v6.10.0-sunos-x86.tar.gz
23b1ee584898a4122882ae53f6c0636b9ae78fa717dc946ac133c115d11d08a3 node-v6.10.0-sunos-x86.tar.xz
01dae00dc0faa37a4b7a84098e2f04631827fc42e319eb66ccc3ab1d561ea42d node-v6.10.0.tar.gz
f65d5d4b7253ee29f3ba4edabd3473845075e43569bceea4267e7bf3e00ebb96 node-v6.10.0.tar.xz
b48f5006d8a5104cae150775ad7568c833381e17330c349f4531e632af5b2850 node-v6.10.0-win-x64.7z
39c809fe02863963a4bb1eaa0daec59abcc92c0331447c3d3e06392a7f72b79c node-v6.10.0-win-x64.zip
686514b71b98c03524c392db9064ec5ff794855c5d7c998152db4b80f793744e node-v6.10.0-win-x86.7z
8ae92356479c43e1d1c07bb41a0769b6a38b121c50df993912bbe10d744ae099 node-v6.10.0-win-x86.zip
0fd99472edd0ef518ac557c24c037f83f4c82341348a2b397d51410550b6217c node-v6.10.0-x64.msi
65add5aebb209705dacc8462a5376dcb612e19b3f2af1ce1e8a0c7e1c95e3e81 node-v6.10.0-x86.msi
9869e13d1157bcd08f3b57681d56e97060097124de1fc6c037f304b1ceb3ee28 win-x64/node.exe
b922a2fd0da33c495bada48958c0bd99714c967d0ed6a0899c3e29de6830cdc6 win-x64/node.lib
1416e93efaa418bf0457358e7039b4d06a8a6ebbc0a09fb0bff2f33a16b48dae win-x64/node_pdb.7z
7326846399b53562a24eca0a6b10159fbd2f9823f2878fba487ab688d6529b61 win-x64/node_pdb.zip
0fb45b3dbecb2f8a1612667ba53f1fb01e967ccf30156dbdc1e6bbc1b240f3ee win-x86/node.exe
525900301fa12a9a86834a99b9480aa1d97795d6b263e2d42ca2bb0b2a8c9bbf win-x86/node.lib
eccab63147ec453ac2103ebfcb719a83b0dc0778c6a5c096b314ed42c011d58a win-x86/node_pdb.7z
53eeebba3f95fbc886944cf9f2945cf2e87fe81a40910da0b76cb5bf1c1c513a win-x86/node_pdb.zip
-----BEGIN PGP SIGNATURE-----

iQEcBAEBCAAGBQJYraegAAoJEJM7AfQLXKlGWUQH/0o5j/V/Zr1+wNPAJ8nThmx0
04hWMPYh6rU0wWi+QY7dUilEOjKgixNM5EgzcrEtdvTmFtfUFgaABduxVyIcd8L0
QGYSmUbcdygS4CfTcIRnf9yvVPF3wB9q+YObATtOgTEUspp3+02A85enQLV1CCb9
4vdRnHmlArg1eWcpLkgIliQ2DySHcAjB/wE63T60TxiTnrayza1L0D+ecnaqJYfw
aVRQp4o2xO8cYCLOvVArBECzJzE9lPtcImN177f2wLyES5laEYAOXfl5ZHnxJt9I
go6+ePtLEgTtOubm9jUox3U5ZdcYPNv+1yJhlYImqp4O9sWMI+ruNIWXCwkqqrE=
=YG3A
-----END PGP SIGNATURE-----

Node.js 주간 뉴스 2017년 2월 10일

Node v7.5.0(현재 버전)

Node v4.7.3(LTS)

Node v6.9.5(LTS)

커뮤니티 업데이트

다가오는 이벤트

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

Node v7.5.0(현재 버전)

주요 변경 사항

  • crypto:
    • 런타임에 인증서 저장소를 선택할 수 있게 됐습니다. (Adam Majer) #8334
    • 번들된 CA 대신 시스템 CA를 사용합니다. (Adam Majer) #8334
  • deps:
    • npm을 4.1.2 버전으로 업그레이드했습니다. (Kat Marchán) #11020
    • OpenSSL 소스를 1.0.2k로 업그레이드했습니다. (Shigeki Ohtsu) #11021
  • doc: WHATWG URL API를 위한 간단한 문서를 추가했습니다. (James M Snell) #10620
  • process: NODE_NO_WARNINGS 환경 변수를 추가했습니다. (cjihrig) #10842
  • url: http.request와 https.request에 URL을 사용할 수 있게 됐습니다. (James M Snell) #10638

Commits

  • [61f6f1260d] - (SEMVER-MINOR) src/doc: improve man page and –help (Roman Reiss) #10157
  • [b2d0c44fb1] - assert: update comments (Kai Cataldo) #10579
  • [c217b438f2] - assert, tools: enforce strict (not)equal in eslint (Gibson Fahnestock) #10698
  • [94c4323d56] - async_wrap: close the destroy_ids_idlehandle (René Schünemann) #10385
  • [f61c71b533] - benchmark: add progress indicator to compare.js (Joyee Cheung) #10823
  • [ccdc922ada] - benchmark: move setImmediate benchmarks to timers (Joshua Colvin) #11010
  • [062c8513ad] - benchmark: add more thorough timers benchmarks (Jeremiah Senkpiel) #10925
  • [1e0294ccc9] - benchmark: add benchmark for object properties (Michaël Zasso) #10949
  • [47c0953b12] - benchmark: add benchmark for vm.runIn*() (Rich Trott) #10816
  • [2f339e7200] - benchmark: cleanup child_process IPC benchmark (Yuya Tanaka) #10557
  • [eac1871c45] - benchmark: improve WHATWG URL benchmarks (Joyee Cheung) #10678
  • [ecf72d8b54] - benchmark: use “confidence” in output of compare.R (Joyee Cheung) #10737
  • [35334273b9] - benchmark: don’t lint autogenerated modules (Brian White) #10756
  • [4f96272f12] - benchmark: fix typo “categoty” -> “category” (Victor Felder) #10568
  • [2f4577c07d] - benchmark: keep decimals in results (Brian White) #10559
  • [372e3eeb4b] - benchmark: improve readability of net benchmarks (Brian White) #10446
  • [d19136da84] - benchmark: move punycode benchmark out of net (Brian White) #10446
  • [be24cc0187] - benchmark: add ClientRequest creation benchmark (Brian White) #10654
  • [1438d00119] - benchmark,lib,test: adjust for linting (Rich Trott) #10561
  • [d13aba8499] - buffer: improve compare() performance (Brian White) #10927
  • [6549bc2a35] - buffer: fix comments in bidirectionalIndexOf (dcposch@dcpos.ch) #10162
  • [a114f63627] - buffer: improve toJSON() performance (Brian White) #10895
  • [9c2f686f7e] - build: don’t build deps/zlib if –shared-zlib set (Gibson Fahnestock) #10657
  • [659428fe1d] - build: sort sources alphabetically (Daniel Bevenius) #10892
  • [74f9cc9f0a] - build: move source files from headers section (Daniel Bevenius) #10850
  • [a408ba6454] - build: don’t squash signal handlers with –shared (Stewart X Addison) #10539
  • [ddcd1a202f] - child_process: optimize IPC for large data (Yuya Tanaka) #10557
  • [d751afae0f] - cluster: refactor module into multiple files (cjihrig) #10746
  • [6687b95263] - crypto: return the retval of HMAC_Update (Travis Meisenheimer) #10891
  • [a1897c1445] - (SEMVER-MINOR) crypto: ability to select cert store at runtime (Adam Majer) #8334
  • [aeea13b6f6] - (SEMVER-MINOR) crypto: Use system CAs instead of using bundled ones (Adam Majer) #8334
  • [ac2b059500] - (SEMVER-MINOR) crypto: do not use pointers to std::vector (Adam Majer) #8334
  • [5fd0f9ae63] - crypto: freelist_max_len is gone in OpenSSL 1.1.0 (Adam Langley) #10859
  • [4e7a31b3a0] - crypto,tls: fix mutability of return values (Rich Trott) #10795
  • [84a9c158ef] - deps: fix npm files from upgrade to 4.1.2 (João Reis) #11085
  • [9e60af893c] - deps: upgrade npm to 4.1.2 (Kat Marchán) #11020
  • [da59a57d60] - deps: limit regress/regress-crbug-514081 v8 test (Michael Dawson) #6678
  • [edd20720ac] - deps: update openssl asm and asm_obsolete files (Shigeki Ohtsu) #11021
  • [ce20ad76ec] - deps: add -no_rand_screen to openssl s_client (Shigeki Ohtsu) nodejs/io.js#1836
  • [06f87c3e0a] - deps: fix asm build error of openssl in x86_win32 (Shigeki Ohtsu) iojs/io.js#1389
  • [093cacf61b] - deps: fix openssl assembly error on ia32 win32 (Fedor Indutny) iojs/io.js#1389
  • [a3b3b35c53] - deps: copy all openssl header files to include dir (Shigeki Ohtsu) #11021
  • [6a0f1fabb1] - deps: upgrade openssl sources to 1.0.2k (Shigeki Ohtsu) #11021
  • [1fae98b833] - deps: upgrade npm to 4.1.1 (Rebecca Turner) #10781
  • [6e0888ad9e] - deps: add test for v8 bug in toUpper(‘ç’) (Steven R. Loomis) #9828
  • [1c4bf9e8ff] - deps: cherry-pick 2f5da9a from V8 upstream (Steven R. Loomis) #9828
  • [ffd938a694] - deps: upgrade libuv to 1.10.2 (cjihrig) #10717
  • [aa6b9f979e] - deps: cherry-pick baba152 from V8 upstream (Michaël Zasso) #10688
  • [5887396150] - deps: cherry-pick a814b8a from upstream V8 (ishell@chromium.org) #10733
  • [cfc4c62249] - doc: correct and complete dgram’s Socket.bind docs (Alex Jordan) #11025
  • [55e98c66c0] - doc: add abouthiroppy to collaborators (Yuta Hiroto) #11080
  • [722ae8700f] - doc: add who to CC list for dgram (cjihrig) #11035
  • [a8533acee6] - doc: change logical to bitwise OR in dns lookup (Sakthipriyan Vairamani (thefourtheye)) #11037
  • [ac36d78d56] - doc: fix typo in http.md (Peter Mescalchin) #10975
  • [0bf3b24771] - doc: remove Chris Dickinson from active releasers (Ben Noordhuis) #11011
  • [9ca404ed25] - doc: for style, remove “isn’t” contraction (Sam Roberts) #10981
  • [4be9e98448] - doc: make os api doc more consistent (Evan Lucas) #10994
  • [7dff6aa67f] - doc: update http.md for consistency and clarity (Lance Ball) #10715
  • [dd608591a8] - doc: clarify Buffer.indexOf/lastIndexOf edge cases (dcposch@dcpos.ch) #10162
  • [5250b3358e] - doc: document argument variant in the repl.md (Vse Mozhet Byt) #10221
  • [c4b9f0a75e] - doc: DEFAULT_ECDH_CURVE was added in 0.11.13 (Sam Roberts) #10983
  • [84e2ff3738] - (SEMVER-MINOR) doc: add basic documentation for WHATWG URL API (James M Snell) #10620
  • [9d91bf9788] - doc: HTTP response getHeader doc fix (Faiz Halde) #10817
  • [06acf88117] - doc: remove duplicate properties bullet in readme (Javis Sullivan) #10741
  • [09ac2a2cb7] - doc: specify sorted requires in tests (Sam Roberts) #10716
  • [f380a5fb5a] - doc: mention cc-ing nodejs/python team for reviews (Anna Henningsen) #10637
  • [58bb263438] - doc: update TheAlphaNerd to MylesBorins (Myles Borins) #10586
  • [1253650cf4] - doc: update examples in api/crypto.md (Vse Mozhet Byt) #10909
  • [3177d6557a] - doc: move topics/guides to website (Evan Lucas) #10896
  • [d2896d92a7] - doc: update AUTHORS list to fix name (Noah Rose Ledesma) #10945
  • [4ffcefdc09] - doc: add TimothyGu to collaborators (Timothy Gu) #10954
  • [3fcf0aed4a] - doc: mention moderation repo in onboarding doc (Anna Henningsen) #10869
  • [79d8db0fef] - doc: add edsadr to collaborators (Adrian Estrada) #10883
  • [520b1f7853] - doc: clarifying variables in fs.write() (Jessica Quynh Tran) #9792
  • [daf1bf588b] - doc: add links for zlib convenience methods (Anna Henningsen) #10829
  • [aeaf887700] - doc: fix markdown escaping in CHANGELOG_V7.md (Anna Henningsen) #10827
  • [c8b0fc6d8b] - doc: remove duplicate PR link from changelog (Anna Henningsen) #10827
  • [049258b062] - doc: fixup added tags in cli.md (Anna Henningsen) #10826
  • [61798d1fa4] - doc: add missing added: tag for zlib.constants (Anna Henningsen) #10826
  • [73939ec701] - doc: clarify memory sharing behavior of buffer ctor (Zach Bjornson) #10778
  • [f8b081b519] - doc: fix broken internal link in process.md (Anna Henningsen) #10828
  • [a53f881f57] - doc: update writable.write return value (Nathan Phillip Brink) #10582
  • [6e1a3d1e57] - doc: use correct tls certificate property name (Sam Roberts) #10389
  • [23edfe00b3] - doc: edit writing-tests.md (Rich Trott) #10585
  • [9b73a8524f] - doc: fix misleading language in vm docs (Alexey Orlenko) #10708
  • [56ea7eb9a7] - doc: mention cc-ing nodejs/url team for reviews (Anna Henningsen) #10652
  • [66b34eac2f] - doc: sort require statements in tests (Sam Roberts) #10616
  • [238466bcf0] - doc: handle backpressure when write() return false (Matteo Collina) #10631
  • [ec226a2a3b] - doc: add test naming information to guide (Rich Trott) #10584
  • [b73e98bf48] - doc: fix missing negation in stream.md (Johannes Rieken) #10712
  • [bf95b074cd] - doc: “s/git apply/git am -3” in V8 guide (Myles Borins) #10665
  • [9c89b2f704] - doc: update LTS info for current releases (Evan Lucas) #10720
  • [3f1775707e] - doc: correct vcbuild options for windows testing (Jonathan Boarman) #10686
  • [8314d9ee73] - doc: killSignal option accepts integer values (Sakthipriyan Vairamani (thefourtheye)) #10424
  • [736a7f3dd3] - doc: update BUILDING.md (Lukasz Gasior) #10669
  • [f81bd48818] - doc: document use of Refs: for references (Gibson Fahnestock) #10670
  • [b70dde0050] - doc: new TLSSocket has no secure context options (Sam Roberts) #10545
  • [d3628d9e47] - doc: modernize child_process example code (Vse Mozhet Byt) #10102
  • [3270d4c89b] - doc: clarify information about ABI version (Rich Trott) #10419
  • [1fca69c263] - doc,test: tls .ca option supports multi-PEM files (Sam Roberts) #10389
  • [78a495e1a4] - eslint: remove dangling eslint symlink (Sam Roberts) #10771
  • [5cca69320f] - events: avoid emit() eager deopt (Victor Felder) #10568
  • [ded17579e5] - events: improve removeListener() performance (Brian White) #10572
  • [d047f8e8f8] - fs: remove unused parameter for encodeRealpathResult (Jackson Tian) #10862
  • [4c0f29723c] - http: use direct parameters instead (Jackson Tian) #10833
  • [c32984361a] - http: make request.abort() destroy the socket (Luigi Pinca) #10818
  • [8ba2cf9c51] - http: define all used properties in constructors (vitkarpov) #9116
  • [75aa6050ab] - http: eliminate capture of ClientRequest in Agent (Evan Torrie) #10134
  • [5059b76cbc] - http: misc ClientRequest cleanup (Brian White) #10654
  • [44c0e4f1ad] - http: avoid duplicate isArray() (Brian White) #10654
  • [e7859c217f] - http: optimize default method case (Brian White) #10654
  • [c9bff043c7] - http: optimize short path validation (Brian White) #10654
  • [c012dd79dc] - https: Use secureProtocol in Agent#getName (Andreas Lind) #9452
  • [9a111e701e] - inspector: no crash when WS server can’t start (Eugene Ostroukhov) #10878
  • [2d08bbadd6] - inspector: stop relying on magic strings (Eugene Ostroukhov) #10159
  • [e30e307a70] - inspector: move options parsing (Eugene Ostroukhov) #9691
  • [60f27f91e4] - inspector: remove unused uv_async_t (Eugene Ostroukhov) #10392
  • [a3abba0b1a] - lib: remove unnecessary parameter for assertCrypto() (Jackson Tian) #10834
  • [4de7b03a7d] - lib: refactor bootstrap_node.js regular expression (Rich Trott) #10749
  • [a6c93af244] - lib: refactor crypto cipher/hash/curve getters (Rich Trott) #10682
  • [6e8d627217] - lib,src: support values > 4GB in heap statistics (Ben Noordhuis) #10186
  • [de8eee6b16] - meta: decharter the http working group (James M Snell) #10604
  • [4caa0126aa] - openssl: fix keypress requirement in apps on win32 (Shigeki Ohtsu) iojs/io.js#1389
  • [d24491c6a7] - (SEMVER-MINOR) process: add NODE_NO_WARNINGS environment variable (cjihrig) #10842
  • [97ff43232b] - querystring: improve unescapeBuffer performance (Brian White) #10837
  • [f4796d5f6e] - querystring: improve stringify() performance (Brian White) #10852
  • [53421b174c] - querystring: improve parse() performance (Brian White) #10874
  • [d64e2371f6] - readline: refactor construct Interface (Jackson Tian) #4740
  • [e7b656db6e] - Revertrepl: disable Ctrl+C support on win32 for now” (Anna Henningsen) #8645
  • [a24264eb18] - src: fix v8 local handling in node_url.cc (Anna Henningsen) #11064
  • [8a6367cb20] - Revertsrc: don’t overwrite non-writable vm globals” (Anna Henningsen) #10920
  • [978acd138f] - (SEMVER-MINOR) src: support “–” after “-e” as end-of-options (John Barboza) #10651
  • [cd94642356] - src: add NODE_NO_WARNINGS to –help output (cjihrig) #10918
  • [63f43021b0] - src: remove unused PROTOCOL_JSON array (Ben Noordhuis) #10407
  • [5a976decf7] - src: remove unnecessary req_wrap_obj (Daniel Bevenius) #10942
  • [0c0334f7a4] - src: add a missing space in node_os.cc (Alexey Orlenko) #10931
  • [b89d848b36] - src: enable writev for pipe handles on Unix (Alexey Orlenko) #10677
  • [f0de955220] - src: reduce test_inspector_socket_server output (Daniel Bevenius) #10537
  • [59196af646] - stream: avoid additional validation for Buffers (Brian White) #10580
  • [fe80bd9600] - test: add 2nd argument to throws in test-assert (Marlena Compton) #11061
  • [8ef4add4c3] - test: require handler to be run in sigwinch test (Rich Trott) #11068
  • [e367b74c4f] - test: add an exception test to http-write-head (Yuta Hiroto) #11034
  • [65691d68d5] - test: increase coverage of internal/util (DavidCai) #10964
  • [0753bc17b6] - test: increase timeout in break-on-uncaught (Sakthipriyan Vairamani (thefourtheye)) #10822
  • [eff3a48e63] - test: add known_issues test for #10223 (AnnaMag) #11024
  • [72a97b66dc] - test: guarantee test runs in test-readline-keys (Rich Trott) #11023
  • [e3a316f3e6] - test: check error message in test-http-outgoing-proto (Alex Ling) #10943
  • [fcd08b8a1e] - test: add tests for searchParams (abouthiroppy) #10952
  • [f3efaeed35] - test: increase coverage for stream’s duplex (abouthiroppy) #10963
  • [b5e8413c3f] - test: allow for slow hosts in spawnSync() test (Rich Trott) #10998
  • [cfd1b19c34] - test: expand test coverage of fs.js (Vinícius do Carmo) #10947
  • [4aedde8d82] - test: expand test coverage of events.js (Vinícius do Carmo) #10947
  • [c1e166a168] - test: check noAssert option in buf.write*() (larissayvette) #10790
  • [580a453fcf] - test: expand test coverage of fs.js (Vinícius do Carmo) #10972
  • [fa8baa2aa1] - test: enhance test-timers (Rich Trott) #10960
  • [74ff804dbd] - test: add regression tests for vm bugs (Anna Henningsen) #10920
  • [1a39bfb7e2] - test: increase coverage for exec() functions (cjihrig) #10919
  • [4b38744e9b] - test: add process.assert’s test (abouthiroppy) #10911
  • [e7c953a5f9] - test: update Buffer.lastIndexOf (dcposch@dcpos.ch) #10162
  • [eb7ee50717] - test: improve code in test-crypto-verify (Adrian Estrada) #10845
  • [efa9845946] - test: refactor test-cli-eval.js (cjihrig) #10898
  • [b7bf43aa2b] - test: use common.fail() instead of assert(false) (cjihrig) #10899
  • [90a99177a3] - test: add dgram.Socket.prototype.bind’s test (abouthiroppy) #10894
  • [dc826caed2] - test: update V8 flag in test (Franziska Hinkelmann) #10917
  • [537d954ed2] - test: increase coverage of string-decoder (abouthiroppy) #10863
  • [3cd9833eff] - test: add tests for rs+, sr+ to test-fs-open-flags.js (abouthiroppy) #10780
  • [c8a069e544] - test: improving coverage of dns-lookup (abouthiroppy) #10844
  • [939517abfd] - test: refactor test-fs-read-zero-length.js (abouthiroppy) #10729
  • [ffdf605f14] - test: improving coverage for dgram (abouthiroppy) #10783
  • [1666600f16] - test: improve code in test-console-instance (Adrian Estrada) #10813
  • [b496374363] - test: improve code in test-domain-multi (Adrian Estrada) #10798
  • [46bbabe6c2] - test: improve test-stream2-large-read-stall (stefan judis) #10725
  • [7f043779eb] - test: improve code in test-http-host-headers (Adrian Estrada) #10830
  • [66c57a24c2] - test: add test case to test-http-response-statuscode.js (abouthiroppy) #10808
  • [4a7bb5b4d1] - test: improve the code in test-crypto-dh (Adrian Estrada) #10734
  • [825842c185] - test: getgroups() may contain duplicate GIDs (Sam Roberts) #10389
  • [c6618df2cc] - test: improve test stream transform constructor (Adrian Estrada) #10699
  • [51f4c8bf5c] - test: s/assert.equal/assert.strictEqual/ (Gibson Fahnestock) #10698
  • [a6bd287724] - test: use eslint to fix var->const/let (Gibson Fahnestock) #10685
  • [e6b6ce429c] - test: refactor test-http-mutable-headers.js (cjihrig) #10664
  • [8262d49a44] - test: refactor cluster-preload.js (abouthiroppy) #10701
  • [fc0551072b] - test: improve test-crypto-rsa-dsa (Adrian Estrada) #10681
  • [727c5e3c96] - test: improve test-fs-write-file-sync (Adrian Estrada) #10624
  • [50130220dc] - test: s/assert.notEqual()/assert.notStrictEqual()/ (cjihrig) #10541
  • [44174a52a6] - test: refactor the code in test-util-debug.js (sivaprasanna) #10531
  • [b1c742e107] - test: improve test-fs-access (Adrian Estrada) #10542
  • [db7b27abb9] - test: refactor beforeExit tests (Rich Trott) #10581
  • [33851d1e2c] - test: fix process.title expectation (Sakthipriyan Vairamani (thefourtheye)) #10597
  • [af2bea70e0] - test: refactor test-beforeexit-event-exit.js (cjihrig) #10577
  • [0a2fb0d3e1] - test: refactor several parallel/test-timer tests (Beth Griggs) #10524
  • [dba8d20ccc] - test: improve the code in test-fs-read-stream (Adrian Estrada) #10556
  • [eba9add48e] - test: refactor test-timer-close (BethGriggs) #10517
  • [dd9aefde69] - test: use const for all require() calls (cjihrig) #10550
  • [807e99b81d] - test: validate errors in test-buffer-indexof (Adrian Estrada) #10752
  • [32da59ab18] - test: fix broken assertion (cjihrig) #10840
  • [29a4d354bc] - test: refactor test-cli-eval.js (Sumit Goel) #10759
  • [a06419b045] - test: refactor test-stream2-readable-wrap.js (David Goussev) #10551
  • [55377db9b0] - test: refactor test-stream-transform-object (Rich Trott) #10588
  • [fb35ca3598] - test: test hmac binding robustness (Sam Roberts) #10923
  • [94a266e1ef] - test: refactor the code in test-fs-watch.js (sivaprasanna) #10357
  • [3575f5159e] - test: reduce unmanaged parallelism in domain test (Joyee Cheung) #10329
  • [7822d86ee6] - test: increase usage of assert.ifError() (cjihrig) #10543
  • [e161dcf1fc] - test: add dgram.Socket.prototype.sendto’s test (abouthiroppy) #10901
  • [be3e82dbbb] - test: check error message in test-fs-make-callback (legalcodes) #10914
  • [67d97bce5a] - test: improve test-assert (richnologies) #10916
  • [69a04a9c7b] - test: increase coverage for punycode’s decode (abouthiroppy) #10940
  • [8778fca82b] - test: check fd 0,1,2 are used, not access mode (John Barboza) #10339
  • [e80f35c973] - test: verify shell option internals (cjihrig) #10924
  • [9d5170f850] - test: fix flaky test-regress-GH-897 (Rich Trott) #10903
  • [c60d87b1ad] - test: don’t connect to :: (use localhost instead) (Gibson Fahnestock) #10854
  • [aa4b028523] - test: improve test-fs-open-flags (Vinícius do Carmo)
  • [35d665958e] - test: increase coverage of _http_outgoing (abouthiroppy) #10820
  • [c4f16949b8] - test: add message verification on assert.throws (Travis Meisenheimer) #10890
  • [5ce2ac800b] - test: refactor test-repl-tab-complete (Rich Trott) #10879
  • [999f685a69] - test: simplify array initialization (Rich Trott) #10860
  • [c77078f29f] - test: have inspector test pick an open port (Eugene Ostroukhov) #10861
  • [aa8771f842] - test: use common.hasIntl in tests related to ICU (Daijiro Wachi) #10841
  • [5b38776243] - test: add http-common’s test (abouthiroppy) #10832
  • [96babb2090] - test: tests for _readableStream.awaitDrain (Mark) #8914
  • [7165f1d409] - test: improve the code in test-process-cpuUsage (Adrian Estrada) #10714
  • [b5c0b43efa] - test: increase test-crypto.js strictness (Rich Trott) #10784
  • [d818cfaaad] - test: improve test-fs-write-stream-throw-type (Adrian Estrada) #10779
  • [77cbc26a96] - test: delete duplicate test of noAssert in readUInt* (larissayvette) #10791
  • [36db5a663a] - test: add http_incoming’s matchKnownFields test (abouthiroppy) #10811
  • [31d3a22989] - test: skip test-icu-transcode if Intl is not present (Daijiro Wachi) #10707
  • [8b02b4ebb4] - test: check error msg test-writeint.js (Irene Li) #10755
  • [5aad0ccefe] - test: no unused args test-fs-watch-file.js (istinson) #10758
  • [fca0da711d] - test: improve tests in pummel/test-exec (Chase Starr) #10757
  • [7d917dcb27] - test: fix temp-dir option in tools/test.py (Gibson Fahnestock) #10723
  • [6b54024324] - test: use realpath for NODE_TEST_DIR in common.js (Gibson Fahnestock) #10723
  • [c6aeb4491b] - test: fix linting for test-tls-add-ca-cert.js (Sam Roberts) #10771
  • [542f65c66b] - test: tls cert chain completion scenarios (Sam Roberts) #10389
  • [97a8bd20c6] - test: check tls server verification with addCACert (Sam Roberts) #10389
  • [ebcf834c14] - test: move common tls connect setup into fixtures (Sam Roberts) #10389
  • [30926ac6d6] - test: move resource intensive test to sequential (Rich Trott) #10744
  • [06a1e9eb7b] - test: add test for noAssert option in buf.read*() (larissayvette) #10713
  • [160d0381d2] - test: refactor test-crypto-padding-aes256 (adelmann) #10622
  • [cb111c96cc] - test: refactor the code of test-keep-alive.js (sivaprasanna) #10684
  • [dbb7727320] - test: validate ‘expected’ argument to mustCall() (Nathan Friedly) #10692
  • [e408f0a1f5] - test: fix misplaced ) in http response statuscode test (Nathan Friedly) #10692
  • [4c8676bc26] - test: refactor test-doctool-html.js (abouthiroppy) #10696
  • [da572131db] - test: improve the code in test-process-hrtime (Adrian Estrada) #10667
  • [17d9a739c1] - test: refactor test-watch-file.js (sivaprasanna) #10679
  • [cf5579d746] - test: improve zlib-from-gzip-with-trailing-garbage (Michael Lefkowitz) #10674
  • [2d856097b3] - test: refactor the code in test-child-process-spawn-loop.js (sivaprasanna) #10605
  • [1329eb47f0] - test: allow testing uid and gid separately (cjihrig) #10647
  • [4aa32c196a] - test: improve code in test-https-strict (Adrian Estrada) #10648
  • [e78de99bcb] - test: improve test-http-chunked-304 (Adrian Estrada) #10462
  • [ff23d8112a] - test: improve test-fs-readfile-zero-byte-liar (Adrian Estrada) #10570
  • [38bdfb0b8e] - test: refactor test-fs-utimes (Junshu Okamoto) #9290
  • [09f35a49e3] - test: provide duration/interval to timers (Rich Trott) #9472
  • [06a82436c2] - test: improve test-event-emitter-modify-in-emit (Adrian Estrada) #10600
  • [736b95a617] - test: check error and cleanups in test-fs-read-buffer (Anna Henningsen) #10611
  • [a77940c2d5] - test: mark test-tty-wrap as flaky for AIX (Michael Dawson) #10618
  • [cf875d17f3] - test: improve test-fs-null-bytes (Adrian Estrada) #10521
  • [656ba86a27] - test: fix Coverity warning in inspector test (Eugene Ostroukhov) #10510
  • [9916ee8c36] - test: refactor test-https-truncate (Rich Trott) #10225
  • [4ff1d3107f] - test: add http.ClientRequest defaults test (Brian White) #10654
  • [1555ced404] - test, win: fix up symlink tests (Hitesh Kanwathirtha) #10477
  • [4323c8018e] - test,cluster: add test-cluster-worker-deprecated (Rich Trott) #10675
  • [33af09fe6a] - test,net: add tests for server.connections (Rich Trott) #10762
  • [fc2db50021] - test,repl: add coverage for repl .clear+useGlobal (Rich Trott) #10777
  • [84bf04b0c1] - test,util: remove lint workarounds (Rich Trott) #10785
  • [c6af766ad9] - test-console: streamline arrow fn and refine regex (John Maguire) #11039
  • [8fae9d4cfb] - tools: rename eslintrc to an undeprecated format (Sakthipriyan Vairamani) #7699
  • [dd5a4e1d75] - tools: update ESLint to current version (Rich Trott) #10561
  • [c92b8ecd81] - (SEMVER-MINOR) tools: add mdn link for Iterator (James M Snell) #10620
  • [dec5900c42] - tools: add lint rule to enforce timer arguments (Rich Trott) #9472
  • [891874406a] - tools: remove no-useless-regex-char-class-escape (Rich Trott) #10561
  • [1634a7017e] - tools: remove custom align-function-arguments rule (Rich Trott) #10561
  • [31f8f6f768] - tools, test: require const/let in test (Gibson Fahnestock) #10685
  • [d39543e73d] - tools,doc: add Google Analytics tracking. (Phillip Johnsen) #6601
  • [3adda4b2ad] - tools,test: enforce assert.ifError with lint rule (Teddy Katz) #10671
  • [438a98ca95] - url: make URLSearchParams/Iterator match spec (Timothy Gu) #11057
  • [2bfd58adb1] - url: define @@toStringTag as a data property (Timothy Gu) #10906
  • [f1851cb8e4] - url: do not public expose inspect methods on URL (Timothy Gu) #10906
  • [b48b80f630] - url: stop exporting originFor() (Timothy Gu) #10955
  • [c0c1a4c029] - url: refactor lib/internal/url.js (Rich Trott) #10912
  • [2f9fdc454f] - (SEMVER-MINOR) url: allow use of URL with http.request and https.request (James M Snell) #10638
  • [95faa55ab9] - url: check forEach callback is a function (Timothy Gu) #10905
  • [3642f35d09] - url: add return value to ToUnicode/ToAscii stubs (Birunthan Mohanathas) #10893
  • [021338dc6d] - url: export URLSearchParams (Timothy Gu)
  • [5d33c96679] - url: improving URLSearchParams (Timothy Gu) #10399
  • [824978e337] - url: do not decode arbitrary %2e sequences in paths (James M Snell) #10602
  • [e46bdcf2bb] - url: change null password handling (James M Snell) #10601
  • [2b01138451] - url: TupleOrigin#toString use unicode by default (Joyee Cheung) #10552
  • [9f6d1f6fc2] - util: improve readability of normalizeEncoding (Joyee Cheung) #10439
  • [d628f3a227] - util: avoid out-of-bounds arguments index access (Teddy Katz) #10569
  • [2641cd496d] - vm: improve performance of vm.runIn*() (Rich Trott) #10816

Windows 32-bit Installer: https://nodejs.org/dist/v7.5.0/node-v7.5.0-x86.msi
Windows 64-bit Installer: https://nodejs.org/dist/v7.5.0/node-v7.5.0-x64.msi
Windows 32-bit Binary: https://nodejs.org/dist/v7.5.0/win-x86/node.exe
Windows 64-bit Binary: https://nodejs.org/dist/v7.5.0/win-x64/node.exe
macOS 64-bit Installer: https://nodejs.org/dist/v7.5.0/node-v7.5.0.pkg
macOS 64-bit Binary: https://nodejs.org/dist/v7.5.0/node-v7.5.0-darwin-x64.tar.gz
Linux 32-bit Binary: https://nodejs.org/dist/v7.5.0/node-v7.5.0-linux-x86.tar.xz
Linux 64-bit Binary: https://nodejs.org/dist/v7.5.0/node-v7.5.0-linux-x64.tar.xz
Linux PPC LE 64-bit Binary: https://nodejs.org/dist/v7.5.0/node-v7.5.0-linux-ppc64le.tar.xz
Linux PPC BE 64-bit Binary: https://nodejs.org/dist/v7.5.0/node-v7.5.0-linux-ppc64.tar.xz
Linux s390x 64-bit Binary: https://nodejs.org/dist/v7.5.0/node-v7.5.0-linux-s390x.tar.xz
AIX 64-bit Binary: https://nodejs.org/dist/v7.5.0/node-v7.5.0-aix-ppc64.tar.gz
SunOS 32-bit Binary: https://nodejs.org/dist/v7.5.0/node-v7.5.0-sunos-x86.tar.xz
SunOS 64-bit Binary: https://nodejs.org/dist/v7.5.0/node-v7.5.0-sunos-x64.tar.xz
ARMv6 32-bit Binary: https://nodejs.org/dist/v7.5.0/node-v7.5.0-linux-armv6l.tar.xz
ARMv7 32-bit Binary: https://nodejs.org/dist/v7.5.0/node-v7.5.0-linux-armv7l.tar.xz
ARMv8 64-bit Binary: https://nodejs.org/dist/v7.5.0/node-v7.5.0-linux-arm64.tar.xz
Source Code: https://nodejs.org/dist/v7.5.0/node-v7.5.0.tar.gz
Other release files: https://nodejs.org/dist/v7.5.0/
Documentation: https://nodejs.org/docs/v7.5.0/api/

SHASUMS

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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

b97c867927ee4d32526ff411b2fc53b6131f5defbf3c1f487c7068da7d2ad3bf node-v7.5.0-aix-ppc64.tar.gz
97b54cc473710585c7277c1786cd7085eae157f6dc8f77b71bc4de1cb3dacda7 node-v7.5.0-darwin-x64.tar.gz
e9e3537e9adc24b6845a36c2545492c24d550b4c87223ed0c0e951aad543f5a4 node-v7.5.0-darwin-x64.tar.xz
f32d269310ef465ccb0937a90ee2a495749988c54acb75348989aed2aed9fe3f node-v7.5.0-headers.tar.gz
6c13bb11ea0d925b8d348932d459c876cfd0b754b369015a75661a8293c4c469 node-v7.5.0-headers.tar.xz
101e89fd4547569bbc4bcf1081bf6bb6c8410bdfe913ffbf35f25789eda9bca9 node-v7.5.0-linux-arm64.tar.gz
3b548d106dccb53ad5468eb3120f9db9b71c5ae854dfe5cfde9ba6f5d7519bfa node-v7.5.0-linux-arm64.tar.xz
18e6710519eefb0345878618e9f8139361f9efb966a72e522e4011bd38b5d9f9 node-v7.5.0-linux-armv6l.tar.gz
9560e61603ef8a36ee881f55e4f505fe1c62377a3479a5f3dc8a8d8da6f0c2a1 node-v7.5.0-linux-armv6l.tar.xz
cc8feda1f4f2eb995857f98ca96390d3fd794edc8e14363072f5923d81ae96f7 node-v7.5.0-linux-armv7l.tar.gz
b4ceb22b2ea519d41be76161be95ac96c01b5fd8cf17060635497621b89d171b node-v7.5.0-linux-armv7l.tar.xz
79fe8b93e2c3ffc9636d96a91fb3b8728462132ba4b6a4b0dca1a50fe1523237 node-v7.5.0-linux-ppc64le.tar.gz
3603ea26ac041d2bedda91680117b7046d6c78d9dbc905599309725c8e2337b8 node-v7.5.0-linux-ppc64le.tar.xz
b3fc5671dfd8a646abbd4db13a4eb16f6ae8d77688584b17d3fa3ff0b242fa64 node-v7.5.0-linux-ppc64.tar.gz
5c52f7215c8f460c562e4441cc06c2ffb48391acf30e5530cd5b3c18fe4fbb50 node-v7.5.0-linux-ppc64.tar.xz
bf2ec793df9ad0f543e37b6d02ef53d12162f96a8bd2e8359b2405b9e34d3d11 node-v7.5.0-linux-s390x.tar.gz
702cc054dc7072a1690b6211cef13aa5ff210665aa40dfcdc763158651a1c06a node-v7.5.0-linux-s390x.tar.xz
901cc6ef6a12e6807d21090868b16bd41df3e9c41a92065bd0dfea1ef1a35730 node-v7.5.0-linux-x64.tar.gz
600e38b3b76baa2d9537ecf9b6d39b6c021326683db0f42e12178530ff867b61 node-v7.5.0-linux-x64.tar.xz
976dca95f2a06034c37415869472bbce288143d1660af4b79304caa063ac766f node-v7.5.0-linux-x86.tar.gz
28069d4ade798a940c7844e47b1220b062e31759d0205c233a4943a02fd7fce5 node-v7.5.0-linux-x86.tar.xz
2049c13ff11cce47a31cbf434aedc7449cd1248e630d997e7f8c03967b27d054 node-v7.5.0.pkg
5eb6d7e2305b59bc0acf4d85eb07282ee06bbcf55677535935bb8069b7477029 node-v7.5.0-sunos-x64.tar.gz
7e5b15d9adacaa52e19381db64f4494c18034562385b5520da1271d4122682c8 node-v7.5.0-sunos-x64.tar.xz
62ffc2f5f8f6d5006d31c64bfab0826fbacc6a00625810bd23ddfcece5bf820d node-v7.5.0-sunos-x86.tar.gz
c30d9bc9ad01c43bcd95f83ff7e43da3d88c1eab57f83fbe08cbe4d0ee4c75dc node-v7.5.0-sunos-x86.tar.xz
0da8e0288b5c0f136e650b7119219968720caf88b5a67ef0591555113f0844c2 node-v7.5.0.tar.gz
f99ee74647fe223eb03f2dd1dc6acdc14d9a881621376c848236c8d2ac8afd03 node-v7.5.0.tar.xz
0bc433d59d2ce1b991fc5f56ab69bd170e935841650bae40d3626da61f1fce6d node-v7.5.0-win-x64.7z
b47b31db2d78745c223c98d62a2d12a29a683eafa8277ce13f384ba86e2177cb node-v7.5.0-win-x64.zip
953162b30208ccc77b3a3548c5e5dc9a6fb3e5489c5fd1ef313c5d0983a1eea9 node-v7.5.0-win-x86.7z
ff73fa43bd5e5a34a9a1d1dac86f940d0cd1159127adc9e6cc3e108b891a0bfc node-v7.5.0-win-x86.zip
be6f9b7575a8a2d26b959814899d6aa4a91bc06bf65081064bb3b1cbe7a3e142 node-v7.5.0-x64.msi
2e63fde6af03e510dee11fbf0217a3a96a64fed712ae5ec6a8ae6541df791e77 node-v7.5.0-x86.msi
b9c25d0a25c1f884351d7f9a45b0aa006401587cf94c99ac5045126de2daf0d7 win-x64/node.exe
1c9a1a9daf54fd24bd53f72189ad71c9620de827865d4448aabb0d58f8f8dd41 win-x64/node.lib
0e3a3dda9a32c1c153c5a5ae852dc01f345dad4822342800c36ee39cb31828ac win-x64/node_pdb.7z
e46d1e2ed36d04230f68c08fc7710ad61ce734c8cb7367e29bd3a0e62e89febf win-x64/node_pdb.zip
1ff170e3fa92765b676f12a514944a3f3f95df463b335bb897ddaafa108e06be win-x86/node.exe
6b1796289ac29a6b242e7a9b2ab4c1c2064527e6efb06af30b8c60a24e723268 win-x86/node.lib
cc91420405a7d34bf5a46d2915d1265c625532919f681eab6e70345af193f8a3 win-x86/node_pdb.7z
4f0c765e1687b76003b4152cdd4e66acaead160cb9f44d40bb4f8e9ab51a6d91 win-x86/node_pdb.zip
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org

iQIcBAEBCAAGBQJYkUvJAAoJELY7U1pMIGyp37AQANX1qwusXhOyNuUxH3Ugbmva
qqlVrgXkZIH6O18+u45ibg/mDAejaV/G5pdRh3IIoPCkhwXfetqaqZD8oYEZ8h37
HG6IkqbYoagbzAjgywtXtQkrdFI1N+HcgHFKbT1N+NYFQpc162MBWGm9xDby04ze
oy+gLbicfXGD/g8C3NbLB0EhfMSuYvY80WjTMC+HVDViS598FPFwXUXjUxAP0/+F
7nBwvftDnO0kjKMgg45RTyZHxV+kaYP9UxSZqM9M8DFTyGXflJUh8GWkkZFbw50q
lGBUkTuaNOEqbnHq8Sl5M31xlH+qufZpTNjQuMRjK+Zo6xLOdESz/r/eRXyXoFK4
vtt7UDM0rxOi+rFBVDfZUG0qud/6vxWj0koGXgQ3ZX3ToC7dRlXcCh5QwcoKmoF5
xkH17gjlUTkl6Y03C7jz265N2IWZpGzmjiQe9J/W+Ud4haQEYe6xsiSqadhaHFcq
1p0DuCgsByJ8smxZGVqVhrmIfHD5NzhWNLdW3rsR5U0FrDGiUjrYYgFe8tfR6b4i
gAYVAYqxYWCZWNk5cjeVvCw4d1JBmWTNv4MJKN+jKA6cQdNxMVXWjP0E16XbgWcb
cGcXNdmLapwbFEBy+nIymru1hc2mLVlhrMQG2El+Dssf3VeSPKN4xZP4E9kpKjGa
OfEyfjbqnwLz45aYM9C6
=5zK/
-----END PGP SIGNATURE-----

Node v6.9.5(LTS)

주요 변경사항

  • deps: OpenSSL 소스를 1.0.2k로 업그레이드했습니다. (Shigeki Ohtsu) #11021

Commits

Windows 32-bit Installer: https://nodejs.org/dist/v6.9.5/node-v6.9.5-x86.msi
Windows 64-bit Installer: https://nodejs.org/dist/v6.9.5/node-v6.9.5-x64.msi
Windows 32-bit Binary: https://nodejs.org/dist/v6.9.5/win-x86/node.exe
Windows 64-bit Binary: https://nodejs.org/dist/v6.9.5/win-x64/node.exe
macOS 64-bit Installer: https://nodejs.org/dist/v6.9.5/node-v6.9.5.pkg
macOS 64-bit Binary: https://nodejs.org/dist/v6.9.5/node-v6.9.5-darwin-x64.tar.gz
Linux 32-bit Binary: https://nodejs.org/dist/v6.9.5/node-v6.9.5-linux-x86.tar.xz
Linux 64-bit Binary: https://nodejs.org/dist/v6.9.5/node-v6.9.5-linux-x64.tar.xz
Linux PPC LE 64-bit Binary: https://nodejs.org/dist/v6.9.5/node-v6.9.5-linux-ppc64le.tar.xz
Linux PPC BE 64-bit Binary: https://nodejs.org/dist/v6.9.5/node-v6.9.5-linux-ppc64.tar.xz
Linux s390x 64-bit Binary: https://nodejs.org/dist/v6.9.5/node-v6.9.5-linux-s390x.tar.xz
AIX 64-bit Binary: https://nodejs.org/dist/v6.9.5/node-v6.9.5-aix-ppc64.tar.gz
SunOS 32-bit Binary: https://nodejs.org/dist/v6.9.5/node-v6.9.5-sunos-x86.tar.xz
SunOS 64-bit Binary: https://nodejs.org/dist/v6.9.5/node-v6.9.5-sunos-x64.tar.xz
ARMv6 32-bit Binary: https://nodejs.org/dist/v6.9.5/node-v6.9.5-linux-armv6l.tar.xz
ARMv7 32-bit Binary: https://nodejs.org/dist/v6.9.5/node-v6.9.5-linux-armv7l.tar.xz
ARMv8 64-bit Binary: https://nodejs.org/dist/v6.9.5/node-v6.9.5-linux-arm64.tar.xz
Source Code: https://nodejs.org/dist/v6.9.5/node-v6.9.5.tar.gz
Other release files: https://nodejs.org/dist/v6.9.5/
Documentation: https://nodejs.org/docs/v6.9.5/api/

SHASUMS

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
48
49
50
51
52
53
54
55
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

bb0c8db8c1a7e04667d482c0d44db9e7afa1a9ff6cde5829bb582e57727769f6 node-v6.9.5-aix-ppc64.tar.gz
96d80603fcd74ce2cc261d980d4f06b6ec10432b446ab13359c8ad7f631991e8 node-v6.9.5-darwin-x64.tar.gz
f34c6a2679570a5b34445d8211ab679377e0cba70e04f161e5ba2a72fda125ca node-v6.9.5-darwin-x64.tar.xz
c9e3d1e70ac277e38a8a10c6db59ece827b95de041970ba5d3f7853825aa11f7 node-v6.9.5-headers.tar.gz
ca3342fb24f9029d8c91b26b09976471b3809b8cf668ab513d9ca1fcea599716 node-v6.9.5-headers.tar.xz
f60799f0e15b61b900450c4bc36684885c57d5e0e9d34790bffbc5558944e6da node-v6.9.5-linux-arm64.tar.gz
b5f1099845ec434b728f0fef5d13970a7e49f5f4dcc4dcf3f96eb6fb94ed576f node-v6.9.5-linux-arm64.tar.xz
19dca947f63c06e1cb4162c254bfda7e844b0f337aea4fb10a52811bbfb97486 node-v6.9.5-linux-armv6l.tar.gz
b500cef8ce9d861894d4699f7ee11480333a7ad432cbd0bac1c4d33a4bba18f3 node-v6.9.5-linux-armv6l.tar.xz
dcba7b0b36fc3b0d56b6be6efb758c42b7e2e0452723690cf0a6ae1f22180346 node-v6.9.5-linux-armv7l.tar.gz
e3c8f027be7c0b9469b8a38e3e05a7a069881001aa8dac88650a2b6499a1c8ca node-v6.9.5-linux-armv7l.tar.xz
00e62593b78c58df714010abf116a3176f2a96ca324ea7e6ba6f6316120ff45f node-v6.9.5-linux-ppc64le.tar.gz
05d8a14c76befcfc6e2385e19d05d4050e2725e5fdf7faf79cf18781d088ad49 node-v6.9.5-linux-ppc64le.tar.xz
89f79364a780a62a254afe1068673a7348e6a5ab572536f60141b2d17b146e98 node-v6.9.5-linux-ppc64.tar.gz
262a75b65fcd4b28f2a338861083120e020715f3a22666f3559a0472ce7a681b node-v6.9.5-linux-ppc64.tar.xz
56ac183e85e5310d0439a4b1c9fbe2878740f47cb2664701bef8ea6a7e0ff2ac node-v6.9.5-linux-s390x.tar.gz
05b94437d798311a87e3fcfe6700c31fe3efee35174234744fe08843862c63c6 node-v6.9.5-linux-s390x.tar.xz
a4b464068cf2c2cc8ffba9ca0a6ee1ebf146509a86d46a4f92e761c31adebd29 node-v6.9.5-linux-x64.tar.gz
4831ba1a9f678f91dd7e2516eaa781341651b91ac908121db902f5355f0211d8 node-v6.9.5-linux-x64.tar.xz
5926601f73cfb5e417d7644624c8f597eebf43b392f7d02e3b4260093e74c3dd node-v6.9.5-linux-x86.tar.gz
a31a9612b5b11d9cf4aad05c406388760bde7b2bf0969a0e580b52cfbbf0bc09 node-v6.9.5-linux-x86.tar.xz
2806db08bf03cc30d05767c1ad686ab87c92b1b6a9b8e6ac4308f5474fe17cb5 node-v6.9.5.pkg
3b958ca8b51d1b8e4b9cfbd1edee54ab5dfe7ac8fea6eca8a1e73f00f7e3e34b node-v6.9.5-sunos-x64.tar.gz
8bc45d31eb843b956f0457082b99fa2803920e5612099c5526a9be100ff0daa8 node-v6.9.5-sunos-x64.tar.xz
7faf4af0e5e0dc34351278868bbeae3c05a5e8ecfcdacf22d9dc9c86ea75e6cc node-v6.9.5-sunos-x86.tar.gz
6ff1042bf13a1567059aeee15c6ea90d2616d678c972a1aa170d7da84c950e24 node-v6.9.5-sunos-x86.tar.xz
f7e9ab702c5d1f5a3521199c04cc670fda3cf4b0e48548b09ac7ac874ccb504a node-v6.9.5.tar.gz
d7fed1a354b29503f3e176d7fdb90b1a9de248e0ce9b3eb56cc26bb1f3d5b6b3 node-v6.9.5.tar.xz
7697f89b91220e9cfc9603821ebe1fa2ab716c5de7c8405aaa32d03f61906d5b node-v6.9.5-win-x64.7z
145d74288387fa929eb87ebec45696d108fb3432073e0c8ec55248e03f988e6c node-v6.9.5-win-x64.zip
b1a8626eaf7bb7935c7c19735e0932a9c08665b7ffc2d1e1f2ead8b95ca07a14 node-v6.9.5-win-x86.7z
1c3cadaacb07c7202fe5306c5720eaee4ed2dead0ae526b9eccf4a0fc377d6fb node-v6.9.5-win-x86.zip
cfcc1f41907f40ffccebb24a409283853926ddf7b2b3d026db0edb40ed98d2ff node-v6.9.5-x64.msi
ff6c7033b51e8c3dd64a0e71d37738c0f96a4388a3f310151b172b028460776f node-v6.9.5-x86.msi
95142fad100dfd206739145fb8fa27767b54c272b272d33fd6c42476d299c619 win-x64/node.exe
b9c577e9f5bfc88a04462050a4fc53a3000a15293ac5bedcdc4bdeb3fc3d2b70 win-x64/node.lib
b7b83342a20cc1b8bef3d2a385d94c852c0e842f499e53950adb519f69281d97 win-x64/node_pdb.7z
673ca327694e4dda36af539d7975e57ca1f7f7fcc66cad0f3e8d99ee530b49c1 win-x64/node_pdb.zip
8e9aa5478b59cf70eb542fb64c77f41db275e22bea7f60ddab0c6bce4656a477 win-x86/node.exe
609a5daa6b055c18d5c502bdcf2c9e281f12afd4dc449c1a559d35c0839c59df win-x86/node.lib
d8dd3948841eed4ef32490ea522298c285b919bb738e7f437381015f81525893 win-x86/node_pdb.7z
2242446f7f9ae16f2f15e51c98c05c3cde3d59000420852a6999d4d9123bb735 win-x86/node_pdb.zip
-----BEGIN PGP SIGNATURE-----

iQEcBAEBCAAGBQJYkRvjAAoJEJM7AfQLXKlGGnUH/0j94p4Q5FIUw1k/xJFlNavG
Yn5aqRxEzWXS1/H9tEykOQGXU0iZ+VyOnxsnTEO7hcUcwep27LGrBFgnBhBxLxXD
9X18hlTjrS0N8dUFJvc8u1EAeNGzcpan4TZbbFJo8iKtmACPhdD7WYKOwWB1LiID
17rpaK0xO75exzDiknPNoD3DBLV6T/wgGikutm8HgQgt3bk938c8/7sq8yjdPLRy
ZcoMqFZwxtY/OyBWa/psBxy3nUWjOc6yJqpMfvlMaDgp+cxUjMdwOUGBtZiO0k3Q
Y/oY3mFTP6enRvV4btUXHck0vSXDjPVx05FOjddD+/VbGXicyZZmf9LM/D6NQAE=
=IeW0
-----END PGP SIGNATURE-----