github Nick2bad4u/eslint-plugin-typefest v1.5.0

9 hours ago

๐Ÿ“œ Changelog

โœจ What's Changed in v1.5.0

โœจ Features

  • 6a367c2 โ€” (rules) Add prefer-ts-extras-assert (17 files, +802, -5)

โœจ [feat] Add R127 to detect exact negated-condition guards that throw the unshadowed global Error with an omitted or static string message.

๐Ÿฆบ [feat] Keep migrations suggestion-only, preserve empty Error messages explicitly, reject computed messages and alternate or multi-statement branches, and withhold suggestions when comments could be removed.

๐Ÿ”ง [chore] Register the rule in strict, all, experimental, and ts-extras type-guard surfaces while leaving recommended behavior unchanged for minor-release compatibility.

๐Ÿงช [test] Cover imports, aliases, shadowing, error classes, comments, evaluation timing, fixtures, parser properties, metadata, presets, and generated contract snapshots.

๐Ÿ“ [docs] Document the exact matcher boundaries, suggestion safety rationale, flat-config usage, upstream assert behavior, and regenerated rule matrices.

๐Ÿงช Testing

  • cfe989a โ€” (ci) Extend parse-safety audit timeout (1 file, +1, -1)

Give the filesystem-wide parse-safety coverage audit enough time under Windows coverage instrumentation.

๐Ÿงน Chores

  • a88460c โ€” Release v1.5.0 (2 files, +3, -3)

  • d664ac7 โ€” (tooling) Adopt shared package configs (51 files, +1791, -3799)

Move NCU, JSCPD, TypeDoc, and the remaining validation tools onto maintained shared presets, refresh dependencies, and keep generated fixtures aligned with the current formatter.

Validated with npm ci --force, release:verify, lint:all, 4,000-plus tests plus typechecks/docs/package, Lychee smoke, Actionlint, recursive script graph, sync checks, and diff audits.

  • 928aef8 โ€” ๐Ÿ”ง [chore] Keep JSCPD and Lychee out of lint all (1 file, +1, -1)

๐Ÿ”ง [chore] Leave the dedicated JSCPD and Lychee scripts available while keeping aggregate CI lint runs focused on existing gates.

  • 786273b โ€” ๐Ÿ”ง [chore] Adopt shared validation configs (5 files, +159, -494)

๐Ÿ”ง [chore] Wire JSCPD, git-cliff, and Lychee through shared config packages.

๐Ÿ‘ท [ci] Point release-note generation at the shared git-cliff config where workflows invoke git-cliff directly.

๐Ÿ‘ท CI/CD

  • fc635d2 โ€” (npm) Permit declared npm bootstrapping (1 file, +1, -1)

  • d3c37b1 โ€” (npm) Bootstrap declared npm version (4 files, +50, -0)

๐Ÿ‘ท [ci] Let setup-node query its cache under the bundled npm 11 with step-scoped force, then install the exact npm version declared by packageManager before project commands run.

๐Ÿ”ง [chore] Apply the bootstrap consistently to matrix CI, ESLint 9 compatibility, Docusaurus deployment, release publishing, and IndexNow workflows while retaining npm caching.

  • 2a1b598 โ€” (release) Guard git-cliff note generation (8 files, +139, -264)

Validate the authoritative release tag at HEAD immediately before git-cliff and export GitHub authentication for enriched notes. Standardize Actionlint configuration and direct package CLI usage where applicable.

๐Ÿ“ฆ Dependencies

  • 7d0b33f โ€” (deps) Refresh dependencies for npm 12 (27 files, +1128, -2196)

โฌ†๏ธ [build] Upgrade direct, workspace, transitive, and SHA-pinned workflow dependencies; synchronize Node 26.5.0, npm 12.0.1, ESLint peers, and the lockfile.

๐Ÿ”’๏ธ [fix] Override vulnerable transitive tooling packages with audited fixed versions while preserving separate Mermaid UUID resolution.

๐Ÿ”ง [chore] Replace the Linux-only Rspack binding, define package-scoped install-script approvals, make dependency updates npm 12-compatible, and repair preset matrix write generation.

๐Ÿšจ [fix] Align existing source and tests with shared ESLint ordering rules, satisfy Mermaid's axis schema, and exclude generated Stryker, Docusaurus, and temp output from repository scanners.

Note

Release comparison: v1.4.0...v1.5.0

โญ Contributors

Thanks to anyone who has ๐Ÿง‘โ€๐Ÿ’ป contributed.

This changelog was automatically generated with โ›ฐ๏ธ git-cliff.

Don't miss a new eslint-plugin-typefest release

NewReleases is sending notifications on new releases.