From ea2bc0a13cbf24dd494c922f6f4f4eddd1dd7902 Mon Sep 17 00:00:00 2001 From: hyemimi Date: Sun, 30 Aug 2026 14:58:32 +0900 Subject: [PATCH 1/3] docs: add contribution note #65639 --- contributions/65639.md | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 contributions/65639.md diff --git a/contributions/65639.md b/contributions/65639.md new file mode 100644 index 0000000..7535f0d --- /dev/null +++ b/contributions/65639.md @@ -0,0 +1,29 @@ +--- +## pr-url: https://github.com/nodejs/node/pull/65639 +--- + +@greenheadHQ 올려주신 [아이디어 링크](https://github.com/ossca-node/lab/issues/8) 를 참고해서 typings 관련해 기여했습니다. 감사합니다. + +## 문제 내용 + +최신 Node.js 빌드에서 `internalBinding('zlib')`의 실제 export를 타입 선언과 비교했습니다. + +런타임에는 `ZLIB_VERSION`, `ZstdCompress`, `ZstdDecompress`, `crc32`가 존재하지만, `typings/internalBinding/zlib.d.ts`에는 해당 타입이 선언되어 있지 않은 것을 확인했습니다. + +## 해결 과정과 검증 + +C++ 구현과 내부 JavaScript 사용처를 확인해 각 export의 타입을 정의했습니다. + +- `ZLIB_VERSION`: 문자열 +- `crc32`: 문자열 또는 `ArrayBufferView`를 받아 숫자를 반환 +- `ZstdCompress`, `ZstdDecompress`: 기존 압축 스트림과 동일한 base class를 따르는 native stream + +런타임 동작은 변경하지 않고 누락된 타입 선언만 추가했으며, `make js-linter`를 실행해 검증했습니다. + +해당 PR은 업로드 후 바로 approved 되어 commit queue에 포함되었습니다. 확실히 typings 관련 PR은 리뷰 하기에 부담없는 부분인 것 같습니다. + +## 배운 점 + +Node.js의 native binding은 C++ 구현과 TypeScript 타입 선언이 별도로 관리되기 때문에, 런타임 export가 추가되어도 타입 선언이 함께 갱신되지 않을 수 있다는 점을 배웠습니다. + +또한 타입을 추가할 때 이름만 맞추는 것이 아니라 C++의 export 등록 코드와 실제 JavaScript 사용처를 함께 확인해야 정확한 타입을 정의할 수 있음을 알게 되었습니다. From 9c3ecced1e948e72a0d9c100e4649dca4e6f1989 Mon Sep 17 00:00:00 2001 From: hyemimi Date: Sun, 30 Aug 2026 15:04:09 +0900 Subject: [PATCH 2/3] docs: delete url --- contributions/65639.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contributions/65639.md b/contributions/65639.md index 7535f0d..fafc55d 100644 --- a/contributions/65639.md +++ b/contributions/65639.md @@ -2,7 +2,7 @@ ## pr-url: https://github.com/nodejs/node/pull/65639 --- -@greenheadHQ 올려주신 [아이디어 링크](https://github.com/ossca-node/lab/issues/8) 를 참고해서 typings 관련해 기여했습니다. 감사합니다. +@greenheadHQ 올려주신 아이디어를 참고해서 typings 관련해 기여했습니다. 감사합니다. ## 문제 내용 From 131d918fb261937f5e87789b0ddd7be323ee22d3 Mon Sep 17 00:00:00 2001 From: hyemimi Date: Sun, 30 Aug 2026 15:08:58 +0900 Subject: [PATCH 3/3] docs: revise pr-url format --- contributions/65639.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contributions/65639.md b/contributions/65639.md index fafc55d..f4134c9 100644 --- a/contributions/65639.md +++ b/contributions/65639.md @@ -1,5 +1,5 @@ --- -## pr-url: https://github.com/nodejs/node/pull/65639 +pr-url: https://github.com/nodejs/node/pull/65639 --- @greenheadHQ 올려주신 아이디어를 참고해서 typings 관련해 기여했습니다. 감사합니다.