Skip to content

refactor: move the lint rules out to @qawolf/eslint-plugin-pom - #12

Merged
Jason Allen (JAllen2022) merged 1 commit into
mainfrom
jallen/move-lint-rules-to-eslint-plugin-pom
Aug 28, 2026
Merged

Jason Allen (JAllen2022) merged 1 commit into
mainfrom
jallen/move-lint-rules-to-eslint-plugin-pom

Conversation

@JAllen2022

@JAllen2022 Jason Allen (JAllen2022) commented Aug 4, 2026 •

Copy link
Copy Markdown
Contributor

Overview of Changes

The page-object lint rules landed here in #6 and #5. Moving them out to a dedicated @qawolf/eslint-plugin-pom package.

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.ts referenced 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/
  • the ./eslint-rules subpath export
  • the @types/eslint devDependency and the optional eslint peer
  • the src/eslintRules/** override in .eslintrc.cjs
  • the rule-authoring section of CONTRIBUTING.md

Note: #21 added require-value-import-for-created-page after this branch was cut. It goes away here with the rest, and it isn't in @qawolf/eslint-plugin-pom yet, so it needs porting there.

Version

0.6.1. Removing ./eslint-rules is 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 build

All pass, 44 tests (the rule suites went with the rules). dist/ no longer contains eslintRules/, so the removed export can't resolve.

Checklist

  • Changes follow the code style of this project
  • Self-review completed
  • Tests added/updated (or not applicable)
  • No breaking changes (or described below) — removes a published export, see Version

@JAllen2022
Jason Allen (JAllen2022) force-pushed the jallen/move-lint-rules-to-eslint-plugin-pom branch from a4c8845 to ad3c9d6 Compare August 28, 2026 18:47
@JAllen2022
Jason Allen (JAllen2022) merged commit 3644551 into main Aug 28, 2026
1 check passed
@JAllen2022
Jason Allen (JAllen2022) deleted the jallen/move-lint-rules-to-eslint-plugin-pom branch August 28, 2026 18:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants