JS frameworks, React/Vue/Svelte, and runtime updates Compiled for immediate developer deployment.
calendar_todaysummarizeWeek 21-2026
article
Deno 2.8
TAG: 런타임
Deno 2.8은 역대 최대 규모의 마이너 릴리스로, deno audit fix, deno bump-version, deno ci, deno pack, deno transpile, deno why 등 여섯 가지 새로운 서브커맨드를 도입하였습니다. CLI에서 npm: 접두사가 선택 사항이 되었으며, 병렬 resolution, 간소화된 packument, 개선된 tarball 추출 덕분에 cold npm 설치 속도가 2.7 대비 3.66배 빨라졌습니다. Node.js API 호환성은 약 42%에서 76.4%(4,457개 테스트 중 3,405개 통과)로 크게 향상되어 Bun 1.3.14의 36.4%를 크게 앞섰습니다. 또한 TypeScript 6.0.3 번들, import defer 지원, flamegraph 및 Markdown 출력을 포함한 CPU 프로파일링, Chrome DevTools 네트워크 검사, 모노레포를 위한 catalog: 프로토콜, stable global로서의 OffscreenCanvas가 추가되었습니다.
코드명 Krypton인 Node.js 24.16.0은 v24 라인의 최신 LTS 릴리스입니다. 가장 주목할 만한 추가 사항은 RFC 9562 사양에 따라 시간 순서가 있는 UUID를 생성하는 crypto.randomUUIDv7()입니다. test runner는 테스트 순서 무작위화, 정렬된 mock timeout API, AbortSignal.timeout에 대한 mock-timers 지원을 갖추었습니다. fs 모듈은 fs.stat()에 취소 가능한 signal 옵션을 추가하고 statfs에서 frsize 필드를 노출합니다. 디버거는 node inspect를 통해 편집 없이 런타임 표현식 프로브를 받으며, http 모듈은 ClientRequest 옵션 병합을 강화하고 IncomingMessage에 req.signal을 추가하였습니다.
2026년 5월 6일, React와 Next.js는 단일 권고안에서 12개의 취약점을 패치하였습니다. 심각도 높음으로 평가된 CVE-2026-23870은 Flight 프로토콜 역직렬화기의 서비스 거부 취약점으로, 잘못된 chunk 그래프를 가진 단일 비인증 HTTP 요청으로 Node 워커를 CPU에 고착시켜 다른 요청에 응답하지 못하게 할 수 있습니다. 이 버그는 19.0.5/19.1.6/19.2.5 이전의 모든 19.x 라인에서 react-server-dom-webpack, react-server-dom-parcel, react-server-dom-turbopack에 영향을 미치며, Server Actions를 직접 작성하지 않더라도 모든 Next.js App Router 프로젝트가 대상입니다. 패치 버전의 수정 사항은 역직렬화기에 구조적 유효성 검사, 깊이 및 크기 제한, 타입 태그 강제를 추가합니다. 저자는 Server Actions의 함수 호출 멘탈 모델이 각 use server 지시문이 Flight 형식의 바이트를 파싱하는 비인증 HTTP 엔드포인트를 생성한다는 사실을 가린다고 주장합니다.
Tanner Linsley가 TanStack Virtual을 전면 감사하고 수년 만에 최대 규모의 단일 성능 릴리스를 출시하였습니다. 핵심 수정은 10k 항목 목록에서 5천만 번의 낭비된 연산을 유발했던 resizeItem의 숨겨진 Map 복제를 제거하여, 해당 시나리오를 1.9초에서 1.3밀리초(1,382배 빠름)로 줄였습니다. 100k 항목에서의 cold mount는 실제 React 기준 6.1ms에서 4.5ms로 개선되었으며, Float64Array 기반의 지연 VirtualItem 프록시를 통해 500k 항목 mount가 14ms에서 2.7ms로 줄었습니다. 수년간 동적 높이 목록에서 작동하지 않았던 iOS Safari의 모멘텀 스크롤도 이제 정상 동작하며, 스크롤 방향에 따른 위치 조정 게이팅으로 하향 스크롤 끊김 현상도 기본적으로 수정되었습니다.
Webpack 5.107은 네이티브 HTML 모듈 지원을 향한 첫 걸음을 내딛었습니다. experiments.html을 활성화하면 JavaScript에서 .html 파일을 import할 수 있으며, 인라인 style 및 script 태그, img src, link href, script src 참조가 모두 일반 webpack 파이프라인을 통해 처리되어 html-loader를 대체합니다. 별도의 experiments.typescript 플래그는 Node.js 내장 module.stripTypeScriptTypes를 활용한 로더 없는 TypeScript 컴파일을 추가하며, TypeScript의 erasableSyntaxOnly 모드와 동일한 제약이 적용됩니다. CSS Modules는 scope hoisting, 실수로 전역 선택자를 잡아내는 pure 모드 파서 옵션, @import 및 url() 참조 내 @value 식별자 사용 기능을 갖추었습니다. resolver는 이제 Node.js와 일치하도록 conditionNames에 module-sync를 포함합니다.
Ko-Hsin Liang은 Babel 기반 AST 탐지기를 사용하여 329개의 공개 JavaScript 및 TypeScript 리포지토리를 스캔하고 176개 리포지토리에서 9,528개의 잠재적인 ReDoS 패턴을 발견하였으며, 그중 9,516개는 겹치는 대안(overlapping alternatives)으로 분류되었습니다. Node.js v24에서의 벤치마크는 (a*)*, (a|a)*, ((a+)+)+ 같은 패턴이 지수적 역추적을 유발함을 확인하였는데, 20자 입력이 150-244ms가 걸릴 수 있고 40자 이상의 입력은 안전한 동등 패턴이 밀리초 이하를 유지하는 동안 5초 타임아웃에 도달합니다. 각 발견 사항에 대해 가장 단순한 공격 입력을 생성하는 후속 동적 프로브는 타임아웃을 0개 생성하여, 정적 스캔이 최종 판단이 아닌 광범위한 필터임을 보여주었습니다. 이 연구는 safe-regex, eslint-plugin-regexp, 또는 re2 npm 모듈 사용을 권장하며, 의미론적 유효성 검사에는 복잡한 중첩 regex 대신 new URL() 같은 파서를 선호합니다.
ForrestKnight은 Bun이 Anthropic에 인수된 후 AI 기반으로 Zig에서 Rust로 재작성된 과정을 다룹니다. Jarred Sumner는 타입 매핑, 관용구 번역, 명명 규칙 등 약 300개의 규칙이 담긴 porting.md 청사진을 따라 Claude를 사용하여 약 1,200개의 Zig 파일을 Rust로 포팅하였습니다. 병합된 코드는 모든 플랫폼에서 Bun의 전체 테스트 스위트를 통과하고, 여러 메모리 누수를 수정하며, 바이너리 크기를 3-8MB 줄이고, 벤치마크에서 중립에서 더 빠른 성능을 보입니다. UV의 73개와 비교하여 13,000개 이상의 unsafe 블록에 대한 비판이 있었지만, 영상은 Bun의 C/C++ FFI 브리지가 약 2,400개의 불가피한 unsafe 블록을 설명하며 나머지는 Zig의 2,500개 이상의 원시 포인터 조작을 충실히 포팅한 결과임을 설명합니다. 이 재작성은 Phase-A 초안(로직 충실, 아직 관용적이지 않음)으로 Zig 코드는 후속 PR에서 점진적으로 제거될 예정입니다.
Deno 2.8은 역대 최대 규모의 마이너 릴리스로, deno audit fix, deno bump-version, deno ci, deno pack, deno transpile, deno why 등 여섯 가지 새로운 서브커맨드를 도입하였습니다. CLI에서 npm: 접두사가 선택 사항이 되었으며, 병렬 resolution, 간소화된 packument, 개선된 tarball 추출 덕분에 cold npm 설치 속도가 2.7 대비 3.66배 빨라졌습니다. Node.js API 호환성은 약 42%에서 76.4%(4,457개 테스트 중 3,405개 통과)로 크게 향상되어 Bun 1.3.14의 36.4%를 크게 앞섰습니다. 또한 TypeScript 6.0.3 번들, import defer 지원, flamegraph 및 Markdown 출력을 포함한 CPU 프로파일링, Chrome DevTools 네트워크 검사, 모노레포를 위한 catalog: 프로토콜, stable global로서의 OffscreenCanvas가 추가되었습니다.
ForrestKnight은 Bun이 Anthropic에 인수된 후 AI 기반으로 Zig에서 Rust로 재작성된 과정을 다룹니다. Jarred Sumner는 타입 매핑, 관용구 번역, 명명 규칙 등 약 300개의 규칙이 담긴 porting.md 청사진을 따라 Claude를 사용하여 약 1,200개의 Zig 파일을 Rust로 포팅하였습니다. 병합된 코드는 모든 플랫폼에서 Bun의 전체 테스트 스위트를 통과하고, 여러 메모리 누수를 수정하며, 바이너리 크기를 3-8MB 줄이고, 벤치마크에서 중립에서 더 빠른 성능을 보입니다. UV의 73개와 비교하여 13,000개 이상의 unsafe 블록에 대한 비판이 있었지만, 영상은 Bun의 C/C++ FFI 브리지가 약 2,400개의 불가피한 unsafe 블록을 설명하며 나머지는 Zig의 2,500개 이상의 원시 포인터 조작을 충실히 포팅한 결과임을 설명합니다. 이 재작성은 Phase-A 초안(로직 충실, 아직 관용적이지 않음)으로 Zig 코드는 후속 PR에서 점진적으로 제거될 예정입니다.
코드명 Krypton인 Node.js 24.16.0은 v24 라인의 최신 LTS 릴리스입니다. 가장 주목할 만한 추가 사항은 RFC 9562 사양에 따라 시간 순서가 있는 UUID를 생성하는 crypto.randomUUIDv7()입니다. test runner는 테스트 순서 무작위화, 정렬된 mock timeout API, AbortSignal.timeout에 대한 mock-timers 지원을 갖추었습니다. fs 모듈은 fs.stat()에 취소 가능한 signal 옵션을 추가하고 statfs에서 frsize 필드를 노출합니다. 디버거는 node inspect를 통해 편집 없이 런타임 표현식 프로브를 받으며, http 모듈은 ClientRequest 옵션 병합을 강화하고 IncomingMessage에 req.signal을 추가하였습니다.
2026년 5월 6일, React와 Next.js는 단일 권고안에서 12개의 취약점을 패치하였습니다. 심각도 높음으로 평가된 CVE-2026-23870은 Flight 프로토콜 역직렬화기의 서비스 거부 취약점으로, 잘못된 chunk 그래프를 가진 단일 비인증 HTTP 요청으로 Node 워커를 CPU에 고착시켜 다른 요청에 응답하지 못하게 할 수 있습니다. 이 버그는 19.0.5/19.1.6/19.2.5 이전의 모든 19.x 라인에서 react-server-dom-webpack, react-server-dom-parcel, react-server-dom-turbopack에 영향을 미치며, Server Actions를 직접 작성하지 않더라도 모든 Next.js App Router 프로젝트가 대상입니다. 패치 버전의 수정 사항은 역직렬화기에 구조적 유효성 검사, 깊이 및 크기 제한, 타입 태그 강제를 추가합니다. 저자는 Server Actions의 함수 호출 멘탈 모델이 각 use server 지시문이 Flight 형식의 바이트를 파싱하는 비인증 HTTP 엔드포인트를 생성한다는 사실을 가린다고 주장합니다.
Tanner Linsley가 TanStack Virtual을 전면 감사하고 수년 만에 최대 규모의 단일 성능 릴리스를 출시하였습니다. 핵심 수정은 10k 항목 목록에서 5천만 번의 낭비된 연산을 유발했던 resizeItem의 숨겨진 Map 복제를 제거하여, 해당 시나리오를 1.9초에서 1.3밀리초(1,382배 빠름)로 줄였습니다. 100k 항목에서의 cold mount는 실제 React 기준 6.1ms에서 4.5ms로 개선되었으며, Float64Array 기반의 지연 VirtualItem 프록시를 통해 500k 항목 mount가 14ms에서 2.7ms로 줄었습니다. 수년간 동적 높이 목록에서 작동하지 않았던 iOS Safari의 모멘텀 스크롤도 이제 정상 동작하며, 스크롤 방향에 따른 위치 조정 게이팅으로 하향 스크롤 끊김 현상도 기본적으로 수정되었습니다.
Webpack 5.107은 네이티브 HTML 모듈 지원을 향한 첫 걸음을 내딛었습니다. experiments.html을 활성화하면 JavaScript에서 .html 파일을 import할 수 있으며, 인라인 style 및 script 태그, img src, link href, script src 참조가 모두 일반 webpack 파이프라인을 통해 처리되어 html-loader를 대체합니다. 별도의 experiments.typescript 플래그는 Node.js 내장 module.stripTypeScriptTypes를 활용한 로더 없는 TypeScript 컴파일을 추가하며, TypeScript의 erasableSyntaxOnly 모드와 동일한 제약이 적용됩니다. CSS Modules는 scope hoisting, 실수로 전역 선택자를 잡아내는 pure 모드 파서 옵션, @import 및 url() 참조 내 @value 식별자 사용 기능을 갖추었습니다. resolver는 이제 Node.js와 일치하도록 conditionNames에 module-sync를 포함합니다.
Ko-Hsin Liang은 Babel 기반 AST 탐지기를 사용하여 329개의 공개 JavaScript 및 TypeScript 리포지토리를 스캔하고 176개 리포지토리에서 9,528개의 잠재적인 ReDoS 패턴을 발견하였으며, 그중 9,516개는 겹치는 대안(overlapping alternatives)으로 분류되었습니다. Node.js v24에서의 벤치마크는 (a*)*, (a|a)*, ((a+)+)+ 같은 패턴이 지수적 역추적을 유발함을 확인하였는데, 20자 입력이 150-244ms가 걸릴 수 있고 40자 이상의 입력은 안전한 동등 패턴이 밀리초 이하를 유지하는 동안 5초 타임아웃에 도달합니다. 각 발견 사항에 대해 가장 단순한 공격 입력을 생성하는 후속 동적 프로브는 타임아웃을 0개 생성하여, 정적 스캔이 최종 판단이 아닌 광범위한 필터임을 보여주었습니다. 이 연구는 safe-regex, eslint-plugin-regexp, 또는 re2 npm 모듈 사용을 권장하며, 의미론적 유효성 검사에는 복잡한 중첩 regex 대신 new URL() 같은 파서를 선호합니다.
이번 주 JavaScript 카테고리는 주요 런타임 릴리스가 주를 이루었습니다. 역대 최대 규모의 마이너 릴리스인 Deno 2.8은 여섯 가지 새로운 서브커맨드(deno audit fix, deno bump-version, deno ci, deno pack, deno transpile, deno why)를 추가하고, cold npm 설치 속도를 3.66배 빠르게 만들었으며, Node.js API 호환성을 42%에서 76.4%로 끌어올려 Bun 1.3.14의 36.4%를 크게 앞섰습니다. Node.js 24.16.0 LTS(코드명 Krypton)는 RFC 9562 시간 순서 UUID를 생성하는 crypto.randomUUIDv7(), 테스트 순서 무작위화, fs.stat()의 취소 가능 signal 옵션을 제공합니다. Webpack 5.107은 experiments.html을 통한 네이티브 HTML 모듈 지원과 experiments.typescript를 통한 로더 없는 TypeScript 컴파일을 미리 보여주었습니다.
보안 측면도 주목해야 합니다. CVE-2026-23870은 React의 Flight 프로토콜 역직렬화기의 심각도 높음 서비스 거부 취약점으로, 19.0.5/19.1.6/19.2.5 이전의 모든 19.x 라인에서 react-server-dom-webpack, react-server-dom-parcel, react-server-dom-turbopack에 영향을 주며 모든 Next.js App Router 프로젝트가 대상입니다. 별도의 실증 연구에서 329개 리포지토리를 스캔한 결과 9,528개의 잠재적 ReDoS 패턴이 발견되었으며, safe-regex, eslint-plugin-regexp, re2 npm 모듈 등이 완화책으로 권장되었습니다.
성능 면에서 TanStack Virtual은 resizeItem의 숨겨진 Map 복제를 제거해 10k 항목 목록에서 1,382배 속도를 향상시키고, iOS Safari 모멘텀 스크롤 문제를 지연 scrollTop 쓰기로 수정하였습니다. 한편 Bun은 Claude와 porting.md 규칙서를 활용해 약 1,200개 파일을 Zig에서 Rust로 AI 지원 재작성하고, 전체 테스트 스위트를 통과하면서 바이너리 크기를 3-8MB 줄였습니다.
Key Takeaways
Deno 2.8은 Node.js API 호환성을 76.4%(Bun의 36.4% 대비)로 높이고 cold npm 설치 속도를 3.66배 빠르게 만들어 Node.js와의 격차를 크게 줄였습니다.
CVE-2026-23870은 React의 Flight 역직렬화기에서 발생하는 심각도 높음 DoS 취약점으로 모든 Next.js App Router 프로젝트에 영향을 줍니다. 즉시 react-server-dom 19.0.5/19.1.6/19.2.5로 패치하십시오.
TanStack Virtual의 1,382배 렌더링 속도 향상과 iOS Safari 모멘텀 스크롤 수정이 단일 릴리스로 제공됩니다. 대규모 가상화 목록을 사용하는 프로젝트는 반드시 업데이트해야 합니다.