피드로 돌아가기
Node.js BlogBackend
원문 읽기
Node.js 12.1.0이 ICU 64.2 업그레이드와 C++ API 확장으로 일본 연호 지원 및 국제화 버그 개선
Node.js 12.1.0 (Current)
AI 요약
Context
Node.js 12.0.0에서 비기본 로케일로 new Date().toLocaleString()을 호출할 때 ICU 버그로 인한 예외 발생 문제가 존재했다. 일본의 신년호(Reiwa) 추가 등 국제화 기능 요청이 있었다.
Technical Solution
- ICU를 64.2로 업그레이드: 일본 연호(Reiwa) 데이터 추가 지원
- ICU-20575 및 ICU-20558 백포트: 국제화 관련 크래시 및 에러 수정
- C++ API에 EmitAsyncDestroy 오버로드 추가: 가비지 컬렉션 중 사용 가능하도록 확장
- 보안 인증서 업데이트: 루트 인증서 갱신
- 빌드 시스템 개선: ICU 다운로드에서 MD5 이외의 해시 지원, 커스텀 v8 스냅샷 기본 비활성화
Key Takeaway
런타임 버전 업그레이드 시 의존 라이브러리(ICU 등)의 버그 수정과 보안 업데이트를 함께 진행하면 국제화 기능의 안정성과 보안 수준을 동시에 향상시킬 수 있다.
실천 포인트
Node.js 애플리케이션을 배포하는 팀은
1
2.
1.0 이상으로 업그레이드할 때 비기본 로케일 환경에서 국제화 기능 테스트(toLocaleString, 날짜 포맷팅 등)를 추가로 검증하면 이전 버전의 버그로 인한 런타임 에러를 예방할 수 있다.