Commit graph

90 commits

Author SHA1 Message Date
smolnar
e89faa903f Backed out changeset 5018856d8fee (bug 1758474) for causing node eslint failure. CLOSED TREE 2022-03-10 11:58:45 +02:00
Mark Banner
fe937b78bd Bug 1758474 - Implement an ESLint rule to disallow passing {} as the target parameter for ChromeUtils.import. r=Gijs,mossop,perftest-reviewers,preferences-reviewers,sparky
Differential Revision: https://phabricator.services.mozilla.com/D140517
2022-03-10 09:25:28 +00:00
Mitchell Hentges
1d06e45585 Bug 1756224: Update references to perfdocs linter to explicitly set path r=sparky
Ideally, the `perfdocs` linter suggestion to `--fix` issues would take
into account the `paths` that were provided, rather than printing the
sure-fire "lint and fix all" solution.

Actually, on further consideration, theoretically such a recommendation
should appear at the `./mach lint` level, and not be linter-specific. Oh
well, that's a future improvement :)

-----

This patch updates the `perfdocs` documentation and suggestions to
successfully operate in the same manner that they did before
bug 1753701.

Differential Revision: https://phabricator.services.mozilla.com/D139159
2022-03-09 15:52:49 +00:00
Chris Peterson
4c1f824528 Bug 1756504 - Remove cpp-virtual-final linter, a minor style check that doesn't diagnose real bugs. r=firefox-static-analysis-reviewers,sylvestre
In bug 1436263, I added a cpp-virtual-final.yml linter to warn about virtual function declarations that included more than one virtual function specifier `virtual`, `final`, or `override`.

I think we should remove this linter now because:

* It's just a style check and doesn't diagnose a real bug. Including more than one virtual function specifier (`virtual`, `final`, or `override`) is harmless and unambiguous, just unnecessary extra code.
* It has caused some engineer frustration because this style check caused their changeset to be backed out of autoland. Backing out and fixing these style issues are not a good use of sheriffs' or engineers' time.
* It doesn't catch all virtual/final/override style issues because:
  * It can't analyze virtual function definitions that span multiple lines.
  * It doesn't check for `virtual void Foo() override` because  there are over 6000 cases already, so our code will never follow this style check consistently.

Differential Revision: https://phabricator.services.mozilla.com/D139454
2022-02-24 02:14:39 +00:00
Sylvestre Ledru
caaedeee98 Bug 1753413 - fx doc: Remove whitespaces, trailing lines & windows CR r=andi,perftest-reviewers,sparky
Differential Revision: https://phabricator.services.mozilla.com/D137741
2022-02-03 18:34:58 +00:00
Sylvestre Ledru
1e47dd5d4f Bug 1738988 - Add support for trojan source detection in mozlint r=linter-reviewers,ahal DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D131086
2021-11-19 08:37:28 +00:00
Bobby Holley
02e9792c14 Bug 1740616 - Modify the C++ style guide to prefer unsigned types and CheckedInt. r=glandium DONTBUILD
This commit resolves the question posed in [1], largely on the basis of
the rationale put forth by emilio [2].

The reasons cited for using signed types boil down to (1) taking
advantage of UB optimizations, (2) more tractable dynamic overflow
analysis, and (3) increased chance of the surrounding logic identifying
and rejecting overflowed values.

Emilio points out that (1) is not a durable advantage. I see some value
in (2) and (3), but I see more value in consistency with existing code
and clear communication of semantic intent to the reader.

[1] https://groups.google.com/a/mozilla.org/g/dev-platform/c/-h_2cz5APmY/
[2] https://groups.google.com/a/mozilla.org/g/dev-platform/c/-h_2cz5APmY/m/NPdl2uIhAgAJ

Differential Revision: https://phabricator.services.mozilla.com/D130928
2021-11-16 19:38:01 +00:00
OnuohaOluebube
5ff974a055 Bug 1460100 - Added ESLint rule to prevent use of nsIScriptableUnicodeConverter r=Standard8
Differential Revision: https://phabricator.services.mozilla.com/D129668
2021-11-01 16:56:25 +00:00
Andi-Bogdan Postelnicu
80fddabd67 Bug 1738598 - sunset Coverity in Firefox.
Differential Revision: https://phabricator.services.mozilla.com/D129779
2021-10-31 17:18:02 +00:00
Nihanth Subramanya
e6d5cae88b Bug 1731780 - Reject .only() chained onto add_task in tests. r=Gijs,mythmon,Standard8
Differential Revision: https://phabricator.services.mozilla.com/D128027
2021-10-13 21:26:40 +00:00
Agi Sferro
2bd64785fc Bug 1571899 - Use google-java-format via spotless to enforce Java formatting. r=ahal,owlish
This change adds a new lint `android-format` which enforces formatting of Java
code using google-java-format.

To run the lint simply run:

./mach lint -l android-format

