yambs.github package#

Module contents#

A module for working with GitHub releases.

class yambs.github.Github(data: dict[str, str | int | float | bool | None | dict[str, str | int | float | bool | None] | list[str | int | float | bool | None]] = None, schemas: SchemaMap = None, dest_attr: str = 'data', verify: bool = True)[source]#

Bases: YambsDictCodec, BasicDictCodec

GitHub repository information.

yambs.github.check_api_token() None[source]#

Check for a GitHub API token set via the environment.

yambs.github.github_url(netloc_prefix: str = '', scheme: str = 'https', path: str = '', params: str = '', query: str = '', fragment: str = '') ParseResult[source]#

See: https://docs.python.org/3/library/urllib.parse.html.

yambs.github.release_data(owner: str, repo: str, *args, version: str = 'latest', timeout: float = None, **kwargs) Dict[str, Any][source]#

Get latest-release data.

yambs.github.repo_release_api_url(owner: str, repo: str, version: str = 'latest') str[source]#

Get a URL string for a repository’s latest release.

yambs.github.validate_release(data: Dict[str, Any]) bool[source]#

Ensure that GitHub release data actually contains data.