Fork me on GitHub

2023-02-08のJS: Node.js v18.14.0(npm 9.xへアップデート)、Interop 2023、 Learn Images

Edit on GitHub 編集履歴を見る

JSer.info #630 - Node.js v18.14.0がリリースされました。

Node.js v18.14.0は、npm 9.3.1へのメジャーアップデートが含まれています。
npm 9には、いくつかのコマンドの削除やデフォルト設定の変更などが含まれています。

npmのアップデートによるパッケージのNode.jsのテストに失敗がないこと、ロックファイルが自動で変更されないことなどを条件に、Node.jsのminor updatesに含まれることになりました。詳しい条件は次のページにまとめられています。

または、Node.js v19.6.0では、npm v9.4.0が同梱されています。

npm v9.4.0ではpnpmライクなインストールモードである--install-strategy=linkedが実験的にサポートされています。


ブラウザ互換性に関して重点的に取り組む分野を決めたInterop 2023が開始されました。

CSSではContainer Queries、CSS Grid、:has()など。
JSでは、Module、Offscreen Canvas、Pointer Eventsなど。
そのほかにはURLやWebCodecsなどが重点分野として選ばれています。

各ブラウザ関係者が記事を公開していますが、取り組む機能についてはWebKitのブログにまとまっています。

ブラウザごとの実装状況は次のページで確認できます。


JSer.infoをサポートするには

JSer.info Sponsors

JSer.info SponsorsGitHub SponsorsとしてJSer.infoを支援してくれている方々です。


ヘッドライン


Release v2.0.0 · pmndrs/jotai

github.com/pmndrs/jotai/releases/tag/v2.0.0

JavaScript library ReleaseNote

Jotai 2.0.0リリース。
createStore APIをexpose。
破壊的な変更として、get()が自動でPromiseをresolveしないように、initialValuesstoreで渡すように変更など


ECMAScript proposal updates @ 2023-01 | ECMAScript Daily

ecmascript-daily.github.io/ecmascript/2023/02/03/ecmascript-proposal-update

ECMAScript proposal news

2023年1月のTC39ミーティングでのProposalのステータス変更のまとめ。
ArrayにImmutableメソッドを追加するProposalがStage 4となりES2023に含まれる。
Node.jsのAsyncStorage APIとよく似ているAsync Contextが提案された。


Node v18.14.0 (LTS) | Node.js

nodejs.org/en/blog/release/v18.14.0/

node.js npm ReleaseNote

Node.js v18.14.0リリース。
npm 9.3.1を同梱するように変更。
npm 8から9は破壊的な変更を含むが、アップデートによるパッケージのテストに失敗がないこと、ロックファイルが自動で変更されないことなどを条件にNode.jsのminor updateで取り込まれる。


Node v19.6.0 (Current) | Node.js

nodejs.org/en/blog/release/v19.6.0/

node.js ReleaseNote

Node.js v19.6.0リリース。
--experimental-loaderで読み込んだLoaderが、後ろで読み込むLoaderに対して適用されるように。
npm 9.4.0へアップデートし--install-strategy=linkedをサポート


Release v9.4.0 · npm/cli

github.com/npm/cli/releases/tag/v9.4.0

npm ReleaseNote

npm v9.4.0リリース。
pnpmライクなインストール戦略である--install-strategy=linkedをサポート。
Isolated modeと言われていたRFCの実装。


アーティクル


Learn Images

web.dev/learn/images/

tutorial Image article

<img>タグなどの画像についてのチュートリアル。
レスポンシブ画像、画像とCLSなどのパフォーマンスメトリクス、画像フォーマットごとの特徴、画像と配信について


What's New In DevTools (Chrome 110) - Chrome Developers

developer.chrome.com/en/blog/new-in-devtools-110/

Chrome debug Tools

Chrome 110の変更点について。
ロード時にPerformanceタブをクリアするように、User Flowの改善、Source表示をデフォルトで整形するように、VueやTSXなどのシンタックスハイライトに対応。
Auto Completeの改善など


ElementInternals and Form-Associated Custom Elements | WebKit

www.webkit.org/blog/13711/elementinternals-and-form-associated-custom-elements/

WebComponents article

Custom ElementのElementInternalsについて。
Custom Elementでaria-*属性を固定してしまう問題を#internals.aria*での回避、Form Validationを扱える#internals.setFormValueなど。


On building the enterprise-grade Node.js applications | Code Flashbacks

www.codeflashbacks.com/announcing-the-enterprise-node-js-service-template/

node.js article

Node.jsでのエンタープライズアプリケーションを作る際のテンプレートプロジェクトについて。
Fastify、DDD、E2Eテスト、グローバルのエラー処理、分散トレース向けのx-request-idの設定、テスト、Type Safeな設定管理、Prismaを使ったDB管理などを含む


サイト、サービス、ドキュメント


web-platform-tests dashboard

wpt.fyi/interop-2023

browser testing web

ブラウザ互換性に関して重点的に取り組む分野を決めたInterop 2023が開始された。
CSSではContainer Queries、CSS Grid、:has()など。
JSでは、Module、Offscreen Canvas、Pointer Eventsなど。
そのほかにはURLやWebCodecsなどが重点分野として選ばれている。


deps: replace url parser with Ada by anonrig · Pull Request #46410 · nodejs/node

github.com/nodejs/node/pull/46410

node.js URL issue performance

Node.jsのURLをada-urlというC++で実装したものに切り替える。
現在のURLの実装と比較してパフォーマンスが改善されている。


ソフトウェア、ツール、ライブラリ関係


CodeIntelligenceTesting/jazzer.js: Coverage-guided, in-process fuzzing for the Node.js

github.com/CodeIntelligenceTesting/jazzer.js

JavaScript testing library

libFuzzerベースのFuzzingライブラリ


tanekloc/tmsg: Type-safe i18n library for TypeScript apps. Based on and largely compatible with MessageFormat.

github.com/tanekloc/tmsg

JavaScript TypeScript library i18n

messageformatの機能をサポートしたi18nライブラリ。
型でテンプレートをパースすることで、テンプレートにない値を渡すとコンパイルエラーにできる


shadcn/ui - Beautifully designed components built with Radix UI and Tailwind CSS.

ui.shadcn.com/

React UI library

Radix UIとTailwind CSSを使ったReact UIフレームワーク


この記事へ修正リクエストをする
JSer.info Slackに参加する