diff --git a/notes/2025/2025-07-10.md b/notes/2025/2025-07-10.md new file mode 100644 index 0000000..8d34b45 --- /dev/null +++ b/notes/2025/2025-07-10.md @@ -0,0 +1,76 @@ +# 2025-07-10 ESLint TSC Meeting Notes + +## Transcript + +[`2025-07-10-transcript.md`](2025-07-10-transcript.md) + +## Attending + +- Nicholas C. Zakas (@nzakas) - TSC +- Francesco Trotta (@fasttime) - TSC + +@nzakas moderated, and @sam3k took notes. + +## Topics + +### Statuses + +* **@nzakas:** been working on a couple of RFCs (CSS variable tracking and rule language metadata), adding token methods to JSONSourceCode, and a bunch of build-related stuff (contributor pool report generation, automated baseline data). Opened PR for moving more types into `@eslint/core`: https://github.com/eslint/rewrite/pull/237 +* **@fasttime:** been working on switching performance tests to hyperfine, updating the multithread linting RFC, and reviewing issues and PRs. + +### RFC Duty update: + +* This week - @Nicholas C. Zakas +* July 14 - @fasttime +* July 21 - @mdjermanovic + +### [Change Request: internal `rule.meta.docs.recommended` type is leaked](https://github.com/eslint/rewrite/issues/234) + +**TSC Summary:** This issue reports that the internal type for `rule.meta.docs.recommended` in ESLint is too restrictive—it is typed as boolean | undefined, but some plugins (notably typescript-eslint) use other values (like strings or objects) for config generation. This causes TypeScript type errors when using defineConfig(), even though it works at runtime. + +**TSC Question:** What do we want to do here? Some options: +- Omit the recommended field from the type definition. +- Change its type to unknown (with a note that ESLint itself uses boolean). +- Use a union type to allow any value for recommended in configs. + +**Resolution:** We've agreed to set the type of `meta.docs.recommended` to `unknown`. + +### [feat: multithread linting](https://github.com/eslint/eslint/pull/19794) + +**TSC Summary:** The multithread linting PR is in progress with two remaining points to address before review. + +**TSC Question:** What is the status and timeline for completion? + +**Resolution:** @fasttime has two points to decide/work on before making this ready for review: +1. Emitting warning when concurrency is used inappropriately (e.g. because there aren't many files) +2. How to handle concurrency=1 + +@fasttime will post an updated description of the problem on the weekend and @mdjermanovic will participate in the discussion. + +### [Change Request: Autogenerated type definitions for rules](https://github.com/eslint/eslint/issues/18912) + +**TSC Summary:** This issue has been open for 9 months without a PR. Tanuj is assigned to work on autogenerated type definitions for rules. + +**TSC Question:** What is the status and approach for this issue? + +**Resolution:** @nzakas will ping Tanuj again to check on the status and approach. + +### [Contributor Pool June 2025](https://github.com/eslint/tsc-meetings/blob/main/notes/2025/2025-07-01-contributor-pool.md) + +- @xbinaryx: $1200 for everything +- @sethamus: $600 +- @TKDev7: $300 +- @Pixel998: $200 +- @SwetaTanwar: $500 (no-missing-link-fragments rule took a bunch of work) +- @jgoz: $100 +- @fisker: $100 +- @ota-meshi: $300 +- @remcohaszing: $200 (PR took longer than usual to complete) + +### Scheduled release for July 11th, 2025 + +**Action Items:** + +- @fasttime will do the release + - `eslint` + - `@eslint/js` \ No newline at end of file