id = "hatch"
name = "Hatch"
homepage = "https://hatch.pypa.io/latest/"
description = "Modern, extensible Python project management."
executables = ["hatch"]
[dotfiles]
paths = [
"[preferences]/hatch/config.toml",
"%LOCALAPPDATA%/hatch/config.toml",
"[configHome]/hatch/config.toml",
]
secret = []
side_effect = false
[commands]
format = 1
label = "Hatch"
description = "Build a project and create a new one. Environments, versioning, publishing and other subcommands are left out."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false }
[[commands.subcommand]]
path = ["build"]
label = "Build a project"
description = "Build sdist and wheel artifacts."
[[commands.subcommand.source]]
id = "help"
kind = "manual"
url = "https://hatch.pypa.io/latest/cli/reference/"
evidence = """hatch build [OPTIONS] [LOCATION]
--target, -t The target to build, overriding project defaults. This may be selected multiple times e.g. -t sdist -t wheel
--hooks-only Whether or not to only execute build hooks
--no-hooks Whether or not to disable build hooks
--clean, -c Whether or not existing artifacts should first be removed"""
[[commands.subcommand.field]]
id = "target"
label = "Target"
type = "string"
option = ["--target", "-t"]
multiple = true
suggestions = [{ value = "sdist", label = "sdist" }, { value = "wheel", label = "wheel" }]
sources = ["help"]
[[commands.subcommand.field]]
id = "clean"
label = "Remove existing artifacts first"
type = "boolean"
option = ["--clean", "-c"]
effect = "delete"
sources = ["help"]
[[commands.subcommand.field]]
id = "no_hooks"
label = "Disable build hooks"
type = "boolean"
option = ["--no-hooks"]
sources = ["help"]
[[commands.subcommand.field]]
id = "hooks_only"
label = "Only run build hooks"
type = "boolean"
option = ["--hooks-only"]
sources = ["help"]
[[commands.subcommand.field]]
id = "location"
label = "Output location"
type = "path"
path = { kind = "directory", role = "output" }
position = 0
min = 0
sources = ["help"]
[[commands.subcommand.task]]
id = "build"
label = "Build sdist and wheel"
fields = ["target", "clean", "location"]
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["target", "clean", "location"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["no_hooks", "hooks_only"]
[[commands.subcommand]]
path = ["new"]
label = "Create a project"
description = "Create or initialize a project."
[[commands.subcommand.source]]
id = "help"
kind = "manual"
url = "https://hatch.pypa.io/latest/cli/reference/"
evidence = """hatch new [OPTIONS] [NAME] [LOCATION]
--interactive, -i Interactively choose details about the project
--cli Give the project a command line interface
--init Initialize an existing project"""
[[commands.subcommand.field]]
id = "name"
label = "Project name"
type = "string"
position = 0
min = 0
sources = ["help"]
[[commands.subcommand.field]]
id = "location"
label = "Location"
type = "path"
path = { kind = "directory", role = "output" }
position = 1
min = 0
sources = ["help"]
[[commands.subcommand.field]]
id = "cli"
label = "Add a command line interface"
type = "boolean"
option = ["--cli"]
sources = ["help"]
[[commands.subcommand.field]]
id = "init"
label = "Initialize existing project"
type = "boolean"
option = ["--init"]
sources = ["help"]
[[commands.subcommand.task]]
id = "new"
label = "New project"
fields = ["name", "location", "cli"]
required = ["name"]
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["name", "location", "cli", "init"]