Skip to content

chore(deps): update linting

This MR contains the following updates:

Package Type Update Change
@typescript-eslint/eslint-plugin devDependencies minor ^6.10.0 -> ^6.19.1
@typescript-eslint/parser devDependencies minor ^6.10.0 -> ^6.19.1
eslint (source) devDependencies minor ^8.53.0 -> ^8.56.0
eslint-config-prettier devDependencies minor ^9.0.0 -> ^9.1.0
eslint-plugin-import devDependencies patch ^2.29.0 -> ^2.29.1
prettier (source) devDependencies minor ^3.0.3 -> ^3.2.4

MR created with the help of gitlab-org/frontend/renovate-gitlab-bot


Release Notes

typescript-eslint/typescript-eslint (@​typescript-eslint/eslint-plugin)

v6.19.1

Compare Source

🩹 Fixes
  • type-utils: preventing isUnsafeAssignment infinite recursive calls

  • eslint-plugin: [no-unnecessary-condition] fix false positive for type variable

️ Thank You
  • YeonJuan

You can read about our versioning strategy and releases on our website.

v6.19.0

Compare Source

🚀 Features
  • eslint-plugin: [prefer-promise-reject-errors] add rule

  • eslint-plugin: [no-array-delete] add new rule

  • eslint-plugin: [no-useless-template-literals] add fix suggestions

🩹 Fixes
  • eslint-plugin: [no-unnecessary-type-assertion] detect unnecessary non-null-assertion on a call expression

  • eslint-plugin: [no-unnecesary-type-assertion] treat unknown/any as nullable

️ Thank You
  • auvred
  • Brad Zacher
  • Josh Goldberg
  • Joshua Chen
  • LJX
  • Steven
  • StyleShit

You can read about our versioning strategy and releases on our website.

v6.18.1

Compare Source

🩹 Fixes
  • eslint-plugin: [no-non-null-assertion] provide valid fix when member access is on next line

  • eslint-plugin: [no-unnecessary-condition] improve checking optional callee

  • eslint-plugin: [prefer-readonly] support modifiers of unions and intersections

  • eslint-plugin: [switch-exhaustiveness-check] fix new allowDefaultCaseForExhaustiveSwitch option

️ Thank You
  • auvred
  • James
  • Josh Goldberg
  • YeonJuan

You can read about our versioning strategy and releases on our website.

v6.18.0

Compare Source

🚀 Features
  • typescript-estree: throw on invalid update expressions

  • eslint-plugin: [no-var-requires, no-require-imports] allow option

️ Thank You
  • auvred
  • Joshua Chen

You can read about our versioning strategy and releases on our website.

v6.17.0

Compare Source

Bug Fixes
  • eslint-plugin: [no-restricted-imports] prevent crash when patterns or paths in options are empty (#​8108) (675e987)
Features
  • eslint-plugin: [no-floating-promises] flag result of .map(async) (#​7897) (5857356)
  • eslint-plugin: [switch-exhaustiveness-check] add an option to warn against a default case on an already exhaustive switch (#​7539) (6a219bd)

You can read about our versioning strategy and releases on our website.

v6.16.0

Compare Source

Bug Fixes
  • eslint-plugin: [unbound-method] exempt all non-Promise built-in statics (#​8096) (3182959)
Features
  • eslint-plugin: deprecate formatting (meta.type: layout) rules (#​8073) (04dea84)
  • eslint-plugin: deprecate no-extra-semi in favor of ESLint Stylistic equivalent (#​8123) (9368bf3)

You can read about our versioning strategy and releases on our website.

v6.15.0

Compare Source

Features

You can read about our versioning strategy and releases on our website.

v6.14.0

Compare Source

Bug Fixes
  • eslint-plugin: add no-unsafe-unary-minus, prefer-destructuring to disable-type-checked (#​8038) (431cd15)
  • eslint-plugin: correct message for no-unsafe-unary-minus (#​7998) (705370a)
Features
  • eslint-plugin: [explicit-function-return-type] add support for typed class property definitions (#​8027) (bff47d7)
  • eslint-plugin: [require-await] allow yielding Promise in async generators (#​8003) (4c3e704)

You can read about our versioning strategy and releases on our website.

6.13.2 (2023-12-04)

Note: Version bump only for package @​typescript-eslint/eslint-plugin

You can read about our versioning strategy and releases on our website.

6.13.1 (2023-11-28)

Note: Version bump only for package @​typescript-eslint/eslint-plugin

You can read about our versioning strategy and releases on our website.

v6.13.2

Compare Source

Note: Version bump only for package @​typescript-eslint/eslint-plugin

You can read about our versioning strategy and releases on our website.

v6.13.1

Compare Source

Note: Version bump only for package @​typescript-eslint/eslint-plugin

You can read about our versioning strategy and releases on our website.

v6.13.0

Compare Source

Note: Version bump only for package @​typescript-eslint/eslint-plugin

You can read about our versioning strategy and releases on our website.

v6.12.0

Compare Source

Bug Fixes
  • eslint-plugin: [class-methods-use-this] detect a problematic case for private/protected members if ignoreClassesThatImplementAnInterface is set (#​7705) (155aa1f)
  • eslint-plugin: [no-unnecessary-condition] fix false positive with computed member access and branded key type (#​7706) (f151b26)
  • eslint-plugin: [switch-exhaustiveness-check] enum members with new line or single quotes are not being fixed correctly (#​7806) (a034d0a), closes #​7768
Features
  • [member-ordering] add accessor support for member-ordering (#​7927) (3c8312d)
  • eslint-plugin: [switch-exhaustiveness-check] add requireDefaultForNonUnion option (#​7880) (4cfcd45)

You can read about our versioning strategy and releases on our website.

v6.11.0

Compare Source

Bug Fixes
  • eslint-plugin: [explicit-function-return-type] support JSX attributes in allowTypedFunctionExpressions (#​7553) (be2777c)
  • eslint-plugin: [no-unnecessary-qualifier] handle nested namespace id (#​7883) (a668f5b)
Features

You can read about our versioning strategy and releases on our website.

typescript-eslint/typescript-eslint (@​typescript-eslint/parser)

v6.19.1

Compare Source

This was a version bump only for parser to align it with other projects, there were no code changes.

You can read about our versioning strategy and releases on our website.

v6.19.0

Compare Source

This was a version bump only for parser to align it with other projects, there were no code changes.

You can read about our versioning strategy and releases on our website.

v6.18.1

Compare Source

This was a version bump only for parser to align it with other projects, there were no code changes.

You can read about our versioning strategy and releases on our website.

v6.18.0

Compare Source

This was a version bump only for parser to align it with other projects, there were no code changes.

You can read about our versioning strategy and releases on our website.

v6.17.0

Compare Source

Note: Version bump only for package @​typescript-eslint/parser

You can read about our versioning strategy and releases on our website.

v6.16.0

Compare Source

Note: Version bump only for package @​typescript-eslint/parser

You can read about our versioning strategy and releases on our website.

v6.15.0

Compare Source

Note: Version bump only for package @​typescript-eslint/parser

You can read about our versioning strategy and releases on our website.

v6.14.0

Compare Source

Note: Version bump only for package @​typescript-eslint/parser

You can read about our versioning strategy and releases on our website.

6.13.2 (2023-12-04)

Note: Version bump only for package @​typescript-eslint/parser

You can read about our versioning strategy and releases on our website.

6.13.1 (2023-11-28)

Note: Version bump only for package @​typescript-eslint/parser

You can read about our versioning strategy and releases on our website.

v6.13.2

Compare Source

Note: Version bump only for package @​typescript-eslint/parser

You can read about our versioning strategy and releases on our website.

v6.13.1

Compare Source

Note: Version bump only for package @​typescript-eslint/parser

You can read about our versioning strategy and releases on our website.

v6.13.0

Compare Source

Note: Version bump only for package @​typescript-eslint/parser

You can read about our versioning strategy and releases on our website.

v6.12.0

Compare Source

Note: Version bump only for package @​typescript-eslint/parser

You can read about our versioning strategy and releases on our website.

v6.11.0

Compare Source

Note: Version bump only for package @​typescript-eslint/parser

You can read about our versioning strategy and releases on our website.

eslint/eslint

v8.56.0

Compare Source

Features

  • 0dd9704 feat: Support custom severity when reporting unused disable directives (#​17212) (Bryan Mishkin)
  • 31a7e3f feat: fix no-restricted-properties false negatives with unknown objects (#​17818) (Arka Pratim Chaudhuri)

Bug Fixes

  • 7d5e5f6 fix: TypeError: fs.exists is not a function on read-only file system (#​17846) (Francesco Trotta)
  • 74739c8 fix: suggestion with invalid syntax in no-promise-executor-return rule (#​17812) (Bryan Mishkin)

Documentation

  • 9007719 docs: update link in ways-to-extend.md (#​17839) (Amel SELMANE)
  • 3a22236 docs: Update README (GitHub Actions Bot)
  • 54c3ca6 docs: fix migration-guide example (#​17829) (Tanuj Kanti)
  • 4391b71 docs: check config comments in rule examples (#​17815) (Francesco Trotta)
  • fd28363 docs: remove mention about ESLint stylistic rules in readme (#​17810) (Zwyx)
  • 48ed5a6 docs: Update README (GitHub Actions Bot)

Chores

v8.55.0

Compare Source

Features

  • 8c9e6c1 feat: importNamePattern option in no-restricted-imports (#​17721) (Tanuj Kanti)

Documentation

  • 83ece2a docs: fix typo --rules -> --rule (#​17806) (OKURA Masafumi)
  • fffca5c docs: remove "Open in Playground" buttons for removed rules (#​17791) (Francesco Trotta)
  • a6d9442 docs: fix correct/incorrect examples of rules (#​17789) (Tanuj Kanti)
  • 383e999 docs: update and fix examples for no-unused-vars (#​17788) (Tanuj Kanti)
  • 5a8efd5 docs: add specific stylistic rule for each deprecated rule (#​17778) (Etienne)

Chores

v8.54.0

Compare Source

Features

  • a7a883b feat: for-direction rule add check for condition in reverse order (#​17755) (Angelo Annunziata)
  • 1452dc9 feat: Add suggestions to no-console (#​17680) (Joel Mathew Koshy)
  • 21ebf8a feat: update no-array-constructor rule (#​17711) (Francesco Trotta)

Bug Fixes

  • 98926e6 fix: Ensure that extra data is not accidentally stored in the cache file (#​17760) (Milos Djermanovic)
  • e8cf9f6 fix: Make dark scroll bar in dark theme (#​17753) (Pavel)
  • 3cbeaad fix: Use cwd constructor option as config basePath in Linter (#​17705) (Milos Djermanovic)

Documentation

  • becfdd3 docs: Make clear when rules are removed (#​17728) (Nicholas C. Zakas)
  • 05d6e99 docs: update "Submit a Merge Request" page (#​17712) (Francesco Trotta)
  • eb2279e docs: display info about deprecated rules (#​17749) (Percy Ma)
  • d245326 docs: Correct working in migrating plugin docs (#​17722) (Filip Tammergård)

Chores

prettier/eslint-config-prettier

v9.1.0

Compare Source

  • Added: [unicorn/template-indent], (as a [special rule][unicorn/template-indent-special]). Thanks to Gürgün Dayıoğlu (@​gurgunday)!
  • Changed: All the [formatting rules that were deprecated in ESLint 8.53.0][deprecated-8.53.0] are now excluded if you set the ESLINT_CONFIG_MRETTIER_NO_DEMRECATED environment variable.
import-js/eslint-plugin-import

v2.29.1

Compare Source

Fixed
prettier/prettier

v3.2.4

Compare Source

diff

Fix incorrect parser inference (#​15947 by @​fisker)

Files like .eslintrc.json were incorrectly formatted as JSONC files.

// Input
prettier --file-info .eslintrc.json
{ "ignored": false, "inferredParser": "jsonc" }

// Prettier 3.2.4
prettier --file-info .eslintrc.json
{ "ignored": false, "inferredParser": "json" }

v3.2.3

Compare Source

diff

Throw errors for invalid code (#​15881 by @​fisker, @​Josh-Cena, @​auvred)
// Input
1++;

// Prettier 3.2.2
1++;

// Prettier 3.2.3
SyntaxError: Invalid left-hand side expression in unary operation (1:1)
> 1 | 1++;
    | ^
// Input
try {} catch (error = 1){}

// Prettier 3.2.2
try {
} catch (error) {}

// Prettier 3.2.3
SyntaxError: Catch clause variable cannot have an initializer. (1:23)
> 1 | try {} catch (error = 1){}
    |                       ^
Fix parser inference (#​15927 by @​fisker)
// Prettier 3.2.2
prettier --file-info tsconfig.json
{ "ignored": false, "inferredParser": "json" }

// Prettier 3.2.3
prettier --file-info tsconfig.json
{ "ignored": false, "inferredParser": "jsonc" }

v3.2.2

Compare Source

diff

Fix crash when parsing template literal CSS in a JSX style tag using a spread attribute (#​15896 by @​eelco)

For example this code would crash before:

<style {...spread}>{`.{}`}</style>
Fix formatting error on optional call expression and member chain (#​15920 by @​sosukesuzuki)
// Input
a(() => {}, c?.d());

// Prettier 3.2.1
TypeError: Cannot read properties of undefined (reading 'type')

// Prettier 3.2.2
a(() => {}, c?.d());

v3.2.1

Compare Source

diff

Fix formatting error on member chain (#​15915 by @​sosukesuzuki)
// Input
test().test2().test2(thing?.something);

// Prettier 3.2.0
TypeError: Cannot read properties of undefined (reading 'type')

// Prettier 3.2.1
test().test2().test2(thing?.something);

v3.2.0

Compare Source

diff

🔗 Release Notes

v3.1.1

Compare Source

diff

Fix config file search (#​15363 by @​fisker)

Previously, we start search for config files from the filePath as a directory, if it happened to be a directory and contains config file, it will be used by mistake.

├─ .prettierrc
└─ test.js         (A directory)
  └─ .prettierrc
// Prettier 3.1.0
await prettier.resolveConfigFile(new URL("./test.js", import.meta.url));
// <CWD>/test.js/.prettierrc

// Prettier 3.1.1
await prettier.resolveConfigFile(new URL("./test.js", import.meta.url));
// <CWD>/.prettierrc
Skip explicitly passed symbolic links with --no-error-on-unmatched-pattern (#​15533 by @​sanmai-NL)

Since Prettier v3, we stopped following symbolic links, however in some use cases, the symbolic link patterns can't be filtered out, and there is no way to prevent Prettier from throwing errors.

In Prettier 3.1.1, you can use --no-error-on-unmatched-pattern to simply skip symbolic links.

Consistently use tabs in ternaries when useTabs is true (#​15662 by @​auvred)
// Input
aaaaaaaaaaaaaaa
	? bbbbbbbbbbbbbbbbbb
	: ccccccccccccccc
	  ? ddddddddddddddd
	  : eeeeeeeeeeeeeee
	    ? fffffffffffffff
	    : gggggggggggggggg;

// Prettier 3.1.0
aaaaaaaaaaaaaaa
	? bbbbbbbbbbbbbbbbbb
	: ccccccccccccccc
	  ? ddddddddddddddd
	  : eeeeeeeeeeeeeee
	    ? fffffffffffffff
	    : gggggggggggggggg;

// Prettier 3.1.1
aaaaaaaaaaaaaaa
	? bbbbbbbbbbbbbbbbbb
	: ccccccccccccccc
		? ddddddddddddddd
		: eeeeeeeeeeeeeee
			? fffffffffffffff
			: gggggggggggggggg;
Improve config file search (#​15663 by @​fisker)

The Prettier config file search performance has been improved by more effective cache strategy.

Fix unstable and ugly formatting for comments in destructuring patterns (#​15708 by @​sosukesuzuki)
// Input
const {
  foo,
  // bar
  // baz
}: Foo = expr;

// Prettier 3.1.0
const {
  foo1,
} // bar
// baz
: Foo = expr;

// Prettier 3.1.0 second output
const {
  foo1, // bar
} // baz
: Foo = expr;

// Prettier 3.1.1
const {
  foo1,
  // bar
  // baz
}: Foo = expr;
Support "Import Attributes" (#​15718 by @​fisker)

TypeScript 5.3 supports the latest updates to the import attributes proposal.

import something from "./something.json" with { type: "json" };
Fix false claim in docs that cursorOffset is incompatible with rangeStart/rangeEnd (#​15750 by @​ExplodingCabbage)

The cursorOffset option has in fact been compatible with rangeStart/rangeEnd for over 5 years, thanks to work by @​ds300. However, Prettier's documentation (including the CLI --help text) continued to claim otherwise, falsely. The documentation is now fixed.

Keep curly braces and from keyword in empty import statements (#​15756 by @​fisker)
// Input
import { } from 'foo';
import { /* comment */ } from 'bar';

// Prettier 3.1.0
import {} from "foo";
import /* comment */ "bar";

// Prettier 3.1.1
import {} from "foo";
import {} from /* comment */ "bar";
Keep empty import attributes and assertions (#​15757 by @​fisker)
// Input
import foo from "foo" with {};
import bar from "bar" assert {};

// Prettier 3.1.0
import foo from "foo";
import bar from "bar";

// Prettier 3.1.1
import foo from "foo" with {};
import bar from "bar" assert {};

v3.1.0

Compare Source

diff

🔗 Release Notes


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This MR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this MR, check this box

This MR has been generated by Renovate Bot.

Edited by GitLab Dependency Bot

Merge request reports