stylelint / eslint-config-stylelint

Stylelint org's shareable config for eslint
MIT License
59 stars 9 forks source link

Release 15.0.0 #152

Closed jeddy3 closed 2 years ago

jeddy3 commented 2 years ago

I meant to open a pull request, but forgot to branch.

Commit here: https://github.com/stylelint/eslint-config-stylelint/commit/62ac183be878c8671aa97ae7dfe80be59df9b997

Clean CI: https://github.com/stylelint/eslint-config-stylelint/actions/runs/1369217773

Need a couple of pairs of eyes to check it over before releasing.

Ref: https://github.com/stylelint/stylelint/pull/5624#issuecomment-948870351

jeddy3 commented 2 years ago

Unfortunately, these changes don't fix the downstream issues. We now get the following when using npm i --save-dev stylelint/eslint-config-stylelint in either of the stylelint-config-* repos :

ESLint: 8.0.1

ESLint couldn't find the plugin "eslint-plugin-node".

(The package "eslint-plugin-node" was not found when loaded as a Node module from the directory "/Users/jeddy3/Projects/stylelint-config-standard".)

It's likely that the plugin isn't installed correctly. Try reinstalling by running the following:

    npm install eslint-plugin-node@latest --save-dev

The plugin "eslint-plugin-node" was referenced from the config file in "package.json » eslint-config-stylelint".

If you still can't figure out the problem, please stop by https://eslint.org/chat/help to chat with the team.

ERROR: "lint:js" exited with 2.

It seems something is up with the plugin resolution, and more investigation is needed. I'm calling it a day, though. Feel free to pick this up.

mattxwang commented 2 years ago

I'm not sure if eslint-plugin-node is ready for ESLint 8 - see https://github.com/mysticatea/eslint-plugin-node/pull/295

I think this is a similar issue to the downstream one in the shared config - see https://github.com/mysticatea/eslint-plugin-eslint-comments/pull/63

Interestingly, they have the same core maintainer, the same person who filed the issue for ESLint 8 support, and the same author of the draft PR.

In the meantime, maybe we need to halt moving towards ESLint 8? Or, alternatively, ping the author, fork and update, etc.

jeddy3 commented 2 years ago

The plugin resolution issue is present for ESLint 7 too. See the standard config CI logs: https://github.com/stylelint/stylelint-config-standard/runs/3967292608?check_suite_focus=true

I don't know what's causing it. Perhaps somethings to do with NPM@8.

It'll need investigating.

I think our next steps are:

  1. Investigate, fix and release a new version for the resolution issue
  2. Wait until our plugins are more compatible before releasing our next major version

I'm away and offline for the next few days, so release in my absence if the issue gets resolved.

mattxwang commented 2 years ago

The plugin resolution issue is present for ESLint 7 too. See the standard config CI logs: https://github.com/stylelint/stylelint-config-standard/runs/3967292608?check_suite_focus=true

I don't know what's causing it. Perhaps somethings to do with NPM@8.

Ah, good catch. I may have some time this weekend so I can see what I can do!

ntwb commented 2 years ago

This is possibly related to https://github.com/eslint/eslint/issues/15079

Going to merge #153 and test, possibly do a pre-release of this package for testing

Released: https://www.npmjs.com/package/eslint-config-stylelint/v/next (v15.0.0-0) https://github.com/stylelint/eslint-config-stylelint/releases/tag/15.0.0-0

ntwb commented 2 years ago

Confirmed: npm run lint passes:

Using npm install eslint-config-stylelint@next --save-dev works with https://github.com/stylelint/stylelint-config-standard

Before:

 ~/Code/stylelint/stylelint-config-standard  main !2  npm run lint                                                                                                                                                      ✔ 

> stylelint-config-standard@23.0.0 lint
> npm-run-all --parallel lint:*

> stylelint-config-standard@23.0.0 lint:md
> remark . --quiet --frail --ignore-path .gitignore

> stylelint-config-standard@23.0.0 lint:formatting
> prettier . --check

> stylelint-config-standard@23.0.0 lint:js
> eslint . --ignore-path .gitignore

Oops! Something went wrong! :(

ESLint: 8.1.0

ESLint couldn't find the plugin "eslint-plugin-eslint-comments".

(The package "eslint-plugin-eslint-comments" was not found when loaded as a Node module from the directory "/Users/netweb/Code/stylelint/stylelint-config-standard".)

It's likely that the plugin isn't installed correctly. Try reinstalling by running the following:

    npm install eslint-plugin-eslint-comments@latest --save-dev

The plugin "eslint-plugin-eslint-comments" was referenced from the config file in "package.json » eslint-config-stylelint".

If you still can't figure out the problem, please stop by https://eslint.org/chat/help to chat with the team.

ERROR: "lint:js" exited with 2.

After:


 ~/Code/stylelint/stylelint-config-standard  main !2  npm run lint                                                                                                                                                 ✔  6s 

> stylelint-config-standard@23.0.0 lint
> npm-run-all --parallel lint:*

> stylelint-config-standard@23.0.0 lint:md
> remark . --quiet --frail --ignore-path .gitignore

> stylelint-config-standard@23.0.0 lint:formatting
> prettier . --check

> stylelint-config-standard@23.0.0 lint:js
> eslint . --ignore-path .gitignore

Checking formatting...
All matched files use Prettier code style!
ntwb commented 2 years ago

🚀 Released: https://www.npmjs.com/package/eslint-config-stylelint/v/latest (v15.0.0) https://github.com/stylelint/eslint-config-stylelint/releases/tag/15.0.0

ntwb commented 2 years ago

Closing this out as fixed, I've regenerated the package-lock.json using the latest npm v8.1.2 and this has resolved the ESLint v8.1.0 update for each of these repos:

I'll look at our repos a little later today