mex.release package

Submodules

mex.release.cli module

mex.release.cli.common_setup(ctx: Context) → None

This Callback runs before each command.

It looks for the root directory and puts it into the context.

mex.release.cli.find_project_root(start_path: Path) → Path

Looks for pyproject.toml.

mex.release.cli.main() → None

Entrypoint for cli script.

mex.release.emoji module

mex.release.emoji._download(path: str) → Any

Fetch and parse an emojibase data file.

mex.release.emoji._get_shortcodes() → list[str]

Collect the canonical shortcode of every emoji that element can resolve.

mex.release.emoji.get_emoji(ctx: Context) → None

Pick an emoji shortcode for the unique hash of project name and version.

mex.release.release module

class mex.release.release.Releaser(project_root: Path, bump: str)

Bases: object

Wrap the release functionality in a single object.

__init__(project_root: Path, bump: str) → None

Create a new releaser instance.

check_default_branch() → None

Only continue if default branch is checked out.

check_version_string() → None

Validate the version string to format 0.3.14.

check_working_tree() → None

Only continue if working tree is empty.

get_current_version() → str

Extract version from pyproject data.

release() → None

Execute the release command.

run(*args: str) → str

Run a command as subproccess, first print it, later print the output.

mex.release.release.release(ctx: Context, bump: Annotated[str, <typer.models.ArgumentInfo object at 0x7f3ddf0c2e40>]='patch') → None

Release a new version of the project.

mex.release.sign module

mex.release.sign._run(*args: str) → None

Run command with arguments and exit in case of non-zero return.

mex.release.sign.setup_commit_signing() → None

Setup commit signing.

Module contents