httk.core.plugins.manifest

Parse and validate installed httk plugin manifests.

Attributes

Classes

PluginProgram

Describe one declared plugin program.

PluginManifest

Describe a validated plugin manifest.

Functions

parse_plugin_manifest(directory)

Parse and validate one plugin manifest.

Module Contents

httk.core.plugins.manifest.PLUGIN_MANIFEST = 'httk_plugin.toml'
class httk.core.plugins.manifest.PluginProgram

Describe one declared plugin program.

Parameters:
  • name – Name the program and its shim.

  • file – Name the program member relative to the plugin root.

  • description – Describe the program, when supplied.

name: str
file: str
description: str | None
class httk.core.plugins.manifest.PluginManifest

Describe a validated plugin manifest.

Parameters:
  • name – Name the plugin.

  • description – Describe the plugin, when supplied.

  • templates – Name project-template directories.

  • workflows – Name workflow-package directories.

  • programs – Describe declared utility programs.

  • build – Describe the optional build.

  • root – Locate the parsed plugin directory.

name: str
description: str | None
templates: tuple[str, Ellipsis]
workflows: tuple[str, Ellipsis]
programs: tuple[PluginProgram, Ellipsis]
build: httk.core.building.BuildSpec | None
root: pathlib.Path
httk.core.plugins.manifest.parse_plugin_manifest(directory)

Parse and validate one plugin manifest.

Parameters:

directory (pathlib.Path) – Locate the plugin directory.

Returns:

The validated plugin manifest.

Raises:

ValueError – If the plugin directory or manifest is malformed.

Return type:

PluginManifest