Repository navigation
refactor: move the lint rules out to @qawolf/eslint-plugin-pom - #12
Merged
Jason Allen (JAllen2022) merged 1 commit intoAug 28, 2026
Merged
Conversation
Goran Gajic (gorangajic)
approved these changes
Aug 28, 2026
Jason Allen (JAllen2022)
force-pushed
the
jallen/move-lint-rules-to-eslint-plugin-pom
branch
from
August 28, 2026 18:47
a4c8845 to
ad3c9d6
Compare
Jason Allen (JAllen2022)
deleted the
jallen/move-lint-rules-to-eslint-plugin-pom
branch
August 28, 2026 18:50
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Overview of Changes
The page-object lint rules landed here in #6 and #5. Moving them out to a dedicated
@qawolf/eslint-plugin-pompackage.Two reasons:
Release cadence. This is the POM runtime library. Adding or tweaking a lint rule meant cutting a release of the runtime, which couples two things that change at completely different rates.
ESLint was leaking into this package's public API. The emitted
.d.tsreferenced types from an optional peer dependency. In the consumer that specifier resolved to a different ESLint major than the one it was typed against, which needed a type assertion on their side to work around. A dedicated plugin can just depend on ESLint properly and the problem disappears.Removed:
src/eslintRules/./eslint-rulessubpath export@types/eslintdevDependency and the optionaleslintpeersrc/eslintRules/**override in.eslintrc.cjsCONTRIBUTING.mdNote: #21 added
require-value-import-for-created-pageafter this branch was cut. It goes away here with the rest, and it isn't in@qawolf/eslint-plugin-pomyet, so it needs porting there.Version
0.6.1. Removing./eslint-rulesis technically a break, but nothing consumes it — the only consumer was an unmerged draft on the platform side, which will point at the new package instead.Testing
npm ci npm run tsc:check npm run lint npm test npm run buildAll pass, 44 tests (the rule suites went with the rules).
dist/no longer containseslintRules/, so the removed export can't resolve.Checklist