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

Test: add eslint-remote-tester #299

Merged
merged 4 commits into from
Jun 28, 2023

Conversation

bmish
Copy link
Collaborator

@bmish bmish commented Jan 3, 2023

This runs all our rules on top ESLint plugin repos to ensure that they don't crash. It's like smoke testing.

https://github.com/AriPerkkio/eslint-remote-tester

@coveralls
Copy link

coveralls commented Jan 3, 2023

Coverage Status

coverage: 100.0%. remained the same when pulling f0a6f7b on bmish:eslint-remote-tester into 8211f6d on platinumazure:master.

@bmish
Copy link
Collaborator Author

bmish commented Jan 3, 2023

Looks like there's a CI failure related to this: AriPerkkio/eslint-remote-tester#382

@platinumazure
Copy link
Owner

Looks like the lint workflow is failing. Is it on the remote lint or the normal lint?

What do you think of creating a new workflow/action for remote linting specifically? That will make it a bit easier to debug, and we could potentially build it into a pre-release check as well.

Copy link
Contributor

@ddzz ddzz left a comment

Choose a reason for hiding this comment

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

This could run on a cron schedule instead of running in CI, which is what eslint-plugin-unicorn does: https://github.com/sindresorhus/eslint-plugin-unicorn/blob/main/.github/workflows/smoke-test.yml

@bmish
Copy link
Collaborator Author

bmish commented Jan 14, 2023

A cron job is a possibility but that's only really necessary when the job takes a long time (hours) because it's running on hundreds or thousands of repos. In this PR, I've only added a dozen relevant repos, and the job finishes in seconds, so we can run it on CI, which also allows us to catch issues before they get merged.

package.json Outdated Show resolved Hide resolved
@platinumazure
Copy link
Owner

@bmish I would love to explore this again if you are willing. Would you like to rebase and fix conflicts? If not, we can close this PR and I can explore this enhancement locally. Thanks!

* master: (31 commits)
  chore: use ecmaVersion latest for eslint (platinumazure#379)
  chore: use node protocol for imports (platinumazure#378)
  upgrade: Upgrade dependencies in preparation for major release (platinumazure#377)
  feat!: Require eslint@^8.38, drop support for eslint@7.x (platinumazure#376)
  feat!: change require-expect rule default option to never-except-zero (platinumazure#375)
  feat!: strictly define node API (platinumazure#374)
  feat!: drop support for Node 12, 14, 17, 19 (platinumazure#373)
  Upgrade: Bump semver from 7.5.0 to 7.5.3 (platinumazure#372)
  Upgrade: Bump @typescript-eslint/parser from 5.59.0 to 5.60.0 (platinumazure#371)
  Upgrade: Bump release-it from 15.10.1 to 15.11.0 (platinumazure#366)
  Upgrade: Bump markdownlint-cli from 0.33.0 to 0.35.0 (platinumazure#370)
  Upgrade: Bump all-contributors-cli from 6.24.0 to 6.26.0 (platinumazure#359)
  Upgrade: Bump eslint-plugin-eslint-plugin from 5.0.8 to 5.1.0 (platinumazure#357)
  Upgrade: Bump vm2 from 3.9.17 to 3.9.19 (platinumazure#355)
  Upgrade: Bump eslint from 8.38.0 to 8.39.0 (platinumazure#342)
  Upgrade: Bump vm2 from 3.9.16 to 3.9.17 (platinumazure#341)
  Upgrade: Bump @typescript-eslint/parser from 5.54.1 to 5.59.0 (platinumazure#340)
  Upgrade: Bump eslint from 8.36.0 to 8.38.0 (platinumazure#335)
  Upgrade: Bump semver from 7.3.8 to 7.5.0 (platinumazure#339)
  Upgrade: Bump vm2 from 3.9.11 to 3.9.16 (platinumazure#336)
  ...
@bmish
Copy link
Collaborator Author

bmish commented Jun 28, 2023

@platinumazure I'm glad to get this in still, should be ready.

Copy link
Owner

@platinumazure platinumazure left a comment

Choose a reason for hiding this comment

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

Need to test this locally, but looks good outside of a few tweaks I would like to see. Thanks!

.gitignore Outdated Show resolved Hide resolved
eslint-remote-tester.config.js Outdated Show resolved Hide resolved
bmish and others added 2 commits June 28, 2023 17:09
Co-authored-by: Kevin Partington <platinumazure@gmail.com>
Copy link
Owner

@platinumazure platinumazure left a comment

Choose a reason for hiding this comment

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

Looks good.

When I ran locally, I had errors failing to clone some of the repositories, but I see CI passed. Do you see issues running locally and/or are you aware of known issues I can work around?

That said, since CI passes, I will merge this in. Thanks for your efforts!

@platinumazure platinumazure merged commit b893cb0 into platinumazure:master Jun 28, 2023
10 checks passed
@bmish
Copy link
Collaborator Author

bmish commented Jun 28, 2023

Cloning repos worked when I tested locally with npm run lint:remote.

@platinumazure
Copy link
Owner

Weird. Glad it works on your end at least. I'll dig in more later.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants