Andrew Halberstadt
69b399c915
Bug 1811850 - [lint] Replace flake8 linter with ruff, r=linter-reviewers,sylvestre
...
Ruff is a very fast linter implemented in Rust and it can act as a drop-in
replacement for flake8. When running the same set of rules across all files
in mozilla-central (without mozlint), flake8 takes 900 seconds whereas ruff
takes 0.9 seconds.
Ruff also implements rules from other popular Python linters such as pylint,
isort and pyupgrade. There are even plans to implement feature parity with
black in the future. Ultimately, it can become our one stop shop for all Python
linting and formatting.
This stack will swap out all our Python lint tools for ruff (excluding black
for now).
Differential Revision: https://phabricator.services.mozilla.com/D172313
2023-03-20 13:06:27 +00:00
Cristian Tuns
e0f5dfb939
Backed out 5 changesets (bug 1811850) for causing linting bustages(bugzilla) CLOSED TREE
...
Backed out changeset e8fcfc7f8108 (bug 1811850)
Backed out changeset f8950d716c9e (bug 1811850)
Backed out changeset f650123cc188 (bug 1811850)
Backed out changeset d96f90c2c58b (bug 1811850)
Backed out changeset c3b0f9666183 (bug 1811850)
2023-03-16 22:16:30 -04:00
Andrew Halberstadt
f7b64c2171
Bug 1811850 - [lint] Replace pylint linter with ruff, r=linter-reviewers,marco
...
This is enabling the PLE and PLC rules across a much larger swatch of the code
base. The PLR and PLW are additionally enabled at the warning level (introduces
~2500 new warnings).
To avoid extraneous changes in people's patches, rules at the warning level are
excluded from --fix.
Differential Revision: https://phabricator.services.mozilla.com/D172358
2023-03-17 01:54:00 +00:00
Andrew Halberstadt
a89c9f6b7e
Bug 1811850 - [lint] Replace flake8 linter with ruff, r=linter-reviewers,sylvestre
...
Ruff is a very fast linter implemented in Rust and it can act as a drop-in
replacement for flake8. When running the same set of rules across all files
in mozilla-central (without mozlint), flake8 takes 900 seconds whereas ruff
takes 0.9 seconds.
Ruff also implements rules from other popular Python linters such as pylint,
isort and pyupgrade. There are even plans to implement feature parity with
black in the future. Ultimately, it can become our one stop shop for all Python
linting and formatting.
This stack will swap out all our Python lint tools for ruff (excluding black
for now).
Differential Revision: https://phabricator.services.mozilla.com/D172313
2023-03-17 01:53:58 +00:00
ogiorgis
cfe3dce766
Bug 1820759 - add sphinx support to rstcheck r=firefox-source-docs-reviewers,linter-reviewers,sylvestre DONTBUILD
...
This suppresses rstcheck errors due to code-block and caption .
This also removes errors related to mermaid (Bug 1815454).
We also need to use anonymous references instead of explicit ones to
avoid another lint error.
Differential Revision: https://phabricator.services.mozilla.com/D171860
2023-03-08 09:48:56 +00:00
Gijs Kruitbosch
c5fb0c246a
Bug 1795255 - add no-redeclare-with-import-autofix eslint rule to deal with duplicate imports in tests, r=Standard8
...
Differential Revision: https://phabricator.services.mozilla.com/D166177
2023-01-31 11:48:40 +00:00
Sylvestre Ledru
61ec47700d
Bug 1806331 - doc: use ChromeUtils.importESM instead of ChromeUtils.importESModule r=Standard8 DONTBUILD
...
Differential Revision: https://phabricator.services.mozilla.com/D165815
2023-01-03 18:47:59 +00:00
Mark Banner
e4276619d3
Bug 1801092 - Add an ESLint rule to disllow use of Cu.reportError with a single argument. r=Gijs,cmkm
...
This enforces the bulk of the cases for Cu.reportError. A follow-up will extend this to the
two argument form.
Differential Revision: https://phabricator.services.mozilla.com/D162285
2022-11-29 23:07:42 +00:00
Iulian Moraru
e4cb785520
Backed out 3 changesets (bug 1801092) for causing newtab failures.
...
Backed out changeset 9153de956154
Backed out changeset 9df9c279c28d (bug 1801092)
Backed out changeset 7323c7444941 (bug 1801092)
2022-11-30 00:28:42 +02:00
Mark Banner
2f30acd85c
Bug 1801092 - Add an ESLint rule to disllow use of Cu.reportError with a single argument. r=Gijs,cmkm
...
This enforces the bulk of the cases for Cu.reportError. A follow-up will extend this to the
two argument form.
Differential Revision: https://phabricator.services.mozilla.com/D162285
2022-11-29 21:21:28 +00:00
Mark Banner
0cad274c09
Bug 1800874 - Add docs for eslint-build tester. r=aryx
...
Differential Revision: https://phabricator.services.mozilla.com/D162389
2022-11-18 19:34:34 +00:00
Makoto Kato
dcedbe29fc
Bug 1740799 - Format Kotlin code using ktlint. r=geckoview-reviewers,owlish,linter-reviewers,sylvestre
...
Android-component and Fenix use ktlint, so mozilla-central should use same
tools via spotless.
This is from https://phabricator.services.mozilla.com/D131018
Differential Revision: https://phabricator.services.mozilla.com/D161557
2022-11-18 00:55:03 +00:00
Sylvestre Ledru
774e27ad80
Bug 1799620 - mozlint/clippy: using nightly isn't necessary anymore r=linter-reviewers,marco DONTBUILD
...
Differential Revision: https://phabricator.services.mozilla.com/D161564
2022-11-08 15:05:31 +00:00
Mark Banner
17403914cb
Bug 1795880 - Add an ESLint rule to enforce using static imports where possible. r=arai,geckoview-reviewers,m_kato
...
Differential Revision: https://phabricator.services.mozilla.com/D160131
2022-10-26 09:37:46 +00:00
Mark Banner
38be40d5b9
Bug 1795322 - Update toolkit modules references in remaining places. r=mossop,zeid,geckoview-reviewers,calu
...
Differential Revision: https://phabricator.services.mozilla.com/D160036
2022-10-26 08:06:37 +00:00
Csoregi Natalia
5edbe31601
Backed out 12 changesets (bug 1795322) for causing multiple failures e.g. test_deletion_request_ping.py. CLOSED TREE
...
Backed out changeset aba25cbcda51 (bug 1795322)
Backed out changeset a4a35005ada9 (bug 1795322)
Backed out changeset 8e8d790eb0f4 (bug 1795322)
Backed out changeset db8903454bd3 (bug 1795322)
Backed out changeset 60cc71c61cad (bug 1795322)
Backed out changeset bc6a674994ad (bug 1795322)
Backed out changeset 6ac8a611f8c7 (bug 1795322)
Backed out changeset 9fb873ecfb31 (bug 1795322)
Backed out changeset c8a7a40c2a2f (bug 1795322)
Backed out changeset f2c118b6c6ce (bug 1795322)
Backed out changeset 38df43b4a70f (bug 1795322)
Backed out changeset 89aea8373411 (bug 1795322)
2022-10-25 23:47:58 +03:00
Mark Banner
1ad6baaea2
Bug 1795322 - Update toolkit modules references in remaining places. r=mossop,zeid,geckoview-reviewers,calu
...
Differential Revision: https://phabricator.services.mozilla.com/D160036
2022-10-25 19:49:28 +00:00
Simon Friedberger
4d45a5962c
Bug 1788671 - Document how to add Services to eslint. r=Standard8 DONTBUILD
...
Differential Revision: https://phabricator.services.mozilla.com/D158753
2022-10-07 18:11:17 +00:00
Mathew Hodson
52287e7f89
Bug 1776578 - Make no-addtask-setup eslint rule check for init tasks. r=mossop
...
Differential Revision: https://phabricator.services.mozilla.com/D150333
2022-09-26 13:58:49 +00:00
Alexandre Poirot
90ddca703f
Bug 1791828 - [devtools] Remove eslint support for DevTools's lazyImporter. r=jdescottes
...
Differential Revision: https://phabricator.services.mozilla.com/D158004
2022-09-26 10:48:05 +00:00
Mark Banner
dd194ee451
Bug 1479515 - Add an ESLint rule to check for valid property accesses on Services. r=Gijs
...
This is manually run and requires a full build. MOZ_OBJDIR needs to be set to point to the object directory.
Differential Revision: https://phabricator.services.mozilla.com/D156426
2022-09-12 16:38:44 +00:00
Mark Banner
74f27058b3
Bug 1479515 - Extend the ESLint rule for checking Ci properties to check for unknown interfaces as well. r=Gijs,application-update-reviewers,nalexander
...
Differential Revision: https://phabricator.services.mozilla.com/D156425
2022-09-12 16:38:44 +00:00
Mark Banner
418607ec92
Bug 1479515 - Add an ESLint rule to check for unknown property accesses on Ci. r=Gijs
...
This is manually run and requires a full build. MOZ_OBJDIR needs to be set to point to the object directory.
Differential Revision: https://phabricator.services.mozilla.com/D156424
2022-09-12 16:38:43 +00:00
Kagami Sascha Rosylight
a37cf7833d
Bug 1695435 - Part 2: Add more words to the chrome script heuristic in use-isInstance r=preferences-reviewers,Gijs,webdriver-reviewers,whimboo,sgalich
...
Differential Revision: https://phabricator.services.mozilla.com/D110932
2022-08-24 22:47:42 +00:00
Kagami Sascha Rosylight
a88716cc34
Bug 1695435 - Part 1: Use isInstance in XUL files r=Standard8
...
Differential Revision: https://phabricator.services.mozilla.com/D154841
2022-08-22 18:34:44 +00:00
André Bargull
c9d7d2edbb
Bug 1783404: Support --fix option when eslint-plugin-spidermonkey-js is used. r=tcampbell
...
Differential Revision: https://phabricator.services.mozilla.com/D153843
2022-08-12 06:10:55 +00:00
Max Smolens
e137b87d56
Bug 1617103 - Add documentation for yamllint. r=sylvestre DONTBUILD
...
Differential Revision: https://phabricator.services.mozilla.com/D154108
2022-08-09 19:13:45 +00:00
André Bargull
0885e4225d
Bug 1782491 - Part 1: Add self-hosted code environment plugin. r=tcampbell
...
Adds a simple ESLint plugin for custom environments.
The plugin has a single exported value named `globals`, which is an object with
keys for all globally available self-hosted identifiers. All self-hosted values
are read-only, so we set all properties of `globals` to `"readonly"`.
BytecodeEmitter special identifiers are added to the `.eslintrc.js` file,
because that keeps them closer to the SpiderMonkey source tree when compared
to "tools/lint/eslint/eslint-plugin-spidermonkey-js".
Also see:
- tools/lint/eslint/eslint-plugin-mozilla/lib/environments/
- https://eslint.org/docs/latest/user-guide/configuring/language-options
Differential Revision: https://phabricator.services.mozilla.com/D153337
2022-08-05 09:58:58 +00:00
Mark Banner
ea37559b35
Bug 1782008 - Add existing test directories to the ESLint test path definition file. r=mossop
...
Differential Revision: https://phabricator.services.mozilla.com/D152735
2022-08-03 11:16:19 +00:00
Tooru Fujisawa
5892446859
Bug 1779988 - Part 2: Add ESLint rule that rejects multiple ChromeUtils.defineESModuleGetters call on the same object. r=Standard8
...
Differential Revision: https://phabricator.services.mozilla.com/D152880
2022-07-28 00:54:20 +00:00
Francesco Lodolo (:flod)
c955af14aa
Bug 1781010: Fluent linter, add checks for hard-coded brand names,r=gregtatum,linter-reviewers,sylvestre
...
Differential Revision: https://phabricator.services.mozilla.com/D152718
2022-07-26 19:48:08 +00:00
Tooru Fujisawa
11e740e6e6
Bug 1780543 - Part 11: Update document for environment. r=Standard8
...
Depends on D152648
Differential Revision: https://phabricator.services.mozilla.com/D152649
2022-07-26 02:46:32 +00:00
Andrew Halberstadt
0899d31e3c
Bug 1780087 - Convert some searchfox links under 'docs/code-quality' to the new role, r=linter-reviewers,sylvestre
...
This is more to demonstrate the use of the role than anything else.
Differential Revision: https://phabricator.services.mozilla.com/D152125
2022-07-19 15:41:08 +00:00
Mark Banner
f9d637e4c5
Bug 1779989 - Explicitly disallow ES modules in ESLint import-globals-from statements. r=arai
...
Differential Revision: https://phabricator.services.mozilla.com/D152002
2022-07-19 05:57:15 +00:00
Tooru Fujisawa
cda8cbecfe
Bug 1667455 - Part 14: Stop importing Services.jsm in documents. r=kmag,necko-reviewers,dragana
...
Differential Revision: https://phabricator.services.mozilla.com/D150903
2022-07-11 12:41:54 +00:00
Mark Banner
76af8b0f69
Bug 1777451 - Add a rule to prevent/recommend against using globalThis or window in non-system modules for lazy getters. r=arai
...
Differential Revision: https://phabricator.services.mozilla.com/D151083
2022-07-06 08:35:59 +00:00
Mark Banner
f05cb62a29
Bug 1764513 - Update ESLint docs for how to set up test configuration and how to use ES modules. r=arai
...
Differential Revision: https://phabricator.services.mozilla.com/D151039
2022-07-05 17:09:43 +00:00
Tooru Fujisawa
e1538f8276
Bug 1776837 - Part 2: Reject defining lazy getter for module that is already loaded eagerly at top-level. r=mossop
...
Depends on D150935
Differential Revision: https://phabricator.services.mozilla.com/D150936
2022-07-05 01:01:35 +00:00
Mark Banner
f733d566c8
Bug 1646183 - Extend ESLint rule reject-importGlobalProperties to also handle defineLazyGlobalGetters. r=arai,webdriver-reviewers,webcompat-reviewers,extension-reviewers,whimboo,twisniewski,kmag
...
Differential Revision: https://phabricator.services.mozilla.com/D150353
2022-06-29 22:37:57 +00:00
Makoto Kato
37f1452148
Bug 1776804 - Update spotless information in firefox-source-docs. r=geckoview-reviewers,agi
...
"Google Java Format plug-in" link is broken now.
Also we should add spotless information to
https://firefox-source-docs.mozilla.org/code-quality/ .
Differential Revision: https://phabricator.services.mozilla.com/D150440
2022-06-28 22:58:11 +00:00
Kagami Sascha Rosylight
e29a0027f8
Bug 1773740 - Part 3: Cover js files including ChromeUtils r=Standard8
...
Differential Revision: https://phabricator.services.mozilla.com/D148938
2022-06-27 20:31:33 +00:00
Tooru Fujisawa
f141eb6bc3
Bug 1773747 - Part 6: Add ESLint rule to check immediately-used lazy getter. r=Standard8
...
Differential Revision: https://phabricator.services.mozilla.com/D149867
2022-06-24 11:03:53 +00:00
Tooru Fujisawa
d219fa0035
Bug 1772358 - Add ESLint rule to reject defining lazy getters for always available modules. r=Standard8
...
Differential Revision: https://phabricator.services.mozilla.com/D149872
2022-06-24 11:03:50 +00:00
Mark Banner
78cb8fd108
Bug 1771173 - Add ESLint rule to check for correct usages of lazy. r=arai
...
Differential Revision: https://phabricator.services.mozilla.com/D149718
2022-06-21 20:42:16 +00:00
Tooru Fujisawa
14e84976d3
Bug 1771097 - Add ESLint rule for ChromeUtils.defineESModuleGetters lazy object name. r=Standard8
...
Differential Revision: https://phabricator.services.mozilla.com/D147400
2022-06-17 04:59:13 +00:00
criss
20943ab4b3
Backed out 8 changesets (bug 1771092, bug 1768870, bug 1771097, bug 1769002, bug 1768819) for causing mochitest failures on browser_sendQuery.js. CLOSED TREE
...
Backed out changeset 8a4d712f819a (bug 1771092)
Backed out changeset f4e27a35c83c (bug 1771092)
Backed out changeset 072323bc72cc (bug 1771092)
Backed out changeset 2ccf2a00fff7 (bug 1769002)
Backed out changeset ba7086fd9b1f (bug 1768819)
Backed out changeset 6205d3e2c666 (bug 1771097)
Backed out changeset 960f0aee97d5 (bug 1768870 )
Backed out changeset 5f53760c5637 (bug 1768870 )
2022-06-17 05:44:37 +03:00
Tooru Fujisawa
1b86cf2dbd
Bug 1771097 - Add ESLint rule for ChromeUtils.defineESModuleGetters lazy object name. r=Standard8
...
Differential Revision: https://phabricator.services.mozilla.com/D147400
2022-06-17 01:30:23 +00:00
Mark Banner
b0c82d6cae
Bug 1766228 - Add an ESLint rule to ensure that member property accesses of Services are valid. r=Gijs
...
Differential Revision: https://phabricator.services.mozilla.com/D149393
2022-06-16 21:11:24 +00:00
Molnar Sandor
ca093dfdcc
Backed out 9 changesets (bug 1769002, bug 1768870, bug 1771097, bug 1771092, bug 1768819) for causing lint failures. CLOSED TREE
...
Backed out changeset 829df1dfad70 (bug 1769002)
Backed out changeset f0537d333adc (bug 1771092)
Backed out changeset 25b43856bc00 (bug 1771092)
Backed out changeset a49f754ca73f (bug 1771092)
Backed out changeset 164f85686a32 (bug 1769002)
Backed out changeset ef5cf9ceb915 (bug 1768819)
Backed out changeset c64e6c1fbfe7 (bug 1771097)
Backed out changeset f85393f988a8 (bug 1768870 )
Backed out changeset fe708d13cc1d (bug 1768870 )
2022-06-16 20:15:14 +03:00
Tooru Fujisawa
2420011dfd
Bug 1771097 - Add ESLint rule for ChromeUtils.defineESModuleGetters lazy object name. r=Standard8
...
Differential Revision: https://phabricator.services.mozilla.com/D147400
2022-06-16 16:20:36 +00:00