SchemaStore.nvim
SchemaStore.nvim copied to clipboard
Schema versions
I noticed that some objects in the store have versions. Is there a way to specify version for buffer/name/pattern in neovim? I.e. for openapi spec the store has:
{
description = "A Open API documentation files",
fileMatch = { "openapi.json", "openapi.yml", "openapi.yaml" },
name = "openapi.json",
url = "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/schemas/v3.1/schema.json",
versions = {
["3.0"] = "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/schemas/v3.0/schema.json",
["3.1"] = "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/schemas/v3.1/schema.json"
}
}
It seems like for any openapi.yml/json it validates against 3.1. To force it to use 3.0 i had to totally override schema with replace in config. Is there a more proper way to do this?
This is a good question. I tried researching the topic and wasn't able to find anything in either the JSON Schema spec or the VSCode JSON LSP docs/code about it. It's coming from the upstream SchemaStore catalog JSON file, you may want to open an issue in their repo.