id = "hatch" name = "Hatch" homepage = "https://hatch.pypa.io/latest/" description = "Modern, extensible Python project management." executables = ["hatch"] [dotfiles] # Hatch's own documentation gives platform-specific locations for its # persistent config.toml: macOS Preferences, Windows Local AppData, and Unix # XDG_CONFIG_HOME (default ~/.config): # https://hatch.pypa.io/1.0/config/hatch/ 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"]