id = "ovsx"
name = "ovsx"
homepage = "https://github.com/eclipse-openvsx/openvsx"
description = "Command line interface for Eclipse Open VSX."
executables = ["ovsx"]
[dotfiles]
paths = []
exclude = []
secret = ["~/.ovsx"]
[commands]
format = 1
label = "Open VSX"
description = "Publish an extension to an Open VSX registry. Other ovsx commands are left out."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = false, short_attached = false, short_bundles = false }
[[commands.subcommand]]
path = ["publish"]
label = "Publish an extension"
[[commands.subcommand.source]]
id = "help"
kind = "help"
revision = "ovsx publish --help"
evidence = """
Usage: ovsx publish [options] [extension.vsix]
-t, --target <targets...> Target architectures
-i, --packagePath <paths...> Publish the provided VSIX packages.
--pre-release Mark this package as a pre-release
--skip-duplicate Fail silently if version already exists on the
--no-dependencies Disable dependency detection via npm or yarn
-r, --registryUrl <url> Use the registry API at this base URL.
-p, --pat <token> Personal access token.
"""
[[commands.subcommand.field]]
id = "vsix"
label = "VSIX file"
description = "Leave empty to package the current directory first."
type = "path"
position = 0
path = { kind = "file", role = "input", must_exist = true }
sources = ["help"]
[[commands.subcommand.field]]
id = "registry_url"
label = "Registry URL"
type = "url"
option = ["--registryUrl", "-r"]
sources = ["help"]
[[commands.subcommand.field]]
id = "target"
label = "Target architectures"
type = "string"
option = ["--target", "-t"]
sources = ["help"]
[[commands.subcommand.field]]
id = "pre_release"
label = "Pre-release"
type = "boolean"
option = ["--pre-release"]
sources = ["help"]
[[commands.subcommand.field]]
id = "skip_duplicate"
label = "Skip if version exists"
type = "boolean"
option = ["--skip-duplicate"]
sources = ["help"]
[[commands.subcommand.field]]
id = "no_dependencies"
label = "Disable dependency detection"
type = "boolean"
option = ["--no-dependencies"]
sources = ["help"]
[[commands.subcommand.task]]
id = "publish"
label = "Publish a VSIX"
fields = ["vsix", "registry_url"]
required = ["vsix"]
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["vsix", "registry_url", "target", "pre_release", "skip_duplicate", "no_dependencies"]