JS frameworks, React/Vue/Svelte, and runtime updates Compiled for immediate developer deployment.
calendar_todaysummarizeWeek 3-2026
article
Astro 6 베타
TAG: 릴리스
Astro 6 Beta가 출시되었습니다. 이번 릴리스의 핵심은 Vite의 Environment API를 활용해 개발 서버와 프로덕션 코드 경로를 통합한 완전히 새로운 astro dev 서버입니다. 가장 주목할 기능은 Cloudflare Workers 공식 지원으로, 이제 astro dev가 프로덕션에서 실제로 사용되는 오픈소스 런타임인 workerd 위에서 실행되어 Durable Objects, KV Namespaces, R2 Storage, HMR을 시뮬레이션 없이 로컬에서 직접 사용할 수 있습니다. 실시간 데이터 소스(재고, 주가 등)를 위한 Live Collections과 가장 많은 요청을 받았던 콘텐츠 보안 정책(CSP) 지원이 안정화 단계로 전환되었습니다. Astro 6은 Node 18·20 지원을 종료하고 Node 22 이상을 요구하며, Zod 4로 업그레이드하고 Astro.glob(), 레거시 ViewTransitions 컴포넌트 등 구형 API를 제거합니다.
Angular 21.1이 출시되어 템플릿, 라우팅, 폼 전반에 걸쳐 개발자 경험을 개선하는 다양한 기능을 선보입니다. 템플릿에서는 @switch 블록의 fall-through 다중 @case 매칭과 함수 호출의 rest 인수, 배열 리터럴의 spread 요소, 객체 리터럴의 spread 표현식 등 완전한 스프레드 연산자 문법을 지원합니다. Signal Forms 실험 API에서는 [field] 디렉티브가 [formField]로 이름이 변경되었으며, readonly 배열 지원 및 비동기 유효성 검사 정리 기능이 추가되었습니다. Router에는 실험적인 Navigation API 통합, 비활성 라우트의 EnvironmentInjector를 자동 정리하는 withExperimentalAutoCleanupInjectors(), 그리고 Router.isActive()를 대체하는 반응형 isActive() 독립 함수가 추가되었습니다. 또한 앱이 9초 이내에 안정화되지 않을 때 대기 중인 태스크를 콘솔에 기록하는 provideStabilityDebugging() 유틸리티가 새롭게 도입되었습니다.
Bun v1.3.6이 출시되어 새로운 API와 대규모 성능 개선을 제공합니다. 신규 기능으로는 tar/gzip 아카이브 생성 및 추출을 위한 Bun.Archive, tsconfig.json 같은 주석 포함 JSON 파일을 파싱하는 Bun.JSONC.parse(), 그리고 esbuild의 번들 분석 도구와 호환되는 Bun.build()의 metafile 옵션이 추가되었습니다. 성능 측면에서는 Response.json()이 3.5배 빨라졌고(JavaScriptCore의 SIMD 최적화 FastStringifier 활용), async/await는 15%, Promise.race()는 30% 향상되었으며, Buffer.indexOf/includes는 SIMD로 2배, 대용량 메시지의 크로스프로세스 JSON IPC는 9배, Bun.hash.crc32는 하드웨어 가속 명령어로 20배 빨라졌습니다. 주요 버그 수정으로는 @testing-library/react와 함께 jest.useFakeTimers()가 정상 동작하도록 수정되었고, sql() INSERT 헬퍼에서 undefined 값을 올바르게 생략하여 데이터베이스 DEFAULT 컬럼이 제대로 동작하게 되었습니다.
ESLint의 2025년 회고록이 빠른 성장과 주요 아키텍처 이정표로 가득 찬 한 해를 조명합니다. 주간 npm 다운로드 수가 65% 증가하여 연초 4,270만 회에서 연말 7,070만 회를 기록했으며, v9.x는 주당 3,600만 회 이상을 달성했습니다. 팀은 @eslint/css를 통한 공식 CSS 지원을 출시하고, html-eslint를 공식 언어 플러그인으로 영입해 웹의 '빅3'를 완성했습니다. v9.34.0에서 도입된 멀티스레드 린팅은 대규모 프로젝트에서 30~300%의 성능 향상을 제공합니다. ESLint는 GitHub Copilot 코드 리뷰에 통합되었으며, AI 모델 연동을 위한 @eslint/mcp도 출시되었습니다. 현재 릴리스 후보 단계인 ESLint v10.0.0은 Node 20.19.0 미만 지원을 종료하고, 레거시 eslintrc 설정 시스템을 완전히 제거합니다.2025년에는 $204,451의 수입 대비 $262,150을 지출했으며, Automattic과 Airbnb가 각 $24,000으로 최대 스폰서에 이름을 올렸습니다.
JavaScript의 네이티브 Iterator Helpers가 현대 브라우저와 Node 22 이상에서 안정적으로 지원되어, 기존의 .map().filter().slice() 체인에 대한 지연(lazy) 대안을 제공합니다. 기존 배열 메서드의 문제는 수천 개의 항목 중 10개만 필요할 때도 항상 중간 배열을 생성하고 모든 요소를 처리한다는 점입니다. .filter(), .map(), .take(), .drop(), .flatMap() 같은 Iterator helpers는 .values(), .keys(), 또는 제너레이터로 얻은 이터레이터 객체에서 체이닝할 수 있으며, 필요한 시점에만 값을 가져오고 결과가 충족되면 즉시 중단합니다. 이 방식은 가상 목록, 무한 스크롤, 비동기 페이지 API처럼 불필요한 처리를 완전히 피해야 하는 상황에서 실질적인 이점을 제공합니다. 주의할 점은 이터레이터가 일회성(재사용 불가)이며, 지연 실행으로 인해 부수 효과(side effect)가 누락된 것처럼 보일 수 있고, items[5] 같은 랜덤 접근은 지원되지 않는다는 것입니다.
Platformatic이 AWS EKS(m5.2xlarge, CPU 6코어)에서 Next.js 15.5를 Node.js, Bun, Deno, Platformatic Watt 네 가지 런타임을 대상으로 Grafana k6를 사용해 1,000 req/s 기준 120초 동안 벤치마킹했습니다. 결과는 세 가지 뚜렷한 지연 시간 계층으로 나뉘었습니다: Deno와 Watt는 평균11~14ms, Node.js는 약 20ms, 그리고 Bun은 평균 246ms, p99 974ms로 큰 차이를 보였습니다. 네 런타임 모두 실행당 약 12만 건 요청에서 100% 성공률을 기록했습니다. SO_REUSEPORT 기반 멀티스레딩을 사용하는 Watt는 표준 편차 ±1.03ms로 가장 높은 일관성을 보였습니다. 벤치마크는 Next.js의 shebang을 우회해 Bun 런타임을 강제 적용하기 위해 bun run --bun next start를 사용했으며, 전체 벤치마크 인프라는 GitHub에 오픈소스로 공개되어 있습니다.
Syntax 팟캐스트가 TypeScript 타입 시스템만으로 Doom 게임 엔진을 완전히 구현한 개발자 Dmitri Metropolis를 인터뷰합니다. JavaScript는 단 한 줄도, .d.ts 파일조차 없이 순수 타입 시스템만 사용했습니다. 최종 타입 검사 실행은 지하실 PC에서 TSC를 루프로 돌려 11.5일이 소요되었으며, 프로젝트 전체 기간은 1년 반에 달합니다. Metropolis는 그레이스케일 문자 그라데이션으로 ASCII 아트를 렌더링하는 방식과, Doom의 컴파일된 WASM을 실행하기 위해 TypeScript 타입으로만 WebAssembly 런타임을 구축한 방법을 설명합니다. 인터뷰에서는 그의 새 Tauri 기반 데스크톱 도구인 Types Slayer도 소개하는데, 이 도구는 TypeScript 컴파일러 내부를 시각화하여 가장 큰 유니온 타입, @ts-ignore로 숨겨진 과도한 재귀 오류, 컴파일 타임 핫스팟을 보여줍니다. TypeScript 성능이 AI 에이전트 시대에 더욱 중요해지는 이유도 심층적으로 논의합니다.
Astro 6 Beta가 출시되었습니다. 이번 릴리스의 핵심은 Vite의 Environment API를 활용해 개발 서버와 프로덕션 코드 경로를 통합한 완전히 새로운 astro dev 서버입니다. 가장 주목할 기능은 Cloudflare Workers 공식 지원으로, 이제 astro dev가 프로덕션에서 실제로 사용되는 오픈소스 런타임인 workerd 위에서 실행되어 Durable Objects, KV Namespaces, R2 Storage, HMR을 시뮬레이션 없이 로컬에서 직접 사용할 수 있습니다. 실시간 데이터 소스(재고, 주가 등)를 위한 Live Collections과 가장 많은 요청을 받았던 콘텐츠 보안 정책(CSP) 지원이 안정화 단계로 전환되었습니다. Astro 6은 Node 18·20 지원을 종료하고 Node 22 이상을 요구하며, Zod 4로 업그레이드하고 Astro.glob(), 레거시 ViewTransitions 컴포넌트 등 구형 API를 제거합니다.
Syntax 팟캐스트가 TypeScript 타입 시스템만으로 Doom 게임 엔진을 완전히 구현한 개발자 Dmitri Metropolis를 인터뷰합니다. JavaScript는 단 한 줄도, .d.ts 파일조차 없이 순수 타입 시스템만 사용했습니다. 최종 타입 검사 실행은 지하실 PC에서 TSC를 루프로 돌려 11.5일이 소요되었으며, 프로젝트 전체 기간은 1년 반에 달합니다. Metropolis는 그레이스케일 문자 그라데이션으로 ASCII 아트를 렌더링하는 방식과, Doom의 컴파일된 WASM을 실행하기 위해 TypeScript 타입으로만 WebAssembly 런타임을 구축한 방법을 설명합니다. 인터뷰에서는 그의 새 Tauri 기반 데스크톱 도구인 Types Slayer도 소개하는데, 이 도구는 TypeScript 컴파일러 내부를 시각화하여 가장 큰 유니온 타입, @ts-ignore로 숨겨진 과도한 재귀 오류, 컴파일 타임 핫스팟을 보여줍니다. TypeScript 성능이 AI 에이전트 시대에 더욱 중요해지는 이유도 심층적으로 논의합니다.
Angular 21.1이 출시되어 템플릿, 라우팅, 폼 전반에 걸쳐 개발자 경험을 개선하는 다양한 기능을 선보입니다. 템플릿에서는 @switch 블록의 fall-through 다중 @case 매칭과 함수 호출의 rest 인수, 배열 리터럴의 spread 요소, 객체 리터럴의 spread 표현식 등 완전한 스프레드 연산자 문법을 지원합니다. Signal Forms 실험 API에서는 [field] 디렉티브가 [formField]로 이름이 변경되었으며, readonly 배열 지원 및 비동기 유효성 검사 정리 기능이 추가되었습니다. Router에는 실험적인 Navigation API 통합, 비활성 라우트의 EnvironmentInjector를 자동 정리하는 withExperimentalAutoCleanupInjectors(), 그리고 Router.isActive()를 대체하는 반응형 isActive() 독립 함수가 추가되었습니다. 또한 앱이 9초 이내에 안정화되지 않을 때 대기 중인 태스크를 콘솔에 기록하는 provideStabilityDebugging() 유틸리티가 새롭게 도입되었습니다.
Bun v1.3.6이 출시되어 새로운 API와 대규모 성능 개선을 제공합니다. 신규 기능으로는 tar/gzip 아카이브 생성 및 추출을 위한 Bun.Archive, tsconfig.json 같은 주석 포함 JSON 파일을 파싱하는 Bun.JSONC.parse(), 그리고 esbuild의 번들 분석 도구와 호환되는 Bun.build()의 metafile 옵션이 추가되었습니다. 성능 측면에서는 Response.json()이 3.5배 빨라졌고(JavaScriptCore의 SIMD 최적화 FastStringifier 활용), async/await는 15%, Promise.race()는 30% 향상되었으며, Buffer.indexOf/includes는 SIMD로 2배, 대용량 메시지의 크로스프로세스 JSON IPC는 9배, Bun.hash.crc32는 하드웨어 가속 명령어로 20배 빨라졌습니다. 주요 버그 수정으로는 @testing-library/react와 함께 jest.useFakeTimers()가 정상 동작하도록 수정되었고, sql() INSERT 헬퍼에서 undefined 값을 올바르게 생략하여 데이터베이스 DEFAULT 컬럼이 제대로 동작하게 되었습니다.
ESLint의 2025년 회고록이 빠른 성장과 주요 아키텍처 이정표로 가득 찬 한 해를 조명합니다. 주간 npm 다운로드 수가 65% 증가하여 연초 4,270만 회에서 연말 7,070만 회를 기록했으며, v9.x는 주당 3,600만 회 이상을 달성했습니다. 팀은 @eslint/css를 통한 공식 CSS 지원을 출시하고, html-eslint를 공식 언어 플러그인으로 영입해 웹의 '빅3'를 완성했습니다. v9.34.0에서 도입된 멀티스레드 린팅은 대규모 프로젝트에서 30~300%의 성능 향상을 제공합니다. ESLint는 GitHub Copilot 코드 리뷰에 통합되었으며, AI 모델 연동을 위한 @eslint/mcp도 출시되었습니다. 현재 릴리스 후보 단계인 ESLint v10.0.0은 Node 20.19.0 미만 지원을 종료하고, 레거시 eslintrc 설정 시스템을 완전히 제거합니다.2025년에는 $204,451의 수입 대비 $262,150을 지출했으며, Automattic과 Airbnb가 각 $24,000으로 최대 스폰서에 이름을 올렸습니다.
JavaScript의 네이티브 Iterator Helpers가 현대 브라우저와 Node 22 이상에서 안정적으로 지원되어, 기존의 .map().filter().slice() 체인에 대한 지연(lazy) 대안을 제공합니다. 기존 배열 메서드의 문제는 수천 개의 항목 중 10개만 필요할 때도 항상 중간 배열을 생성하고 모든 요소를 처리한다는 점입니다. .filter(), .map(), .take(), .drop(), .flatMap() 같은 Iterator helpers는 .values(), .keys(), 또는 제너레이터로 얻은 이터레이터 객체에서 체이닝할 수 있으며, 필요한 시점에만 값을 가져오고 결과가 충족되면 즉시 중단합니다. 이 방식은 가상 목록, 무한 스크롤, 비동기 페이지 API처럼 불필요한 처리를 완전히 피해야 하는 상황에서 실질적인 이점을 제공합니다. 주의할 점은 이터레이터가 일회성(재사용 불가)이며, 지연 실행으로 인해 부수 효과(side effect)가 누락된 것처럼 보일 수 있고, items[5] 같은 랜덤 접근은 지원되지 않는다는 것입니다.
Platformatic이 AWS EKS(m5.2xlarge, CPU 6코어)에서 Next.js 15.5를 Node.js, Bun, Deno, Platformatic Watt 네 가지 런타임을 대상으로 Grafana k6를 사용해 1,000 req/s 기준 120초 동안 벤치마킹했습니다. 결과는 세 가지 뚜렷한 지연 시간 계층으로 나뉘었습니다: Deno와 Watt는 평균11~14ms, Node.js는 약 20ms, 그리고 Bun은 평균 246ms, p99 974ms로 큰 차이를 보였습니다. 네 런타임 모두 실행당 약 12만 건 요청에서 100% 성공률을 기록했습니다. SO_REUSEPORT 기반 멀티스레딩을 사용하는 Watt는 표준 편차 ±1.03ms로 가장 높은 일관성을 보였습니다. 벤치마크는 Next.js의 shebang을 우회해 Bun 런타임을 강제 적용하기 위해 bun run --bun next start를 사용했으며, 전체 벤치마크 인프라는 GitHub에 오픈소스로 공개되어 있습니다.
3주차 JavaScript 이슈는 원초적인 속도와 현실적인 제약 사이의 긴장감으로 정의됩니다. 피처드 릴리스인 Astro 6 Beta는 Vite의 Environment API를 기반으로 완전히 재설계된 개발 서버를 선보이며, 특히 workerd를 통한 Cloudflare Workers 공식 지원이 핵심입니다. 이제 로컬 개발 환경이 프로덕션과 동일한 오픈소스 런타임에서 실행됩니다. Live Collections와 내장 CSP 지원이 안정화되었으며, Node 18/20 지원이 종료되고 Node 22+와 Zod 4가 요구됩니다. Angular 21.1은 템플릿의 완전한 스프레드 연산자 문법, Signal Forms의 [formField] 디렉티브 이름 변경, 안정화 지연 진단을 위한 provideStabilityDebugging() 유틸리티 등 의미 있는 DX 개선을 제공합니다.
Bun v1.3.6은 Response.json()3.5배, async/await15%, Bun.hash.crc3220배 향상 등 대규모 성능 개선과 함께 새로운 Bun.Archive 및 Bun.JSONC.parse() API를 제공합니다. 그러나 Platformatic의 Next.js 벤치마크가 냉정한 반론을 제시합니다. 1,000 req/s 지속 부하에서 Bun은 평균 246ms의 레이턴시를 기록한 반면, Deno와 Watt는 11~14ms에 그쳤습니다. 고동시성 SSR 환경에서 Bun 도입 전 면밀한 검토가 필요합니다. ESLint 2025년 리뷰는 다운로드 65% 급증, v9.34.0의 멀티스레드 린팅(30~300% 속도 향상), 그리고 레거시 eslintrc 설정 시스템을 완전히 제거하는 v10.0.0을 전합니다.
언어 차원에서는 이제 안정적으로 지원되는 .filter(), .map(), .take(), .drop() 등 Iterator Helpers를 활용한 지연 평가(lazy evaluation)가 가상 목록과 무한 스크롤에서 기존 배열 체인보다 유리하다는 실용적인 아티클이 눈길을 끕니다. 또한 Syntax의 Dmitri Metropolis 인터뷰는 18개월에 걸쳐 TypeScript 타입 시스템만으로 Doom을 구현한 경이로운 개념 증명이자, AI 에이전트 워크플로에서 TypeScript 컴파일 성능이 진정한 병목이 될 수 있다는 진지한 통찰을 담고 있습니다.
Key Takeaways
Astro 6 Beta의 새 개발 서버는 workerd 위에서 실행되어 Durable Objects, KV 등을 시뮬레이션 없이 로컬에서 직접 사용할 수 있습니다.
Bun v1.3.6은 주목할 만한 성능 개선을 제공하지만, Platformatic의 Next.js 벤치마크에서 지속 부하 시 Bun의 평균 레이턴시가 ~246ms로 Deno/Watt의 11~14ms에 크게 뒤처졌습니다.
ESLint v10.0.0(RC)은 레거시 eslintrc 설정 시스템을 완전히 제거하고, 대규모 코드베이스에서 30~300% 성능 향상을 제공하는 멀티스레드 린팅을 추가합니다.