Skip to content

Commit

Permalink
fix(core): Make JSON Schemas at packages/core/src/ruleset/meta valid
Browse files Browse the repository at this point in the history
Plus add a GitHub Action that uses `sourcemeta/jsonschema` to perform
some basic smoke tests to prevent regressions.

Fixes: #2787
Signed-off-by: Juan Cruz Viotti <[email protected]>
  • Loading branch information
jviotti committed Feb 25, 2025
1 parent cb7792c commit cdeb563
Show file tree
Hide file tree
Showing 6 changed files with 32 additions and 11 deletions.
23 changes: 23 additions & 0 deletions .github/workflows/jsonschema.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Check JSON Schemas

on:
pull_request:
branches:
- master
- develop

jobs:
jsonschema-check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@main
- uses: sourcemeta/[email protected]
- run: jsonschema metaschema --verbose packages/core/src/ruleset/meta/*.json
- run: jsonschema lint --verbose packages/core/src/ruleset/meta/*.json

# As a smoke test to ensure the schemas at least reference each other well
- run: >
jsonschema bundle --verbose
packages/core/src/ruleset/meta/ruleset.schema.json
--resolve packages/core/src/ruleset/meta
--ignore packages/core/src/ruleset/meta/js-extensions.json
7 changes: 3 additions & 4 deletions packages/core/src/ruleset/meta/js-extensions.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "@stoplight/spectral-core/meta/extensions",
"$defs": {
"Extends": {
Expand All @@ -20,13 +20,12 @@
{
"type": "array",
"minItems": 2,
"additionalItems": false,
"items": [
"items": false,
"prefixItems": [
{
"$ref": "ruleset"
},
{
"type": "string",
"enum": ["off", "recommended", "all"],
"errorMessage": "allowed types are \"off\", \"recommended\" and \"all\""
}
Expand Down
6 changes: 3 additions & 3 deletions packages/core/src/ruleset/meta/json-extensions.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "@stoplight/spectral-core/meta/extensions",
"$defs": {
"Extends": {
Expand All @@ -18,8 +18,8 @@
{
"type": "array",
"minItems": 2,
"additionalItems": false,
"items": [
"items": false,
"prefixItems": [
{
"type": "string"
},
Expand Down
3 changes: 1 addition & 2 deletions packages/core/src/ruleset/meta/rule.schema.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "@stoplight/spectral-core/meta/rule.schema",
"$defs": {
"Then": {
Expand Down Expand Up @@ -75,7 +75,6 @@
},
"type": {
"enum": ["style", "validation"],
"type": "string",
"errorMessage": "allowed types are \"style\" and \"validation\""
},
"extensions": {
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/ruleset/meta/ruleset.schema.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "@stoplight/spectral-core/meta/ruleset.schema",
"type": "object",
"additionalProperties": false,
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/ruleset/meta/shared.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "@stoplight/spectral-core/meta/shared",
"$defs": {
"Formats": {
Expand Down

0 comments on commit cdeb563

Please sign in to comment.