sindresorhus/eslint-plugin-unicorn

Re-enable `prefer-json-parse-buffer`

クローズ

#2,565 opened on 2025/02/19

 (1 件のコメント) (1 件のリアクション) (0 人の担当者)JavaScript (468 件のフォーク)user submission
change requesthelp wanted

Repository metrics

Stars
 (5,022 個のスター)
PR merge metrics
 (平均マージ 4h 30m) (30d で 26 merged PRs)

説明

Description

This rule actually makes sense to JavaScript users, but it's disabled due to compatibility with TypeScript, how about rename to consistent-json-file-read, and default to read as string, but add option to allow read it as buffer?

Examples

// ❌
JOSN.parse(await fs.readFile('/path/to/file.json'));

// ✅
JOSN.parse(await fs.readFile('/path/to/file.json', 'utf8'));
// ❌
// eslint unicorn/consistent-json-file-read: ["error", "buffer"]
JOSN.parse(await fs.readFile('/path/to/file.json', 'utf8'));

// ✅
// eslint unicorn/consistent-json-file-read: ["error", "buffer"]
JOSN.parse(await fs.readFile('/path/to/file.json'));

Additional Info

We may want check other cases in the future, since there are more way to read a JSON file now.

createRequire(import.meta.url)('/path/to/file.json');
await import('./path/to/file.json', {with:{type:'json'}});

コントリビューターガイド