JSer.info #696 - Storybook 8.1가 출시되었어요.
Story 파일 만드는 UI 추가, Subpath imports 사용한 mock 대응, Playwright Component Test 대응이 있어요.
pacakge.json의 imports 필드에 특정 모듈을 조건 분기로 읽는 구조 Subpath imports은 다음 글에 해설되어 있어요.
그 외로, React 19/Angular 18 지원도 있어요.
Turborepo 2.0가 출시되었어요.
Turborepo는 monorepo 대상 빌드/태스크 관리 도구에요.
Turborepo 2.0에는 터미널 UI 쇄신, persistent 옵션 추가, turbo watch 추가, 문서 쇄신도 있어요.
Node.js 22.3.0가 출시되었어요.
Buffer에 bytes() 구현, experimental 플래그로 Test Runner에서 Snapshot Testing 구현되었어요.
- https://nodejs.org/api/test.html#snapshot-testing
- test_runner: add snapshot testing by cjihrig · Pull Request #53169 · nodejs/node
To support JSer.info
- 😘 Recommend JSer.info to your friends!
- ❤️ Support @azu on GitHub Sponsors/JSer.info Sponsors
- 🐦 Follow @jser_info on X(Twitter)
헤드라인
Announcing TypeScript 5.5 RC - TypeScript
devblogs.microsoft.com/typescript/announcing-typescript-5-5-rc/
TypeScript 5.5 RC 출시.
함수에서 type predicates 추론할 수 있게되었으며, Array.prototype.filter 같은 것으로 필터링을 간결하게 작성 가능.
Stage 3의 Set Methods 지원.
JSDoc에서 @import {foo} from "foo" 지원, 기본적으로 정규표현 구문 체크 지원, isolatedDeclarations 지원.
특정 파일 내에 ${configDir} 템플릿 값 지원.
typescript 패키지 크기 절감, Named Import 지원, transpileDeclaration API 추가.
transpileModule와 transpileDeclaration 빌드 시간 개선.
out나 target: ES3 같은 비권장 옵션 무효화, ignoreDeprecations 옵션을 특정하지 않으면 이용할 수 없도록 변경
Release CLI v1.8.0 · biomejs/biome
github.com/biomejs/biome/releases/tag/cli%2Fv1.8.0
Biome v1.8.0 출시.
biome clean 명령어 추가, biome lint에 --only와 --skip 플래그 추가, CSS의 format과 lint 지원
power-assert-monorepo/packages/node at main · twada/power-assert-monorepo
github.com/twada/power-assert-monorepo/tree/main/packages/node
Node.js의 --import 에 대응한 power-assert
Storybook 8.1
storybook.js.org/blog/storybook-8-1/
Storybook 8.1 출시.
Story 파일 만드는 UI, Subpath imports 사용한 mock 대응, Playwright Component Test 대응.
React 19/Angular 18 지원
Release v1.0.0 · tinylibs/tinypool
github.com/tinylibs/tinypool/releases/tag/v1.0.0
tinypool 1.0.0 출시.
Node.js의 worker_threads Worker Pool 구현 라이브러리
Turborepo 2.0
Turborepo 2.0 출시.
터미널 UI 쇄신, persistent 옵션 추가, turbo watch 추가, 문서 쇄신.
Firefox 127.0, See All New Features, Updates and Fixes
www.mozilla.org/en-US/firefox/127.0/releasenotes/
Firefox 127 출시.
<base> 요소에 data:와 javascript:가 특정하지 못하도록 변경, Stage 3의 Set Methods 지원, async Clipboard API 지원
Node.js — Node v22.3.0 (Current)
nodejs.org/en/blog/release/v22.3.0
Node.js v22.3.0 출시.
Buffer에 bytes() 구현, experimental 플래그로 Test Runner에서 Snapshot Testing 구현, NODE_RUN_SCRIPT_NAME 추가
News from WWDC24: WebKit in Safari 18 beta | WebKit
webkit.org/blog/15443/news-from-wwdc24-webkit-in-safari-18-beta/
Safari 18 beta 변경점에 대해.
View Transition API 지원, Style Queries 지원, @starting-style와 display: none 조합 지원.
justify-content: safe center 지원, content-visibility 지원.
<input type=date> 접근성 개선, URL.parse() 지원, JPEG2000 지원 삭제
읽을거리
Data Fetching Patterns in Single-Page Applications
martinfowler.com/articles/data-fetch-spa.html
React 클라이언트 사이드에서 Data Fetch 패턴
Mastering Node.js Performance Hooks
pavel-romanov.com/nodejs-performance-hooks-mastering-the-mental-model
유저 기기 영향을 받는 wall clock과 성능 계측에 적절한 monotonic clock에 관하여.
Node.js의 perf_hooks 모듈 이용 가능한 PerformanceObserver에는 monotonic clock 시간을 얻기, 기본적 사용 방법에 대해
WebAssembly JSPI has a new API · V8
WebAssembly의 JavaScript Promise Integration에 대해
TypeScript 자료형과 값 검증
zenn.dev/mizchi/articles/typescript-type-value-validation
TypeScript는 기본적으로 JavaScript으로 자료형 정보를 부여할 뿐이므로, Runtime 동작에서는 JavaScript와 다르지 않다는 이야기.
검증과 자료형에 대해
소프트웨어, 도구, 라이브러리
slevithan/regex: Context-aware regex template tag with best practices built-in and advanced features
정규표현을 Tagged Template에서 쓸 수 있는 라이브러리
