Skip to content

[pull] main from Comcast:main - #230

Merged
pull[bot] merged 2 commits into
code:mainfrom
Comcast:main
Aug 27, 2026
Merged

[pull] main from Comcast:main#230
pull[bot] merged 2 commits into
code:mainfrom
Comcast:main

Conversation

@pull

@pull pull Bot commented Aug 27, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

nstepien and others added 2 commits August 27, 2026 00:19
* Migrate from ESLint to oxlint

Replace ESLint with oxlint for JS/TS linting, keeping ESLint only for
markdown (`@eslint/markdown` uses ESLint's language plugin API, which
oxlint does not support).

`.oxlintrc.json` was generated by `@oxlint/migrate --type-aware
--with-nursery` and carries over 545 rules at their original `warn`
severity. `@eslint-react` and `sonarjs` are loaded as `jsPlugins`;
`typescript`, `react` and `vitest` use oxlint's native implementations,
so `typescript-eslint`, `eslint-plugin-react-hooks` and
`@vitest/eslint-plugin` are no longer needed.

Rules that could not be migrated:

- the 13 React Compiler rules (`react-hooks/purity`,
  `preserve-manual-memoization`, …) — oxlint only ships these as an
  experimental bundled `react/react-compiler` rule
- `@eslint-react/no-implicit-key`, `no-leaked-conditional-rendering` and
  `no-unused-props` — oxlint's JS plugin API cannot supply parser
  services, so these throw on every file
- `@typescript-eslint/naming-convention`, `prefer-destructuring`,
  `no-unused-private-class-members`, `require-atomic-updates`, `one-var`

Three suppressions were added for behavioural differences rather than
real defects: `sonarjs/no-redundant-optional` cannot see
`exactOptionalPropertyTypes` without type information, and
`vitest/no-conditional-expect` flags a helper that is not a test block.
The existing directive in `globals.d.ts` moved down a line because
oxlint reports the index signature where ESLint reported the interface.

`@eslint-react/component-hook-factories` was dropped: it does not exist
in that plugin and was silently ignored by ESLint because it was `off`.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>

* remove references to .agents

* yaml tweaks

* fix double lint

* settings tweaks

* tweak eslint usage

* disallow br

* add CLAUDE.md symlink

* re-enable typeAware

* enable typeCheck

* symlink -> file

* nude sonarjs

* tweak settings

* tweak rules

* fix CLAUDE.md

* sort rules

* review

* use default categories settings

* npm dedupe

* npm audit fix

* update packages, use ^

* couple tweaks

---------

Co-authored-by: Claude Opus 5 (1M context) <[email protected]>
@pull pull Bot locked and limited conversation to collaborators Aug 27, 2026
@pull pull Bot added the ⤵️ pull label Aug 27, 2026
@pull
pull Bot merged commit a6e576d into code:main Aug 27, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant