Repository navigation
feat(extensions): manifestVersion, the format version of manifest.json - #1629
Merged
Merged
Conversation
Absent means format 1. The model reads it, the protocol profile says which host version reads which format, the tester's manifest check rejects a format the emulated host does not read, and the app does not list, install or load an extension in a newer format.
This was referenced Oct 16, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Asked for so the manifest format can change later without guessing from the host version.
Three versions meet in
manifest.json:version(the extension),engines.querya_desktop(the hosts the author says it runs on) and nowmanifestVersion(the format of the file). It is a whole number, 1 when absent, so every existing manifest (the ClickHouse driver, the template) keeps working with no change.ExtensionManifest.manifestVersion(+currentManifestVersion = 1);toJsonwrites it only when it is not 1.ExtensionProtocolProfile.manifestVersion: which host version first reads which format (_manifestFormats, only format 1 today). A release that adds a format raises both in one change.querya-ext-tester(the manifest check): a value that is not a whole number >= 1, or a format newer than the emulated host reads, is an error with its path.StaticRegistryRepository), install (marketplace, local file) or load (LocalExtensionRegistry) an extension in a format newer than it reads, and says to update Querya Desktop.extension-registry.md; CHANGELOG. Tests for the model, the support check, the validator on several hosts, the local registry skip and the registry reader.The registry (
QueryaHub/extensions: refuses a format Querya does not define, copies it into the index entry) and the template (setsmanifestVersion: 1) get matching commits in their repositories. Not run locally; CI decides.