Created by: dependabot[bot]
Bumps @typescript-eslint/eslint-plugin from 4.33.0 to 5.0.0.
Release notes
Sourced from @typescript-eslint/eslint-plugin's releases.
v5.0.0
5.0.0 (2021-10-11)
Breaking Release Notes
All Packages
- Support for ESLint v8 (see individual packages for relevant breaking changes).
- Drop support for Node v10 - required node version is now
^12.22.0 || ^14.17.0 || >=16.0.0.
- Node v10 was EOL'd in April 2021, and ESLint v8 dropped support for it too.
- Drop Support for ESLint v5
- ESLint v5 is now 3 years old - why are you still using it? Upgrade to at least ESLint v6.
ESLint-Plugin
- Changes to the recommended rule set - see #3746
- [ban-types] remove
objectfrom the default ban list
- This has been a point of contention for a while - I originally added it because TS currently makes it impossible to narrow the type nicely. However there ultimately isn't a good alternative to this type for many usecases. As such we're removing the default ban. If you want to continue banning it, you can configure the rule to do so.
- [comma-dangle] align schema with ESLint v8
- Should be pretty transparent unless you were using an invalid config.
- [explicit-member-accessibility] now checks abstract members
- [member-ordering] add support for getters and setters
- This will likely cause your codebase's sort orders to change if you're using the default config.
- [no-unused-vars-experimental] rule has been deleted
- You should instead use
@typescript-eslint/no-unused-varsinstead! It has had full and awesome support for TypeScript since v4.9.0 - and it doesn't require type information!Experimental-Utils:
- Remove
SourceCode#getCommentsAPI from ESLint types.
- This API was deprecated in ESLint v4, and its usage will error in ESLint v8.
- Support ESLint v8:
CLIEngineis now conditionallyundefined. It was deprecated in v7 and removed in v8. If you're still using it, you should upgrade to theESLintAPI.- Remove
meta.docs.category. ESLint has removed this from their core rules as it wasn't ever very useful and was always poorly done. We have followed suit and removed it from our types and our rules.TypeScript-ESTree / AST-Spec
- Change
.sourceofExportNamedDeclaration,ExportAllDeclarationandImportDeclarationtoStringLiteraland add parse-time errors.
- This ensures we're aligned with ESTree and producing the correct AST.
- Remove
TSParenthesizedTypenode.
- This node was added when this project was first created because the TS-AST includes this node. However it ultimately conveys no actual AST meaning (just like parentheses in non-type code). Babel removed this node earlier this year.
- We expect rules will continue to "just work". In a lot of cases rules will work better as they no longer need manual checks to "look past" the useless node.
- Remove legacy option
useJSXTextNode.
- This option was added for compatibility between different ASTs a very long time ago - but all ASTs have converged on using
JSXText- so you should be using that too.- Align class features AST with ESTree. This aligns with ESLint v8.
ClassPropertyis now calledPropertyDefinitionTSAbstractClassPropertyis now calledTSAbstractPropertyDefinitionTSAbstractPropertyDefinition.valueis now alwaysnull.
- It never made sense that this was allowed, and TS4.4 has now made this invalid.
- Add full support for
PrivateIdentifier(#privateclass members)
- Previously we did not officially support them and emitted an "unstable" AST.
... (truncated)
Changelog
Sourced from @typescript-eslint/eslint-plugin's changelog.
5.0.0 (2021-10-11)
Bug Fixes
- eslint-plugin: [explicit-member-accessibility] report
TSAbstractPropertyDefinitionandTSAbstractMethodDefinitionproperly (#3901) (82016f9)- eslint-plugin: update new rules from master (#3840) (d88a6b4)
- update new rules from master (b34fb7e)
- eslint-plugin: crash in no-dupe-class-members (v5) (#3813) (4b09644)
Features
- ast-spec: bring
Nodeobjects in line with ESTree (#3771) (dd14064)- eslint-plugin: remove
objectfromban-types' default types (#3818) (ae3fa90)- eslint-plugin: removed value from abstract property nodes (#3765) (5823524), closes #3748
- eslint-plugin: update recommended configs (#3809) (deeb7bb)
- align class property representation with ESTree (#3806) (22fa5c0), closes #3430 #3077
- remove
meta.docs.categoryfrom rules (#3800) (71c9370)- remove
TSParenthesizedType(#3340) (c8ee432), closes #3136- support
PrivateIdentifier(#3808) (0eefe5e), closes #3430 #2933- eslint-plugin: [comma-dangle] align schema with ESLint v8 (#3768) (0acfafc)
- eslint-plugin: [member-ordering] add support for getters and setters (#3611) (e264124)
- eslint-plugin: remove
no-unused-vars-experimental(79ae03b)- support ESLint v8 (#3737) (4ca62ae)
BREAKING CHANGES
- eslint-plugin:
ban-typesno longer reportsobjectby default
Commits
-
101abc7chore: publish v5.0.0 -
c304a55chore: bump eslint to 8.0.0 -
dd14064feat(ast-spec): bringNodeobjects in line with ESTree (#3771) -
09c47b0chore: cleanup after rebase -
82016f9fix(eslint-plugin): [explicit-member-accessibility] report `TSAbstractPropert... -
d88a6b4fix(eslint-plugin): update new rules from master (#3840) -
b34fb7efix: update new rules from master -
ae3fa90feat(eslint-plugin): removeobjectfromban-types' default types (#3818) -
deeb7bbfeat(eslint-plugin): update recommended configs (#3809) -
4b09644fix(eslint-plugin): crash in no-dupe-class-members (v5) (#3813) - Additional commits viewable in compare view
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
-
@dependabot rebasewill rebase this PR -
@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it -
@dependabot mergewill merge this PR after your CI passes on it -
@dependabot squash and mergewill squash and merge this PR after your CI passes on it -
@dependabot cancel mergewill cancel a previously requested merge and block automerging -
@dependabot reopenwill reopen this PR if it is closed -
@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually -
@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)