[1.0.2] - 2026-04-27
๐ก๏ธ Security
-
2e6ef22โ ๐ง [chore] Update dependencies and improve installation commands -
Updated
update-depsscript to usenpm update --workspaces --forcefor better dependency management. -
Upgraded various
@secretlintpackages from^12.3.0to^12.3.1for improved functionality and bug fixes. -
Updated
eslint-plugin-github-actions-2from^1.1.0to^1.1.1for minor improvements. -
Upgraded
git-clifffrom^2.12.0to^2.13.1for enhanced features. -
Updated
postcssfrom^8.5.10to^8.5.12for better performance and compatibility. -
Upgraded
secretlintfrom^12.3.0to^12.3.1for improved security checks. -
Updated
stylelint-define-configfrom^17.8.0to^17.9.0for better configuration options.
Signed-off-by: Nick2bad4u 20943337+Nick2bad4u@users.noreply.github.com
9b0461bโ โก๏ธ [perf] (file-io) Add file content cache to readTextFileIfExists; migrate rules off bare readFileSync
โก๏ธ [perf] (repository-text-files) Add in-process file content cache to readTextFileIfExists
-
Introduces a module-level
Map<string, null | string>cache so each absolute file path is read from disk at most once per ESLint process -
Cache stores
nullfor files that don't exist or can't be read, avoiding repeated failed syscalls -
Adds exported
clearFileContentCache()for test isolation โ called between test runs to reset state -
Documents caching semantics and null-return contract in JSDoc
๐ [fix] (repo-file-rule) Replace incomplete local defaultTriggerFileNames with canonical providerRuleTriggerFileNames
-
Removes hardcoded
["eslint.config.js", "eslint.config.mjs", "package.json"]constant that was missingeslint.config.tsandeslint.config.cjs -
Imports and falls back to
providerRuleTriggerFileNamesfromconfig-file-scanner.tsโ the single source of truth for trigger files -
Eliminates a silent coverage gap: file-presence rules were not triggering on
.tsand.cjsESLint configs
๐ [fix] (config-file-scanner) Add eslint.config.cjs to providerRuleTriggerFileNames
-
eslint.config.cjsis a valid ESLint Flat Config entrypoint and was missing from the canonical trigger set -
All 90+ rules that use
providerRuleTriggerFileNamesnow correctly activate when linting CJS flat config files
โป๏ธ [refactor] (rules) Migrate 43 rules from local trigger-file sets to shared providerRuleTriggerFileNames
-
Removes per-rule
const triggerFileNames = new Set([...])declarations across all affected rule files -
Replaces local set checks with
setHas(providerRuleTriggerFileNames, lintedFileName) -
Adds
import { providerRuleTriggerFileNames } from "../_internal/config-file-scanner.js"where missing -
Covers: require-bitbucket-pipelines-, require-codeowners-reviewable-patterns, require-dependabot-, require-digitalocean-, require-dockerfile-, require-dockerignore-file, require-forgejo-actions-, require-github-, require-gitlab-ci-, require-google-cloud-build-, require-license-spdx-identifier, require-netlify-, require-pr-template-checklist-items, require-readme-, require-security-policy-contact-channel
โป๏ธ [refactor] (rules) Migrate bare readFileSync IIFE patterns to readTextFileIfExists
-
Replaces inline
try { readFileSync(...) } catch { return null }blocks withreadTextFileIfExists(filePath) -
Removes
readFileSyncfromnode:fsimports in all migrated files; addsreadTextFileIfExiststo repository-text-files imports -
Fixes a TOCTOU race in
require-bitbucket-pipelines-pull-requests-target-brancheswhereexistsSyncwas checked before reading -
Affected: require-bitbucket-pipelines-clone-depth, require-bitbucket-pipelines-default-pipeline, require-bitbucket-pipelines-image-pinned-tag, require-bitbucket-pipelines-max-time, require-bitbucket-pipelines-pull-requests, require-bitbucket-pipelines-step-name, require-codeowners-reviewable-patterns, require-forgejo-actions-job-timeout-minutes, require-forgejo-actions-no-write-all-permissions, require-forgejo-actions-pinned-sha, require-forgejo-actions-workflow-permissions, require-github-actions-workflow-name, require-github-issue-template-labels, require-gitlab-ci-default-timeout, require-gitlab-ci-rules-over-only-except, require-gitlab-ci-security-scanning, require-gitlab-ci-stages, require-license-spdx-identifier, require-pr-template-checklist-items, require-security-policy-contact-channel
๐ฅ [refactor] (presets) Remove GitHub-specific rules from the recommended preset
-
require-dependabot-schedule: set
recommended: false, removed"repoPlugin.configs.recommended"from repoConfigs -
require-codeowners-reviewable-patterns: set
recommended: false, removed"repoPlugin.configs.recommended"from repoConfigs -
Both rules remain active in
strict,github, andallpresets โ only the platform-agnostic recommended preset is narrowed
๐ [docs] Regenerate preset matrix and README rules table to reflect all changes
-
Re-ran
sync:presets-rules-matrix:writeโ updates docs/rules/presets/recommended.md and presets/index.md -
Re-ran
sync:readme-rules-table:updateโ refreshes README.md preset columns for both affected rules
๐งช [test] (config-file-scanner) Add eslint.config.cjs to trigger-set test coverage
Signed-off-by: Nick2bad4u 20943337+Nick2bad4u@users.noreply.github.com
๐ ๏ธ Other Changes
889855eโ ๐ [release] [dependency] Update version 1.0.1 in package.json and package-lock.json
Signed-off-by: Nick2bad4u 20943337+Nick2bad4u@users.noreply.github.com
๐งน Chores
-
332a9e4โ Release v1.0.2 -
9534b0dโ ๐งน [chore] Update update-deps script formatting for consistency
Signed-off-by: Nick2bad4u 20943337+Nick2bad4u@users.noreply.github.com