Severity: Unhandled promise rejection in `whitespace-async.js` when ESLint async path is used
@bodapatisaikrishna y travaille déjà.
Depuis le 17/9/2026.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 78/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- Active
- Stack technique
- eslint, javascript
- Domaine
- tooling
Piste de recherche
Commencez à la ligne 49 de packages/eslint-config-airbnb-base/whitespace-async.js et packages/eslint-config-airbnb/whitespace-async.js, puis suivez la manière dont whitespace.js invoque le script async avec execSync. Vérifiez le chemin de rejet et le comportement de la sortie du processus enfant. C’est terminé lorsque les promises rejetées sont gérées, que l’erreur est journalisée et que process.exitCode est défini sur 1 afin que le processus parent ne reçoive pas un JSON trompeur.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Summary
When the config is loaded on ESLint 9 (or when CLIEngine is unavailable), whitespace.js runs whitespace-async.js via execSync. That script calls onlyErrorOnRules(...).then(...) with no .catch(). If the promise rejects, the rejection is unhandled.
Impact
- Process can exit with an unhandled rejection.
- Child process may write errors (or non-JSON) to stdout, so the parent’s
JSON.parse(stdout)can throw and fail config loading with an unclear error.
Affected files
packages/eslint-config-airbnb-base/whitespace-async.js(line 49)packages/eslint-config-airbnb/whitespace-async.js(line 49)
Suggested fix
Add a .catch() that logs the error and sets process.exitCode = 1, so rejections are handled and the child exits with a non-zero code instead of leaving an unhandled rejection.
Screenshot
I'd love to have the chance to contribute to this.
- Langage dominant
- JavaScript
- Étoiles
- 148k
- Forks
- 26.5k
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de airbnb/javascript
-
Inconsistent semicolon usage in examples (Arrays vs Functions)Peut-être pris @Developer-shivamMishra l’a pris il y a 21 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
airbnb/javascript#3152 · 4 commentaires ·
-
No error handling around execSync + JSON.parse in whitespace.js (ESLint 9 path)Peut-être pris @dataCenter430 l’a pris il y a 225 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 48/100
airbnb/javascript#3238 · 8 commentaires ·
-
Upgrading eslint-plugin-react-hooksPeut-être pris @weihongyu12 l’a pris il y a 371 jours. Ouverte
Difficulté 3/5 1-2 jours Accessibilité débutants 38/100
airbnb/javascript#3186 · 3 commentaires · 2 réactions ·
-
Difficulté 3/5 1-2 jours Accessibilité débutants 45/100
airbnb/javascript#3173 · 9 commentaires · 1 réaction ·
-
Isn't section 5.1 "Use object destructuring" conflicting with 3.3 "Use object method shorthand" ?Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
airbnb/javascript#3136 · 11 commentaires ·
Toutes les issues de airbnb/javascript
Issues similaires
-
effort:low model:light plan planner:fable-5-1 test-quality tests
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
Les mainteneurs répondent en général sous 1 jour
-
area: agent area: theme help wanted lane: free-agent roadmap size: S status: needs-brief type: layout type: task
Difficulté 2/5 1-3 heures Accessibilité débutants 60/100
arminazimi/slipway#64 ·
-
release:v5.34
Difficulté 1/5 Moins d'une heure Accessibilité débutants 90/100
Jason-Vaughan/TangleClaw#2469 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
hacktoberfest help wanted skip-changelog
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
wassim-azi/agy-powerline#74 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 67/100
MadeBaruna/paimon-moe#696 ·