Due to babel still requiring an old version of estraverse, this disables our setup checking for changes
to modules in the eslint-plugin-mozilla package.json. For now, we'll need to remember to ensure there
is a top-level update to go with any changes - though that normally happens anyway.
For good measure, this also updates some of the top-level modules to ensure that node_modules is re-installed for everyone.
Differential Revision: https://phabricator.services.mozilla.com/D144758
plugin-syntax-class-properties was supported by default in Babel 7.14.0.
This also adds top level await support in modules with the upgrade to Babel 7.15.0.
Differential Revision: https://phabricator.services.mozilla.com/D122865
@babel/transform-flow-strip-types and eslint-plugin-flowtype are no longer required as devtools removed the uses of them in bug 1690742.
Differential Revision: https://phabricator.services.mozilla.com/D115402
Currently the `jest/no-standalone-expect` rule needs to be disabled for `jest-in-case` cases blocks as it is not compatible.
Differential Revision: https://phabricator.services.mozilla.com/D87184
There appears to be a bug in babel-eslint where it still uses the old
`ExperimentalSpreadProperty` and `ExperimentalRestProperty` node types when
babel itself (and hence the AST visitor keys) have switched to `SpreadElement`
and `RestElement`. I suspect there isn't much point in filing a babel-eslint
issue for this, they are currently in the process of working on v11 which does
fix the issue but is currently only available as a beta release.
There are three alternatives:
1. Use the beta babel-eslint.
2. Hack the visitor keys to include the old node types.
3. Traverse the AST changing the nodes from the old types to the new types.
Using a beta version is probably not a great idea so this patch does 2 which is
the simplest of the other options. It does have the drawback however that if
any eslint rules we use rely on the new node type names they will fail to work.
Differential Revision: https://phabricator.services.mozilla.com/D66998
--HG--
extra : moz-landing-system : lando
The babel-eslint parser defaults to assuming all scripts are modules. Although
we're moving in that direction it seems reasonable to set the default as regular
scripts for now. All the places that were previously overriding the parser are
already specifying the sourceType in their eslint configs.
I chose to put the babel config in a file that babel itself won't look to avoid
the risk of this config impacting the use of babel elsewhere in the tree.
Differential Revision: https://phabricator.services.mozilla.com/D66127
--HG--
extra : moz-landing-system : lando
This picks up various improvements, especially to how configurations are handled and some new rules.
Differential Revision: https://phabricator.services.mozilla.com/D37271
--HG--
extra : moz-landing-system : lando
The resume case is much more complex than the other events, because we do an
unsafeSynchronize to send an unsolicited pause. In the old system, the resume response would have
been ignored, but that is no longer the case. With the new system, we do not want to send a response
to a resume action if it did not come from the UI. This also update the debugger panel code to
accept a resume.
Differential Revision: https://phabricator.services.mozilla.com/D32697
--HG--
extra : moz-landing-system : lando
The resume case is much more complex than the other events, because we do an
unsafeSynchronize to send an unsolicited pause. In the old system, the resume response would have
been ignored, but that is no longer the case. With the new system, we do not want to send a response
to a resume action if it did not come from the UI. This also update the debugger panel code to
accept a resume.
Differential Revision: https://phabricator.services.mozilla.com/D32697
--HG--
extra : moz-landing-system : lando
packge-lock.json and tools/lint/eslint/manifest.tt were generated automatically by running tools/lint/eslint/setup.sh, as per previous revisions to package.json.
I've intentionally kept the package.json file simple for now, we can extend it as we get the requirements defined for vendoring new node modules.
Differential Revision: https://phabricator.services.mozilla.com/D7272
--HG--
extra : moz-landing-system : lando
Also change eslint-plugin-mozilla's globals.js to use eslint-scope rather than escope as
ESLint 4.x changed to eslint-scope. This avoids dependency issues that were masked by the
depedencies of eslint-plugin-no-unsanitized's previous version.
MozReview-Commit-ID: 6wLY7Oj0am3
--HG--
extra : rebase_source : 863313d7907e8246d1f5b0ee83164cc0f943f8f6