Note du traducteur
C'est la traduction du fichier new-rule.md. Voici un lien vers les différences avec le master de eslint-plugin-ava (Si en cliquant sur le lien, vous ne trouvez pas le fichier new-rule.md
parmi les fichiers modifiés, vous pouvez donc en déduire que la traduction est à jour).
Traductions : English
- Lisez les docs de ESLint sur la création d'une nouvelle règle.
- Consulter les commits des règles précédemment ajoutées pour vous aider. Par exemple, la règle
no-async-fn-without-await
.
Utilisez le site astexplorer
avec l'analyseur espree
et la transformation ESLint v4
pour créer de manière interactive l'implémentation initiale de la règle. Il vous permet d'inspecter l'AST complet que vous obtiendrez avec ESLint et vous pouvez même voir le résultat de votre implémentation pour corriger automatiquement.
- Allez dans le répertoire
test
et dupliquez le fichierno-todo-test.js
, renommez le avec le nom de votre règle. Ensuite, écrivez quelques tests avant de commencer à implémenter la règle. - Allez dans le répertoire
rules
et dupliquez le fichierno-todo-test.js
, renommez le avec le nom de votre règle. Ensuite, commencez l'implémentation logique de la nouvelle règle. - Ajouter le bon
meta.type
à la règle. - Allez dans le répertoire
docs/rules
et dupliquez le fichierno-todo-test.md
, renommez le avec le nom de votre règle. Ensuite écrivez la documentation. - Ajouter la règle par ordre alphabétique dans :
- La config recommandée
- La config recommandée dans le readme
- La liste des règles dans le readme
(La description doit être la même que l'entête du fichier de documentation).
- Exécutez
$ npm test
pour s'assurer que les tests passent. - Exécutez
$ npm run integration
pour re-exécuter les règles dans de vrais projets afin de s'assurer que votre règle n'échoue dans le code du monde réel. - Ouvrez une pull request avec un titre qui correspond exactement à ce format
Add `nom-règle` rule
, par exemple,Add `no-unused-properties` rule
. - La description de la pull request doit inclure l'issue qu'elle corrige, par exemple,
Fixes #123
.