Fork me on GitHub

2024-06-13のJS: Storybook 8.1、Turborepo 2.0、Node v22.3.0(Snapshot Testing)

Edit on GitHub 編集履歴を見る

JSer.info #696 - Storybook 8.1がリリースされました。

Storyファイルを作成するUIの追加、Subpath importsを使ったモックの対応、Playwright Component Testの対応しています。

pacakge.jsonimportsフィールドで特定のモジュールを条件分岐して読み分けるための仕組みであるSubpath importsについては、次の記事でも解説されています。

その他には、React 19/Angular 18のサポートなども含まれています。


Turborepo 2.0がリリースされました。

Turborepoはmonorepo向けのビルド/タスク管理ツールです。
Turborepo 2.0ではターミナルUIの刷新、persistentオプションの追加、turbo watchの追加、ドキュメントの刷新などが行われています。


Node.js 22.3.0がリリースされました。

Bufferbytes()を実装、experimentalフラグ付きでTest RunnerでのSnapshot Testingが実装されています。


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

JSer.info Sponsors

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


ヘッドライン


Announcing TypeScript 5.5 RC - TypeScript

devblogs.microsoft.com/typescript/announcing-typescript-5-5-rc/

TypeScript ReleaseNote

TypeScript 5.5 RCリリース。
関数からtype predicatesを推論できるようになり、Array.prototype.filterなどでの絞り込みが簡潔に書けるように。
Stage 3のSet Methodsをサポート。
JSDocで@import {foo} from "foo"をサポート、正規表現の基本的な構文チェックをサポート、isolatedDeclarationsをサポート。
設定ファイル内で${configDir}のテンプレート値をサポート。
typescriptパッケージのサイズを削減、Named Importをサポート、transpileDeclaration APIの追加。
transpileModuletranspileDeclarationでのビルド時間を改善。
outtarget: ES3などの非推奨となっていたオプションが無効化され、ignoreDeprecationsオプションを指定しないと利用できなくなる変更など


Release CLI v1.8.0 · biomejs/biome

github.com/biomejs/biome/releases/tag/cli%2Fv1.8.0

JavaScript Tools ReleaseNote

Biome v1.8.0リリース。
biome cleanコマンドを追加、biome lint--only--skipフラグを追加、CSSのformatとlintをサポートなど


power-assert-monorepo/packages/node at main · twada/power-assert-monorepo

github.com/twada/power-assert-monorepo/tree/main/packages/node

nodejs JavaScript test library

Node.jsの--importに対応したpower-assert


Storybook 8.1

storybook.js.org/blog/storybook-8-1/

JavaScript UI test ReleaseNote

Storybook 8.1リリース。
Storyファイルを作成するUIの追加、Subpath importsを使ったモックの対応、Playwright Component Testの対応。
React 19/Angular 18のサポートなど


Release v1.0.0 · tinylibs/tinypool

github.com/tinylibs/tinypool/releases/tag/v1.0.0

nodejs library ReleaseNote

tinypool 1.0.0リリース。
Node.jsのworker_threadsのWorker Poolの実装ライブラリ


Turborepo 2.0

turbo.build/blog/turbo-2-0

JavaScript monorepo Tools ReleaseNote

Turborepo 2.0リリース。
ターミナルUIの刷新、persistentオプションの追加、turbo watchの追加、ドキュメントの刷新など。


Firefox 127.0, See All New Features, Updates and Fixes

www.mozilla.org/en-US/firefox/127.0/releasenotes/

Firefox ReleaseNote

Firefox 127リリース。
<base>要素にdata:javascript:が指定できないように変更、Stage 3のSet Methodsをサポート、async Clipboard APIのサポートなど


Node.js — Node v22.3.0 (Current)

nodejs.org/en/blog/release/v22.3.0

nodejs ReleaseNote

Node.js v22.3.0リリース。
Bufferbytes()を実装、experimentalフラグ付きでTest RunnerでのSnapshot Testingを実装、NODE_RUN_SCRIPT_NAMEを追加など


News from WWDC24: WebKit in Safari 18 beta | WebKit

webkit.org/blog/15443/news-from-wwdc24-webkit-in-safari-18-beta/

webkit safari ReleaseNote

Safari 18 betaの変更点について。
View Transition APIのサポート、Style Queriesのサポート、@starting-styleと display: noneの組み合わせをサポート。
justify-content: safe centerのサポート、content-visibilityをサポート。
<input type=date>のアクセシビリティの改善、URL.parse()のサポート、JPEG2000のサポートを削除など


アーティクル


Data Fetching Patterns in Single-Page Applications

martinfowler.com/articles/data-fetch-spa.html

React article

ReactのクライアントサイドでのData Fetchのパターンについて


Mastering Node.js Performance Hooks

pavel-romanov.com/nodejs-performance-hooks-mastering-the-mental-model

nodejs performance article

ユーザーの端末の影響を受けるwall clockとパフォーマンスの計測に適したmonotonic clockについて。
Node.jsのperf_hooksモジュールで利用できるPerformanceObserverでは monotonic clockの時間を取得でき、基本的な使い方についてなど


WebAssembly JSPI has a new API · V8

v8.dev/blog/jspi-newapi

WebAssembly Promises article

WebAssemblyのJavaScript Promise Integrationについて


TypeScriptの型と値とバリデーション

zenn.dev/mizchi/articles/typescript-type-value-validation

JavaScript TypeScript article

TypeScriptは基本的にはJavaScriptへ型情報を付与するだけであるため、Runtimeの動作としてはJavaScriptと変わらないという話。
バリデーションと型について


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


slevithan/regex: Context-aware regex template tag with best practices built-in and advanced features

github.com/slevithan/regex

JavaScript RegExp library

正規表現をTagged Templateで書けるライブラリ


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