피드로 돌아가기
Node.js 17.0.1 (Current)
Node.js BlogNode.js Blog
Backend

Node.js 17.0.1이 누락된 V8 헤더 파일 추가 및 stream API 3가지 회귀 버그 수정으로 네이티브 애드온 빌드 가능 복구

Node.js 17.0.1 (Current)

2021년 10월 20일3intermediate

Context

Node.js 17.0.0 릴리스에서 V8 헤더 파일이 배포 tarball에서 누락되어 네이티브 애드온 빌드가 불가능해졌다. stream.promises.pipeline과 stream.Duplex.from에서 이전 버전과의 호환성이 깨지는 회귀 버그가 발생했다.

Technical Solution

  • V8 헤더 파일 포함: 누락된 V8 헤더를 배포 패키지에 추가하여 네이티브 애드온 컴파일 가능 복구 (#40526)
  • stream.promises.pipeline 스트림 배열 지원 복구: 버전 16.10.0에서 도입된 회귀로 인해 배열 형식의 스트림 전달 불가능 상태를 수정 (#40193)
  • stream.Duplex.from 비동기 제너레이터 지원 수정: 비동기 제너레이터 함수 전달 시 정상 작동하지 않던 문제 해결 (#40499)

Key Takeaway

마이너 버전 업데이트 시에도 핵심 API의 회귀 버그가 발생할 수 있으므로, 배포 전 네이티브 애드온 빌드 및 스트림 API 통합 테스트를 필수적으로 수행해야 한다.


Node.js를 사용하는 엔지니어링 팀에서는 메이저 버전 업그레이드 시 V8 헤더 포함 여부를 점검하고, stream.promises.pipeline과 stream.Duplex.from을 사용 중이라면 회귀 버그 패치가 포함된 버전으로 업데이트하여 기존 기능의 정상 작동을 검증해야 한다.

원문 읽기