diff --git a/package.json b/package.json index 446b04b5..99fa850e 100644 --- a/package.json +++ b/package.json @@ -47,7 +47,7 @@ ], "license": "Apache-2.0", "dependencies": { - "ajv": "^8.13.0", + "ajv": "^8.3.0", "ajv-formats": "^2.1.0", "array.prototype.groupby": "^1.1.0", "crocks": "^0.12.4", diff --git a/src/validate/index.mjs b/src/validate/index.mjs index 629b5f69..f9002554 100644 --- a/src/validate/index.mjs +++ b/src/validate/index.mjs @@ -73,10 +73,13 @@ const run = async ({ const jsonSchemaSpec = await (await fetch('https://meta.json-schema.tools')).json() // - OpenRPC uses `additionalItems` when `items` is not an array of schemas. This fails strict validate, so we remove it - // - OpenRPC uses raw.githubusercontent.com URLs for the json-schema spec, we replace this with the up to date spec on meta.json-schema.tools const openRpcSpec = await (await fetch('https://meta.open-rpc.org')).json() + removeIgnoredAdditionalItems(openRpcSpec) - replaceUri('https://raw.githubusercontent.com/json-schema-tools/meta-schema/1.5.9/src/schema.json', 'https://meta.json-schema.tools/', openRpcSpec) + + //AJV doesn't like not having a slash at the end of the URL + replaceUri('https://meta.json-schema.tools', 'https://meta.json-schema.tools/', openRpcSpec) + Object.values(sharedSchemas).forEach(schema => { try {