repology_client.types#

Type definitions for Repology API, implemented as Pydantic models.

repology_client.types.Distromap#

Intermapping of packages between two repositories.

alias of tuple[tuple[tuple[str, …], tuple[str, …]], …]

class repology_client.types.ResolvePackageType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#

Bases: StrEnum

Package type enum for the “Project by package name” tool.

SOURCE = 'srcname'#
BINARY = 'binname'#
class repology_client.types.ProjectsRange(**data: Any)#

Bases: BaseModel

Object for constructing a string representation of range.

>>> str(ProjectsRange())
''
>>> str(ProjectsRange(start="firefox"))
'firefox'
>>> str(ProjectsRange(end="firefox"))
'..firefox'
>>> str(ProjectsRange(start="firefox", end="firefoxpwa"))
'firefox..firefoxpwa'
model_config: ClassVar[ConfigDict] = {'defer_build': True, 'extra': 'forbid', 'validate_assignment': True}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

start: str#

First project to be included in range.

end: str#

Last project to be included in range.

class repology_client.types.Package(**data: Any)#

Bases: BaseModel

Package description type returned by /api/v1/projects/ endpoint.

model_config: ClassVar[ConfigDict] = {'defer_build': True, 'frozen': True}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

repo: str#

Name of repository for this package.

visiblename: str#

Package name as shown to the user by Repology.

version: str#

Package version (sanitized, as shown by Repology).

status: str#

Package status (‘newest’, ‘unique’, ‘outdated’, etc).

subrepo: str | None#

Name of subrepository (if applicable).

srcname: str | None#

Package name as used in repository - source package name.

binname: str | None#

Package name as used in repository - binary package name.

origversion: str | None#

Package version as in repository.

summary: str | None#

One-line description of the package.

categories: frozenset[str] | None#

List of package categories.

licenses: frozenset[str] | None#

List of package licenses.

maintainers: frozenset[str] | None#

List of package maintainers.