JSer.info #686 - Firefox 124がリリースされました。
AbortSignal.any()
のサポート、WebDriver BiDiの対応改善が含まれています。
また、フラグ付きでSharedArrayBuffer.prototype.grow()
とArrayBuffer.prototype.resize()
のサポートなども行われています。
Chrome 123がリリースされました。
CSSのlight-dark()
のサポート、Service worker Static Routing APIのサポート、Content-Encoding: zstdをサポートなどが含まれています。
また、BFCacheが利用できなかった理由を取得できるnotRestoredReasons
のサポート、ES Proposal Stage 3のImport Attributesをサポートなども行われています。
Node.jsのドキュメンタリー動画が公開されています。
Node.jsの誕生からRyan→Isaac→TJへのオーナーの移譲、Joyentでの停滞、io.jsのForkからの統合、Node.js Foundationの設立までの話をまとめた動画になっています。
同じタイミングで、Node.jsのウェブサイトがNext.jsでリデザインされたことが発表されています。
Node.jsの作者でもありDenoの作者でもあるRyan Dahl氏が、Xに復帰したり、次のPodcastではJSR: the JavaScript Registryについて話されています。
また、2代目のNode.jsのオーナーでもあるIsaacが、JavaScriptパッケージマネージャーの開発を行うvltに参加したことも発表されています。
JSer.infoをサポートするには
- 😘 知り合いにJSer.infoをおすすめする
- ❤️ GitHub Sponsorsで@azuのスポンサーになる
- 🐦 X(Twitter)で@jser_infoをフォローする
JSer.info Sponsors
JSer.info SponsorsはGitHub SponsorsとしてJSer.infoを支援してくれている方々です。
ヘッドライン
Announcing Rsbuild v0.5 - Rsbuild
rsbuild.dev/community/releases/v0-5
Rsbuild v0.5リリース。
Lightning CSSをopt-inでサポート、Custom Serverをサポート、SVGRプラグインの改善など
Firefox 124.0, See All New Features, Updates and Fixes
www.mozilla.org/en-US/firefox/124.0/releasenotes/
Firefox 124リリース。
AbortSignal.any()
のサポート、WebDriver BiDiの対応改善。
フラグ付きでSharedArrayBuffer.prototype.grow()
とArrayBuffer.prototype.resize()
のサポートなど
Announcing VitePress 1.0 | The Vue Point
blog.vuejs.org/posts/vitepress-1.0
VitePress 1.0リリース
New in Chrome 123 | Blog | Chrome for Developers
developer.chrome.com/blog/new-in-chrome-123?hl=en
Chrome 123リリース。
CSSのlight-dark()
のサポート、
Service worker Static Routing APIのサポート、Content-Encoding: zstdをサポート。
BFCacheが利用できなかった理由を取得できるnotRestoredReasons
のサポート、ES Proposal Stage 3のImport Attributesをサポートなど
Node.js — Node v18.20.0 (LTS)
nodejs.org/en/blog/release/v18.20.0
Node.js v18.20.0リリース。
Import Attributesのサポート、vm.Script
とDynamic Importに関するパフォーマンス改善をbackport(Jestでメモリリークする問題の改善)
Node.js — Node v20.12.0 (LTS)
nodejs.org/en/blog/release/v20.12.0
Node.js v20.12.0リリース。
crypto.hash()
の追加、.env
を扱うprocess.loadEnvFile(path)
とutil.parseEnv(content)
を追加。
net.createConnection
に接続試行に関するイベントを追加、util.styleText(format, text)
を追加など
Release v10.4.0 · mochajs/mocha
github.com/mochajs/mocha/releases/tag/v10.4.0
Mocha v10.4.0リリース。
Error Causeの表示に対応
Release v9.0.0-beta.0 · pnpm/pnpm
github.com/pnpm/pnpm/releases/tag/v9.0.0-beta.0
pnpm v9.0.0-beta.0リリース。
Node.js 16のサポート終了、Lockfileバージョンをv7に変更、dedupe-injected-deps
をtrue
に変更、link-workspace-packages
をfalse
に変更。
pre/post-scriptを実行するenable-pre-post-scripts
をtrue
に変更など
アーティクル
Optimizing Javascript for fun and for profit
romgrk.com/posts/optimizing-javascript
JavaScriptのパフォーマンスの最適化について。パフォーマンスと可読性のトレードオフ。
文字列の比較を避ける、異なる形状を避ける、配列やオブジェクトのメソッドを避けるといった実行時のコストを減らす工夫について
Performance tooling in 2024 and beyond | Blog | Chrome for Developers
developer.chrome.com/blog/perf-tooling-2024
Chrome DevToolsに試験的に実装されていた"Performance Insights"パネルは2024年後半に削除される予定。
"Performance Insights"は情報密度を減らすことを目的にしていたが、"Performance"パネルの方が使われていたという話
Node.js — Diving into the Node.js Website Redesign
nodejs.org/en/blog/announcements/diving-into-the-nodejs-website-redesign
Node.jsのウェブサイトがNext.jsで新しく書き直された話。
nextraでの静的サイトとして始めたがカスタム設定が多くなり、Next.jsをVercelで動かす形に変更した。
このリニューアルで既存の翻訳はリセットされたため、現時点では404となっており、今後Crowdinを使った翻訳の仕組みを導入予定。
Flow Nodes: How Type Inference Is Implemented
effectivetypescript.com/2024/03/24/flownodes/
TypeScriptのnarrowingがどのように動作しているかについて。
上から下に型を絞り込んでいるのではなく、シンボルが参照されてるポイントから制御フローグラフを逆にたどることで型を絞り込む実装になっている話
Chrome で text-spacing-trim プロパティがサポートされたぞ!!
zenn.dev/inaniwaudon/articles/3ff8761773178c
Chrome 123でサポートされたCSSのtext-spacing-trimプロパティについて
スライド、動画関係
Node.js: The Documentary | An origin story - YouTube
www.youtube.com/watch?v=LB8KwiiUGy0
Node.jsについてのドキュメンタリー動画。
Node.jsが作成された理由や初期の開発、Windowの対応とlibuv。
Ryan→Isaac→TJへのオーナーの移譲、Joyentでの停滞とio.jsのfork、io.jsとNode.jsがマージされるまでの話
サイト、サービス、ドキュメント
Runtime compatibility across JavaScript runtimes
Bun/Deno/Vercel/LLRT/Node.js/wasmer/workerdなどのJavaScript RuntimeのWinterCG API互換性をまとめたテーブル
Rsdoctor
webpackやRspackのbundle結果を分析できるツール。
bundle結果のサマリ、コンパイル/minifyの時間、loaderごとの処理時間やタイムライン、モジュールの依存関係の分析など