Releases: Nick2bad4u/eslint-plugin-codex
Release list
v1.0.4
📜 Changelog
✨ What's Changed in v1.0.4
- Commit Range: ➡️
v1.0.3...v1.0.4
🛠️ Bug Fixes
-
5d21d2a— (scripts) Resolve Sonar reliability findings (3 files, +65, -28)- ⚡️ [perf] Parse documentation links through Remark AST traversal to eliminate regex backtracking and correctly ignore code nodes.
- 🐛 [fix] Sort generated rule names with localeCompare and normalize npm pack output without a nested ternary.
- 🎨 [style] Use raw template literals for generated Markdown escapes.
-
756da90— (languages) Support TOML language consumers (20 files, +75, -24)- 🐛 [fix] Declare toml/toml compatibility for every TOML-capable Codex rule while retaining js/js parser compatibility.
- 🧪 [test] Exercise the recommended TOML rules through eslint-plugin-toml's actual language implementation and keep preset metadata assertions synchronized.
- ➕ [build] Add eslint-plugin-toml as a direct development dependency for the cross-plugin integration contract.
Note
Release comparison: v1.0.3...v1.0.4
⭐ Contributors
Thanks to anyone who has 🧑💻 contributed.
This changelog was automatically generated with ⛰️ git-cliff.
v1.0.3
📜 Changelog
✨ What's Changed in v1.0.3
- Commit Range: ➡️
v1.0.2...v1.0.3
🛠️ Bug Fixes
-
2ec54e4— (github) Repair repository metadata contracts (2 files, +60, -146)- 🏷️ [fix] Replace unsupported pull-request title and body labeler predicates with the action's documented changed-file and head-branch match objects.
- 🔧 [chore] Cap file-derived labels and large-PR scanning while correcting repository configuration path coverage.
- 🔒️ [fix] Remove the invalid secret_scanning.yml custom-pattern placeholder; GitHub accepts only paths-ignore in that file and manages custom patterns in repository settings.
-
0b31fba— (eslint) Declare supported rule languages (46 files, +606, -411)- 🐛 [fix] Attach precise ESLint 10 language metadata to every Markdown, TOML, JSON, and shared hook rule so invalid cross-language configurations fail before rule execution.
- 🏷️ [refactor] Extend the typed rule creator and public plugin contract to retain language metadata despite the upstream TypeScript helper lag.
- ♻️ [refactor] Adapt rule listeners and helper control flow to the stricter shared ESLint configuration without changing diagnostics or preset membership.
- 🔧 [chore] Dogfood the local Codex plugin through the shared format-specific config layers and use explicit React JSX types in the documentation site.
- 🧪 [test] Verify every preset layer matches rule language declarations, exercise ESLint's incompatible-language rejection, preserve non-Codex AST behavior, and keep parser fuzz failures explicit.
🧪 Testing
40048e0— (rules) Cover extracted validation branches (2 files, +45, -0)- 🧪 [test] Exercise every malformed matcher-group, handler-list, handler, and missing-command diagnostic produced by the hook structure rule.
- 🧪 [test] Verify advisory hook checks ignore malformed groups safely while retaining valid command handlers.
- 🧪 [test] Cover per-tool MCP approval validation and non-table MCP server transport diagnostics exposed by the ESLint 10 refactor.
📦 Dependencies
c9d6024— (deps) Refresh npm 12 dependency graph (5 files, +26948, -22065)- ⬆️ [build] Upgrade the root and documentation dependency sets, including ESLint 10.8.1, TypeScript 6, Stryker 10, and the latest shared configuration packages.
- 🔒️ [build] Enforce npm 12 strict lifecycle-script allowlisting in the repository and refresh approved package versions in allowScripts.
- ➕ [build] Declare stylelint-formatter-pretty directly because the CSS lint scripts execute it and stylelint-config-nick2bad4u 2.x no longer supplies it transitively.
- 🔨 [build] Update every workspace during dependency refreshes without bypassing lifecycle-script policy, regenerate the npm 12.0.2 lockfile, and consume eslint-plugin-repo 1.0.11.
- 📝 [docs] Align the Docusaurus React type packages and package-manager declaration with the refreshed toolchain.
🛡️ Security
Note
Release comparison: v1.0.2...v1.0.3
⭐ Contributors
Thanks to anyone who has 🧑💻 contributed.
This changelog was automatically generated with ⛰️ git-cliff.
v1.0.2
📜 Changelog
✨ What's Changed in v1.0.2
- Commit Range: ➡️
v1.0.1...v1.0.2
🛠️ Bug Fixes
-
27cdd8d— 🐛 Exclude the local release commit from notes (#13) (5 files, +299, -2) -
26215ad— 🐛 Restrict Codex hook config matching (#11) (12 files, +187, -1054)
-
🐛 [fix] (hooks) Restrict Codex hook file matching
-
🧹 [chore] (tooling) Restore strict release verification
-
78deac2— (release) Generate notes after tagging (2 files, +39, -15) -
ac3464e— (release) Generate notes from unreleased commits (1 file, +1, -1)
👷 CI/CD
-
ab90720— 👷 Enforce clean npm 12 release installs (#12) (9 files, +154, -40) -
7e5e12f— (release) Guard git-cliff note generation (5 files, +42, -156)
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
-
0c89d94— ⬆️ [build] Update npm_and_yarn dependencies (1 file, +6, -6) -
05a5935— ⬆️ [build] Update npm_and_yarn dependencies (1 file, +3, -3) -
924b242— ⬆️ [build] Update npm_and_yarn dependencies (1 file, +3, -3) -
842a718— ⬆️ [build] Update npm_and_yarn dependencies (1 file, +7, -7) -
b4b6a9f— ⬆️ [build] Update npm_and_yarn dependencies (1 file, +6, -6) -
9c26fc6— ⬆️ [build] Update npm_and_yarn dependencies (1 file, +22, -22) -
9005ad4— (deps) Bump the dependabot-all group (7 files, +1626, -1335) -
8c25853— ⬆️ [build] Update npm_and_yarn dependencies (1 file, +3, -3) -
0d645f7— ⬆️ [build] Update npm_and_yarn dependencies (1 file, +13, -29)
New Contributors
- @dependabot[bot] made their first contribution in #10
Note
Release comparison: v1.0.1...v1.0.2
⭐ Contributors
Thanks to anyone who has 🧑💻 contributed.
This changelog was automatically generated with ⛰️ git-cliff.
v1.0.1
📜 Changelog
What's Changed in v1.0.1
This maintenance release updates the repository for npm 12 and tightens its static-analysis configuration. The public ESLint rule and preset surface is unchanged.
🧹 Tooling and maintenance
a358b00— Refresh npm 12 tooling, package-manager metadata, dependency versions, and the lifecycle-script allowlist.5c807d8— Normalize the repository-specific actionlint configuration and remove stale Knip dependency ignores.
📝 Documentation
07b3a1b— Refresh README project badges.
👷 CI/CD
9b4d32f— Disable unused Go caching in the trusted-publishing release job.
Full Changelog: v1.0.0...v1.0.1
v1.0.0
📜 Changelog
✨ What's Changed in v1.0.0
- Commit Range: ➡️
c9148ee...v1.0.0
✨ Features
c9148ee— Launch eslint-plugin-codex (246 files, +73904, -0)
🛠️ Bug Fixes
fe6957c— 🚨 [fix] (lint) Format scoped names portably (8 files, +13, -10)
🚨 [fix] Render scoped package names as TSDoc code spans so ESLint accepts them without escapes and Prettier produces the same output on Linux and Windows.
🧹 [chore] Apply the stable multiline comment form required by the documentation landing page formatter.
adea209— Harden Markdown content validation (5 files, +47, -11)
📦 Dependencies
-
2cbb552— (deps) Keep docs on supported TypeScript (1 file, +2, -0) -
5a09d18— (deps) Refresh actions and docs tooling (6 files, +36, -36)
📝 Documentation
d24da79— Add the rules landing route (7 files, +14, -9)
🧪 Testing
f7a440f— 🧪 [test] (parsers) Add property-based fuzz coverage (3 files, +265, -0)
🧪 [test] Exercise YAML frontmatter, Markdown link ranges, and hook JSON round-trips across 500 deterministic generated inputs.
🧪 [test] Run every plugin rule against generated Markdown, JSON, and TOML documents to catch parser crashes and fatal diagnostics.
➕ [chore] Add fast-check as a dev-only generator and raise aggregate branch coverage from 77.38% to 83.04%.
🧹 Chores
e95a9d1— 📦️ [chore] (package) Publish under the typpi scope (72 files, +119, -113)
📦️ [chore] Rename the public package and plugin metadata to @typpi/eslint-plugin-codex, declare public scoped publishing, and synchronize the lockfile and docs workspace identity.
📝 [docs] Update installation examples, generated rule pages, package links, site metadata, project copy, and contributor surfaces for the scoped package while preserving the GitHub repository and Pages identifiers.
🧪 [test] Assert the scoped runtime metadata and escape scoped names in TSDoc comments so the release gate remains warning-free.
👷 CI/CD
-
574779a— Disable caching for release installs (1 file, +1, -2) -
f6fee68— Make TOML formatting deterministic (2 files, +20, -1) -
c12da8e— Build plugin before static validation (1 file, +5, -5)
New Contributors
- @Nick2bad4u made their first contribution
⭐ Contributors
Thanks to anyone who has 🧑💻 contributed.
This changelog was automatically generated with ⛰️ git-cliff.