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.writeFile
にflush
オプションの追加、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 version
はpackageManager
フィールドを更新するように変更されています。
ロックファイルとレジストリのメタデータが一致しているかを検証するHardened Modeの追加、制約エンジンをJSベースに置き換えが行われています。
またYarn 2/3ではプラグインとなっていたyarn upgrade-interactive
とyarn stage
をコアに取り込み、パフォーマンスの改善なども含まれています。
JSer.infoをサポートするには
- 😘 知り合いにJSer.infoをおすすめする
- ❤️ GitHub Sponsorsで@azuのスポンサーになる
- 🐦 X(Twitter)で@jser_infoをフォローする
JSer.info Sponsors
JSer.info SponsorsはGitHub SponsorsとしてJSer.infoを支援してくれている方々です。
ヘッドライン
Release v0.3.7 · web-infra-dev/rspack
github.com/web-infra-dev/rspack/releases/tag/v0.3.7
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
RspackベースのDocusarusu/VitePressライクな静的サイトジェネレータであるRspress 1.0.0リリース。
Release v3.8.0 · nuxt/nuxt
github.com/nuxt/nuxt/releases/tag/v3.8.0
Nuxt.js v3.8.0リリース。
Nuxt DevTools 1.0、@nuxt/image
の自動インストール、アプリの構成を定義したメタファイルの出力に対応、NuxtLinkのデフォルトの挙動を設定できるように。
useAsyncData
とuseFetch
にdeep
オプションの追加、getCachedData
でカスタムキャッシュをサポートなど
Storybook 7.5
storybook.js.org/blog/storybook-7-5/
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
TanStack Query v5リリース。
APIの引数の形式を変更、Suspenseのサポート、開発者ツールの刷新など。
Release: Yarn 4.0 🪄⚗️ | Yarn
Yarn 4.0リリース。
Node.js 12/14/16のサポート終了、yarn set version
はpackageManager
フィールドを更新するように。
ロックファイルとレジストリのメタデータが一致しているかを検証するHardened Modeの追加、制約エンジンをJSベースに置き換え。
yarn upgrade-interactive
とyarn stage
をコアに取り込み、パフォーマンスの改善など
Release v0.3.8 · web-infra-dev/rspack
github.com/web-infra-dev/rspack/releases/tag/v0.3.8
rspack v0.3.8リリース。
Top-Level await
のサポートなど
Node v20.9.0 (LTS) | Node.js
nodejs.org/en/blog/release/v20.9.0
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
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.writeFile
にflush
オプションの追加、StreamsとHTTPのパフォーマンス改善、navigator
のグローバルオブジェクトをサポートなど
アーティクル
The State of WebAssembly 2023
blog.scottlogic.com/2023/10/18/the-state-of-webassembly-2023.html
WebAssemblyについて開発者アンケートの結果
Goodbye, Node.js Buffer — Sindre Sorhus
sindresorhus.com/blog/goodbye-nodejs-buffer
Node.jsのBuffer
はブラウザとの互換性がないため、Uint8Array
を代わりに使おうという話。
現在のBuffer
はUint8Array
のサブクラスとして実装されているが、slice()
の動作の違いや移植性が悪いというなどの問題がある。
Uint8Array
を直接扱う方法やマイグレーションなどについて
JS Decorators Explained: 10 Years Journey to the Real Implementation | Binary Studio
binary-studio.com/blog/ecmascript-decorators/
現在Stage 3のDecoratorが、どのように今の形になったかについて
スライド、動画関係
Faster TypeScript builds with --isolatedDeclarations by Titian-Cornel Cernicova-Dragomir - GitNation
portal.gitnation.org/contents/faster-typescript-builds-with-isolateddeclarations
TypeScriptの型定義ファイルの出力をファイルごとに行える--isolatedDeclarations
オプションを実装しているという話。
現在のTypeScriptの型定義の生成は依存グラフや推論された型に依存している。
いくつかの制限があるがファイルごとに独立して型定義を生成できるようにすることで、他のツールも型定義の生成が可能になり、またファイルごとに並列で処理できるためパフォーマンスが向上するという話。
- Isolated declarations by dragomirtitian · Pull Request #53463 · microsoft/TypeScript
- `--isolatedDeclarations` for standalone DTS emit · Issue #47947 · microsoft/TypeScript
BlinkOn 18 - Sunnyvale + Virtual - YouTube
www.youtube.com/playlist?list=PL9ioqAuyl6UKYm7EYVa7FcKCR2kDCudII
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
Create React App的なReactでのアプリケーション開発をするツールキット