From 7d982da74802da51e1b37a2bc1e4950bcecada8c Mon Sep 17 00:00:00 2001 From: lumir Date: Sat, 5 Sep 2026 23:14:29 +0900 Subject: [PATCH 1/2] fix: preserve parsing error locations in Bun --- tests/languages/json-language.test.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tests/languages/json-language.test.js b/tests/languages/json-language.test.js index 6510fb87..3898fd8c 100644 --- a/tests/languages/json-language.test.js +++ b/tests/languages/json-language.test.js @@ -85,6 +85,8 @@ describe("JSONLanguage", () => { result.errors[0].message, "Unexpected character '/' found.", ); + assert.strictEqual(result.errors[0].line, 2); + assert.strictEqual(result.errors[0].column, 1); }); it("should not parse trailing commas by default in json mode", () => { @@ -99,6 +101,8 @@ describe("JSONLanguage", () => { result.errors[0].message, "Unexpected token RBrace found.", ); + assert.strictEqual(result.errors[0].line, 3); + assert.strictEqual(result.errors[0].column, 1); }); it("should not parse trailing commas by default in jsonc mode", () => { @@ -113,6 +117,8 @@ describe("JSONLanguage", () => { result.errors[0].message, "Unexpected token RBrace found.", ); + assert.strictEqual(result.errors[0].line, 3); + assert.strictEqual(result.errors[0].column, 1); }); it("should parse trailing commas when enabled in jsonc mode", () => { From 31f3f2ce1fea4492a641da1732d2c5a5c04873cd Mon Sep 17 00:00:00 2001 From: lumir Date: Sat, 5 Sep 2026 23:20:34 +0900 Subject: [PATCH 2/2] wip --- src/languages/json-language.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/languages/json-language.js b/src/languages/json-language.js index a31ea092..ab24fcd4 100644 --- a/src/languages/json-language.js +++ b/src/languages/json-language.js @@ -143,6 +143,8 @@ export class JSONLanguage { errors: [ { ...ex, + line: ex.line, + column: ex.column, message, }, ],