Skip to content

Registry

Package RegistryLink

sierra.package_manager.registry Link

Package registry for Sierra Package Manager.

Handles package metadata, search, and discovery.

ClassesLink

PackageInfo dataclass Link
Python
PackageInfo(
    name: str,
    version: str,
    description: str,
    author: str = "",
    tags: list[str] = None,
    category: str = "",
    source: str = "",
    path: str = "",
)

Package metadata information.

AttributesLink
name instance-attribute Link
Python
name: str
version instance-attribute Link
Python
version: str
description instance-attribute Link
Python
description: str
author class-attribute instance-attribute Link
Python
author: str = ''
tags class-attribute instance-attribute Link
Python
tags: list[str] = None
category class-attribute instance-attribute Link
Python
category: str = ''
source class-attribute instance-attribute Link
Python
source: str = ''
path class-attribute instance-attribute Link
Python
path: str = ''
FunctionsLink
matches_query Link
Python
matches_query(query: str) -> bool

Check if package matches search query.

PackageRegistry Link
Python
PackageRegistry(
    repo_manager, logger: UniversalLogger | None = None
)

Central registry for discovering and querying packages.

Aggregates package information from all sources.

Initialize package registry.

PARAMETER DESCRIPTION
repo_manager

Repository manager instance

TYPE: RepositoryManager

logger

Logger instance for tracking operations

TYPE: UniversalLogger DEFAULT: None

AttributesLink
logger instance-attribute Link
Python
logger = logger or UniversalLogger('PackageRegistry')
repo_manager instance-attribute Link
Python
repo_manager = repo_manager
FunctionsLink
refresh Link
Python
refresh() -> None

Refresh package list from all sources.

search Link
Python
search(
    query: str = "",
    tag: str | None = None,
    category: str | None = None,
    source: str | None = None,
) -> list[PackageInfo]

Search for packages.

PARAMETER DESCRIPTION
query

Search query string

TYPE: str DEFAULT: ''

tag

Filter by tag

TYPE: str DEFAULT: None

category

Filter by category

TYPE: str DEFAULT: None

source

Filter by source

TYPE: str DEFAULT: None

RETURNS DESCRIPTION
list[PackageInfo]

Matching packages

get_package Link
Python
get_package(name: str) -> PackageInfo | None

Get package by name.

PARAMETER DESCRIPTION
name

Package name

TYPE: str

RETURNS DESCRIPTION
PackageInfo | None

Package info if found

list_all Link
Python
list_all() -> list[PackageInfo]

Get all packages.

list_by_category Link
Python
list_by_category() -> dict[str, list[PackageInfo]]

Group packages by category.

get_stats Link
Python
get_stats() -> dict[str, int]

Get registry statistics.