Releases: Nick2bad4u/eslint-plugin-json-schema-validator-2
Release list
v7.0.10
📜 Changelog
✨ What's Changed in v7.0.10
- Commit Range: ➡️
v7.0.9...v7.0.10
🧹 Chores
-
a3c38e2— Release v7.0.10 (2 files, +3, -3) -
d7efb93— 🧹 [chore] Refresh dependencies and npm compatibility (7 files, +460, -1091)
Add project-scoped install-script policy and sanitize inherited npm allow-scripts configuration for npm 12 nested installs.
Use the public ATTW pack CLI, preserve the ESLint 9 and 10 peer support contract, and refresh Node, documentation, development dependencies, and the lockfile.
👷 CI/CD
3dd1b79— 👷 [ci] Harden release tagging and refresh actions (3 files, +36, -4)
Verify the expected release tag exists, resolves to HEAD, and is the only tag used before git-cliff generates notes; authenticate GitHub enrichment.
Update setup-node to the verified v7.0.0 SHA across CI, docs deploy, and release workflows.
3872479— 👷 [ci] Disable setup-go cache without a module (1 file, +1, -0)
Note
Release comparison: v7.0.9...v7.0.10
⭐ Contributors
Thanks to anyone who has 🧑💻 contributed.
This changelog was automatically generated with ⛰️ git-cliff.
v7.0.9
📜 Changelog
✨ What's Changed in v7.0.9
- Commit Range: ➡️
v7.0.8...v7.0.9
🛠️ Bug Fixes
dabbbf8— 🚨 [fix] Remove source lint warnings and parse multiline fixtures (7 files, +45, -39)
🚨 [fix] Preserve String.raw and AJV regexp behavior without unsafe type assertions, shadowed bindings, or unsupported TSDoc tags.
🐛 [fix] Accept multiline inline configuration comments in Vue fixtures to close the CodeQL correctness finding.
📝 [docs] Regenerate TypeDoc coverage artifacts for the newly documented config-name type.
a4065be— 🐛 [fix] Resolve ESM worker paths from module URLs (3 files, +233, -16)
🐛 [fix] Prefer import.meta.url in ESM output so caller-global __filename bindings such as CommonJS node -e cannot redirect worker and schema resolution.
🧪 [test] Pack and install the built package in an isolated consumer, then exercise dynamic import from a CommonJS eval process and the require export.
🛡️ Security
f6c0158— 🔒️ [fix] Repair dependency and audit maintenance (5 files, +89, -378)
🔒️ [fix] Override vulnerable qs with 6.15.2, remove the unused vulnerable npm Gitleaks wrapper, and keep only exact tracked development advisory chains.
🐛 [fix] Sanitize inherited npm policy variables so production and development audit commands work from npm lifecycle scripts on Windows.
🔧 [chore] Consolidate the Gitleaks allowlist for 8.24 compatibility and add the combined dependency-update script.
🧪 Testing
6727b34— 🧪 [test] Install the ESLint peer in package smoke tests (1 file, +2, -0)
🧪 [test] Make the isolated consumer valid on clean CI hosts by explicitly installing the plugin's supported ESLint 9 lower bound before loading both exports.
🧹 Chores
-
2516758— Release v7.0.9 (2 files, +3, -3) -
abd698d— 🧹 [chore] Adopt shared tooling configs (19 files, +2778, -3579)
🧹 [chore] Replace copied NCU, JSCPD, and TypeDoc helpers with maintained shared packages and refresh tooling dependencies.
🐛 [fix] Preserve AJV, AST analysis, package validation, and documentation behavior under the upgraded lint and type stack.
🧪 [test] Keep intentional integration fixtures outside the aggregate Remark gate.
cd0ba1f— 🔧 [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.
79f7802— 🔧 [chore] Adopt shared validation configs (5 files, +166, -969)
🔧 [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
-
d0ff467— 👷 [ci] Upload coverage only after successful tests (1 file, +1, -1) -
9813d33— 👷 [ci] Harden release automation and update actions (4 files, +30, -17)
👷 [ci] Pin release-job Go tools, reject verification drift before versioning, and stage only intentional version metadata.
🐛 [fix] Accept npm 11 array and npm 12 object pack metadata when creating release assets.
📌 [ci] Refresh harden-runner, CodeQL, and GitHub release action SHAs to their verified tagged revisions.
Note
Release comparison: v7.0.8...v7.0.9
⭐ Contributors
Thanks to anyone who has 🧑💻 contributed.
This changelog was automatically generated with ⛰️ git-cliff.
v7.0.8
[7.0.8] - 2026-07-03
- Commit Range: ➡️
48eaa13...65c8110
🛡️ Security
48eaa13— 👷 [ci] Use shared workflow callers
👷 [ci] Switches the Dependabot auto-merge caller to workflow-templates@main and replaces local security and maintenance workflows with shared reusable callers.
⬆️ [build] Updates eslint-config-nick2bad4u to the published caller override version and records any peer dependency needed for the shared ESLint config to load.
🧹 Chores
v7.0.7
[7.0.7] - 2026-06-18
- Commit Range: ➡️
9561276...9db7174
📦 Dependencies
-
8cd5b9d— (deps-dev) [dependency] Update vite in the npm_and_yarn group across 1 directory (#2) -
96c5f14— (deps-dev) [dependency] Update esbuild
🛠️ Other Changes
chore(deps-dev): bump esbuild from 0.28.0 to 0.28.1 in the npm_and_yarn group across 1 directory
9561276— Update Codecov action to v7.0.0
🧹 Chores
🧹 [chore] Replace local npm-package-json-lint, Gitleaks, Yamllint, TSDoc, and TypeDoc config bodies with shared package-based configuration and repo-specific exceptions for private docs and generated fixtures.
👷 [ci] Install shared Gitleaks dependencies and native release lint tools so the expanded release:verify gate can run in GitHub Actions.
⬆️ [chore] Refresh direct dependency ranges, Node/npm version metadata, peer ESLint support, and workspace lockfile resolutions.
🚨 [fix] Align source, docs, fixtures, and workflow formatting with the updated shared lint stack while preserving parser/test behavior.
👷 CI/CD
v7.0.6
[7.0.6] - 2026-06-06
- Commit Range: ➡️
1ba237b...f65ec53
✨ Features
-
1ba237b— ✨ [feat] Enhance VS Code schema handling by removing enum constraints -
Introduced
removeDynamicVscodeSettingEnumsfunction to eliminate enum constraints from VS Code setting schemas. -
Added
removeEnumConstraintfunction to remove all enum-related properties from schema branches. -
Updated
sanitizeVscodeSchemato utilize the new enum removal functions. -
Modified test schemas to reflect changes in enum handling for
editor.defaultFormatter. -
Added assertions in tests to ensure proper schema loading and validation.
🧹 Chores
f65ec53— Release v7.0.6
v7.0.5
[7.0.5] - 2026-06-01
- Commit Range: ➡️
b586542...2cf7cae
✨ Features
-
b586542— ✨ [feat] Normalize VS Code schema handling and improve empty enum removal -
Introduce
sanitizeVscodeSchemafunction to clean up VS Code schemas by removing empty enum placeholders. -
Refactor
removeEmptyEnumto handle nested properties more efficiently. -
Update tests to validate normalization of workspace settings schemas and ensure compatibility with VS Code.
🧹 Chores
2cf7cae— Release v7.0.5
v7.0.4
[7.0.4] - 2026-05-31
- Commit Range: ➡️
a2c3175...37b9617
🧹 Chores
-
37b9617— Release v7.0.4 -
a2c3175— 🔧 [chore] Upgrade dependencies and refine code structure -
⬆️ Upgrade "type-fest" from ^5.6.0 to ^5.7.0 for improved type utilities.
-
⬆️ Upgrade "eslint-config-nick2bad4u" from ^1.2.3 to ^1.2.4 for better linting rules.
-
⬆️ Upgrade "knip" from ^6.14.2 to ^6.15.0 for enhanced code analysis.
-
⬆️ Upgrade "remark-config-nick2bad4u" from ^1.0.2 to ^1.0.3 for updated markdown linting.
-
⬆️ Upgrade "secretlint-config-nick2bad4u" from ^1.0.5 to ^1.1.0 for improved secret detection.
-
⬆️ Upgrade "stylelint-config-nick2bad4u" from ^1.0.14 to ^1.0.15 for better style linting.
-
⬆️ Upgrade "tsx" from ^4.22.3 to ^4.22.4 for updated TypeScript support.
-
🧹 Refactor "no-invalid.ts" by removing unnecessary ESLint disable comments for cleaner code.
v7.0.3
[7.0.3] - 2026-05-31
- Commit Range: ➡️
0e9e866...3203c64
📝 Documentation
-
0e9e866— 📝 [docs] Add documentation for flat config aliases and frontmatter support -
📝 Create
base.mdto describe the base flat config setup. -
📝 Create
flat-base.mdas a compatibility alias forconfigs.base. -
📝 Create
flat-frontmatter.mdas a compatibility alias forconfigs.frontmatter. -
📝 Create
flat-recommended.mdas a compatibility alias forconfigs.recommended. -
📝 Create
frontmatter.mdto detail the frontmatter flat config usage. -
📝 Create
recommended.mdto explain the recommended flat config behavior. -
🐛 [fix] Update
no-invalid.mdto improve formatting and clarity in examples. -
🔧 [refactor] Adjust comments in
schema.tsfor better readability.
🧹 Chores
3203c64— Release v7.0.3
v7.0.2
[7.0.2] - 2026-05-31
- Commit Range: ➡️
ff699d1...e5bc4e6
✨ Features
-
219f88b— ✨ [feat] (plugin) Update JsonSchemaValidatorPlugin type to extend ESLint.Plugin
✨ [feat] (validator) Enhance schema migration logging and error handling -
2145624— ✨ [feat] (config) Improve flat presets, cache defaults, and release metadata
✨ [feat] Scope recommended validation to structured data files
-
Add shared flat config file patterns for JSON, YAML, TOML, Vue, Markdown, Astro, and Svelte schema-bearing files.
-
Apply the recommended rule only to the structured file targets covered by the base config.
-
Rename flat config entries to stable plugin-style names such as json-schema-validator-2/base and json-schema-validator-2/recommended.
⚡️ [perf] Use standard cache directories for schema downloads
-
Resolve the default schema cache under node_modules/.cache/eslint-plugin-json-schema-validator-2 when available.
-
Fall back to a workspace-local .cache directory when package-level cache placement is not usable.
-
Remove the older package-local cached schemastore path from ignore and package metadata handling.
🏷️ [refactor] Tighten exported plugin metadata and public types
-
Expose explicit plugin, config, processor, metadata, and rule shapes for the default export.
-
Preserve ESLint plugin compatibility with a satisfies check while avoiding TypeDoc links to private implementation types.
-
Add processor metadata so ESLint and editor tooling can identify the frontmatter processor.
🐛 [fix] Address Sonar and release-readiness warnings
-
Use a localeCompare-backed comparator for sorted metadata assertions.
-
Add missing Copilot repository instructions so full lint no longer warns about the absent instructions file.
-
Keep rule metadata aligned with the package namespace and documentation URLs.
🧪 [test] Expand config, metadata, and cache coverage
-
Verify flat config names, recommended rule wiring, plugin metadata, processor metadata, and rule metadata.
-
Cover default cache directory behavior for node_modules cache placement and workspace fallback.
-
Update integration expectations for scoped recommended config behavior.
📝 [docs] Document preset behavior and cache location
-
Refresh getting-started and user-guide docs for the recommended config scope.
-
Document the new default cache location and fallback behavior.
-
Update no-invalid docs to reflect current schema cache behavior.
🧹 [chore] Verify release gate
- npm run release:verify
🧹 Chores
v7.0.1
[7.0.1] - 2026-05-30
- Commit Range: ➡️
1774cd5...a529326
✨ Features
-
f9e4376— ✨ [feat] (audit) Introduce npm audit scripts and vulnerability checks -
Add
audit:devandaudit:prodscripts to check for vulnerabilities in development and production dependencies. -
Create
scripts/check-dev-audit.mjsto validate audit findings against allowed vulnerabilities and advisory URLs.
📝 [docs] (readme) Update rules table generation in README
-
Refactor
sync-readme-rules-table.mjsto improve table formatting and structure. -
Change function names for clarity and enhance markdown table generation.
🚜 [refactor] (plugin) Improve type definitions and documentation
-
Add JSDoc comments to clarify exported types in
src/plugin.ts. -
Update type definitions for better clarity and maintainability.
🐛 [fix] (rules) Ensure proper validation for data-parser services
- Add checks in
src/rules/no-invalid.tsto ensure that the rule only validates when appropriate parser services are available.
🧪 [test] (meta) Enhance rule metadata validation tests
-
Implement comprehensive checks for rule metadata in
test/src/meta.test.tsto ensure all rules expose complete ESLint metadata. -
Add tests for missing documentation files and validate recommended rule configurations.
🧹 [chore] (tsconfig) Include new audit script in TypeScript configuration
-
Update
tsconfig.js.jsonto includescripts/check-dev-audit.mjsfor type checking. -
fc5a6e1— ✨ [feat] Update ESLint and add custom HTTP module tests -
Upgrade ESLint version to ^10.4.1 in package.json and package-lock.json
-
Introduce new test files for frontmatter and YAML AST processing
-
Implement custom HTTP modules for testing various scenarios
-
Add tests for loading JSON data, handling invalid exports, and caching behavior
-
d18676c— ✨ [feat] Update Vitest root configuration in VSCode settings -
1111715— ✨ [feat] Add schema validation feature batch
✨ [feat] Enable Ajv standard formats, YAML language-server schema comments, configurable remote schema cache settings with a 30-day default TTL, and opt-in most-specific validation diagnostics.
✨ [feat] Add a frontmatter processor/config so Markdown, MDX, and MDC YAML frontmatter can be validated through virtual *.frontmatter.yaml files without bloating no-invalid.
💄 [style] Refresh the Docusaurus landing page, live badge strip, and sidebar color-bar styling to match the shared plugin site pattern.
🧪 [test] Cover schema cache settings, YAML comment schema resolution, most-specific diagnostics, Ajv formats, and frontmatter processor integration.
📝 [docs] Document the new options, SchemaStore cache behavior, custom schema setup, frontmatter config, and original plugin lineage.
-
6dccb09— ✨ [feat] Enhance rule metadata and validation for no-invalid rule -
Introduced detailed metadata for the no-invalid rule, including dialects, frozen status, and recommended usage.
-
Updated error reporting to include dynamic messages for validation errors.
-
Changed rule type from suggestion to problem to better reflect its purpose.
-
Refactored rule creation to enforce metadata consistency, ensuring ruleName and ruleId match expected values.
-
Removed deprecated interfaces and replaced them with a more robust RuleDefinition structure.
-
Added support for additional languages in rule documentation.
-
2b34ee5— ✨ [feat] (analytics) Add Google Tag Manager and gtag tracking IDs -
f95d47d— ✨ [feat] (no-invalid) Add metadata for deprecation and suggestions -
Mark the rule as not deprecated
-
Indicate that the rule does not have suggestions
-
9bc85ee— ✨ [feat] Enhance test suite and refactor code structure -
Refactor JS AST tests for improved readability and maintainability
-
Update HTTP client tests to streamline request handling and assertions
-
Improve rules test suite for better validation of rule names and messages
-
Refactor utility functions for loading test cases and managing configurations
-
Ensure consistent formatting and indentation across all test files
-
5246270— ✨ [feat] Rename plugin to eslint-plugin-json-schema-validator-2 -
Updated all references from eslint-plugin-json-schema-validator to eslint-plugin-json-schema-validator-2 across configuration, documentation, and source files.
-
Adjusted package.json and package-lock.json to reflect the new package name.
-
Modified README, CHANGELOG, and CONTRIBUTING files to align with the new naming convention.
-
Updated ESLint rule identifiers and imports in all relevant files to ensure compatibility with the new plugin name.
-
Ensured that all documentation links and examples point to the new plugin name for clarity and consistency.
-
f8dc824— ✨ [feat] Update plugin exports and build process -
🛠️ Change type declaration entrypoint from
plugin.mjstoplugin.jsfor consistency -
🔧 Update build scripts to use
esbuildfor CommonJS output -
🧹 Remove
tsdownconfiguration and replace with TypeScript compiler for building -
📝 Adjust type declaration file paths to use
.d.tsinstead of.d.mts -
🔄 Refactor imports in various scripts to align with new file structure
-
🧹 Clean up unused code and improve module resolution logic
📦 Dependencies
-
eb433aa— (deps) Update dependency tsdown to ^0.21.0 (#488) -
c6a2215— (deps) Update dependency @changesets/changelog-github to ^0.6.0 (#487) -
3dd8db1— (deps) Update dependency @shikijs/vitepress-twoslash to v4 (#485) -
1261215— (deps) Update dependency c8 to v11 (#484) -
846d365— (deps) Update dependency @types/eslint-scope to v9 (#483) -
1774cd5— (deps) Update dependency eslint-plugin-node-dependencies to v2 (#482)
🛡️ Security
daf4945— (deps) Update dependency minimatch to v10.2.3 [security] (#486)
🛠️ Other Changes
62bc254— 7.0.0
📝 Documentation
-
1c7eada— 📝 [docs] (rules) Update documentation for no-invalid rule and overview -
📝 Enhance
no-invalid.mdwith support details for JSON, JSONC, JSON5, YAML, TOML, JavaScript object exports, and Markdown-family YAML frontmatter. -
📝 Add links to user guide and project README for advanced configuration examples.
-
📝 Revise
overview.mdto clarify the rule catalog and provide guidance on getting started with the plugin. -
📝 Update
index.mdin the user guide to reflect changes in Node.js version requirements and configuration options. -
📝 Improve clarity in command line usage instructions for ESLint, emphasizing the need for explicit globs.
-
📝 Add FAQ section in the user guide addressing SchemaStore usage and Markdown frontmatter validation.
🚜 [refactor] (scripts) Refactor various scripts for improved readability and functionality
- 🚜 Refactor
attw-pack-check.mjsto introduce a utility function for decoding tar strings. - 🚜 Simplify regex patterns in
check-doc-links.mjsfor better accuracy in link mat...