Files
tubestation/docs/code-quality/lint/linters/eslint.rst

61 lines
1.7 KiB
ReStructuredText

ESLint
======
`ESLint <http://eslint.org/>`__ is a popular linter for JavaScript.
Run Locally
-----------
The mozlint integration of `ESLint <http://eslint.org/>`__ can be run using mach:
.. parsed-literal::
$ mach lint --linter eslint <file paths>
Alternatively, omit the ``--linter eslint`` and run all configured linters, which will include
ESLint.
Configuration
-------------
The ESLint mozilla-central integration uses a blacklist to exclude certain directories from being
linted. This lives in ``topsrcdir/.eslintignore``. If you don't wish your directory to be linted, it
must be added here.
The global configuration file lives in ``topsrcdir/.eslintrc``. This global configuration can be
overridden by including an ``.eslintrc`` in the appropriate subdirectory. For an overview of the
supported configuration, see `ESLint's documentation <http://eslint.org/docs/user-guide/configuring>`__.
Autofix
-------
The eslint linter provides a ``--fix`` option. It is based on the upstream option.
Sources
-------
* `Configuration (YAML) <https://searchfox.org/mozilla-central/source/tools/lint/eslint.yml>`_
* `Source <https://searchfox.org/mozilla-central/source/tools/lint/eslint/__init__.py>`_
ESLint Plugin Mozilla
---------------------
In addition to default ESLint rules, there are several Mozilla-specific rules that are defined in
the :doc:`Mozilla ESLint Plugin <eslint-plugin-mozilla>`.
ESLint Plugin SpiderMonkey JS
-----------------------------
In addition to default ESLint rules, there is an extra processor for SpiderMonkey
code :doc:`Mozilla ESLint SpiderMonkey JS <eslint-plugin-spidermonkey-js>`.
.. toctree::
:hidden:
eslint-plugin-mozilla
eslint-plugin-spidermonkey-js