This command also support automatically fixing all errors running by adding
--fix:

./mach lint -l android-format --fix

This change also removes all the formatting-related checkstyle checks which are
now implicitly enforced by the formatter.

Differential Revision: https://phabricator.services.mozilla.com/D127734
2021-10-11 18:11:55 +00:00
Sylvestre Ledru
e28b9db1e6 Bug 1731542 - Remove infer from the list of code quality tools r=andi DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D127634
2021-10-06 10:57:38 +00:00
Chris Peterson
339c7d8961 Bug 1729598 - Remove now-unused MustUseChecker and MOZ_MUST_USE_TYPE attribute. r=static-analysis-reviewers,andi
Depends on D125504

Differential Revision: https://phabricator.services.mozilla.com/D125505
2021-09-15 05:10:51 +00:00
Michael Comella
be77ae1fd6 Bug 1729053 - add links to Engineering Show and Tell. r=jaws,firefox-source-docs-reviewers,sylvestre
I feel these productivity tips will remain helpful in the future and
having them in our documentation will make them more discoverable.

Differential Revision: https://phabricator.services.mozilla.com/D124477
2021-09-08 19:45:05 +00:00
Simon Giesecke
78c7565ba4 Bug 1677549 - Add some guidelines on include directives and header files to the coding style. r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D97916
2021-09-08 12:56:01 +00:00
Tom Ritter
05cffe8a72 Bug 1722724: Start a cookbook that lists common needs for matchers r=andi
Differential Revision: https://phabricator.services.mozilla.com/D121105
2021-07-29 14:34:44 +00:00
Gijs Kruitbosch
6fce85b1ba Bug 1708462 - add warning level linter for OS.File use, r=Standard8
Differential Revision: https://phabricator.services.mozilla.com/D120684
2021-07-28 15:15:03 +00:00
Tom Ritter
7026afec02 Bug 1717076: Tweak some of the existing documentation r=andi
Depends on D118211

Differential Revision: https://phabricator.services.mozilla.com/D120515
2021-07-22 19:50:38 +00:00
Tom Ritter
1b8cf0af95 Bug 1717076: Add documentation about advanced checker techniques r=andi
Differential Revision: https://phabricator.services.mozilla.com/D118211
2021-07-22 19:50:37 +00:00
Tom Ritter
537031b360 Bug 1717076 - Add a quick-start guide for how to turn a matcher to a static analysis check r=andi
Differential Revision: https://phabricator.services.mozilla.com/D118248
2021-07-22 19:50:37 +00:00
Tom Ritter
72b427a860 Bug 1717076 - Move comments to a separate line r=freddyb
clang-query does not allow end-of-line comments, they need
to be on a separate line

Differential Revision: https://phabricator.services.mozilla.com/D118247
2021-07-22 19:50:37 +00:00
Mark Banner
ff109894f5 Bug 1587022 - Improve documentation for remaining Mozilla specific ESLint rules. r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D118735
2021-07-05 11:38:39 +00:00
Tom Ritter
5a4c1ce591 Bug 1716070 - Add more detailed documentation about our CE instance r=freddyb
Differential Revision: https://phabricator.services.mozilla.com/D117565
2021-06-14 17:28:09 +00:00
surajeet310
6ea83c8ef9 Bug 1714788 - Fixed more Sphinx warnings in 'mach doc' r=sylvestre DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D117419
2021-06-10 19:33:53 +00:00
Mitchell Hentges
e568fa2e0d Bug 1714641: Remove usages of vendored "backports" code r=ahal,perftest-reviewers
It provides `shutil.which(...)`, which has been part of `shutil` since
Python 3.3.

Differential Revision: https://phabricator.services.mozilla.com/D117063
2021-06-09 15:48:52 +00:00
Frederik Braun
6f19bc3072 Bug 1714991 - add docs for own compiler explorer instance r=andi
Differential Revision: https://phabricator.services.mozilla.com/D117000
2021-06-07 13:15:32 +00:00
Sylvestre Ledru
24951f13b0 Bug 1702922 - mozlint/ride along: Document how to run a specific testsuite r=linter-reviewers,marco DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D113287
2021-04-26 08:13:04 +00:00
Tom Ritter
829a688630 Bug 1645419: Add new static analysis documentation r=andi
Differential Revision: https://phabricator.services.mozilla.com/D101956
2021-03-22 17:28:37 +00:00
Tom Ritter
5e728f3aa7 Bug 1645419: Edit the old static analysis page in the context of what's to come r=andi
Depends on D108053

Differential Revision: https://phabricator.services.mozilla.com/D108054
2021-03-22 17:28:37 +00:00
Tom Ritter
5f9bfc09bd Bug 1645419: Move the existing static analysis page to a new one explicitly about existing stuff r=andi
Differential Revision: https://phabricator.services.mozilla.com/D108053
2021-03-22 17:28:37 +00:00
Simon Giesecke
f4f7c593e0 Bug 1692835 - Remove nsJSThingHashtable. r=xpcom-reviewers,nika
The only use of nsJSThingHashtable is replaced by a direct use of
nsBaseHashtable.

