From 8f564734ebb4e057cfc25d85bf60b9cf62dba8f6 Mon Sep 17 00:00:00 2001
From: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
Date: Fri, 28 Aug 2026 01:26:20 +0000
Subject: [PATCH 01/36] Migrated UnifiedJS to draft-07 (#6030)
Signed-off-by: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
---
src/schema-validation.jsonc | 9 +++--
src/schemas/json/mdxlintrc.json | 30 ++------------
src/schemas/json/rehyperc.json | 36 +++--------------
src/schemas/json/remarkrc.json | 70 +++++++++++++++++++++++----------
4 files changed, 65 insertions(+), 80 deletions(-)
diff --git a/src/schema-validation.jsonc b/src/schema-validation.jsonc
index d2366e2594e..38c9fd0ea03 100644
--- a/src/schema-validation.jsonc
+++ b/src/schema-validation.jsonc
@@ -158,7 +158,6 @@
"lerna.json",
"libman.json",
"lintstagedrc.schema.json",
- "mdxlintrc.json",
"metricshub.json",
"metricshub-connector.json",
"minecraft-advancement.json",
@@ -215,8 +214,6 @@
"putout.json",
"pyrseas-0.8.json",
"pylock.json",
- "rehyperc.json",
- "remarkrc.json",
"renovate-39.json",
"renovate-40.json",
"renovate-41.json",
@@ -1306,6 +1303,9 @@
"maturin.json": {
"unknownFormat": ["uint16"]
},
+ "mdxlintrc.json": {
+ "externalSchema": ["remarkrc.json"]
+ },
"minecraft-advancement.json": {
"externalSchema": ["base.json"]
},
@@ -1501,6 +1501,9 @@
"pep561-stub-name"
]
},
+ "rehyperc.json": {
+ "externalSchema": ["remarkrc.json"]
+ },
"renovate-41.json": {
"unknownKeywords": ["allowComments", "x-renovate-version"]
},
diff --git a/src/schemas/json/mdxlintrc.json b/src/schemas/json/mdxlintrc.json
index f0e273cb238..e15189c6427 100644
--- a/src/schemas/json/mdxlintrc.json
+++ b/src/schemas/json/mdxlintrc.json
@@ -1,34 +1,10 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/mdxlintrc.json",
"additionalProperties": false,
- "id": "https://json.schemastore.org/mdxlintrc.json",
"properties": {
"plugins": {
- "description": "The plugins field, related to plugins in options, has either an array of plugin names (or paths) or plugin–options tuples, or an object mapping plugins to their options.\nPlugin options can be false, which specifies that a plugin should not be used. In all other cases, they are treated as an object, and merged by the cascade. Thus, it's possible to specify part of the options from one configuration file, and overwrite or extend it from another file.",
- "oneOf": [
- {
- "type": "array",
- "items": {
- "oneOf": [
- {
- "type": "string"
- },
- {
- "type": "array",
- "additionalItems": true,
- "items": [
- {
- "type": "string"
- }
- ]
- }
- ]
- }
- },
- {
- "type": "object"
- }
- ]
+ "$ref": "remarkrc.json#/properties/plugins"
},
"settings": {
"type": "object",
diff --git a/src/schemas/json/rehyperc.json b/src/schemas/json/rehyperc.json
index 18b0347c144..6824f899c07 100644
--- a/src/schemas/json/rehyperc.json
+++ b/src/schemas/json/rehyperc.json
@@ -1,34 +1,10 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/rehyperc.json",
"additionalProperties": false,
- "id": "https://json.schemastore.org/rehyperc.json",
"properties": {
"plugins": {
- "description": "The plugins field, related to plugins in options, has either an array of plugin names (or paths) or plugin–options tuples, or an object mapping plugins to their options.\nPlugin options can be false, which specifies that a plugin should not be used. In all other cases, they are treated as an object, and merged by the cascade. Thus, it's possible to specify part of the options from one configuration file, and overwrite or extend it from another file.",
- "oneOf": [
- {
- "type": "array",
- "items": {
- "oneOf": [
- {
- "type": "string"
- },
- {
- "type": "array",
- "additionalItems": true,
- "items": [
- {
- "type": "string"
- }
- ]
- }
- ]
- }
- },
- {
- "type": "object"
- }
- ]
+ "$ref": "remarkrc.json#/properties/plugins"
},
"settings": {
"type": "object",
@@ -36,7 +12,7 @@
"properties": {
"fragment": {
"description": "Specify whether to parse a fragment, instead of a complete document. In document mode, unopened html, head, and body elements are opened in just the right places.",
- "type": ["boolean"],
+ "type": "boolean",
"default": false
},
"space": {
@@ -46,12 +22,12 @@
},
"emitParseErrors": {
"description": "Emit parse errors while parsing on the vfile.\n\nSetting this to true starts emitting HTML parse errors.\n\nSpecific rules can be turned off by setting them to false (or 0). The default, when emitParseErrors: true, is true (or 1), and means that rules emit as warnings. Rules can also be configured with 2, to turn them into fatal errors.",
- "type": ["boolean"],
+ "type": "boolean",
"default": false
},
"verbose": {
"description": "Patch extra positional information. If specified, the following element:",
- "type": ["boolean"],
+ "type": "boolean",
"default": false
},
"entities": {
diff --git a/src/schemas/json/remarkrc.json b/src/schemas/json/remarkrc.json
index 78006120dcb..fc9f95316fe 100644
--- a/src/schemas/json/remarkrc.json
+++ b/src/schemas/json/remarkrc.json
@@ -1,32 +1,62 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/remarkrc.json",
"additionalProperties": false,
- "id": "https://json.schemastore.org/remarkrc.json",
- "properties": {
- "plugins": {
- "description": "The plugins field, related to plugins in options, has either an array of plugin names (or paths) or plugin–options tuples, or an object mapping plugins to their options.\nPlugin options can be false, which specifies that a plugin should not be used. In all other cases, they are treated as an object, and merged by the cascade. Thus, it's possible to specify part of the options from one configuration file, and overwrite or extend it from another file.",
+ "definitions": {
+ "partialPluginOptions": {
"oneOf": [
{
- "type": "array",
- "items": {
- "oneOf": [
- {
- "type": "string"
- },
- {
- "type": "array",
- "additionalItems": true,
- "items": [
- {
+ "type": "string"
+ },
+ {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "boolean"
+ }
+ }
+ }
+ ]
+ },
+ "pluginArray": {
+ "type": "array",
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/definitions/partialPluginOptions"
+ },
+ {
+ "type": "array",
+ "items": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/partialPluginOptions"
+ },
+ {
+ "type": "array",
+ "items": {
"type": "string"
}
- ]
- }
- ]
+ }
+ ]
+ }
}
+ ]
+ }
+ },
+ "pluginObject": {
+ "type": "object"
+ }
+ },
+ "properties": {
+ "plugins": {
+ "description": "The plugins field, related to plugins in options, has either an array of plugin names (or paths) or plugin–options tuples, or an object mapping plugins to their options.\nPlugin options can be false, which specifies that a plugin should not be used. In all other cases, they are treated as an object, and merged by the cascade. Thus, it's possible to specify part of the options from one configuration file, and overwrite or extend it from another file.",
+ "oneOf": [
+ {
+ "$ref": "#/definitions/pluginArray"
},
{
- "type": "object"
+ "$ref": "#/definitions/pluginObject"
}
]
},
From 0cb7fee4fae9e0121ade31bbc3ae8ce67acee3e4 Mon Sep 17 00:00:00 2001
From: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
Date: Fri, 28 Aug 2026 01:31:16 +0000
Subject: [PATCH 02/36] Migrated ninjs-*.json to draft-07 (#6037)
Signed-off-by: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
---
src/schema-validation.jsonc | 2 -
src/schemas/json/ninjs-1.0.json | 4 +-
src/schemas/json/ninjs-1.1.json | 4 +-
src/schemas/json/ninjs-1.2.json | 4 +-
src/schemas/json/ninjs-1.3.json | 4 +-
src/schemas/json/ninjs-1.4.json | 31 +++++++------
src/schemas/json/ninjs-2.0.json | 79 ++++++++++++++++-----------------
7 files changed, 63 insertions(+), 65 deletions(-)
diff --git a/src/schema-validation.jsonc b/src/schema-validation.jsonc
index 38c9fd0ea03..d85d62d37e4 100644
--- a/src/schema-validation.jsonc
+++ b/src/schema-validation.jsonc
@@ -173,8 +173,6 @@
"nest-cli.json",
"netlify.json",
"nightwatch.json",
- "ninjs-1.4.json",
- "ninjs-2.0.json",
"now.json",
"npmpackagejsonlintrc.json",
"nswag.json",
diff --git a/src/schemas/json/ninjs-1.0.json b/src/schemas/json/ninjs-1.0.json
index ae37440b99a..1c9403444e3 100644
--- a/src/schemas/json/ninjs-1.0.json
+++ b/src/schemas/json/ninjs-1.0.json
@@ -1,8 +1,8 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "http://www.iptc.org/std/ninjs/ninjs-schema_1.0.json#",
"additionalProperties": false,
"description": "A news item as JSON object -- copyright 2013 IPTC - International Press Telecommunications Council - www.iptc.org - This document is published under the Creative Commons Attribution 3.0 license, see http://creativecommons.org/licenses/by/3.0/ $$comment: as of 2013-11-07, edited by MS for the IPTC ninjs-dev group ",
- "id": "http://www.iptc.org/std/ninjs/ninjs-schema_1.0.json#",
"patternProperties": {
"^description_[a-zA-Z0-9_]+": {
"description": "A free-form textual description of the content of the item. (The string appended to description_ in the property name should reflect the format of the text)",
diff --git a/src/schemas/json/ninjs-1.1.json b/src/schemas/json/ninjs-1.1.json
index 3c0e46bc680..1855c8040d0 100644
--- a/src/schemas/json/ninjs-1.1.json
+++ b/src/schemas/json/ninjs-1.1.json
@@ -1,8 +1,8 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "http://www.iptc.org/std/ninjs/ninjs-schema_1.1.json#",
"additionalProperties": false,
"description": "A news item as JSON object -- copyright 2014 IPTC - International Press Telecommunications Council - www.iptc.org - This document is published under the Creative Commons Attribution 3.0 license, see http://creativecommons.org/licenses/by/3.0/ $$comment: as of 2014-03-13 ",
- "id": "http://www.iptc.org/std/ninjs/ninjs-schema_1.1.json#",
"patternProperties": {
"^description_[a-zA-Z0-9_]+": {
"description": "A free-form textual description of the content of the item. (The string appended to description_ in the property name should reflect the format of the text)",
diff --git a/src/schemas/json/ninjs-1.2.json b/src/schemas/json/ninjs-1.2.json
index 7a9b023c627..74ee719f69a 100644
--- a/src/schemas/json/ninjs-1.2.json
+++ b/src/schemas/json/ninjs-1.2.json
@@ -1,8 +1,8 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "http://www.iptc.org/std/ninjs/ninjs-schema_1.2.json#",
"additionalProperties": false,
"description": "A news item as JSON object -- copyright 2019 IPTC - International Press Telecommunications Council - www.iptc.org - This document is published under the Creative Commons Attribution 4.0 license, see http://creativecommons.org/licenses/by/4.0/ $$comment: as of 2019-10-16 ",
- "id": "http://www.iptc.org/std/ninjs/ninjs-schema_1.2.json#",
"patternProperties": {
"^description_[a-zA-Z0-9_]+": {
"title": "Description",
diff --git a/src/schemas/json/ninjs-1.3.json b/src/schemas/json/ninjs-1.3.json
index 69023a9c85f..faf968e0d64 100644
--- a/src/schemas/json/ninjs-1.3.json
+++ b/src/schemas/json/ninjs-1.3.json
@@ -1,8 +1,8 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "http://www.iptc.org/std/ninjs/ninjs-schema_1.3.json#",
"additionalProperties": false,
"description": "A news item as JSON object -- copyright 2020 IPTC - International Press Telecommunications Council - www.iptc.org - This document is published under the Creative Commons Attribution 4.0 license, see http://creativecommons.org/licenses/by/4.0/",
- "id": "http://www.iptc.org/std/ninjs/ninjs-schema_1.3.json#",
"patternProperties": {
"^description_[a-zA-Z0-9_]+": {
"title": "Description",
diff --git a/src/schemas/json/ninjs-1.4.json b/src/schemas/json/ninjs-1.4.json
index c82235711c6..c33a4bd2177 100644
--- a/src/schemas/json/ninjs-1.4.json
+++ b/src/schemas/json/ninjs-1.4.json
@@ -1,6 +1,6 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
- "id": "http://www.iptc.org/std/ninjs/ninjs-schema_1.4.json#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "http://www.iptc.org/std/ninjs/ninjs-schema_1.4.json#",
"type": "object",
"title": "IPTC ninjs - News in JSON - version 1.4 (approved, 18 May 2022)",
"description": "A news item as JSON object -- copyright 2022 IPTC - International Press Telecommunications Council - www.iptc.org - This document is published under the Creative Commons Attribution 4.0 license, see http://creativecommons.org/licenses/by/4.0/",
@@ -584,25 +584,28 @@
"title": "Language id",
"description": "Identifier for the Rights Expression language used. nar:@langid",
"format": "uri"
- },
- "linkedrights": {
- "title": "Linked rights",
- "description": "A link from the current Item to Web resource with rights related information. nar:link",
- "type": "string",
- "format": "uri"
- },
- "encodedrights": {
- "title": "Encoded Rights",
- "additionalProperties": false,
- "type": "string",
- "description": "Contains a rights expression as defined by a Rights Expression Language. nar:rightsExpressionXML or nar:rightsExpressionData"
}
},
"oneOf": [
{
+ "properties": {
+ "linkedrights": {
+ "title": "Linked rights",
+ "description": "A link from the current Item to Web resource with rights related information. nar:link",
+ "type": "string",
+ "format": "uri"
+ }
+ },
"required": ["linkedrights"]
},
{
+ "properties": {
+ "encodedrights": {
+ "title": "Encoded Rights",
+ "type": "string",
+ "description": "Contains a rights expression as defined by a Rights Expression Language. nar:rightsExpressionXML or nar:rightsExpressionData"
+ }
+ },
"required": ["encodedrights"]
}
]
diff --git a/src/schemas/json/ninjs-2.0.json b/src/schemas/json/ninjs-2.0.json
index cb2618b82c6..b126c3b9292 100644
--- a/src/schemas/json/ninjs-2.0.json
+++ b/src/schemas/json/ninjs-2.0.json
@@ -280,37 +280,33 @@
"places": {
"title": "Places",
"description": "An array of named locations. nar:subject",
- "additionalProperties": false,
"type": "array",
"items": {
"type": "object",
- "anyOf": [
- {
- "properties": {
- "name": {
- "title": "Name",
- "description": "The name of the place",
- "type": "string"
- },
- "rel": {
- "title": "Relationship",
- "description": "The relationship of the content of the news object to the place",
- "type": "string"
- },
- "uri": {
- "title": "URI",
- "description": "The identifier for the place as a complete uri",
- "type": "string",
- "format": "uri"
- },
- "literal": {
- "title": "Literal",
- "description": "The code for the place as a literal",
- "type": "string"
- }
- }
+ "additionalProperties": true,
+ "properties": {
+ "name": {
+ "title": "Name",
+ "description": "The name of the place",
+ "type": "string"
+ },
+ "rel": {
+ "title": "Relationship",
+ "description": "The relationship of the content of the news object to the place",
+ "type": "string"
+ },
+ "uri": {
+ "title": "URI",
+ "description": "The identifier for the place as a complete uri",
+ "type": "string",
+ "format": "uri"
+ },
+ "literal": {
+ "title": "Literal",
+ "description": "The code for the place as a literal",
+ "type": "string"
}
- ]
+ }
}
},
"subjects": {
@@ -466,7 +462,6 @@
"title": "Renditions",
"description": "An array of objects with different renditions of the news object. nar:remoteContent",
"type": "array",
- "additionalProperties": false,
"items": {
"description": "A specific rendition of the content of the news object. (Description changed in version 1.2 according to issue #17.)",
"type": "object",
@@ -526,7 +521,6 @@
"title": "Associations",
"description": "An array of objects with content of news objects which are associated with this news object.",
"type": "array",
- "additionalProperties": false,
"items": {
"description": "One associated object where each object can use all properties in ninjs.",
"type": "object",
@@ -656,25 +650,28 @@
"title": "Language id",
"description": "Identifier for the Rights Expression language used. nar:@langid",
"format": "uri"
- },
- "linkedrights": {
- "title": "Linked rights",
- "description": "A link from the current Item to Web resource with rights related information. nar:link",
- "type": "string",
- "format": "uri"
- },
- "encodedrights": {
- "title": "Encoded Rights",
- "additionalProperties": false,
- "type": "string",
- "description": "Contains a rights expression as defined by a Rights Expression Language. nar:rightsExpressionXML or nar:rightsExpressionData"
}
},
"oneOf": [
{
+ "properties": {
+ "linkedrights": {
+ "title": "Linked rights",
+ "description": "A link from the current Item to Web resource with rights related information. nar:link",
+ "type": "string",
+ "format": "uri"
+ }
+ },
"required": ["linkedrights"]
},
{
+ "properties": {
+ "encodedrights": {
+ "title": "Encoded Rights",
+ "type": "string",
+ "description": "Contains a rights expression as defined by a Rights Expression Language. nar:rightsExpressionXML or nar:rightsExpressionData"
+ }
+ },
"required": ["encodedrights"]
}
]
From 24eb48915009b217f95d86cdb899d93a858f7529 Mon Sep 17 00:00:00 2001
From: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
Date: Fri, 28 Aug 2026 01:36:45 +0000
Subject: [PATCH 03/36] Enabled strict validation in anywork-*.json (#6123)
Signed-off-by: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
---
src/api/json/catalog.json | 1 +
src/schema-validation.jsonc | 2 -
src/schemas/json/anywork-ac-1.0.json | 74 +++++++++++++++-------------
src/schemas/json/anywork-ac-1.1.json | 1 +
4 files changed, 42 insertions(+), 36 deletions(-)
diff --git a/src/api/json/catalog.json b/src/api/json/catalog.json
index fbc68e61ce1..ef424fb47d6 100644
--- a/src/api/json/catalog.json
+++ b/src/api/json/catalog.json
@@ -187,6 +187,7 @@
"fileMatch": [".awc.yaml", ".awc.yml", ".awc.json", ".awc.jsonc", ".awc"],
"url": "https://www.schemastore.org/anywork-ac-1.1.json",
"versions": {
+ "1.1": "https://www.schemastore.org/anywork-ac-1.1.json",
"1.0": "https://www.schemastore.org/anywork-ac-1.0.json"
}
},
diff --git a/src/schema-validation.jsonc b/src/schema-validation.jsonc
index d85d62d37e4..745642dae39 100644
--- a/src/schema-validation.jsonc
+++ b/src/schema-validation.jsonc
@@ -3,8 +3,6 @@
"ajvNotStrictMode": [
"abc-clinical-demand-forecast-5.1.0.json",
"abc-supply-plan-14.1.0.json",
- "anywork-ac-1.0.json",
- "anywork-ac-1.1.json",
"appsettings.json",
"asmdef.json",
"aurora-1.0.json",
diff --git a/src/schemas/json/anywork-ac-1.0.json b/src/schemas/json/anywork-ac-1.0.json
index b82b73d7ab0..f45c9ac8f0d 100644
--- a/src/schemas/json/anywork-ac-1.0.json
+++ b/src/schemas/json/anywork-ac-1.0.json
@@ -21,43 +21,49 @@
"required": ["actions"],
"properties": {
"actions": {
- "description": "Actions",
- "type": ["string", "array"],
- "default": "all",
- "minItems": 1,
- "uniqueItems": true,
- "items": {
- "description": "An action",
- "type": ["string", "object"],
- "oneOf": [
- {
- "type": "string",
- "enum": [
- "all",
- "download",
- "generate",
- "correction",
- "build",
- "publish"
- ]
- },
- {
- "title": "action",
- "type": "object",
- "required": ["target", "schema"],
- "properties": {
- "target": {
- "$ref": "base.json#/definitions/path",
- "description": "A path to repository including `node_modules` directory to install desired services"
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "array",
+ "minItems": 1,
+ "uniqueItems": true,
+ "items": {
+ "description": "An action",
+ "oneOf": [
+ {
+ "type": "string",
+ "enum": [
+ "all",
+ "download",
+ "generate",
+ "correction",
+ "build",
+ "publish"
+ ]
},
- "schema": {
- "$ref": "#/definitions/schema"
+ {
+ "title": "action",
+ "type": "object",
+ "required": ["target", "schema"],
+ "properties": {
+ "target": {
+ "$ref": "base.json#/definitions/path",
+ "description": "A path to repository including `node_modules` directory to install desired services"
+ },
+ "schema": {
+ "$ref": "#/definitions/schema"
+ }
+ },
+ "additionalProperties": false
}
- },
- "additionalProperties": false
+ ]
}
- ]
- }
+ }
+ ],
+ "description": "Actions",
+ "default": "all"
},
"npm": {
"title": "NPM specifications",
diff --git a/src/schemas/json/anywork-ac-1.1.json b/src/schemas/json/anywork-ac-1.1.json
index a48378c9c52..6597dbb6016 100644
--- a/src/schemas/json/anywork-ac-1.1.json
+++ b/src/schemas/json/anywork-ac-1.1.json
@@ -247,6 +247,7 @@
],
"definitions": {
"version": {
+ "type": "string",
"pattern": "^[\\^~]?(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$"
},
"buildId": {
From 08dfd4c48b9bdbe14800a469bedd6dfd50d7f281 Mon Sep 17 00:00:00 2001
From: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
Date: Fri, 28 Aug 2026 01:38:05 +0000
Subject: [PATCH 04/36] Migrated npmpackagejsonlintrc.json to draft-07 (#6054)
Signed-off-by: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
---
src/schema-validation.jsonc | 1 -
src/schemas/json/npmpackagejsonlintrc.json | 28 ++++++++++++++++------
2 files changed, 21 insertions(+), 8 deletions(-)
diff --git a/src/schema-validation.jsonc b/src/schema-validation.jsonc
index 745642dae39..e0c549d9323 100644
--- a/src/schema-validation.jsonc
+++ b/src/schema-validation.jsonc
@@ -172,7 +172,6 @@
"netlify.json",
"nightwatch.json",
"now.json",
- "npmpackagejsonlintrc.json",
"nswag.json",
"nuget-project-3.3.0.json",
"nuget-project.json",
diff --git a/src/schemas/json/npmpackagejsonlintrc.json b/src/schemas/json/npmpackagejsonlintrc.json
index 333ea599962..617dfe583d1 100644
--- a/src/schemas/json/npmpackagejsonlintrc.json
+++ b/src/schemas/json/npmpackagejsonlintrc.json
@@ -1,5 +1,6 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/npmpackagejsonlintrc.json",
"definitions": {
"rule": {
"oneOf": [
@@ -14,6 +15,7 @@
]
},
"requiredNode": {
+ "type": "object",
"properties": {
"require-author": {
"$ref": "#/definitions/rule",
@@ -134,6 +136,7 @@
}
},
"dataType": {
+ "type": "object",
"properties": {
"bin-type": {
"$ref": "#/definitions/rule",
@@ -234,6 +237,7 @@
}
},
"validValues": {
+ "type": "object",
"properties": {
"valid-values-author": {
"$ref": "#/definitions/rule",
@@ -262,6 +266,7 @@
}
},
"dependencies": {
+ "type": "object",
"properties": {
"no-absolute-version-dependencies": {
"$ref": "#/definitions/rule",
@@ -358,6 +363,7 @@
}
},
"format": {
+ "type": "object",
"properties": {
"description-format": {
"$ref": "#/definitions/rule",
@@ -374,6 +380,7 @@
}
},
"packageJsonProperties": {
+ "type": "object",
"properties": {
"prefer-property-order": {
"$ref": "#/definitions/rule",
@@ -382,6 +389,7 @@
}
},
"deprecated": {
+ "type": "object",
"properties": {
"prefer-no-engineStrict": {
"$ref": "#/definitions/rule",
@@ -390,14 +398,20 @@
}
}
},
- "id": "https://json.schemastore.org/npmpackagejsonlintrc.json",
"properties": {
"extends": {
- "description": "Use the extends property to inherit rules from a shared configuration file/module.",
- "type": ["string", "array"],
- "items": {
- "type": "string"
- }
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ ],
+ "description": "Use the extends property to inherit rules from a shared configuration file/module."
},
"rules": {
"description": "npm-package-json-lint rules are configurable. Use the rules object to specify what rules should be used and what severity level they should follow.",
From 449644d6dd2f37dd872739afdf7b065be6d9bd34 Mon Sep 17 00:00:00 2001
From: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
Date: Fri, 28 Aug 2026 01:38:37 +0000
Subject: [PATCH 05/36] Migrated stale.json to draft-07 (#6094)
Signed-off-by: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
---
src/schema-validation.jsonc | 1 -
src/schemas/json/stale.json | 45 ++++++++++++++++++++++++++++++-------
2 files changed, 37 insertions(+), 9 deletions(-)
diff --git a/src/schema-validation.jsonc b/src/schema-validation.jsonc
index e0c549d9323..86f6234468d 100644
--- a/src/schema-validation.jsonc
+++ b/src/schema-validation.jsonc
@@ -225,7 +225,6 @@
"size-limit.json",
"solidaritySchema.json",
"sprite.json",
- "stale.json",
"staticwebapp.config.json",
"stylelintrc.json",
"taurus.json",
diff --git a/src/schemas/json/stale.json b/src/schemas/json/stale.json
index 64a61c8349d..8d3944a2c14 100644
--- a/src/schemas/json/stale.json
+++ b/src/schemas/json/stale.json
@@ -1,9 +1,11 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/stale.json",
"$comment": "https://probot.github.io/apps/stale/",
"$ref": "#/definitions/configuration",
"definitions": {
"configuration": {
+ "type": "object",
"properties": {
"daysUntilStale": {
"title": "Days Until Stale",
@@ -12,9 +14,16 @@
"default": 60
},
"daysUntilClose": {
+ "anyOf": [
+ {
+ "type": "integer"
+ },
+ {
+ "type": "boolean"
+ }
+ ],
"title": "Days Until Close",
"description": "Number of days of inactivity before an Issue or Pull Request with the stale label is closed.",
- "type": ["integer", "boolean"],
"default": 7
},
"onlyLabels": {
@@ -56,20 +65,41 @@
"default": "wontfix"
},
"markComment": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "boolean"
+ }
+ ],
"title": "Mark Comment",
"description": "Comment to post when marking as stale.",
- "type": ["string", "boolean"],
"default": "This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions."
},
"unmarkComment": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "boolean"
+ }
+ ],
"title": "Unmark Comment",
- "description": "Comment to post when removing the stale label.",
- "type": ["string", "boolean"]
+ "description": "Comment to post when removing the stale label."
},
"closeComment": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "boolean"
+ }
+ ],
"title": "Closed Comment",
- "description": "Comment to post when closing a stale issue or pull request.",
- "type": ["string", "boolean"]
+ "description": "Comment to post when closing a stale issue or pull request."
},
"limitPerRun": {
"title": "Limit Per Run",
@@ -88,7 +118,6 @@
}
},
"description": "A GitHub app that closes abandoned issues and pull requests",
- "id": "https://json.schemastore.org/stale.json",
"properties": {
"pulls": {
"$ref": "#/definitions/configuration",
From 5d48284b4d3080c6beb3156a3a90d7a8b31e85d2 Mon Sep 17 00:00:00 2001
From: Brent Westbrook <36778786+ntBre@users.noreply.github.com>
Date: Thu, 27 Aug 2026 21:39:48 -0400
Subject: [PATCH 06/36] Update ruff's JSON schema (#6248)
---
src/schemas/json/ruff.json | 18 ++++++++++++++----
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/src/schemas/json/ruff.json b/src/schemas/json/ruff.json
index b7dadf5dd8a..a38ef0962c5 100644
--- a/src/schemas/json/ruff.json
+++ b/src/schemas/json/ruff.json
@@ -381,7 +381,7 @@
]
},
"ignore": {
- "description": "A list of rule codes or prefixes to ignore. Prefixes can specify exact\nrules (like `F841`), entire categories (like `F`), or anything in\nbetween.\n\nWhen breaking ties between enabled and disabled rules (via `select` and\n`ignore`, respectively), more specific prefixes override less\nspecific prefixes. `ignore` takes precedence over `select` if the same\nprefix appears in both.",
+ "description": "A list of rule codes or prefixes to ignore. Prefixes can specify exact\nrules (like `F841`), entire groups (like `F`), or anything in\nbetween.\n\nWhen breaking ties between enabled and disabled rules (via `select` and\n`ignore`, respectively), more specific prefixes override less\nspecific prefixes. `ignore` takes precedence over `select` if the same\nprefix appears in both.\n\nIn preview, categories like `correctness` and `suspicious` can be used\nin addition to rule codes and linter group prefixes.",
"type": ["array", "null"],
"deprecated": true,
"items": {
@@ -596,7 +596,7 @@
"type": ["boolean", "null"]
},
"select": {
- "description": "A list of rule codes or prefixes to enable. Prefixes can specify exact\nrules (like `F841`), entire categories (like `F`), or anything in\nbetween.\n\nWhen breaking ties between enabled and disabled rules (via `select` and\n`ignore`, respectively), more specific prefixes override less\nspecific prefixes. `ignore` takes precedence over `select` if the\nsame prefix appears in both.",
+ "description": "A list of rule codes or prefixes to enable. Prefixes can specify exact\nrules (like `F841`), entire groups (like `F`), or anything in\nbetween.\n\nWhen breaking ties between enabled and disabled rules (via `select` and\n`ignore`, respectively), more specific prefixes override less\nspecific prefixes. `ignore` takes precedence over `select` if the\nsame prefix appears in both.\n\nIn preview, categories like `correctness` and `suspicious` can be used\nin addition to rule codes and linter group prefixes.",
"type": ["array", "null"],
"deprecated": true,
"items": {
@@ -2018,7 +2018,7 @@
"type": ["boolean", "null"]
},
"ignore": {
- "description": "A list of rule codes or prefixes to ignore. Prefixes can specify exact\nrules (like `F841`), entire categories (like `F`), or anything in\nbetween.\n\nWhen breaking ties between enabled and disabled rules (via `select` and\n`ignore`, respectively), more specific prefixes override less\nspecific prefixes. `ignore` takes precedence over `select` if the same\nprefix appears in both.",
+ "description": "A list of rule codes or prefixes to ignore. Prefixes can specify exact\nrules (like `F841`), entire groups (like `F`), or anything in\nbetween.\n\nWhen breaking ties between enabled and disabled rules (via `select` and\n`ignore`, respectively), more specific prefixes override less\nspecific prefixes. `ignore` takes precedence over `select` if the same\nprefix appears in both.\n\nIn preview, categories like `correctness` and `suspicious` can be used\nin addition to rule codes and linter group prefixes.",
"type": ["array", "null"],
"items": {
"$ref": "#/definitions/RuleSelector"
@@ -2161,7 +2161,7 @@
]
},
"select": {
- "description": "A list of rule codes or prefixes to enable. Prefixes can specify exact\nrules (like `F841`), entire categories (like `F`), or anything in\nbetween.\n\nWhen breaking ties between enabled and disabled rules (via `select` and\n`ignore`, respectively), more specific prefixes override less\nspecific prefixes. `ignore` takes precedence over `select` if the\nsame prefix appears in both.",
+ "description": "A list of rule codes or prefixes to enable. Prefixes can specify exact\nrules (like `F841`), entire groups (like `F`), or anything in\nbetween.\n\nWhen breaking ties between enabled and disabled rules (via `select` and\n`ignore`, respectively), more specific prefixes override less\nspecific prefixes. `ignore` takes precedence over `select` if the\nsame prefix appears in both.\n\nIn preview, categories like `correctness` and `suspicious` can be used\nin addition to rule codes and linter group prefixes.",
"type": ["array", "null"],
"items": {
"$ref": "#/definitions/RuleSelector"
@@ -4130,11 +4130,13 @@
"complex-assignment-in-stub",
"complex-if-statement-in-stub",
"complex-structure",
+ "complexity",
"constant-imported-as-non-constant",
"continue-in-finally",
"continue-outside-loop",
"convert-named-tuple-functional-to-class",
"convert-typed-dict-functional-to-class",
+ "correctness",
"create-subprocess-in-async-function",
"custom-type-var-for-self",
"dataclass-enum",
@@ -4230,6 +4232,7 @@
"for-loop-writes",
"format-in-get-text-func-call",
"format-literals",
+ "formatting",
"forward-annotation-syntax-error",
"fromisoformat-replace-z",
"function-call-in-dataclass-default-argument",
@@ -4552,6 +4555,7 @@
"pass-statement-stub-body",
"patch-version-comparison",
"path-constructor-current-directory",
+ "pedantic",
"pep484-style-positional-only-parameter",
"percent-format-expected-mapping",
"percent-format-expected-sequence",
@@ -4562,6 +4566,7 @@
"percent-format-positional-count-mismatch",
"percent-format-star-requires-sequence",
"percent-format-unsupported-format-character",
+ "performance",
"post-init-default",
"potential-index-error",
"print",
@@ -4583,6 +4588,7 @@
"pytest-erroneous-use-fixtures-on-fixture",
"pytest-extraneous-scope-function",
"pytest-fail-without-message",
+ "pytest-fixture-autouse",
"pytest-fixture-finalizer-callback",
"pytest-fixture-incorrect-parentheses-style",
"pytest-fixture-param-without-value",
@@ -4649,6 +4655,7 @@
"replace-universal-newlines",
"request-with-no-cert-validation",
"request-without-timeout",
+ "restriction",
"return-in-generator",
"return-in-init",
"return-in-try-except-finally",
@@ -4661,6 +4668,7 @@
"runtime-cast-value",
"runtime-import-in-type-checking-block",
"runtime-string-union",
+ "security",
"self-assigning-variable",
"self-or-cls-assignment",
"set-attr-with-constant",
@@ -4706,6 +4714,7 @@
"string-or-bytes-too-long",
"strip-with-multi-characters",
"stub-body-multiple-statements",
+ "style",
"subclass-builtin",
"subprocess-popen-preexec-fn",
"subprocess-popen-with-shell-equals-true",
@@ -4719,6 +4728,7 @@
"superfluous-else-return",
"suppressible-exception",
"surrounding-whitespace",
+ "suspicious",
"suspicious-eval-usage",
"suspicious-ftp-lib-usage",
"suspicious-ftplib-import",
From 1983458b590798ef693d0e51d76af74693ef6fd9 Mon Sep 17 00:00:00 2001
From: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
Date: Fri, 28 Aug 2026 01:40:44 +0000
Subject: [PATCH 07/36] Migrated es6importsorterrc.json to draft-07 (#5971)
Signed-off-by: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
---
src/schemas/json/es6importsorterrc.json | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/schemas/json/es6importsorterrc.json b/src/schemas/json/es6importsorterrc.json
index 66b22bbc653..2118a5d9b7c 100644
--- a/src/schemas/json/es6importsorterrc.json
+++ b/src/schemas/json/es6importsorterrc.json
@@ -1,7 +1,7 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/es6importsorterrc.json",
"additionalProperties": false,
- "id": "https://json.schemastore.org/es6importsorterrc.json",
"properties": {
"sourcePrefixes": {
"description": "The prefixes of your source imports. Ex: import sth from '@data' => '@' can considered as a sourcePrefix",
From 8cfea30d1c0a07914a6978ef9dde40d264ceec88 Mon Sep 17 00:00:00 2001
From: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
Date: Fri, 28 Aug 2026 01:57:54 +0000
Subject: [PATCH 08/36] Migrated Azure Webjobs to draft-07 (#6072)
Signed-off-by: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
---
src/schema-validation.jsonc | 1 -
src/schemas/json/settings.job.json | 4 +--
src/schemas/json/webjob-publish-settings.json | 25 ++++++++-----------
src/schemas/json/webjobs-list.json | 4 +--
4 files changed, 14 insertions(+), 20 deletions(-)
diff --git a/src/schema-validation.jsonc b/src/schema-validation.jsonc
index 86f6234468d..bf9447a938f 100644
--- a/src/schema-validation.jsonc
+++ b/src/schema-validation.jsonc
@@ -260,7 +260,6 @@
"vtesttree-schema-v2.4.0.json",
"web-types.json",
"webextension.json",
- "webjob-publish-settings.json",
"winget-pkgs-singleton-0.1.json",
"workflows.json",
"xs-app.json",
diff --git a/src/schemas/json/settings.job.json b/src/schemas/json/settings.job.json
index db612e43fbc..feb936c11ec 100644
--- a/src/schemas/json/settings.job.json
+++ b/src/schemas/json/settings.job.json
@@ -1,6 +1,6 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
- "id": "https://json.schemastore.org/settings.job.json",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/settings.job.json",
"minProperties": 1,
"properties": {
"stopping_wait_time": {
diff --git a/src/schemas/json/webjob-publish-settings.json b/src/schemas/json/webjob-publish-settings.json
index e134cbb8364..1acca703a52 100644
--- a/src/schemas/json/webjob-publish-settings.json
+++ b/src/schemas/json/webjob-publish-settings.json
@@ -1,7 +1,9 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/webjob-publish-settings.json",
"definitions": {
"shared": {
+ "type": "object",
"properties": {
"webJobName": {
"type": "string",
@@ -29,33 +31,28 @@
}
},
"scheduled": {
+ "$ref": "#/definitions/shared",
+ "type": "object",
"required": [
"webJobName",
"startTime",
"endTime",
"jobRecurrenceFrequency",
- "interval"
- ],
- "allOf": [
- {
- "$ref": "#/definitions/shared"
- }
+ "interval",
+ "runMode"
],
"properties": {
"runMode": {
"type": "string",
- "enum": ["Scheduled"],
+ "const": "Scheduled",
"description": "Determines the run mode of the Azure Webjob. \n\n Triggered: manually triggered \n Scheduled: runs on a specific schedule \n Continuous: runs all the time"
}
}
},
"notScheduled": {
+ "$ref": "#/definitions/shared",
+ "type": "object",
"required": ["runMode"],
- "allOf": [
- {
- "$ref": "#/definitions/shared"
- }
- ],
"properties": {
"runMode": {
"type": "string",
@@ -65,7 +62,6 @@
}
}
},
- "id": "https://json.schemastore.org/webjob-publish-settings.json",
"oneOf": [
{
"$ref": "#/definitions/scheduled"
@@ -74,7 +70,6 @@
"$ref": "#/definitions/notScheduled"
}
],
- "required": ["runMode"],
"title": "JSON schema for Azure Webjobs configuration files",
"type": "object"
}
diff --git a/src/schemas/json/webjobs-list.json b/src/schemas/json/webjobs-list.json
index 9f9fd930aba..890ff5d3d97 100644
--- a/src/schemas/json/webjobs-list.json
+++ b/src/schemas/json/webjobs-list.json
@@ -1,6 +1,6 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
- "id": "https://json.schemastore.org/webjobs-list.json",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/webjobs-list.json",
"properties": {
"WebJobs": {
"type": "array",
From 7de30f6372064f4dd148799681dff3b5b5d3e58f Mon Sep 17 00:00:00 2001
From: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
Date: Fri, 28 Aug 2026 01:59:54 +0000
Subject: [PATCH 09/36] Migrated Plagiarize config file schemas to draft-07
(#6063)
Signed-off-by: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
---
src/schema-validation.jsonc | 2 --
src/schemas/json/plagiarize-0.0.json | 28 ++++++++++++++++++++++++----
src/schemas/json/plagiarize.json | 28 ++++++++++++++++++++++++----
3 files changed, 48 insertions(+), 10 deletions(-)
diff --git a/src/schema-validation.jsonc b/src/schema-validation.jsonc
index bf9447a938f..1463bf2fd83 100644
--- a/src/schema-validation.jsonc
+++ b/src/schema-validation.jsonc
@@ -186,10 +186,8 @@
"partial-eslint-plugins.json",
"phrase.json",
"phraseapp.json",
- "plagiarize-0.0.json",
"plagiarize-me-0.0.json",
"plagiarize-me.json",
- "plagiarize.json",
"pocketmine-plugin.json",
"pre-commit-config.json",
"prettierrc-1.8.2.json",
diff --git a/src/schemas/json/plagiarize-0.0.json b/src/schemas/json/plagiarize-0.0.json
index 20f1feff75d..d2ceaf7c1ff 100644
--- a/src/schemas/json/plagiarize-0.0.json
+++ b/src/schemas/json/plagiarize-0.0.json
@@ -1,7 +1,7 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/plagiarize-0.0",
"description": "plagiarize.yaml configuration schema",
- "id": "https://json.schemastore.org/plagiarize-0.0",
"properties": {
"repo": {
"required": ["url"],
@@ -22,7 +22,17 @@
"type": "object",
"description": "Strings to find in target project and be replaced with plagiarized project's values",
"additionalProperties": {
- "type": ["string", "integer", "boolean"]
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "integer"
+ },
+ {
+ "type": "boolean"
+ }
+ ]
},
"required": ["project"],
"properties": {
@@ -35,7 +45,17 @@
"type": "object",
"description": "Variables available to be used for finding and replacing by variable name. For example `$var_name: hello` would replace string '$var_name' with 'hello' in target project",
"additionalProperties": {
- "type": ["string", "integer", "boolean"]
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "integer"
+ },
+ {
+ "type": "boolean"
+ }
+ ]
}
}
},
diff --git a/src/schemas/json/plagiarize.json b/src/schemas/json/plagiarize.json
index e78aa2c9ec7..6ec28c7a5c3 100644
--- a/src/schemas/json/plagiarize.json
+++ b/src/schemas/json/plagiarize.json
@@ -1,7 +1,7 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/plagiarize",
"description": "plagiarize.yaml configuration schema",
- "id": "https://json.schemastore.org/plagiarize",
"properties": {
"repo": {
"required": ["url"],
@@ -22,7 +22,17 @@
"type": "object",
"description": "Strings to find in target project and be replaced with plagiarized project's values",
"additionalProperties": {
- "type": ["string", "integer", "boolean"]
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "integer"
+ },
+ {
+ "type": "boolean"
+ }
+ ]
},
"required": ["project"],
"properties": {
@@ -35,7 +45,17 @@
"type": "object",
"description": "Variables available to be used for finding and replacing by variable name. For example `$var_name: hello` would replace string '$var_name' with 'hello' in target project",
"additionalProperties": {
- "type": ["string", "integer", "boolean"]
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "integer"
+ },
+ {
+ "type": "boolean"
+ }
+ ]
}
}
},
From a3cf4d5316a7ef7a9b4d6cbdf3ced59e8f38b801 Mon Sep 17 00:00:00 2001
From: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
Date: Fri, 28 Aug 2026 02:00:41 +0000
Subject: [PATCH 10/36] Migrated prettierrc*.json to draft-07 (#6068)
Signed-off-by: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
---
src/schema-validation.jsonc | 1 -
src/schemas/json/prettierrc-1.8.2.json | 6 +-
src/schemas/json/prettierrc-2.8.8.json | 92 ++++++++++++------------
src/schemas/json/prettierrc.json | 98 +++++++++++++-------------
4 files changed, 99 insertions(+), 98 deletions(-)
diff --git a/src/schema-validation.jsonc b/src/schema-validation.jsonc
index 1463bf2fd83..0ceae2cb0a3 100644
--- a/src/schema-validation.jsonc
+++ b/src/schema-validation.jsonc
@@ -190,7 +190,6 @@
"plagiarize-me.json",
"pocketmine-plugin.json",
"pre-commit-config.json",
- "prettierrc-1.8.2.json",
"prisma.json",
"project-1.0.0-beta3.json",
"project-1.0.0-beta4.json",
diff --git a/src/schemas/json/prettierrc-1.8.2.json b/src/schemas/json/prettierrc-1.8.2.json
index 64b6520baaa..3ce81a92386 100644
--- a/src/schemas/json/prettierrc-1.8.2.json
+++ b/src/schemas/json/prettierrc-1.8.2.json
@@ -1,5 +1,6 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/prettierrc-1.8.2.json",
"allOf": [
{
"$ref": "#/definitions/optionsDefinition"
@@ -10,6 +11,7 @@
],
"definitions": {
"optionsDefinition": {
+ "type": "object",
"properties": {
"arrowParens": {
"default": "avoid",
@@ -91,6 +93,7 @@
}
},
"overridesDefinition": {
+ "type": "object",
"properties": {
"overrides": {
"description": "Provide a list of patterns to override prettier configuration.",
@@ -139,7 +142,6 @@
}
}
},
- "id": "https://json.schemastore.org/prettierrc-1.8.2.json",
"title": "Schema for .prettierrc",
"type": "object"
}
diff --git a/src/schemas/json/prettierrc-2.8.8.json b/src/schemas/json/prettierrc-2.8.8.json
index 170396d00cf..9c032d0b80f 100644
--- a/src/schemas/json/prettierrc-2.8.8.json
+++ b/src/schemas/json/prettierrc-2.8.8.json
@@ -1,5 +1,6 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/prettierrc.json",
"definitions": {
"optionsDefinition": {
"type": "object",
@@ -9,11 +10,11 @@
"default": "always",
"oneOf": [
{
- "enum": ["always"],
+ "const": "always",
"description": "Always include parens. Example: `(x) => x`"
},
{
- "enum": ["avoid"],
+ "const": "avoid",
"description": "Omit parens when possible. Example: `x => x`"
}
]
@@ -43,11 +44,11 @@
"default": "auto",
"oneOf": [
{
- "enum": ["auto"],
+ "const": "auto",
"description": "Format embedded code if Prettier can automatically identify it."
},
{
- "enum": ["off"],
+ "const": "off",
"description": "Never automatically format embedded code."
}
]
@@ -57,19 +58,19 @@
"default": "lf",
"oneOf": [
{
- "enum": ["lf"],
+ "const": "lf",
"description": "Line Feed only (\\n), common on Linux and macOS as well as inside git repos"
},
{
- "enum": ["crlf"],
+ "const": "crlf",
"description": "Carriage Return + Line Feed characters (\\r\\n), common on Windows"
},
{
- "enum": ["cr"],
+ "const": "cr",
"description": "Carriage Return character only (\\r), used very rarely"
},
{
- "enum": ["auto"],
+ "const": "auto",
"description": "Maintain existing\n(mixed values within one file are normalised by looking at what's used after the first line)"
}
]
@@ -83,15 +84,15 @@
"default": "css",
"oneOf": [
{
- "enum": ["css"],
+ "const": "css",
"description": "Respect the default value of CSS display property."
},
{
- "enum": ["strict"],
+ "const": "strict",
"description": "Whitespaces are considered sensitive."
},
{
- "enum": ["ignore"],
+ "const": "ignore",
"description": "Whitespaces are considered insensitive."
}
]
@@ -110,95 +111,95 @@
"description": "Which parser to use.",
"anyOf": [
{
- "enum": ["flow"],
+ "const": "flow",
"description": "Flow"
},
{
- "enum": ["babel"],
+ "const": "babel",
"description": "JavaScript"
},
{
- "enum": ["babel-flow"],
+ "const": "babel-flow",
"description": "Flow"
},
{
- "enum": ["babel-ts"],
+ "const": "babel-ts",
"description": "TypeScript"
},
{
- "enum": ["typescript"],
+ "const": "typescript",
"description": "TypeScript"
},
{
- "enum": ["acorn"],
+ "const": "acorn",
"description": "JavaScript"
},
{
- "enum": ["espree"],
+ "const": "espree",
"description": "JavaScript"
},
{
- "enum": ["meriyah"],
+ "const": "meriyah",
"description": "JavaScript"
},
{
- "enum": ["css"],
+ "const": "css",
"description": "CSS"
},
{
- "enum": ["less"],
+ "const": "less",
"description": "Less"
},
{
- "enum": ["scss"],
+ "const": "scss",
"description": "SCSS"
},
{
- "enum": ["json"],
+ "const": "json",
"description": "JSON"
},
{
- "enum": ["json5"],
+ "const": "json5",
"description": "JSON5"
},
{
- "enum": ["json-stringify"],
+ "const": "json-stringify",
"description": "JSON.stringify"
},
{
- "enum": ["graphql"],
+ "const": "graphql",
"description": "GraphQL"
},
{
- "enum": ["markdown"],
+ "const": "markdown",
"description": "Markdown"
},
{
- "enum": ["mdx"],
+ "const": "mdx",
"description": "MDX"
},
{
- "enum": ["vue"],
+ "const": "vue",
"description": "Vue"
},
{
- "enum": ["yaml"],
+ "const": "yaml",
"description": "YAML"
},
{
- "enum": ["glimmer"],
+ "const": "glimmer",
"description": "Ember / Handlebars"
},
{
- "enum": ["html"],
+ "const": "html",
"description": "HTML"
},
{
- "enum": ["angular"],
+ "const": "angular",
"description": "Angular"
},
{
- "enum": ["lwc"],
+ "const": "lwc",
"description": "Lightning Web Components"
},
{
@@ -218,7 +219,7 @@
}
},
{
- "enum": [false],
+ "const": false,
"description": "Disable plugin autoloading."
}
]
@@ -241,15 +242,15 @@
"default": "preserve",
"oneOf": [
{
- "enum": ["always"],
+ "const": "always",
"description": "Wrap prose if it exceeds the print width."
},
{
- "enum": ["never"],
+ "const": "never",
"description": "Do not wrap prose."
},
{
- "enum": ["preserve"],
+ "const": "preserve",
"description": "Wrap prose as-is."
}
]
@@ -259,15 +260,15 @@
"default": "as-needed",
"oneOf": [
{
- "enum": ["as-needed"],
+ "const": "as-needed",
"description": "Only add quotes around object properties where required."
},
{
- "enum": ["consistent"],
+ "const": "consistent",
"description": "If at least one property in an object requires quotes, quote all properties."
},
{
- "enum": ["preserve"],
+ "const": "preserve",
"description": "Respect the input use of quotes in object properties."
}
]
@@ -312,15 +313,15 @@
"default": "es5",
"oneOf": [
{
- "enum": ["es5"],
+ "const": "es5",
"description": "Trailing commas where valid in ES5 (objects, arrays, etc.)"
},
{
- "enum": ["none"],
+ "const": "none",
"description": "No trailing commas."
},
{
- "enum": ["all"],
+ "const": "all",
"description": "Trailing commas wherever possible (including function arguments)."
}
]
@@ -387,7 +388,6 @@
}
}
},
- "id": "https://json.schemastore.org/prettierrc.json",
"oneOf": [
{
"type": "object",
diff --git a/src/schemas/json/prettierrc.json b/src/schemas/json/prettierrc.json
index d4b7b487596..fc67009ecc5 100644
--- a/src/schemas/json/prettierrc.json
+++ b/src/schemas/json/prettierrc.json
@@ -10,11 +10,11 @@
"default": "always",
"oneOf": [
{
- "enum": ["always"],
+ "const": "always",
"description": "Always include parens. Example: `(x) => x`"
},
{
- "enum": ["avoid"],
+ "const": "avoid",
"description": "Omit parens when possible. Example: `x => x`"
}
]
@@ -44,11 +44,11 @@
"default": "auto",
"oneOf": [
{
- "enum": ["auto"],
+ "const": "auto",
"description": "Format embedded code if Prettier can automatically identify it."
},
{
- "enum": ["off"],
+ "const": "off",
"description": "Never automatically format embedded code."
}
]
@@ -58,19 +58,19 @@
"default": "lf",
"oneOf": [
{
- "enum": ["lf"],
+ "const": "lf",
"description": "Line Feed only (\\n), common on Linux and macOS as well as inside git repos"
},
{
- "enum": ["crlf"],
+ "const": "crlf",
"description": "Carriage Return + Line Feed characters (\\r\\n), common on Windows"
},
{
- "enum": ["cr"],
+ "const": "cr",
"description": "Carriage Return character only (\\r), used very rarely"
},
{
- "enum": ["auto"],
+ "const": "auto",
"description": "Maintain existing\n(mixed values within one file are normalised by looking at what's used after the first line)"
}
]
@@ -80,11 +80,11 @@
"default": "end",
"oneOf": [
{
- "enum": ["start"],
+ "const": "start",
"description": "Print operators at the start of new lines."
},
{
- "enum": ["end"],
+ "const": "end",
"description": "Print operators at the end of previous lines."
}
]
@@ -103,15 +103,15 @@
"default": "css",
"oneOf": [
{
- "enum": ["css"],
+ "const": "css",
"description": "Respect the default value of CSS display property."
},
{
- "enum": ["strict"],
+ "const": "strict",
"description": "Whitespaces are considered sensitive."
},
{
- "enum": ["ignore"],
+ "const": "ignore",
"description": "Whitespaces are considered insensitive."
}
]
@@ -131,11 +131,11 @@
"default": "preserve",
"oneOf": [
{
- "enum": ["preserve"],
+ "const": "preserve",
"description": "Keep as multi-line, if there is a newline between the opening brace and first property."
},
{
- "enum": ["collapse"],
+ "const": "collapse",
"description": "Fit to a single line when possible."
}
]
@@ -144,103 +144,103 @@
"description": "Which parser to use.",
"anyOf": [
{
- "enum": ["flow"],
+ "const": "flow",
"description": "Flow"
},
{
- "enum": ["babel"],
+ "const": "babel",
"description": "JavaScript"
},
{
- "enum": ["babel-flow"],
+ "const": "babel-flow",
"description": "Flow"
},
{
- "enum": ["babel-ts"],
+ "const": "babel-ts",
"description": "TypeScript"
},
{
- "enum": ["typescript"],
+ "const": "typescript",
"description": "TypeScript"
},
{
- "enum": ["acorn"],
+ "const": "acorn",
"description": "JavaScript"
},
{
- "enum": ["espree"],
+ "const": "espree",
"description": "JavaScript"
},
{
- "enum": ["meriyah"],
+ "const": "meriyah",
"description": "JavaScript"
},
{
- "enum": ["css"],
+ "const": "css",
"description": "CSS"
},
{
- "enum": ["less"],
+ "const": "less",
"description": "Less"
},
{
- "enum": ["scss"],
+ "const": "scss",
"description": "SCSS"
},
{
- "enum": ["json"],
+ "const": "json",
"description": "JSON"
},
{
- "enum": ["json5"],
+ "const": "json5",
"description": "JSON5"
},
{
- "enum": ["jsonc"],
+ "const": "jsonc",
"description": "JSON with Comments"
},
{
- "enum": ["json-stringify"],
+ "const": "json-stringify",
"description": "JSON.stringify"
},
{
- "enum": ["graphql"],
+ "const": "graphql",
"description": "GraphQL"
},
{
- "enum": ["markdown"],
+ "const": "markdown",
"description": "Markdown"
},
{
- "enum": ["mdx"],
+ "const": "mdx",
"description": "MDX"
},
{
- "enum": ["vue"],
+ "const": "vue",
"description": "Vue"
},
{
- "enum": ["yaml"],
+ "const": "yaml",
"description": "YAML"
},
{
- "enum": ["glimmer"],
+ "const": "glimmer",
"description": "Ember / Handlebars"
},
{
- "enum": ["html"],
+ "const": "html",
"description": "HTML"
},
{
- "enum": ["angular"],
+ "const": "angular",
"description": "Angular"
},
{
- "enum": ["lwc"],
+ "const": "lwc",
"description": "Lightning Web Components"
},
{
- "enum": ["mjml"],
+ "const": "mjml",
"description": "MJML"
},
{
@@ -267,15 +267,15 @@
"default": "preserve",
"oneOf": [
{
- "enum": ["always"],
+ "const": "always",
"description": "Wrap prose if it exceeds the print width."
},
{
- "enum": ["never"],
+ "const": "never",
"description": "Do not wrap prose."
},
{
- "enum": ["preserve"],
+ "const": "preserve",
"description": "Wrap prose as-is."
}
]
@@ -285,15 +285,15 @@
"default": "as-needed",
"oneOf": [
{
- "enum": ["as-needed"],
+ "const": "as-needed",
"description": "Only add quotes around object properties where required."
},
{
- "enum": ["consistent"],
+ "const": "consistent",
"description": "If at least one property in an object requires quotes, quote all properties."
},
{
- "enum": ["preserve"],
+ "const": "preserve",
"description": "Respect the input use of quotes in object properties."
}
]
@@ -338,15 +338,15 @@
"default": "all",
"oneOf": [
{
- "enum": ["all"],
+ "const": "all",
"description": "Trailing commas wherever possible (including function arguments)."
},
{
- "enum": ["es5"],
+ "const": "es5",
"description": "Trailing commas where valid in ES5 (objects, arrays, etc.)"
},
{
- "enum": ["none"],
+ "const": "none",
"description": "No trailing commas."
}
]
From 95251c446436a8373f113b05780b93b41dc471d8 Mon Sep 17 00:00:00 2001
From: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
Date: Fri, 28 Aug 2026 02:03:42 +0000
Subject: [PATCH 11/36] Migrated openfin.json to draft-07 (#6059)
Signed-off-by: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
---
src/schema-validation.jsonc | 1 -
src/schemas/json/openfin.json | 17 ++++++++++++++---
2 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/src/schema-validation.jsonc b/src/schema-validation.jsonc
index 0ceae2cb0a3..c78e9139979 100644
--- a/src/schema-validation.jsonc
+++ b/src/schema-validation.jsonc
@@ -175,7 +175,6 @@
"nswag.json",
"nuget-project-3.3.0.json",
"nuget-project.json",
- "openfin.json",
"opensrm.json",
"opspec-io-0.1.7.json",
"package.json",
diff --git a/src/schemas/json/openfin.json b/src/schemas/json/openfin.json
index a7f5afd3afc..78f600e2e3a 100644
--- a/src/schemas/json/openfin.json
+++ b/src/schemas/json/openfin.json
@@ -1,12 +1,13 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/openfin.json",
"additionalProperties": false,
- "id": "https://json.schemastore.org/openfin.json",
"properties": {
"appAssets": {
"description": "Set this object to co-deploy native apps along with your app.",
"type": "array",
"items": {
+ "type": "object",
"additionalProperties": false,
"required": ["alias", "src", "version"],
"properties": {
@@ -42,6 +43,7 @@
"description": "You can access the Chromium development tools by navigating to the selected port, i.e.: http://localhost:9090."
},
"dialogSettings": {
+ "type": "object",
"description": "An optional object to customize the appearance of the RVM progress dialog.",
"additionalProperties": false,
"properties": {
@@ -76,6 +78,7 @@
"description": "A string used as a licensing identifier for each customer/contract (RVM 2.7+). The OpenFin team will generate this for your production app."
},
"runtime": {
+ "type": "object",
"description": "Determines which runtime version the app will use.",
"additionalProperties": false,
"required": ["version"],
@@ -107,6 +110,7 @@
}
},
"shortcut": {
+ "type": "object",
"description": "Settings for the app's desktop shortcut",
"additionalProperties": false,
"required": ["company", "icon", "name"],
@@ -154,11 +158,13 @@
"description": "You can specify an image to display while the runtime is loading. It takes any image file (including semi-transparent PNGs)."
},
"startup_app": {
+ "type": "object",
"description": "Specifies the application level configuration.",
"additionalProperties": false,
"required": ["name", "url", "uuid"],
"properties": {
"accelerator": {
+ "type": "object",
"description": "The name of this builder instance, which can be specified in the only/except property of a provisioner.",
"additionalProperties": false,
"properties": {
@@ -214,6 +220,7 @@
"default": true
},
"cornerRounding": {
+ "type": "object",
"description": "This defines and applies rounded corners for the window.",
"additionalProperties": false,
"properties": {
@@ -340,6 +347,7 @@
"type": "array",
"description": "An array of scripts to download and run before other scripts in the page.",
"items": {
+ "type": "object",
"required": ["url"],
"properties": {
"url": {
@@ -355,6 +363,7 @@
"default": true
},
"resizeRegion": {
+ "type": "object",
"description": "Define the attributes of the window's resize region.",
"additionalProperties": false,
"properties": {
@@ -410,6 +419,7 @@
}
},
"supportInformation": {
+ "type": "object",
"description": "An optional object to customize error messages.",
"additionalProperties": false,
"required": ["company", "email", "product"],
@@ -440,5 +450,6 @@
}
},
"required": ["runtime", "shortcut", "startup_app"],
- "title": "JSON schema for OpenFin application configuration files"
+ "title": "JSON schema for OpenFin application configuration files",
+ "type": "object"
}
From 8daf1ea174f0674ceabc450944f0a362b49edbba Mon Sep 17 00:00:00 2001
From: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
Date: Fri, 28 Aug 2026 02:05:17 +0000
Subject: [PATCH 12/36] Migrated local.settings.json to draft-07 (#6028)
Signed-off-by: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
---
src/schema-validation.jsonc | 3 ---
src/schemas/json/local.settings.json | 4 ++--
2 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/src/schema-validation.jsonc b/src/schema-validation.jsonc
index c78e9139979..0d0b27bf731 100644
--- a/src/schema-validation.jsonc
+++ b/src/schema-validation.jsonc
@@ -1233,9 +1233,6 @@
"kestra-0.19.0.json": {
"unknownKeywords": ["$deprecated", "$dynamic", "$metrics"]
},
- "local.settings.json": {
- "unknownKeywords": ["examples"]
- },
"lsdlschema-0.7.json": {
"unknownFormat": ["language", "identifier-properties", "identifier"]
},
diff --git a/src/schemas/json/local.settings.json b/src/schemas/json/local.settings.json
index 71f04d4dd9f..96dab064db7 100644
--- a/src/schemas/json/local.settings.json
+++ b/src/schemas/json/local.settings.json
@@ -1,5 +1,6 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/local.settings.json",
"default": {
"IsEncrypted": false,
"Values": {
@@ -7,7 +8,6 @@
"FUNCTIONS_WORKER_RUNTIME": ""
}
},
- "id": "https://json.schemastore.org/local.settings.json",
"properties": {
"IsEncrypted": {
"type": "boolean",
From 8cd5ed4220cbdf749bdba3aef8b9e66caddf67af Mon Sep 17 00:00:00 2001
From: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
Date: Fri, 28 Aug 2026 02:05:58 +0000
Subject: [PATCH 13/36] Migrated function.json to draft-07 (#5976)
Signed-off-by: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
---
src/schema-validation.jsonc | 1 -
src/schemas/json/function.json | 181 ++++++++++++++++++++-------------
2 files changed, 108 insertions(+), 74 deletions(-)
diff --git a/src/schema-validation.jsonc b/src/schema-validation.jsonc
index 0d0b27bf731..1ac82f1147b 100644
--- a/src/schema-validation.jsonc
+++ b/src/schema-validation.jsonc
@@ -133,7 +133,6 @@
"foundryvtt-module-manifest.json",
"foundryvtt-system-manifest.json",
"foundryvtt-world-manifest.json",
- "function.json",
"gaspar-1.0.json",
"gaspar-3.0.json",
"github-action.json",
diff --git a/src/schemas/json/function.json b/src/schemas/json/function.json
index da563af6f1b..e48ccbe74a4 100644
--- a/src/schemas/json/function.json
+++ b/src/schemas/json/function.json
@@ -1,7 +1,9 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/function.json",
"definitions": {
"bindingBase": {
+ "type": "object",
"properties": {
"name": {
"type": "string"
@@ -21,6 +23,7 @@
"required": ["name", "type", "direction"]
},
"dynamicBinding": {
+ "type": "object",
"properties": {
"type": {
"not": {
@@ -57,6 +60,7 @@
}
},
"serviceBusBinding": {
+ "type": "object",
"properties": {
"queueName": {
"type": "string",
@@ -82,28 +86,31 @@
},
"oneOf": [
{
+ "type": "object",
"properties": {
"type": {
- "enum": ["serviceBusTrigger"]
+ "const": "serviceBusTrigger"
},
"direction": {
- "enum": ["in"]
+ "const": "in"
}
}
},
{
+ "type": "object",
"properties": {
"type": {
- "enum": ["serviceBus"]
+ "const": "serviceBus"
},
"direction": {
- "enum": ["out"]
+ "const": "out"
}
}
}
]
},
"blobBinding": {
+ "type": "object",
"properties": {
"path": {
"type": "string",
@@ -116,35 +123,39 @@
},
"oneOf": [
{
+ "type": "object",
"properties": {
"type": {
- "enum": ["blobTrigger"]
+ "const": "blobTrigger"
},
"direction": {
- "enum": ["in"]
+ "const": "in"
}
}
},
{
+ "type": "object",
"properties": {
"type": {
- "enum": ["blob"]
+ "const": "blob"
}
}
}
]
},
"manualTriggerBinding": {
+ "type": "object",
"properties": {
"type": {
- "enum": ["manualTrigger"]
+ "const": "manualTrigger"
},
"direction": {
- "enum": ["in"]
+ "const": "in"
}
}
},
"eventHubBinding": {
+ "type": "object",
"properties": {
"path": {
"type": "string",
@@ -157,12 +168,13 @@
},
"oneOf": [
{
+ "type": "object",
"properties": {
"type": {
- "enum": ["eventHubTrigger"]
+ "const": "eventHubTrigger"
},
"direction": {
- "enum": ["in"]
+ "const": "in"
},
"consumerGroup": {
"type": "string",
@@ -175,24 +187,26 @@
}
},
{
+ "type": "object",
"properties": {
"type": {
- "enum": ["eventHub"]
+ "const": "eventHub"
},
"direction": {
- "enum": ["out"]
+ "const": "out"
}
}
}
]
},
"timerTriggerBinding": {
+ "type": "object",
"properties": {
"type": {
- "enum": ["timerTrigger"]
+ "const": "timerTrigger"
},
"direction": {
- "enum": ["in"]
+ "const": "in"
},
"schedule": {
"type": "string",
@@ -209,6 +223,7 @@
}
},
"queueBinding": {
+ "type": "object",
"properties": {
"queueName": {
"type": "string",
@@ -221,22 +236,24 @@
},
"oneOf": [
{
+ "type": "object",
"properties": {
"type": {
- "enum": ["queueTrigger"]
+ "const": "queueTrigger"
},
"direction": {
- "enum": ["in"]
+ "const": "in"
}
}
},
{
+ "type": "object",
"properties": {
"type": {
- "enum": ["queue"]
+ "const": "queue"
},
"direction": {
- "enum": ["out"]
+ "const": "out"
}
}
}
@@ -246,12 +263,13 @@
"httpBinding": {
"oneOf": [
{
+ "type": "object",
"properties": {
"type": {
- "enum": ["httpTrigger"]
+ "const": "httpTrigger"
},
"direction": {
- "enum": ["in"]
+ "const": "in"
},
"route": {
"type": "string",
@@ -269,40 +287,40 @@
},
"methods": {
"type": "array",
- "items": [
- {
- "type": "string",
- "enum": [
- "get",
- "post",
- "delete",
- "head",
- "patch",
- "put",
- "options",
- "trace"
- ]
- }
- ]
+ "items": {
+ "type": "string",
+ "enum": [
+ "get",
+ "post",
+ "delete",
+ "head",
+ "patch",
+ "put",
+ "options",
+ "trace"
+ ]
+ }
}
}
},
{
+ "type": "object",
"properties": {
"type": {
- "enum": ["http"]
+ "const": "http"
},
"direction": {
- "enum": ["out"]
+ "const": "out"
}
}
}
]
},
"mobileBinding": {
+ "type": "object",
"properties": {
"type": {
- "enum": ["mobileTable"]
+ "const": "mobileTable"
},
"tableName": {
"type": "string",
@@ -319,9 +337,10 @@
},
"oneOf": [
{
+ "type": "object",
"properties": {
"direction": {
- "enum": ["in"]
+ "const": "in"
},
"id": {
"type": "string",
@@ -330,18 +349,20 @@
}
},
{
+ "type": "object",
"properties": {
"direction": {
- "enum": ["out"]
+ "const": "out"
}
}
}
]
},
"documentDBBinding": {
+ "type": "object",
"properties": {
"type": {
- "enum": ["documentDB"]
+ "const": "documentDB"
},
"connection": {
"type": "string",
@@ -358,9 +379,10 @@
},
"oneOf": [
{
+ "type": "object",
"properties": {
"direction": {
- "enum": ["in"]
+ "const": "in"
},
"id": {
"type": "string",
@@ -373,9 +395,10 @@
}
},
{
+ "type": "object",
"properties": {
"direction": {
- "enum": ["out"]
+ "const": "out"
},
"createIfNotExists": {
"type": "boolean",
@@ -386,9 +409,10 @@
]
},
"tableBinding": {
+ "type": "object",
"properties": {
"type": {
- "enum": ["table"]
+ "const": "table"
},
"tableName": {
"type": "string",
@@ -409,9 +433,10 @@
},
"oneOf": [
{
+ "type": "object",
"properties": {
"direction": {
- "enum": ["in"]
+ "const": "in"
},
"take": {
"type": "string",
@@ -424,21 +449,23 @@
}
},
{
+ "type": "object",
"properties": {
"direction": {
- "enum": ["out"]
+ "const": "out"
}
}
}
]
},
"notificationHubBinding": {
+ "type": "object",
"properties": {
"type": {
- "enum": ["notificationHub"]
+ "const": "notificationHub"
},
"direction": {
- "enum": ["out"]
+ "const": "out"
},
"tagExpression": {
"type": "string",
@@ -460,12 +487,13 @@
}
},
"twilioSmsBinding": {
+ "type": "object",
"properties": {
"type": {
- "enum": ["twilioSms"]
+ "const": "twilioSms"
},
"direction": {
- "enum": ["out"]
+ "const": "out"
},
"accountSid": {
"type": "string",
@@ -490,12 +518,13 @@
}
},
"sendGridBinding": {
+ "type": "object",
"properties": {
"type": {
- "enum": ["sendGrid"]
+ "const": "sendGrid"
},
"direction": {
- "enum": ["out"]
+ "const": "out"
},
"apiKey": {
"type": "string",
@@ -520,6 +549,7 @@
}
},
"sqlBinding": {
+ "type": "object",
"properties": {
"connectionStringSetting": {
"type": "string",
@@ -528,9 +558,10 @@
},
"oneOf": [
{
+ "type": "object",
"properties": {
"type": {
- "enum": ["sqlTrigger"]
+ "const": "sqlTrigger"
},
"tableName": {
"type": "string",
@@ -539,12 +570,13 @@
}
},
{
+ "type": "object",
"properties": {
"type": {
- "enum": ["sql"]
+ "const": "sql"
},
"direction": {
- "enum": ["in"]
+ "const": "in"
},
"commandText": {
"type": "string",
@@ -561,6 +593,7 @@
}
},
{
+ "type": "object",
"properties": {
"type": {
"const": "sql"
@@ -577,6 +610,7 @@
]
},
"kustoBinding": {
+ "type": "object",
"properties": {
"connection": {
"type": "string",
@@ -591,14 +625,15 @@
"description": "A managed service identity that has to be attached to use the bindings."
},
"type": {
- "enum": ["kusto"]
+ "const": "kusto"
}
},
"oneOf": [
{
+ "type": "object",
"properties": {
"direction": {
- "enum": ["in"]
+ "const": "in"
},
"kqlCommand": {
"type": "string",
@@ -611,9 +646,10 @@
}
},
{
+ "type": "object",
"properties": {
"direction": {
- "enum": ["out"]
+ "const": "out"
},
"tableName": {
"type": "string",
@@ -632,6 +668,7 @@
]
},
"mySqlBinding": {
+ "type": "object",
"properties": {
"connectionStringSetting": {
"type": "string",
@@ -640,12 +677,13 @@
},
"oneOf": [
{
+ "type": "object",
"properties": {
"type": {
- "enum": ["mysql"]
+ "const": "mysql"
},
"direction": {
- "enum": ["in"]
+ "const": "in"
},
"commandText": {
"type": "string",
@@ -662,12 +700,13 @@
}
},
{
+ "type": "object",
"properties": {
"type": {
"const": "mysql"
},
"direction": {
- "enum": ["out"]
+ "const": "out"
},
"commandText": {
"type": "string",
@@ -676,9 +715,10 @@
}
},
{
+ "type": "object",
"properties": {
"type": {
- "enum": ["mysqlTrigger"]
+ "const": "mysqlTrigger"
},
"tableName": {
"type": "string",
@@ -689,7 +729,6 @@
]
}
},
- "id": "https://json.schemastore.org/function.json",
"properties": {
"disabled": {
"type": "boolean",
@@ -732,7 +771,7 @@
"pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$"
},
{
- "enum": [null]
+ "const": null
}
]
},
@@ -744,7 +783,7 @@
"pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$"
},
{
- "enum": [null]
+ "const": null
}
]
},
@@ -756,7 +795,7 @@
"pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$"
},
{
- "enum": [null]
+ "const": null
}
]
}
@@ -766,6 +805,7 @@
"type": "array",
"description": "A list of function bindings.",
"items": {
+ "$ref": "#/definitions/bindingBase",
"oneOf": [
{
"$ref": "#/definitions/dynamicBinding"
@@ -822,11 +862,6 @@
}
]
}
- ],
- "allOf": [
- {
- "$ref": "#/definitions/bindingBase"
- }
]
}
}
From 0883ffc5520b4490d057cf372d1ce231035c011c Mon Sep 17 00:00:00 2001
From: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
Date: Fri, 28 Aug 2026 02:06:23 +0000
Subject: [PATCH 14/36] Migrated foxx-manifest.json to draft-07 (#5975)
Signed-off-by: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
---
src/schema-validation.jsonc | 3 ---
src/schemas/json/foxx-manifest.json | 4 ++--
2 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/src/schema-validation.jsonc b/src/schema-validation.jsonc
index 1ac82f1147b..1f78bff01a4 100644
--- a/src/schema-validation.jsonc
+++ b/src/schema-validation.jsonc
@@ -1163,9 +1163,6 @@
"externalSchema": ["foundryvtt-base-package-manifest.json"],
"unknownKeywords": ["deprecationMessage"]
},
- "foxx-manifest.json": {
- "externalSchema": ["base-04.json"]
- },
"gematik-test-patients.json": {
"unknownKeywords": ["existingJavaType"]
},
diff --git a/src/schemas/json/foxx-manifest.json b/src/schemas/json/foxx-manifest.json
index b99f660efc2..a1a412b3e7f 100644
--- a/src/schemas/json/foxx-manifest.json
+++ b/src/schemas/json/foxx-manifest.json
@@ -1,7 +1,7 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/foxx-manifest.json",
"description": "Schema for ArangoDB Foxx service manifests",
- "id": "https://json.schemastore.org/foxx-manifest.json",
"properties": {
"configuration": {
"type": "object",
From 17ffef9835802901bccb45ec7f6eedeef54add42 Mon Sep 17 00:00:00 2001
From: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
Date: Fri, 28 Aug 2026 02:06:56 +0000
Subject: [PATCH 15/36] Migrated dotnetcli.host.json to draft-07 (#5967)
Signed-off-by: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
---
src/schema-validation.jsonc | 1 -
src/schemas/json/dotnetcli.host.json | 8 +++++---
2 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/src/schema-validation.jsonc b/src/schema-validation.jsonc
index 1f78bff01a4..d0af1fdfbad 100644
--- a/src/schema-validation.jsonc
+++ b/src/schema-validation.jsonc
@@ -60,7 +60,6 @@
"devinit.schema-5.0.json",
"devinit.schema-6.0.json",
"dofigen.json",
- "dotnetcli.host.json",
"drone.json",
"drupal-recipe.json",
"enonic-xp-admin-extension-8.0.0-B4.json",
diff --git a/src/schemas/json/dotnetcli.host.json b/src/schemas/json/dotnetcli.host.json
index 2da86d15549..3a77b5babed 100644
--- a/src/schemas/json/dotnetcli.host.json
+++ b/src/schemas/json/dotnetcli.host.json
@@ -1,7 +1,9 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/dotnetcli.host.json",
"definitions": {
"symbolInfo": {
+ "type": "object",
"properties": {
"isHidden": {
"anyOf": [
@@ -9,7 +11,8 @@
"type": "boolean"
},
{
- "pattern": "^(true|false)$"
+ "type": "string",
+ "pattern": "^(?:true|false)$"
}
]
},
@@ -22,7 +25,6 @@
}
}
},
- "id": "https://json.schemastore.org/dotnetcli.host.json",
"properties": {
"symbolInfo": {
"type": "object",
From 8e4aaf018ccf6ead1b2a4d1fe63e2d1349d840b1 Mon Sep 17 00:00:00 2001
From: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
Date: Fri, 28 Aug 2026 02:07:46 +0000
Subject: [PATCH 16/36] Migrated coffeelint.json to draft-07 (#5948)
Signed-off-by: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
---
src/schema-validation.jsonc | 1 -
src/schemas/json/coffeelint.json | 272 +++++++++----------------------
2 files changed, 78 insertions(+), 195 deletions(-)
diff --git a/src/schema-validation.jsonc b/src/schema-validation.jsonc
index d0af1fdfbad..4e5f2bfa967 100644
--- a/src/schema-validation.jsonc
+++ b/src/schema-validation.jsonc
@@ -42,7 +42,6 @@
"codeclimate.json",
"codeship-services.json",
"codeship-steps.json",
- "coffeelint.json",
"commands.json",
"commitlintrc.json",
"compile-commands.json",
diff --git a/src/schemas/json/coffeelint.json b/src/schemas/json/coffeelint.json
index 382f2974eca..7d87c483bd3 100644
--- a/src/schemas/json/coffeelint.json
+++ b/src/schemas/json/coffeelint.json
@@ -1,5 +1,6 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/coffeelint.json",
"additionalProperties": true,
"definitions": {
"base": {
@@ -13,23 +14,16 @@
}
}
},
- "id": "https://json.schemastore.org/coffeelint.json",
"properties": {
"arrow_spacing": {
+ "$ref": "#/definitions/base",
"description": "This rule checks to see that there is spacing before and after the arrow operator that declares a function. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"braces_spacing": {
+ "$ref": "#/definitions/base",
"description": "This rule checks to see that there is the proper spacing inside curly braces. The spacing amount is specified by `spaces`. The spacing amount for empty objects is specified by `empty_object_spaces`. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ],
+ "type": "object",
"properties": {
"empty_object_spaces": {
"type": "integer",
@@ -42,28 +36,19 @@
}
},
"camel_case_classes": {
+ "$ref": "#/definitions/base",
"description": "This rule mandates that all class names are CamelCased. Camel casing class names is a generally accepted way of distinguishing constructor functions - which require the `new` prefix to behave properly - from plain old functions. [default level: error]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"coffeescript_error": {
+ "$ref": "#/definitions/base",
"description": "[default level: error]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"colon_assignment_spacing": {
+ "$ref": "#/definitions/base",
"description": "This rule checks to see that there is spacing before and after the colon in a colon assignment (i.e., classes, objects). [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ],
+ "type": "object",
"properties": {
"spacing": {
"type": "object",
@@ -81,12 +66,9 @@
}
},
"cyclomatic_complexity": {
+ "$ref": "#/definitions/base",
"description": "Examine the complexity of your application. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ],
+ "type": "object",
"properties": {
"value": {
"type": "integer"
@@ -94,44 +76,29 @@
}
},
"duplicate_key": {
+ "$ref": "#/definitions/base",
"description": "Prevents defining duplicate keys in object literals and classes. [default level: error]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"empty_constructor_needs_parens": {
+ "$ref": "#/definitions/base",
"description": "Requires constructors with no parameters to include the parens. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"ensure_comprehensions": {
+ "$ref": "#/definitions/base",
"description": "This rule makes sure that parentheses are around comprehensions. [default level: warn]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"eol_last": {
+ "$ref": "#/definitions/base",
"description": "Checks that the file ends with a single newline. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"indentation": {
+ "$ref": "#/definitions/base",
"description": "This rule imposes a standard number of spaces to be used for indentation. Since whitespace is significant in CoffeeScript, it's critical that a project chooses a standard indentation format and stays consistent. Other roads lead to darkness. [default level: error]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ],
+ "type": "object",
"properties": {
"value": {
"type": "integer"
@@ -139,12 +106,9 @@
}
},
"line_endings": {
+ "$ref": "#/definitions/base",
"description": "This rule ensures your project uses only windows or unix line endings. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ],
+ "type": "object",
"properties": {
"value": {
"type": "string",
@@ -153,12 +117,9 @@
}
},
"max_line_length": {
+ "$ref": "#/definitions/base",
"description": "This rule imposes a maximum line length on your code. [default level: error]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ],
+ "type": "object",
"properties": {
"value": {
"type": "integer"
@@ -169,20 +130,14 @@
}
},
"missing_fat_arrows": {
+ "$ref": "#/definitions/base",
"description": "Warns when you use `this` inside a function that wasn't defined with a fat arrow. This rule does not apply to methods defined in a class, since they have `this` bound to the class instance (or the class itself, for class methods). [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"newlines_after_classes": {
+ "$ref": "#/definitions/base",
"description": "Checks the number of newlines between classes and other code. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ],
+ "type": "object",
"properties": {
"value": {
"type": "integer"
@@ -190,44 +145,29 @@
}
},
"no_backticks": {
+ "$ref": "#/definitions/base",
"description": "Backticks allow snippets of JavaScript to be embedded in CoffeeScript. While some folks consider backticks useful in a few niche circumstances, they should be avoided because so none of JavaScript's 'bad parts', like with and eval, sneak into CoffeeScript. [default level: error]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"no_debugger": {
+ "$ref": "#/definitions/base",
"description": "This rule detects the `debugger` statement. [default level: warn]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"no_empty_functions": {
+ "$ref": "#/definitions/base",
"description": "Disallows declaring empty functions. The goal of this rule is that unintentional empty callbacks can be detected. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"no_empty_param_list": {
+ "$ref": "#/definitions/base",
"description": "This rule prohibits empty parameter lists in function definitions. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"no_implicit_braces": {
+ "$ref": "#/definitions/base",
"description": "This rule prohibits implicit braces when declaring object literals. Implicit braces can make code more difficult to understand, especially when used in combination with optional parenthesis. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ],
+ "type": "object",
"properties": {
"strict": {
"type": "boolean"
@@ -235,94 +175,59 @@
}
},
"no_implicit_parens": {
+ "$ref": "#/definitions/base",
"description": "This rule prohibits implicit parens on function calls. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"no_interpolation_in_single_quotes": {
+ "$ref": "#/definitions/base",
"description": "This rule prohibits string interpolation in a single quoted string. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"no_nested_string_interpolation": {
+ "$ref": "#/definitions/base",
"description": "This rule warns about nested string interpolation, as it tends to make code harder to read and understand. [default level: warn]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"no_plusplus": {
+ "$ref": "#/definitions/base",
"description": "This rule forbids the increment and decrement arithmetic operators. Some people believe the `++` and `--` to be cryptic and the cause of bugs due to misunderstandings of their precedence rules. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"no_private_function_fat_arrows": {
+ "$ref": "#/definitions/base",
"description": "Warns when you use the fat arrow for a private function inside a class definition scope. It is not necessary and it does not do anything. [default level: warn]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"no_stand_alone_at": {
+ "$ref": "#/definitions/base",
"description": "This rule checks that no stand alone `@` are in use, they are discouraged. [default level: ignore]",
- "type": "object",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"no_tabs": {
+ "$ref": "#/definitions/base",
"description": "This rule forbids tabs in indentation. Enough said. [default level: error]",
- "type": "object",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"no_this": {
+ "$ref": "#/definitions/base",
"description": "This rule prohibits `this`. Use `@` instead. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"no_throwing_strings": {
+ "$ref": "#/definitions/base",
"description": "This rule forbids throwing string literals or interpolations. While JavaScript (and CoffeeScript by extension) allow any expression to be thrown, it is best to only throw `Error` objects, because they contain valuable debugging information like the stack trace. [default level: error]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"no_trailing_semicolons": {
+ "$ref": "#/definitions/base",
"description": "This rule prohibits trailing semicolons, since they are needless cruft in CoffeeScript. [default level: error]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"no_trailing_whitespace": {
+ "$ref": "#/definitions/base",
"description": "This rule forbids trailing whitespace in your code, since it is needless cruft. [default level: error]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ],
+ "type": "object",
"properties": {
"allowed_in_comments": {
"type": "boolean"
@@ -333,60 +238,39 @@
}
},
"no_unnecessary_double_quotes": {
+ "$ref": "#/definitions/base",
"description": "This rule prohibits double quotes unless string interpolation is used or the string contains single quotes. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"no_unnecessary_fat_arrows": {
+ "$ref": "#/definitions/base",
"description": "Disallows defining functions with fat arrows when `this` is not used within the function. [default level: warn]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"non_empty_constructor_needs_parens": {
+ "$ref": "#/definitions/base",
"description": "Requires constructors with parameters to include the parens. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"prefer_english_operator": {
+ "$ref": "#/definitions/base",
"description": "This rule prohibits `&&`, `||`, `==`, `!=` and `!`. Use `and`, `or`, `is`, `isnt`, and `not` instead. `!!` (for converting to a boolean) is ignored. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"space_operators": {
+ "$ref": "#/definitions/base",
"description": "This rule enforces that operators have space around them. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"spacing_after_comma": {
+ "$ref": "#/definitions/base",
"description": "This rule checks to make sure you have a space after commas. [default level: ignore]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
},
"transform_messes_up_line_numbers": {
+ "$ref": "#/definitions/base",
"description": "This rule detects when changes are made by transform function, and warns that line numbers are probably incorrect. [default level: warn]",
- "allOf": [
- {
- "$ref": "#/definitions/base"
- }
- ]
+ "type": "object"
}
},
"title": "JSON schema for coffeelint.json files",
From 8f1ea95be7e6ce0e3ba4a105a43139be94fd1243 Mon Sep 17 00:00:00 2001
From: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
Date: Fri, 28 Aug 2026 02:09:25 +0000
Subject: [PATCH 17/36] Migrated crowdin.json to draft-07 (#5957)
Signed-off-by: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
---
src/schema-validation.jsonc | 1 -
src/schemas/json/crowdin.json | 8 ++++++--
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/src/schema-validation.jsonc b/src/schema-validation.jsonc
index 4e5f2bfa967..4f3470228fc 100644
--- a/src/schema-validation.jsonc
+++ b/src/schema-validation.jsonc
@@ -47,7 +47,6 @@
"compile-commands.json",
"compilerconfig.json",
"creatomic.json",
- "crowdin.json",
"dart-test.json",
"datalogic-scan2deploy-android.json",
"datalogic-scan2deploy-ce.json",
diff --git a/src/schemas/json/crowdin.json b/src/schemas/json/crowdin.json
index a60bdca32f2..5f216dbcaf2 100644
--- a/src/schemas/json/crowdin.json
+++ b/src/schemas/json/crowdin.json
@@ -1,8 +1,8 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/crowdin.json",
"$comment": "https://support.crowdin.com/configuration-file/",
"description": "Configuration for Crowdin, a crowd-translation platform.",
- "id": "https://json.schemastore.org/crowdin.json",
"properties": {
"project_id": {
"title": "Project ID",
@@ -82,6 +82,7 @@
}
},
"translation_replace": {
+ "type": "object",
"title": "Translation Replace",
"additionalProperties": {
"type": "string"
@@ -177,14 +178,17 @@
"type": "boolean"
},
"languages_mapping": {
+ "type": "object",
"title": "Language Mapping",
"properties": {
"two_letters_code": {
+ "type": "object",
"additionalProperties": {
"type": "string"
}
},
"android_code": {
+ "type": "object",
"additionalProperties": {
"type": "string"
}
From 57dbae09f67e308e1b83d2bedbe921f32fa32f22 Mon Sep 17 00:00:00 2001
From: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
Date: Fri, 28 Aug 2026 02:10:53 +0000
Subject: [PATCH 18/36] Migrated compilerconfig.json to draft-07 (#5952)
Signed-off-by: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
---
src/schema-validation.jsonc | 1 -
src/schemas/json/compilerconfig.json | 27 ++++++++++++++++++++------
src/schemas/json/compilerdefaults.json | 4 ++--
3 files changed, 23 insertions(+), 9 deletions(-)
diff --git a/src/schema-validation.jsonc b/src/schema-validation.jsonc
index 4f3470228fc..2a481ab16fd 100644
--- a/src/schema-validation.jsonc
+++ b/src/schema-validation.jsonc
@@ -45,7 +45,6 @@
"commands.json",
"commitlintrc.json",
"compile-commands.json",
- "compilerconfig.json",
"creatomic.json",
"dart-test.json",
"datalogic-scan2deploy-android.json",
diff --git a/src/schemas/json/compilerconfig.json b/src/schemas/json/compilerconfig.json
index c8cd385f910..9bcf4793ce8 100644
--- a/src/schemas/json/compilerconfig.json
+++ b/src/schemas/json/compilerconfig.json
@@ -1,9 +1,12 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/compilerconfig.json",
"definitions": {
"lessOptions": {
+ "type": "object",
"properties": {
"inputFile": {
+ "type": "string",
"pattern": "\\.less$"
},
"options": {
@@ -15,9 +18,11 @@
}
},
"sassOptions": {
+ "type": "object",
"properties": {
"inputFile": {
- "pattern": "\\.(scss|sass)$"
+ "type": "string",
+ "pattern": "\\.s[ac]ss$"
},
"options": {
"$ref": "compilerdefaults.json#/definitions/sass"
@@ -28,8 +33,10 @@
}
},
"stylusOptions": {
+ "type": "object",
"properties": {
"inputFile": {
+ "type": "string",
"pattern": "\\.styl$"
},
"options": {
@@ -41,9 +48,11 @@
}
},
"coffeeScriptOptions": {
+ "type": "object",
"properties": {
"inputFile": {
- "pattern": "\\.coffee$|\\.litcoffee$"
+ "type": "string",
+ "pattern": "\\.(?:lit)?coffee$"
},
"options": {
"$ref": "compilerdefaults.json#/definitions/coffeeScript"
@@ -54,8 +63,10 @@
}
},
"icedCoffeeScriptOptions": {
+ "type": "object",
"properties": {
"inputFile": {
+ "type": "string",
"pattern": "\\.iced$"
},
"options": {
@@ -67,9 +78,11 @@
}
},
"babelOptions": {
+ "type": "object",
"properties": {
"inputFile": {
- "pattern": "\\.(jsx|js|es6)$"
+ "type": "string",
+ "pattern": "\\.(?:jsx?|es6)$"
},
"minify": {
"$ref": "compilerdefaults.json#/definitions/javascriptMinify"
@@ -77,9 +90,11 @@
}
},
"handlebarsOptions": {
+ "type": "object",
"properties": {
"inputFile": {
- "pattern": "\\.(hbs|handlebars)$"
+ "type": "string",
+ "pattern": "\\.(?:hbs|handlebars)$"
},
"options": {
"$ref": "compilerdefaults.json#/definitions/handlebars"
@@ -90,6 +105,7 @@
}
},
"config": {
+ "type": "object",
"required": ["outputFile", "inputFile"],
"properties": {
"includeInProject": {
@@ -148,7 +164,6 @@
}
},
"description": "Schema for bundleconfig.json files",
- "id": "https://json.schemastore.org/compilerconfig.json",
"items": {
"$ref": "#/definitions/config"
},
diff --git a/src/schemas/json/compilerdefaults.json b/src/schemas/json/compilerdefaults.json
index 1e571a36adb..91b8c4dfea3 100644
--- a/src/schemas/json/compilerdefaults.json
+++ b/src/schemas/json/compilerdefaults.json
@@ -1,5 +1,6 @@
{
- "$schema": "http://json-schema.org/draft-04/schema#",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "https://json.schemastore.org/compilerdefaults.json",
"definitions": {
"less": {
"description": "Specify options for the compiler.",
@@ -269,7 +270,6 @@
}
},
"description": "Schema for bundleconfig.json files",
- "id": "https://json.schemastore.org/compilerdefaults.json",
"properties": {
"compilers": {
"type": "object",
From 7db0907d2bd44dd35c522e29b99c0ca9491b87b8 Mon Sep 17 00:00:00 2001
From: Vessel9817 <151808241+Vessel9817@users.noreply.github.com>
Date: Fri, 28 Aug 2026 02:15:56 +0000
Subject: [PATCH 19/36] Migrated debugsettings.json to draft-07 (#5961)
Co-authored-by: Edwin Kofler Premium sponsors:
-
@@ -113,7 +111,7 @@
Do you build IDEs or editors that integrate with SchemaStore.org, or host a schema for your paying customers, consider a sponsorship.
SchemaStore.org sponsorships ♡
+SchemaStore.org sponsorships ♡