Fork me on GitHub

2022-10-25のJS: Node.js 19、npm 9、Safari 16.1(Web Push)

Edit on GitHub 編集履歴を見る

JSer.info #615 - Node.js 19.0.0がリリースされました。

Node.js 19は奇数バージョンなので、開発バージョン扱いとなりLTSとしてはリリースされません。

Node.js 19.0.0では、node --watchの追加、HTTP/1.1でkeepAliveがデフォルト化、WebCryptoがStableへと変更されています。
依存関係がV8 10.7、llhttp 8.1.0、npm 8.19.2へアップデートされています。
また、--requireフラグのESM版である--importフラグの追加なども行われています。


npm 9.0.0がリリースされました。

まだ@latestのdist-tagが付けられていないため、npm i -g npm@9でインストールができます。
2022年11月9日に@latestのdist-tagが貼られてGAとなりnpm i -g npmでインストールできるようになります。
その後、Node.js 19と18にも同梱される予定となっているようです。

npm 9では、Node.js 12のサポート終了、認証方法を扱う--auth-typeのデフォルトを"web"に変更しています。
また、package.jsonfilesフィールドが定義されている場合はルートにある.gitignore.npmignoreを無視するように変更。
エラーとクラッシュのログを区別し、--jsonをつけた場合でもクラッシュのログはJSONとして出力しないように変更。
npm accessnpm birthdaynpm set-scriptnpm binコマンドの削除なども含まれます。


Safari 16.1がリリースされました。

Safari 16.1ではSafari Push Notificationsという独自のプッシュ通知でなく、Service Workerに対応したWeb Pushをサポートしています。

その他にはAVIF形式のサポート、PassKeysのサポート、Scroll to Text Fragmentのサポートが追加されています。


ヘッドライン


Release Notes for Safari Technology Preview 156 | WebKit

webkit.org/blog/13394/release-notes-for-safari-technology-preview-156/

safari ReleaseNote

Safari Technology Preview 156リリース。
Intl.DurationFormatの実装、Temporal APIの改善、import.meta.resolve()とImport Mapsの実装。
Clear-Site-Data HTTPヘッダのサポートなど


Release v9.0.0 · npm/cli

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

npm ReleaseNote

npm v9.0.0リリース。
Node.js 12のサポート終了、認証方法を扱う--auth-typeのデフォルトを"web"に変更。
package.jsonfilesフィールドが定義されている場合はルートにある.gitignore.npmignoreを無視するように変更。
エラーとクラッシュのログを区別し、--jsonをつけた場合でもクラッシュのログはJSONとして出力しないように変更。
npm accessnpm birthdaynpm set-scriptnpm binコマンドの削除など


Release v1.6.0 - Castle in the Sky · solidjs/solid

github.com/solidjs/solid/releases/tag/v1.6.0

JavaScript library ReleaseNote

Solid v1.6.0リリース。
Partial Hydrationのサポート、コンポーネントにPropsとして渡すSpread Syntaxの改善など


Node v19.0.0 (Current) | Node.js

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

node.js ReleaseNote

Node.js v19.0.0リリース。
開発バージョンとなる奇数バージョン。
node --watchの追加、HTTP/1.1でkeepAliveがデフォルト化、WebCryptoがStableへと変更。
依存関係をV8 10.7、llhttp 8.1.0、npm 8.19.2へアップデート。
また、--requireフラグのESM版である--importフラグの追加なども行われています。


Tailwind CSS v3.2: Dynamic breakpoints, multi-config, and container queries, oh my! - Tailwind CSS

tailwindcss.com/blog/tailwindcss-v3-2

CSS library ReleaseNote

Tailwind CSS 3.2リリース。
@configでのconfigの読み込みをサポート。
@supports相当のsupport-[] variantを追加、WAI-ARIA属性に対応するvariantの追加、Data属性に対応するvariantの追加、max-* variantの追加。
プラグインにmatchVariant APIを追加、Container Queryに対応するプラグインの追加など


Release v3.0.0 · svg/svgo

github.com/svg/svgo/releases/tag/v3.0.0

SVG library

SVGO v3リリース。
Node 12のサポート終了、設定やプラグインのAPIの変更などが含まれる


Release 3.26.0 - 2022.10.24 · zloirock/core-js

github.com/zloirock/core-js/releases/tag/v3.26.0

JavaScript ECMAScript proposal library polyfill ReleaseNote

core-js v3.26.0リリース。
Stage 2のwell-formed unicode stringsの実装、iterator helpers proposalの仕様変更に追従、selfのpolyfillを追加など


Vite 4 · Discussion #10570 · vitejs/vite

github.com/vitejs/vite/discussions/10570

vite issue

Vite 4のマイルストーンについてのDiscussion


WebKit Features in Safari 16.1 | WebKit

webkit.org/blog/13399/webkit-features-in-safari-16-1/

safari ReleaseNote

Safari 16.1の変更点について。
Web Pushのサポート、AVIF形式のサポート、PassKeysのサポート、Scroll to Text Fragmentのサポート。
getDisplayMedia()で特定のウィンドウをキャプチャできるようになるなど


Release v1.0.0 · fingerprintjs/BotD

github.com/fingerprintjs/BotD/releases/tag/v1.0.0

browser JavaScript library ReleaseNote

Bot検知ライブラリ/サービスのBotD 1.0.0リリース。


アーティクル


No spooky cookies - Chrome Developers

developer.chrome.com/en/blog/no-spooky-cookies/

Chrome browser privacy article

Partitioned Cookieについて。
Partitioned属性を付与したCookieはトップレベルのサイトごとに分離されて保存、送信されるようになる。
サードパーティクッキーの段階的な廃止の一部となる仕組み


Cloudflare Workers and micro-frontends: made for one another

blog.cloudflare.com/better-micro-frontends/

MicroFrontend article

Cloudflare WorkersとQwikを使ったMicroFrontendのサンプル実装。
各フラグメントを返すWorkerがあり、メインのWorkerからフラグメントのWorkerにリクエストする形で取得したものを結合してSSRする。
各フラグメントとなるWorkerは独立してデプロイできるようになっている。


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


oscartbeaumont/rspc: A blazingly fast and easy to use TRPC-like server for Rust.

github.com/oscartbeaumont/rspc

Rust TypeScript library

RustとTypeScript間のIPCをtRPCライクに型付けありで行えるライブラリ。
ReactやSolid、Tauriに対応したクライアントライブラリも提供している。


thebinarysearchtree/flyweight: An ORM for SQLite

github.com/thebinarysearchtree/flyweight

SQLite node.js library

Node.js向けのSQLite ORM


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