JSer.info #605 - React/Vue/svelteなどのUIフレームワークを利用でき、コンテンツファーストのウェブサイト向けフレームワークであるAstro 1.0がリリースされました。
betaからの変更点としてSSR Buildsの追加、画像の最適化をする<Image>
と<Picture>
の追加、MDXサポート、Vite 3.0へアップグレードが行われています。
マイグレーションガイドは次のページに公開されています。
Node.js v16.17.0がリリースされました。
Node.js 18からのbackportが中心となりますが、util.parseArgs
、ESM Loader Hooks API、node:test
モジュール、Web Crypto APIの互換性改善が追加されています。
Big Changes Ahead for Denoという記事では、Denoの今後の方向性について書かれています。
npm:
URLを使ってnpmモジュールをインストールできるようにしてNode.jsとの互換性の向上、FFIの改善などのパフォーマンス改善、企業サポート、コードからドキュメントを自動生成できるようになるアップデートを予定していることについて書かれています。
これらの変更予定は、Node.js compability modeなど元から検討されていた部分の延長ともいえますが、Bunとの機能的/ベンチマーク的な比較などを意識している部分もありそうです。
一方のBunの優先度としては、安定性の向上、npmパッケージ/Node.jsとの互換性向上、Contributionフローの改善、古いCPUターゲットでも動くようにすることが挙げられています。
JSer.infoをサポートするには
- 😘 知り合いにJSer.infoをおすすめする
- ❤️ GitHub Sponsorsで@azuのスポンサーになる
- 🐦 X(Twitter)で@jser_infoをフォローする
JSer.info Sponsors
JSer.info SponsorsはGitHub SponsorsとしてJSer.infoを支援してくれている方々です。
ヘッドライン
Astro 1.0 | Astro
Astro 1.0リリース。
SSR Buildsの追加、画像の最適化をする<Image>
と<Picture>
の追加、MDXサポート、Vite 3.0へアップグレード
Release v0.15.0 · evanw/esbuild
github.com/evanw/esbuild/releases/tag/v0.15.0
esbuild v0.15.0リリース。
Yarnのpnpをサポート
Announcing TypeScript 4.8 RC - TypeScript
devblogs.microsoft.com/typescript/announcing-typescript-4-8-rc/
TypeScript 4.8 RCリリース。
strictNullChecks
が有効時にunknown
は{} | null | undefined
と同様になり関連するコントロールフロー分析の改善、Template String Typesでのinfer
の改善。 --build
/-watch
/--incremental
におけるビルドパフォーマンスの改善、オブジェクトリテラルや配列リテラルを==
や===
で比較した場合にエラーとなるように。
Binding patternの型推論の改善、--watch
の安定性の改善など
Release Notes for Safari Technology Preview 151 | WebKit
webkit.org/blog/13093/release-notes-for-safari-technology-preview-151/
Safari Technology Preview 151リリース。
CSSのcolor-mix()
関数のサポート、media queryのscan
をサポート、:dir
擬似クラスのサポート。
iframeのlazy loadingをデフォルト化、XHRのabortを仕様に準拠するように修正など
Node v16.17.0 (LTS) | Node.js
nodejs.org/en/blog/release/v16.17.0/
Node.js 16.17.0リリース。
util.parseArgs
、ESM Loader Hooks API、node:test
モジュール、Web Crypto APIの互換性改善のbackport
Release v0.22.0 · vitest-dev/vitest
github.com/vitest-dev/vitest/releases/tag/v0.22.0
vitest 0.22.0リリース。
カバレッジツールとしてc8
とistanbul
を選択できるようになり、@vitest/coverage-c8
と@vitest/coverage-istanbul
がPeerDependencyへと変更するなど
Big Changes Ahead for Deno
Denoの今後について。
FFIの改善、npm:
URLを使ってnpmモジュールをインストールできるようになり互換性の向上、コードからドキュメントを自動生成できるようになるアップデートを予定している
Release 3.0.0-alpha.0 · prettier/prettier
github.com/prettier/prettier/releases/tag/3.0.0-alpha.0
prettier 3.0.0-alpha.0リリース。
ESMの対応、Node.js 12のサポート終了、Public APIの非同期か、trailingComma
のデフォルト値がall
へ変更など
アーティクル
Objects, Functions, and Type Narrowing | Learning TypeScript
www.learningtypescript.com/articles/objects-functions-and-type-narrowing?s=t
TypeScriptのNarrowingについて。
変数オブジェクトのプロパティ、関数呼び出し、関数の引数における型のNarrowingの挙動について
Will Bun JavaScript Take Node's Crown
semaphoreci.com/blog/javascript-bun
Node.js/Deno/Bunのベンチマーク比較記事
Why is CrUX data different from my RUM data?
web.dev/crux-and-rum-differences/
CrUXとRUMの違い、CrUXの統計データについて。
outline is your friend - Manuel Matuzović
www.matuzo.at/blog/2022/focus-outline/
CSSのoutline
プロパティについての記事。
The blind programmers who created screen readers - The Verge
www.theverge.com/23203911/screen-readers-history-blind-henter-curran-teh-nvda
スクリーンリーダのJAWSとNVDAがどのような経緯で作られたのかの歴史についての記事
ソフトウェア、ツール、ライブラリ関係
pemistahl/grex-js: A JavaScript / WebAssembly library for generating regular expressions from user-provided test cases
文字列の配列からそれにマッチする正規表現を生成するライブラリ