Releases: MetaMask/eslint-config
Releases · MetaMask/eslint-config
11.0.1
@metamask/eslint-config
Fixed
- Enable function expressions again (#258)
- We didn't realize this rule would disallow class methods, even class constructors. This was too disruptive.
@metamask/eslint-config-nodejs
Fixed
- Disable import/no-nodejs-modules in Node.js config (#257)
- This rule was added to the base config, but we accidentally forgot to disable it here.
11.0.0
@metamask/eslint-config
Added
- BREAKING: Enable id-denylist and id-length in base config (#200)
- BREAKING: Add rules for hybrid Node.js and browser environments (#242)
- The base config now only allows globals and modules that are available in both Node.js and browsers.
- This adds a new
@metamask/eslint-config-browserpackage, to be used in browser-only environments. - The
@metamask/eslint-config-nodejspackage has been updated to allow Node.js-only globals and modules.
Changed
- BREAKING: Remove no-undef in favour of custom environments configuration (#254)
- BREAKING: Bump all ESLint dependencies to the latest version (#252)
- This includes peer dependencies.
- BREAKING: Automatically sort imports (#248)
- BREAKING: Disable more undesired syntax (#207)
- This disables the
withstatement, function expressions, and theinoperator.
- This disables the
@metamask/eslint-config-browser
Added
- Initial release of this package.
@metamask/eslint-config-jest
Changed
- BREAKING: Bump all ESLint dependencies to the latest version (#252)
- This includes peer dependencies.
@metamask/eslint-config-mocha
Changed
- BREAKING: Bump all ESLint dependencies to the latest version (#252)
- This includes peer dependencies.
@metamask/eslint-config-nodejs
Changed
- BREAKING: Remove no-undef in favour of custom environments configuration (#254)
- This config now only allows globals that are available in Node.js.
- BREAKING: Bump all ESLint dependencies to the latest version (#252)
- This includes peer dependencies.
@metamask/eslint-config-typescript
Added
- BREAKING: Add rules that require type information (#250)
- This requires setting some parser options. See the README for more details.
- BREAKING: Bump all ESLint dependencies to the latest version (#252)
- This includes peer dependencies.
- BREAKING: Forbid TypeScript's private modifier in favour of hash names (#244)
10.0.0
@metamask/eslint-config
Changed
- (BREAKING) Update ESLint from v7 to v8 (#233)
- This is breaking because
eslintis apeerDependency. - Four new rules have been added:
- This is breaking because
- (BREAKING) Update
eslint-plugin-prettierfrom v3 to v4 (#231)- This is breaking beacuse
eslint-plugin-prettieris apeerDependency.
- This is breaking beacuse
- (BREAKING) Update minimium Node.js version to v14 (#225)
- Ignore rest siblings for
no-unused-vars(#213)- This makes the
no-unused-varsrule more permissive
- This makes the
@metamask/eslint-config-jest
Changed
- (BREAKING) Update ESLint from v7 to v8 (#233)
- This is breaking because
eslintis apeerDependency. - Four new rules have been added:
- This is breaking because
- (BREAKING) Bump eslint-plugin-jest to ^26.x (#228)
- This is breaking because
eslint-plugin-jestis apeerDependency - The rule
jest/prefer-to-behas replaced the old rulesjest/prefer-to-be-nullandjest/prefer-to-be-undefined. This is breaking because it is more broadly applicable than the two it replaces, and may force us to usetoBefor all primatives (overtoBeEqualor equivalent). - Two rules were renamed (
jest/valid-describe=>jest/valid-describe-callback, andjest/lowercase-name=>jest/prefer-lowercase-title)
- This is breaking because
- (BREAKING) Update minimium Node.js version to v14 (#225)
@metamask/eslint-config-mocha
Changed
- (BREAKING) Update ESLint from v7 to v8 (#233)
- This is breaking because
eslintis apeerDependency. - Four new rules have been added:
- This is breaking because
- (BREAKING) Update
eslint-plugin-mochafrom v8 to v10 (#232)- This is breaking because
eslint-plugin-mochais apeerDependency. - The rule
mocha/no-empty-descriptionwas added.
- This is breaking because
- (BREAKING) Update minimium Node.js version to v14 (#225)
- Update Mocha ecmaVersion (#218)
- This lets us use newer JavaScript features in our Mocha tests.
@metamask/eslint-config-nodejs
Changed
- (BREAKING) Update ESLint from v7 to v8 (#233)
- This is breaking because
eslintis apeerDependency. - Four new rules have been added:
- This is breaking because
- (BREAKING) Update minimium Node.js version to v14 (#225)
@metamask/eslint-config-typescript
Changed
- (BREAKING) Update ESLint from v7 to v8 (#233)
- This is breaking because
eslintis apeerDependency. - Four new rules have been added:
- This is breaking because
- (BREAKING) Update
@typescript-eslintparser and plugin (#230)- This is breaking because these two packages are
peerDependencies - There are two new rules:
- This is breaking because these two packages are
- (BREAKING) Update minimium Node.js version to v14 (#225)
- (BREAKING) Forbid TypeScript interfaces (#216)
- Ignore rest siblings for
no-unused-vars(#213)- This makes the
no-unused-varsrule more permissive
- This makes the
9.0.1
9.0.0
@metamask/eslint-config
Added
- BREAKING Add JSDoc ESLint rules (#203)
@metamask/eslint-config-jest
Added
- BREAKING Add JSDoc ESLint rules (#203)
@metamask/eslint-config-mocha
Added
- BREAKING Add JSDoc ESLint rules (#203)
@metamask/eslint-config-nodejs
Added
- BREAKING Add JSDoc ESLint rules (#203)
@metamask/eslint-config-typescript
Added
- BREAKING Add JSDoc ESLint rules (#203)
8.0.0
7.0.1
@metamask/eslint-config
Fixed
- Restore default
parserOptions(#193)- By extending the recommended
eslint-plugin-importrules, we accidentally changed the defaultparserOptions.sourceTypetomodule.
ThesourceTypeis now explicitly set toscript. - In some cases,
parserOptions.ecmaVersioncould also be set to an incorrect version.
TheecmaVersionis now explicitly set to2017, matching the corresponding setting inenv.
- By extending the recommended
@metamask/eslint-config-nodejs
Fixed
- Restore default
parserOptions(#193)- By extending the recommended
eslint-plugin-importrules, we accidentally changed the defaultparserOptions.sourceTypetomodule.
ThesourceTypeis now explicitly set toscript. - In some cases,
parserOptions.ecmaVersioncould also be set to an incorrect version.
TheecmaVersionis now explicitly set to2017, matching the corresponding setting inenv.
- By extending the recommended
@metamask/eslint-config-typescript
Fixed
- Restore default
parserOptions.ecmaVersion(#193)- In some cases,
parserOptions.ecmaVersioncould be set to an incorrect version.
TheecmaVersionis now explicitly set to2020, matching the corresponding setting inenv.
- In some cases,
7.0.0
@metamask/eslint-config
Changed
- (BREAKING) Update Prettier
quotePropsrule toas-needed(#181) - (BREAKING) Update ESLint
no-shadowconfig (#168) - Use recommended
eslint-plugin-importrule sets (#184)- This only removed or disabled rules, and is not breaking.
- Update install instructions in readme (#185)
- Normalize rule config values (#169)
@metamask/eslint-config-jest
Changed
- Update install instructions in readme (#185)
Fixed
- Add
@metamask/eslint-configas a peer dependency (#186)- This package is designed to be used in conjunction with the MetaMask base ESLint config, so this should always have been a peer dependency.
@metamask/eslint-config-mocha
Changed
- Update install instructions in readme (#185)
Fixed
- Add
@metamask/eslint-configas a peer dependency (#186)- This package is designed to be used in conjunction with the MetaMask base ESLint config, so this should always have been a peer dependency.
@metamask/eslint-config-nodejs
Changed
- Update install instructions in readme (#185)
Fixed
- Add
@metamask/eslint-configas a peer dependency (#186)- This package is designed to be used in conjunction with the MetaMask base ESLint config, so this should always have been a peer dependency.
@metamask/eslint-config-typescript
Changed
- (BREAKING) Update
@typescript/no-shadowconfig (#168) - Use recommended
eslint-plugin-importrule sets (#184)- This only removed or disabled rules, and is not breaking.
- Update install instructions in readme (#185)
Fixed
- Add
@metamask/eslint-configas a peer dependency (#186)- This package is designed to be used in conjunction with the MetaMask base ESLint config, so this should always have been a peer dependency.
6.0.0
(BREAKING) All configs are now published as separate packages, and must be extended by referencing their package names:
@metamask/eslint-config(the base config)@metamask/eslint-config-jest@metamask/eslint-config-mocha@metamask/eslint-config-nodejs@metamask/eslint-config-typescript
See individual package changelogs for their specific changes: