Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[infra] Create ESLint plugins renovate group #14574

Merged
merged 3 commits into from
Sep 11, 2024
Merged
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions renovate.json
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,20 @@
"groupName": "typescript-eslint",
"matchPackagePatterns": "@typescript-eslint/*"
},
{
"groupName": "ESLint plugins",
"matchPackageNames": [
Copy link
Member Author

@LukasTy LukasTy Sep 11, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't want to use eslint-plugin-* to avoid combining the bumps of

"eslint-plugin-react-compiler": "0.0.0-experimental-9ed098e-20240725",
as it can often have lots of unsolvable problems given the state of the plugin.
For example: #14425

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What about enabling eslint-plugin-* and just skip eslint-plugin-react-compiler instead

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a way to do it for a group config? 🤔

Copy link
Member

@Janpot Janpot Sep 11, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We use the following rule in Toolpad

    {
      "groupName": "eslint",
      "matchPackageNames": ["eslint"],
      "matchPackagePatterns": ["^eslint-", "^@eslint/", "^@eslint-", "^@typescript-eslint/"]
    },

but you should also be able to just add a negative pattern

"matchPackagePatterns": ["eslint-plugin-*", "!eslint-plugin-react-compiler"]

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@LukasTy you can negate pattern like !eslint-plugin-react-compiler

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And how do you deal with dependency bumping when eslint-plugin-react-compiler changes are very time consuming?
I would imagine that other ESLint dep bumping might be stuck for a while. 🙈

What do you mean?

This config is just for grouping, meaning eslint-plugin-react-compiler will still bump alone.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This config is just for grouping, meaning eslint-plugin-react-compiler will still bump alone.

I meant the Toolpad config. 😉
In their case, it looks like the react-compiler plugin would be included in the same group...

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Negating didn't work, even though it is documented 🤔
https://docs.renovatebot.com/configuration-options/#matchpackagenames

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah... 🙈 😢
That's what I was afraid of. 😆

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like my bad: #14577 🙈 🤦

"eslint-plugin-filenames",
"eslint-plugin-import",
"eslint-plugin-jsdoc",
"eslint-plugin-jsx-a11y",
"eslint-plugin-mocha",
"eslint-plugin-prettier",
"eslint-plugin-react",
"eslint-plugin-react-hooks",
"eslint-plugin-testing-library"
]
},
{
"groupName": "@types/node",
"matchPackageNames": ["@types/node"],
Expand Down
Loading