Extension catalog model package

pydantic model extension_catalog_model.model.Catalog

A catalog describing a collection of extensions.

Parameters:
  • name – The name of the catalog.

  • description – A short (one sentence or so) description of what the catalog contains and what its purpose is.

  • extensions – The collection of extensions that the catalog describes.

Fields:
field description: str [Required]
field extensions: List[Extension] [Required]
field name: str [Required]
pydantic model extension_catalog_model.model.Extension

A description of an extension.

Parameters:
  • name – The extension’s name.

  • description – A short (one sentence or so) description of what the extension is and what it does.

  • author – The author or group responsible for the extension.

  • homepage – A link to the GitHub repository associated with the extension.

  • starred – Whether the extension is generally useful or recommended for most users.

  • releases – A list of available releases of the extension.

Fields:
field author: str [Required]
field description: str [Required]
field homepage: HttpUrl [Required]
field name: str [Required]
field releases: List[Release] [Required]
field starred: bool | None = False
pydantic model extension_catalog_model.model.Release

A description of an extension release hosted on GitHub.

Parameters:
  • name – The name of the release. This should be a valid semantic version.

  • main_url – The GitHub URL where the main extension jar or zip file can be downloaded.

  • required_dependency_urls – SciJava Maven, Maven Central, or GitHub URLs where required dependency jars or zip files can be downloaded.

  • optional_dependency_urls – SciJava Maven, Maven Central, or GitHub URLs where optional dependency jars or zip files can be downloaded.

  • javadoc_urls – SciJava Maven, Maven Central, or GitHub URLs where javadoc jars or zip files can be downloaded.

  • version_range – A specification of minimum and maximum compatible versions.

Fields:
field javadoc_urls: List[HttpUrl] | None = None
field main_url: HttpUrl [Required]
field name: str [Required]
field optional_dependency_urls: List[HttpUrl] | None = None
field required_dependency_urls: List[HttpUrl] | None = None
field version_range: VersionRange [Required]
pydantic model extension_catalog_model.model.VersionRange

A specification of the minimum and maximum versions that an extension supports. Versions should be specified in the form “v[MAJOR].[MINOR].[PATCH]” corresponding to semantic versions, although trailing release candidate qualifiers (eg, “-rc1”) are also allowed.

Parameters:
  • min – The minimum/lowest version (inclusive) that this extension is known to be compatible with.

  • max – The maximum/highest version (inclusive) that this extension is known to be compatible with.

  • excludes – Any specific versions within the minimum and maximum range (inclusive) that are not compatible.

Fields:
field excludes: List[str] | None = None
field max: str | None = None
field min: str = 'v0.1.0'