build: exclude flawed dendency versions#19065
Conversation
✅ Deploy Preview for docs-eslint canceled.
|
| uses: trunk-io/trunk-action@v1 | ||
| uses: trunk-io/trunk-action@v1.1.17 | ||
| with: | ||
|
|
||
| # Run on everything except the docs folder. | ||
| arguments: --ignore=docs/** --filter=eslint | ||
| check-mode: all | ||
|
|
||
| - name: Lint Files (other) | ||
| uses: trunk-io/trunk-action@v1 | ||
| uses: trunk-io/trunk-action@v1.1.17 |
There was a problem hiding this comment.
trunk-io/trunk-action@v1.1.18 is causing build errors in some pull requests, apparently because there are two steps trying to upload an artifact with the same name in a job. Examples:
- https://github.com/eslint/eslint/actions/runs/11528700815/job/32096167483
- https://github.com/eslint/eslint/actions/runs/11528810311/job/32100020453
- https://github.com/eslint/eslint/actions/runs/11529133487/job/32097195940
This was working well in v1.1.17 because the artifacts would have different pathnames. I did some tests on a fork of eslint and the build errors in the PRs disappeared after pinning the trunk-io/trunk-action dependency in the main branch and rebasing the PRs.
There was a problem hiding this comment.
Should we maybe do the same in a few other places where we use trunk-io/trunk-action?
eslint/.github/workflows/ci.yml
Line 49 in 425202e
eslint/.github/workflows/ci.yml
Line 57 in 425202e
eslint/.github/workflows/annotate_pr.yaml
Line 23 in 425202e
| "dependencies": { | ||
| "@eslint-community/eslint-utils": "^4.2.0", | ||
| "@eslint-community/regexpp": "^4.11.0", | ||
| "@eslint-community/regexpp": "^4.12.1", |
There was a problem hiding this comment.
@eslint-community/regexpp v4.12.0 contains a bug that was causing some unit tests to fail (eslint-community/regexpp#208):
1) prefer-regex-literals
invalid
new RegExp(/a/, 'd');:
AssertionError [ERR_ASSERTION]: Error should have no suggestions on error with message: "Use regular expression literal with flags instead of the 'RegExp' constructor."
+ expected - actual
-false
+true
at testInvalidTemplate (lib/rule-tester/rule-tester.js:1126:40)
at Context.<anonymous> (lib/rule-tester/rule-tester.js:1292:37)
at process.processImmediate (node:internal/timers:491:21)
2) prefer-regex-literals
invalid
new RegExp('abc', 'd');:
AssertionError [ERR_ASSERTION]: Error should have no suggestions on error with message: "Use a regular expression literal instead of the 'RegExp' constructor."
+ expected - actual
-false
+trueUpgrading to v4.12.1 solves the problem.
| "@types/node": "^20.11.5", | ||
| "@typescript-eslint/parser": "^8.4.0", | ||
| "@wdio/browser-runner": "^9.0.5", | ||
| "@wdio/browser-runner": "9.2.1", |
There was a problem hiding this comment.
@wdio/browser-runner@9.2.2 is currently producing an error during npm install (#19064):
npm error code EUNSUPPORTEDPROTOCOL
npm error Unsupported URL Type "workspace:": workspace:*
npm error A complete log of this run can be found in: .../.npm/_logs/2024-10-28T08_15_15_704Z-debug-0.log|
Let's make sure to also file issues for these. |
mdjermanovic
left a comment
There was a problem hiding this comment.
LGTM, thanks! Seems like a good idea to temporarily pin trunk-io/trunk-action and @wdio/browser-runner until the problems are resolved, and to update @eslint-community/regexpp dependency to skip the problematic version.
|
Here's a tracking pull request for |
Prerequisites checklist
What is the purpose of this pull request? (put an "X" next to an item)
[ ] Documentation update
[ ] Bug fix (template)
[ ] New rule (template)
[ ] Changes an existing rule (template)
[ ] Add autofix to a rule
[ ] Add a CLI option
[ ] Add something to the core
[X] Other, please explain:
Update or temporarily pin dependencies
fixes #19064
What changes did you make? (Give an overview)
This PR fixes the build by excluding some recently released dependency versions that are causing various problems.
Is there anything you'd like reviewers to focus on?