347 文字
2 分
Frontend Weekly 2025-02-14
Node.js v22.14.0 (LTS)
Node.js v22.14.0 (LTS) がリリース。
https://nodejs.org/ja/blog/release/v22.14.0
globs への exclude オプションの追加
Node.js v22 からサポートされたglob
、globSync
などの API にexclude
オプションが追加。
import { globSync } from "node:fs";
const files = globSync("**/*.js", { exclude: ["**/node_modules/**", "**/dist/**"],});
findPackageJSON の追加
近くにある package.json を探すfindPackageJSON
メソッドが追加。
import { findPackageJSON } from "node:module";
findPackageJSON(import.meta.url);// => /project/package.json
findPackageJSON("some-package", import.meta.url);// => /project/node_modules/some-package/package.json
test 関連の API 追加
t.waitFor()
、t.assert.fileSnapshot()
、assert.register()
などの API が追加。
import { assert } from 'node:test';import { test, assert: testAssert } from 'node:test';
// 独自のassertを登録するtestAssertions.register('isOdd', (n) => { assert.strictEqual(n % 2, 1);});
test('test name', async (t) => { // 処理を待機させる const result = await t.waitFor(() => { return "result"; }, { timeout: 1000, interval: 1 });
// ファイルスナップショットを取得 t.assert.fileSnapshot({ p1: 1, p2: 2 }, './snapshots/snapshot.json'); t.assert.isOdd(5);});
ESLint v9.20.0
ESLint v9.20.0 がリリース。
https://eslint.org/blog/2025/02/eslint-v9.20.0-released/
無効なフラグを付けて実行した際に、エラーではなく警告を出すように動作が変更。またLanguage プラグイン向けに、型定義の強化など。
Prettier v3.5.0
Prettier v3.5.0 がリリース。
https://prettier.io/blog/2025/02/09/3.5.0.html
Node.js の Type Striping を利用した TypeScript 設定ファイルのサポートなど。
objectWrap オプションの追加
オブジェクトリテラルのフォーマットは、1 行の長さに関わらず、内部に改行があれば複数行にフォーマットする半自動的な挙動をしていた。
objectWrap
オプションを利用することで、これを制御することが可能。
--object-wrapping=collapse
を指定すると、内部の改行の有無に関わらずオブジェクトリテラルがフォーマットされる。
January 2025 Baseline monthly digest
Promise.try()
が Baseline に追加。
Frontend Weekly 2025-02-14
https://blog.ohirunewani.com/series/frontend-weekly/2025-02-14/