testing-library / eslint-plugin-testing-library

ESLint plugin to follow best practices and anticipate common mistakes when writing tests with Testing Library
https://npm.im/eslint-plugin-testing-library
MIT License
968 stars 135 forks source link

Upgrade core dependencies #855

Open Belco90 opened 6 months ago

Belco90 commented 6 months ago

I'm creating this issue to keep discussing the upgrade of some core dependencies of this plugin, originated in #852 (@lesha1201).

typescript-eslint

We could support both v5 and v6, actually. I think it will make things more complicated, so let me think about it. There are other things more critical to be updated now.

Prettier

I already tried to upgrade to v3, but had to revert it because of breaking changes introduced. You can find more details in the revert PR.

TypeScript

Definitely interested in upgrading this one, and it's actually needed to upgrade prettier to v3 as described in the previous revert PR.

Jest

Not sure why this was updated in #852, but we need to upgrade it anyway. ~Shouldn't be blocked by anything~ This is blocked by Node.js v12 which is not supported by Jest v29.

So our priorities should be:

Other improvements

When Node.js compatibility for non-supported versions is dropped, we can apply more improvements:

Belco90 commented 6 months ago

Just thinking out loud: another migration update plan for this plugin could be releasing a new major that upgrades typescript-eslint to v6 + drops Node.js support for the same versions as the future ESLint v9. Then when ESLint v9 gets released we don't release another major but a minor supporting both ESLint v8 and v9.

lesha1201 commented 6 months ago

@Belco90 Do you want to upgrade TS or I can open PR? I saw your notes about updating tsconfig in this PR https://github.com/testing-library/eslint-plugin-testing-library/pull/826 but not sure what exactly you want to update. I can open PR with these changes - https://github.com/testing-library/eslint-plugin-testing-library/pull/852/commits/20c87e82f8d66d6a22a38773379d66676a8edadd and you can either ask me to add some changes to tsconfig or push them directly.

Belco90 commented 6 months ago

@Belco90 Do you want to upgrade TS or I can open PR? I saw your notes about updating tsconfig in this PR #826 but not sure what exactly you want to update. I can open PR with these changes - 20c87e8 and you can either ask me to add some changes to tsconfig or push them directly.

Feel free to create a PR! I can ask for some changes to tsconfig if needed.

Belco90 commented 4 months ago

I've updated the description, so we release a v7 dropping support for older Node.js versions similar to typescript-eslint v7.

Belco90 commented 2 months ago

ESLint v9 has been released, so all the planned changes here can be done under the new major of the plugin.