Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR migrates the plugin/rule to typescript, alongside a variety of other "minor" changes that made the process easier. Some of these are worth confirming before moving forward.
Blocking discussion points
These are changes that change or remove behavior in a way that needs to be confirmed as "okay" before merging.
RuleTester
6-9. This is a bit odd to implement in typescript, so only 9 was implemented. Although, pulling the plugin in locally and re-running it on the original branch with 6-9 still passes all the tests. Even if it convolutes the code, should support be re-added for 6-9?headerMatches
. It was never (technically) actually used, and added to the cognitive overhead when reading the code. Although, if there's plans for future work with it, it should probably be added back. What do you want to do?tests/lib/rules/output.js
file. Was it being used for anything?noStyle2
and just usednoStyle1
instead since they were identical. Is that fine?vitest
instead ofmocha
. This is what most modern eslint plugins use, and it avoids some open issues with TS/mocha. Is that fine? Should we migrate back?TODO(): test fixed
comment in/staging/staging.spec.js
, as there are fixed tests. Was that meant for more explicit fixed tests?Non blocking changes
These are changes that are just format or readability changes, and don't really have any implications as far as behavior. Although, if you'd like any of these reverted- just let me know.
@typescript-eslint
cases
andresults
sub directories used instead of a flat directory.tests
directory to make integration easier.tests/utils/templates
.normalizeLineEndings
.package.json
by a minor.recommended
config which automatically adds the plugin.package.json
as a SOT for the name and version.Out of scope
Work or features that may be worth doing in the future, but are out of scope for this PR.