Fork me on GitHub

2024-04-18のJS: Next.js v14.2、Farm v1.0、Biome v1.7、pnpm v9

Edit on GitHub 編集履歴を見る

JSer.info #689 - Next.js 14.2がリリースされました。

Turbopack RCをリリース、Server/Client Components間のTree Shakingの対応、CSSの読み込み順の問題の修正などが行われています。
Client側のRouter Cacheの期間を設定するstaleTimesオプションの追加なども行われています。


Vite/Rollup互換のプラグインを扱えるビルドツールであるFarm 1.0がリリースされました。

Rustで書かれていて、キャッシュを使ったIncremental Build、Lazy Compilation、モジュールをグループ化してbundleできるなどの特徴を持っています。
また、devとproductionビルドで同じ戦略を使うため、一貫性のある結果になるように設計されていています。


Biome 1.7がリリースされました。

ESLint/Prettierの設定からマイグレーションできるbiome migrate eslintbiome migrate prettierコマンドを追加されています。
GitのStagingファイルをチェックするbiome check --stagedの追加なども行われています。


pnpm 9.0がリリースされました。

Node.js 16のサポート終了し、デフォルトの設定がいくつか変更されています。
monorepo内のバージョン指定でのlinkをするlink-workspace-packagesfalseに変更、pre/post scriptをデフォルトで実行するように変更されています。
また、ロックファイルのバージョンをv9に変更、Gitリポジトリのサブディレクトリのみをインストールできるようになっています。


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

JSer.info Sponsors

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


ヘッドライン


Next.js 14.2 | Next.js

nextjs.org/blog/next-14-2

Next.js ReleaseNote

Next.js 14.2リリース。
Turbopack RCをリリース、Server/Client Components間のTree Shakingの対応、CSSの読み込み順の問題の修正。
Client側のRouter Cacheの期間を設定するstaleTimesオプションの追加など


Release 🚀 Farm v1.0 is released! · farm-fe/farm

github.com/farm-fe/farm/releases/tag/v1.0

JavaScript bundler Rust vite ReleaseNote

Vite/Rollup互換のプラグインを扱えるビルドツールであるFarm 1.0リリース。
Rustで書かれていて、キャッシュを使ったIncremental Build、Lazy Compilation、モジュールをグループ化してbundleできる。
また、devとproductionビルドで同じ戦略を使うため、一貫性の結果となるように設計されている。


Biome v1.7 | Biome

biomejs.dev/blog/biome-v1-7/

ESLint Tools ReleaseNote

Biome v1.7リリース。
ESLint/Prettierの設定からマイグレーションできるbiome migrate eslintbiome migrate prettierコマンドを追加。
GitのStagingファイルをチェックするbiome check --stagedの追加など


Release v9.0.0 · pnpm/pnpm

github.com/pnpm/pnpm/releases/tag/v9.0.0

pnpm ReleaseNote

pnpm v9.0.0リリース。
Node.js 16のサポート終了。
monorepo内のバージョン指定でのlinkをするlink-workspace-packagesfalseに変更、pre/post scriptをデフォルトで実行するように変更。
ロックファイルのバージョンをv9に変更、Gitリポジトリのサブディレクトリのみをインストールできるように。


Bun v1.1.4 | Bun Blog

bun.sh/blog/bun-v1.1.4

Bun ReleaseNote

Bun v1.1.4リリース。
bun --filter='*'でコマンドを並列に実行できるように、bun installのパフォーマンスを改善、bun:sqliteusingに対応など


Chrome 124  |  Release notes  |  Chrome for Developers

developer.chrome.com/release-notes/124

Chrome ReleaseNote

Chrome 124リリース。
writingsuggestions属性のサポート、Sec-CH-UA-Form-Factors client hintのサポート、Document Render-Blockingのサポート。
WebSocketStream API、setHTMLUnsafeparseHTMLUnsafeメソッドのサポート、ReadableStream APIがAsync Iterableに対応など


ECMAScript proposal updates @ 2024-04 | ECMAScript Daily

ecmascript-daily.github.io/ecmascript/2024/04/17/ecmascript-proposal-update

ECMAScript proposal news

2024年4月のTC39ミーティングでのECMAScript Proposalのステータス変更のまとめ。
SignalsがStage 1に、.union()などの集合演算をするSetメソッドがStage 4に。


Release 3.37.0 - 2024.04.17 · zloirock/core-js

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

JavaScript polyfill ReleaseNote

core-js v3.37.0リリース。
Set methods ProposalをStableに追加、Math.sumPreciseのサポート、Symbol.customMatcherのサポートなど


アーティクル


How we built JSR

deno.com/blog/how-we-built-jsr

deno JavaScript npm article

JSRの技術的な作りについて。
APIサーバはRustで書かれていて、DBにはPostgresを利用している。
フロントエンドにはFreshを使ったIslandsアーキテクチャにしている。
Freshを動かすRendering Serverは各地にデプロイされるがAPI ServerはUSのみなので、Server間のやり取りでウォーターフォールが起きないようにまとめている。
また、npmの互換レイヤーであるtarballを作成するときに.tsから.d.tsを生成する処理をRustで書いている点についてなど


Panda CSS - The Origin Story - Segun Adebayo

www.adebayosegun.com/blog/panda-css-the-origin-story

JavaScript CSS article Interview

Panda CSSがなぜ作られたのかについての話。
Chakra UIでCSSのパフォーマンスを向上する試みから、Vanilla ExtractでPoCを作成し、そこから同じ試みをしてるBox Extractorの作者と作業をマージして進めていった。
Park UIやビデオチュートリアルの作成、名前をPandaにした話などについて


Node.js — Trip report: Node.js collaboration summit (2024 London)

nodejs.org/en/blog/events/collab-summit-2024-london

nodejs article

Node.js collaboration summit 2024で話されたことのサマリ記事。


CSS in React Server Components

www.joshwcomeau.com/react/css-in-rsc/

Next.js CSS React article

React Server ComponentとCSSについての記事。
Linaria、Panda CSS、Material UIのPigment CSSについて


「実装例から見る React のテストの書き方」をアップデートする

zenn.dev/cybozu_frontend/articles/update-test-libraries

JavaScript Tools article

React周りのツールやテストのアップデートについて。


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


sonic-technology/catena: Build type-safe APIs with ease

github.com/sonic-technology/catena

nodejs TypeScript library

ExpressにType Safeなvalidationやmiddlewareなどの仕組みをつけるライブラリ


Layer Cake

layercake.graphics/

Svelte SVG library

SvelteベースのSVGなどのグラフィカルなデータを扱うライブラリ


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