Fork me on GitHub

2023-10-25: Node, js 21(Current) 와 Node, js 20, 9, 0(LTS), Yarn 4, tsc --isolatedDeclarations

Translator: rewrite0w0 Edit on GitHub See Revisions

JSer, info #666 - Node, js 21 출시되었습니다.

홀수 버전은 개발 버전이므로 LTS가 없습니다.
Node.js 21에서는 Fetch/WebStreams API의 Stable, V8 11.8으로 업데이트, node --test으로 glob 지원 추가가 있습니다..
모듈 기본값을 ESM으로 하는 --experimental-default-type, Magic Bytes로 Wasm 판단하는 --experimental-wasm-modules 추가도 있습니다.
이 플러그에 관해서는 다음 글에서 해설했습니다.

fs.writeFileflush 옵션 추가, Streams과 HTTP 성능 개선, navigator 글로벌 객체 지원 추가되었습니다..


Node.js v20.9.0 출시되었습니다.

Node.js v20.9.0는, Node.js 20.x LTS가 시작하는 버전입니다.
Node.js 20.x LTS는, 2026-04-30까지 예정되어있습니다.


패키지 매니저 Yarn 4.0 출시되었습니다.

Node.js 12/14/16 지원 종료, yarn set versionpackageManager 필드를 갱신하도록 변경됩니다.
lockfile과 레지스트리 메타 데이터가 일치하는가 판단하는 Hardened Mode 추가, constraints engine를 JS 기반으로 바꿨습니다.
또한 Yarn 2/3에서는 플러그인이었던 yarn upgrade-interactiveyarn stage를 코어에 포함했으며, 성능 개선도 있습니다.


To support JSer.info


헤드라인


Release v0.3.7 · web-infra-dev/rspack

github.com/web-infra-dev/rspack/releases/tag/v0.3.7

rspack ReleaseNote

rspack v0.3.7 출시.
experiments.rspackFuture.newResolver으로 새 Resolver를 Opt-in 가능하도록.
styled-components 지원, Vue 2에서 CSS 추출 지원


Rspress, the Rspack-based static site generator · web-infra-dev · Discussion #5

github.com/orgs/web-infra-dev/discussions/5

Rust document Tools ReleaseNote

Rspack 기반 Docusarusu/VitePress 같은 정적 사이트 생성기 Rspress 1.0.0 출시.


Release v3.8.0 · nuxt/nuxt

github.com/nuxt/nuxt/releases/tag/v3.8.0

Vue library ReleaseNote

Nuxt.js v3.8.0 출시.
Nuxt DevTools 1.0, @nuxt/image 자동 설치, 애플리케이션 구성을 정의한 메타파일 대응, NuxtLink 기본 동작 설정 가능하도록.
useAsyncDatauseFetchdeep 옵션 추가, getCachedData으로 커스텀 캐시 지원


Storybook 7.5

storybook.js.org/blog/storybook-7-5/

Design Development Tools ReleaseNote

Storybook 7.5 출시.
Vite 5 지원, storiesOf 비권장화.
Next.js와 Angular 지원 개선, Lit 3.0 지원


Announcing TanStack Query v5 | TanStack Blog

tanstack.com/blog/announcing-tanstack-query-v5

React Vue Solid Svelte HTTP library ReleaseNote

TanStack Query v5 출시.
API 인수 형식 변경, Suspense 지원, 개발자 도구 개량.


Release: Yarn 4.0 🪄⚗️ | Yarn

yarnpkg.com/blog/release/4.0

yarn ReleaseNote

Yarn 4.0 출시.
Node.js 12/14/16 지원 종료, yarn set versionpackageManager 필드 갱신 가능하도록.
lockfile과 레지스트리 메타 데이터 일치 확인하는 Hardened Mode 추가, constraints engine를 JS 기반으로 변경.
yarn upgrade-interactiveyarn stage를 코어에 포함, 성능 개선


Release v0.3.8 · web-infra-dev/rspack

github.com/web-infra-dev/rspack/releases/tag/v0.3.8

rspack ReleaseNote

rspack v0.3.8 출시.
Top-Level await 지원


Node v20.9.0 (LTS) | Node.js

nodejs.org/en/blog/release/v20.9.0

nodejs ReleaseNote

Node.js v20.9.0 출시.
Node.js 20.x LTS이 되는 버전.
2026년 4월까지 유지보수 예정.


Node.js 21 is now available! | Node.js

nodejs.org/en/blog/announcements/v21-release-announce

nodejs ReleaseNote

Node.js v21 출시.
current(개발판) 메이저 버전.
Fetch/WebStreams API의 Stable화, V8 11.8으로 업데이트, node --test에서 glob 지원.
모듈 기본값을 ESM으로 해주는 --experimental-default-type, Magic Bytes에서 Wasm 판단하는 --experimental-wasm-modules 추가.
fs.writeFileflush 옵션 추가, Streams와 HTTP 성능 개선, navigator 글로벌 객체 지원


읽을거리


The State of WebAssembly 2023

blog.scottlogic.com/2023/10/18/the-state-of-webassembly-2023.html

WebAssembly Survey

WebAssembly 개발자 앙케이트 결과


Goodbye, Node.js Buffer — Sindre Sorhus

sindresorhus.com/blog/goodbye-nodejs-buffer

nodejs opinion article

Node.js Buffer는 브라우저 호환성이 없기에, Uint8Array 대신 사용하자는 이야기.
현재 BufferUint8Array 서브클래스로 구현되어 있지만, slice() 동작 차이나 이식성이 나쁜 문제가 있음.
Uint8Array 직접 다루는 방법이나 마이그레이션 관련하여


JS Decorators Explained: 10 Years Journey to the Real Implementation | Binary Studio

binary-studio.com/blog/ecmascript-decorators/

JavaScript ECMAScript article history

현재 Stage 3의 Decorator이 어떻게 지금의 형태에 이르렀는가에 대해


슬라이드, 영상


Faster TypeScript builds with --isolatedDeclarations by Titian-Cornel Cernicova-Dragomir - GitNation

portal.gitnation.org/contents/faster-typescript-builds-with-isolateddeclarations

TypeScript video performance

TypeScript 자료형 정의 파일 출력을 파일째로 하는 --isolatedDeclarations 옵션을 구현하고 있다는 이야기.
현재 TypeScript 자료형 생성은 의존 그래프나 추론된 타입에 의존하고 있음.
어느 정도 제한은 있다만 파일 째로 독립된 자료형 정의 생성함으로, 다른 도구도 자료형 정의 생성이 가능해지며, 또 파일 째로 병렬 처리 가능해지므로 성능이 향상된다는 의견.


BlinkOn 18 - Sunnyvale + Virtual - YouTube

www.youtube.com/playlist?list=PL9ioqAuyl6UKYm7EYVa7FcKCR2kDCudII

blink Chrome video Conference

BlinkOn 18 영상 정리


소프트웨어, 도구, 라이브러리


AlexSergey/rockpack: Rockpack is a simple solution for creating React Application with Server Side Rendering, bundling, linting, testing within 5 minutes

github.com/AlexSergey/rockpack

React Tools library TypeScript

Create React App 같은 React 애플리케이션 개발 툴킷


Pull Request to this article
JSer.info Slackに参加する