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 からサポートされたglobglobSyncなどの 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 に追加。

https://web.dev/blog/baseline-digest-jan-2025?hl=en

Frontend Weekly 2025-02-14
https://blog.ohirunewani.com/series/frontend-weekly/2025-02-14/
作者
hrdtbs
公開日
2025-02-14
ライセンス
CC BY-NC-SA 4.0