No error handling around execSync + JSON.parse in whitespace.js (ESLint 9 path)
@dataCenter430 arbeitet bereits daran.
Seit 06.3.2026.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 48/100
- Issue-Typ
- Bug
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- eslint, javascript
- Bereich
- tooling
Rechercherichtung
Beginne bei Zeile 55 in packages/eslint-config-airbnb-base/whitespace.js und packages/eslint-config-airbnb/whitespace.js und verfolge den von execSync und JSON.parse verwendeten Pfad, wenn CLIEngine nicht verfügbar ist. Die Arbeit ist abgeschlossen, wenn Fehler von Child-Skripten und ungültige Ausgaben eine klare Diagnose erzeugen, während das erfolgreiche Laden der Konfiguration weiterhin funktioniert.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Summary
When CLIEngine is not available (e.g. ESLint 9), whitespace.js loads the config by running whitespace-async.js with execSync and then doing JSON.parse(String(...)) on the result. There is no try/catch around this.
Impact
- If the child script exits non-zero, prints errors, or prints non-JSON (e.g. ESLint timing or debug output),
execSyncmay throw or return non-JSON. JSON.parsewill then throw and the config load fails with a generic parsing error, making it hard to see that the real failure was in the child script.
Affected files
packages/eslint-config-airbnb-base/whitespace.js(line 55)packages/eslint-config-airbnb/whitespace.js(line 55)
Suggested fix
Wrap the execSync call and JSON.parse in try/catch and rethrow with a clear message (and optionally cause: err) so failures are easier to diagnose.
screenshot
I'd love to work on this.
- Vorherrschende Sprache
- JavaScript
- Sterne
- 148k
- Forks
- 26.5k
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus airbnb/javascript
-
Severity: Unhandled promise rejection in `whitespace-async.js` when ESLint async path is usedEvtl. vergeben @bodapatisaikrishna hat das vor 39 Tagen übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
airbnb/javascript#3237 · 6 Kommentare ·
-
Inconsistent semicolon usage in examples (Arrays vs Functions)Evtl. vergeben @Developer-shivamMishra hat das vor 29 Tagen übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
airbnb/javascript#3152 · 4 Kommentare ·
-
Upgrading eslint-plugin-react-hooksEvtl. vergeben @weihongyu12 hat das vor 380 Tagen übernommen. Offen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 38/100
airbnb/javascript#3186 · 3 Kommentare · 2 Reaktionen ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 45/100
airbnb/javascript#3173 · 9 Kommentare · 1 Reaktion ·
-
Isn't section 5.1 "Use object destructuring" conflicting with 3.3 "Use object method shorthand" ?Offen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 35/100
airbnb/javascript#3136 · 11 Kommentare ·
Alle Issues in airbnb/javascript
Ähnliche Issues
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 85/100
521xueweihan/HelloGitHub#4115 ·
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
outline/outline#14348 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
Maintainer antworten meist innerhalb von 1 Tag
-
area:install bug needs-triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Maintainer antworten meist innerhalb von 3 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
Maintainer antworten meist innerhalb von 1 Tag