Differential Revision: https://phabricator.services.mozilla.com/D105971
2021-03-02 09:02:19 +00:00
Akshat
410a4c846a Bug 1692974 - doc(mozlint): Add documentation for counting fixed issues r=sylvestre DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D105271
2021-02-17 08:49:12 +00:00
Mark Banner
67bf517e00 Bug 1608272 - Extend an ESLint rule to disallow 'this' as the second argument to ChromeUtils.import. r=Gijs
Depends on D104684

Differential Revision: https://phabricator.services.mozilla.com/D104685
2021-02-11 22:02:16 +00:00
Dan Minor
febbe04140 Bug 1416149 - Add linter for checking fluent files r=zbraniecki,gregtatum,flod,Gijs,fluent-reviewers,linter-reviewers,sylvestre
This adds a linter for Fluent files based upon the existing test for bad
strings in browser_misused_characters_in_strings.js. It also adds a check
for identifiers that only permits lowercase letters, numbers and the
hyphen character (in ascii). Since a large number of existing identifiers
use uppercase letters, an exclusions file is used to disable the identifier
check on a file by file basis.

Differential Revision: https://phabricator.services.mozilla.com/D104414
2021-02-11 17:35:29 +00:00
Sylvestre Ledru
c77f092e54 Bug 1690959 - docs: Mozlint/rust - Fix the link to the source r=linter-reviewers,andi DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D104160
2021-02-05 09:48:03 +00:00
Mark Banner
abafccf4d7 Bug 1687650 - Rework Lint and ESLint document pages to provide a better layout and more information for ESLint itself. r=firefox-source-docs-reviewers,sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D103168
2021-01-29 09:09:12 +00:00
Mark Banner
787d4fd95d Bug 1686226 - Add references to the Matrix Lint & Formatting room in the coding style docs. r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D101463
2021-01-12 15:04:35 +00:00
Kartik Gautam
8828f6896c Bug 1682817 - Make whitespace/newline linter also fail for absent newline character at the end of files and also implement fix for it r=sylvestre
Depends on D100484

Differential Revision: https://phabricator.services.mozilla.com/D100443
2021-01-07 08:53:16 +00:00
Kartik Gautam
5a1125a101 Bug 1675131 - Make whitespace / newline linter also fail for missing empty lines at the end of files. r=sylvestre DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D98000
2020-12-15 21:49:43 +00:00
Butkovits Atila
cd73ee5d0b Backed out changeset eb6cdd43ce2e (bug 1677549) as requested by Simon. CLOSED TREE 2020-12-14 17:32:44 +02:00
Simon Giesecke
ba0db06d63 Bug 1677549 - Add some guidelines on include directives and header files to the coding style. r=andi,sylvestre,asuth
Differential Revision: https://phabricator.services.mozilla.com/D97916
2020-12-11 10:35:54 +00:00
Sylvestre Ledru
38008eb1cd Bug 1676514 - Add --fix to mozlint/clippy
I will add a test once this feature is considered as stable upstream

Differential Revision: https://phabricator.services.mozilla.com/D96634
2020-11-17 12:03:33 +00:00
Sylvestre Ledru
31b3856da6 Bug 1667831 - doc: fix more pygments r=firefox-source-docs-reviewers,championshuttler DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D91868
2020-09-30 07:03:41 +00:00
Sylvestre Ledru
3c813005a1 Bug 1667831 - doc: fix more warnings r=firefox-source-docs-reviewers,ahal DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D91642
2020-09-29 18:48:17 +00:00
Sylvestre Ledru
6be67c14c4 Bug 1667831 - doc: refresh links as many pages moved in-tree r=firefox-source-docs-reviewers,ahal DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D91619
2020-09-29 17:53:54 +00:00
ruchikabgosain
5e3cc11a26 Bug 1587022 - Improve documentation for Mozilla specific ESLint rules. r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D52626
2020-09-29 15:18:56 +00:00
Markus Stange
9aa3b6a184 Bug 1667463 - Fix two typos in using_cxx_in_firefox_code.rst. r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D91472
2020-09-25 20:25:23 +00:00
Simon Giesecke
3abd6dca98 Bug 1648010 - Update coding style with respect to string literals. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D81503
2020-07-21 11:24:06 +00:00
Sylvestre Ledru
f23398e021 no bug - Update the pylint doc r=andi DONTBUILD
Also do that to verify reviewbot

Differential Revision: https://phabricator.services.mozilla.com/D90075
2020-09-14 10:34:37 +00:00
Bryce Seager van Dyk
0c45c50c1f Bug 1659726 - Fix mode line docs to use 2 space indents rather than 8. r=sylvestre DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D87448
2020-08-19 07:51:42 +00:00