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 matching. - 🚜 Enhance error handling in
generate-devtools-workspace-metadata.mjswith a dedicated function for formatting unknown errors. - 🚜 Improve logging in
lint-actionlint.mjsto provide clearer output regarding excluded files. - 🚜 Refactor
remark-lint-rule-doc-headings.mjsto streamline heading validation logic and improve regex patterns. - 🚜 Update
sync-node-version-files.mjsto modularize version argument parsing. - 🚜 Refactor
sync-readme-rules-table.mjsto usereplaceAllfor normalization of line endings.
⚡️ [perf] (src) Optimize no-invalid rule implementation
- ⚡️ Introduce a new function
optionSchemaToValidatorto streamline schema validation logic. - ⚡️ Improve performance by reducing redundant checks and enhancing the handling of schema paths.
- ⚡️ Update types in
types.tsto simplify the rule context and improve type safety.
🧪 [test] (utils) Update test utilities for better fixture handling
- 🧪 Refactor test utility functions to improve readability and maintainability.
- 🧪 Introduce new helper functions for prepending and replacing fixture filenames in test cases.
🎨 Styling
-
62dd3f5— 🎨 [style] Update logo file references in manifest.json -
Removed the old logo file
logo_192x192.pngas it has been deleted. -
Updated references in
manifest.jsonto point to the new logo fileslogo-192x192.pngandlogo-512x512.png. -
Ensured all icon references for different sizes are consistent with the new naming convention.
🧪 Testing
d047b42— 🧪 [test] Add full schema validation pipeline fixtures
🧪 [test] Add a fixture-backed ESLint integration test that runs lintFiles over real files
-
Covers JSON, JSONC, JSON5, YAML, YML, TOML, JS exports, Vue custom blocks, and Markdown frontmatter
-
Verifies both valid and invalid examples for every supported file kind
-
Uses a shared local JSON Schema fixture to prove configured schema loading works through the full ESLint pipeline
🦺 [test] Cover schema discovery paths in the integration fixture
-
Exercises $schema discovery in JSON, JSONC, JSON5, TOML, and YML files
-
Exercises yaml-language-server schema comments in YAML files
-
Verifies Vue i18n custom blocks and Markdown frontmatter virtual files are matched by schema fileMatch patterns
🙈 [chore] Ignore local temporary schema cache output
- Keeps generated .temp schema cache files out of the working tree