npmReleaseNote
npm v8.11.0リリース。 `npm birthday`をDeprecatedに変更。 `npm pkg`コマンドがあるため`npm set-script`をDeprecatedに変更。 `--global`と`--local`フラグをそれぞれDeprecatedとなり、`--location=global/local`の利用を推奨するようになるなど。
TypeScriptnode.jslibraryReleaseNote
ts-node v10.8.0リリース。 TypeScript 4.7で追加されたECMAScript Modules in Node.jsのサポート。 import時の拡張子をマッピングする`experimentalResolver`オプションの追加。 Node.jsの`--experimental-specifier-resolution`フラグに対応する`experimentalSpecifierResolution`オプションの追加など
TypeScriptReleaseNote
TypeScript 4.7リリース。 Node.jsのECMAScript Moduleをサポート、`.mts`/`.cts`のサポート。 `moduleDetection`オプションの追加。 Compuatedプロパティに対するコントロールフロー解析の改善、オブジェクトにおける関数の型推論の改善。 Genericsの型を指定したaliasを定義できる Instantiation Expressionsをサポート、inferに対するextendsでの推論条件の追加をサポート。 型が共変(in)/反変(out)/不変(in out)なのかを指定できるアノテーションを追加、モジュール解決時の探索方法をカスタマイズする`moduleSuffixes`オプションの追加。 `import type`/`import()`/Reference Commentでresolution-modeを指定できるようになるなど
JavaScriptmonorepoReleaseNote
lerna v5.0.0リリース。 Nx社にメンテナンスが移行してからの初のリリース。 Node.js 12以下のサポート終了、auditの問題が出ていたパッケージのアップデートなど。
JavaScriptReactVuewebworkersecuritylibrary
UIの定義をWeb WorkerなどのUIスレッド以外で行い、メッセージパッシングして受け取ったオブジェクトからレンダリングすることでSandboxに利用できるツールキット。 DOMライクなAPIやReact/Vue向けのAPIが用意されていて、ユーザーにUIツリーの定義を書いてもらい、それをレンダリングするホスト環境を別途実装できる。 ShopifyやStripe Appsで利用されている。
flowtypeTypeScriptarticle
AirtableのcodemodをベースにFlowTypeからTypeScriptへの切り替えをおこなった話。 マイグレーションスクリプト、Lintやテストの下準備などを行いコードロックした1日でコードベースをまとめて移行したという話。
Next.jsarticleproposal
Next.jsの新しいLayout RFCを解説する記事。 `app/`というディレクトリでopt-inする形となり、`layout.js`と`page.js`というファイル名の命名規則使ったルーティングとレイアウトの仕組みについて。 また、この新しいLayout RFCではReact Server Componentsがデフォルトとなることについてなど
JavaScriptlibraryReleaseNote
Faker v7.0.0リリース。 default exportを削除、ES2020をサポートしている環境をターゲットに変更、Node.js 12のサポート終了など
ElectronReleaseNote
Electron v19.0.0リリース。 Chromium 102、V8 10.2、Node.js 16.14.2にアップデート。 Electron 20からpreload scriptsは自動的にsandboxで実行される。 そのため、`nodeIntegration: true` かつ `sandbox`が無指定の場合に警告が出るようになった。
puppeteerlibraryTools
Puppeteerを使いサイトへアクセスして、Heap Snapshotを取得し、そのSnapshotから特定のプロパティ名にマッチするオブジェクトを取り出すスクレイピングライブラリ。
jestbrowsertestinglibrary
Jestで実行中のテストに`debug()`関数を仕込むことで、実行中のテストが作成したHTMLをブラウザでプレビューしながらデバッグできるライブラリ。
node.jsReleaseNote
Node.js 18.2.0リリース。 OpenSSLのセキュリティ修正、`http.Server`に`closeAllConnections`と`closeIdleConnections`を追加。 `perf_hooks`に`PerformanceResourceTiming`のサポートを追加など
playwrightJavaScriptbrowsertestingvideo
Playwright v1.22で試験的に実装されたComponent Tests機能の解説動画。 どのような仕組みでブラウザにコンポーネントをmountしているか、コンポーネントのテスト実行、デバッガーとの連携、キーボード入力やスクリーンショットの撮影などについて
CSSfontsaccessibilityarticle
`px`と`rem`について。 `px`指定はブラウザのデフォルトフォントサイズの影響を受けないが`rem`は影響を受ける。 使う場所による違い、デフォルトフォントサイズを大きくして確認する方法、ルートのフォントサイズを小さくする問題についてなど
cloudflarelibraryJavaScript
Cloudflare Workers向けのルーティングライブラリ
JavaScriptlibraryReleaseNote
mithril.js v2.2.0リリース。
DOMlibraryReleaseNote
Happy DOM v4.0.0リリース。 Void Elementのシリアライズバグを修正。 `<img />`を`<img>`にシリアライズ、一方でSVG要素は`<circle />`を`<circle></circle>`へとシリアライズするように修正。
babelReleaseNote
Babel v7.18.0リリース。 TypeScript 4.7のoptional variance(`in`/`out`)、instantiation expressionsなどに対応。 Stage 2のPrivate destructuringのサポート、`regenerator-runtime`を自動的にinline化する変更など
JavaScriptdebugToolsReleaseNote
Storybook v6.5.0リリース。 webpack 5のlazy compilationをサポート、React 18の`createRoot`のサポート、MDX2のサポート。 また、Viteの設定ファイルがある場合は、自動的にViteを使うように変更されている。
denoReleaseNote
Deno 1.22.0リリース。 デフォルトの型チェックの対象が依存関係を含まないローカルのみとなる。 `Deno.emit()`を削除、Worker内でも`Deno`名前空間がデフォルトで有効化、`--no-config`フラグの追加。 `Navigator.userAgent`のサポート、`Response.json()`静的メソッドの追加など
Markdowndocumentlibrary
Markdownベースのドキュメントオーサリングライブラリ。 パーサ、バリデーション、カスタムタグなどを拡張に対応している。 markdown-itのtokenize結果をもとにASTを組み立て、それをレンダリングするRendererを持つ
googleweb videoConference
Google I/O 2022のWeb関係の動画まとめ
TypeScriptjsxnode.jslibrary
esbuildを使ってTypeScript変換しながら実行するツール。 ESMとCJSをそれぞれ扱うloaderを持っていて、package.jsonの`type`フィールドによって自動でloaderを切り換えて扱える
JavaScriptperformanceslide
TreeShakingとDead Code Eliminationについてスライド。 Bundler(rollup)とMinifier(terser)がどのように定数展開や不要なコードを削除しているのかについて
Reactarchitecturedocument
Reactアプリケーションに関するアーキテクチャガイド。 プロジェクト構成、スタイル、ディレクトリ構造、コンポーネント、状態管理、テスト、エラー処理、セキュリティ、パフォーマンスなどについてのプラクティスをまとめたもの
safariReleaseNote
Safari 15.5リリース。 HTMLの`inert`属性のサポート、CSPで`worker-src`ディレクティブのサポート。 その他には`background-attachement: fixed`のバグ修正、`position: sticky`のバグ修正、HLS再生時のバグ修正、WebGLのmultisamplingのバグ修正など
HTMLJavaScriptCSSslide
SPA、React、TypeScript、SSR、CDNについての導入的なスライド。
safariReleaseNote
Safari Technology Preview 145リリース。 Container Queriesのサポート改善、`<dialog>`要素のダークモード対応、`setTimeout(fn, 0)`とした時に自動的に追加される1msのclampを削除。 Service Workersに`WindowClient.navigate()`と`WindowClient.openWindow()`の実装など
JavaScripttestingOpenSourcearticlenews
JestがOpenJS Foundationに移管される。 Meta社以外の人のContributionsが多くなったため。
JavaScriptlibrary
UIフレームワークに依存しないD&Dライブラリ