Skip to content

PkgSettings

class: PkgSettings

class PkgSettings(BaseSettings):
    after_file_write_hooks: tuple[str, Ellipsis] | None = None
    changelog_cleanup_count: int = 30
    changelog_keep_count: int = 10
    commit_fix_diff_suffixes: tuple[str, Ellipsis] = ...
    commit_fix_prefixes: tuple[str, Ellipsis] = ...
    dev_mode: bool = False
    file_header: str = '# Generated by pkg-ext'
    is_bot: bool = False
    pkg_directory: Path
    repo_root: Path
    skip_open_in_editor: bool = False
    keep_private: bool = False
    tag_prefix: str = ''
    keep_prerelease: bool = False
    ignored_symbols: frozenset[str] = frozenset()
    format_command: tuple[str, Ellipsis] = ('ruff', 'format')
    max_bump_type: BumpType | None = None
    default_branch: str = 'main'
    repo_url: str = ''

Environment Variables

Variable Field Type Default
after_file_write_hooks after_file_write_hooks tuple[str, Ellipsis] None
changelog_cleanup_count changelog_cleanup_count int 30
changelog_keep_count changelog_keep_count int 10
commit_fix_diff_suffixes commit_fix_diff_suffixes tuple[str, Ellipsis] ...
commit_fix_prefixes commit_fix_prefixes tuple[str, Ellipsis] ...
dev_mode dev_mode bool False
file_header file_header str '# Generated by pkg-ext'
is_bot is_bot bool False
pkg_directory pkg_directory Path PydanticUndefined
repo_root repo_root Path PydanticUndefined
skip_open_in_editor skip_open_in_editor bool False
keep_private keep_private bool False
tag_prefix tag_prefix str ''
keep_prerelease keep_prerelease bool False
ignored_symbols ignored_symbols frozenset[str] frozenset()
format_command format_command tuple[str, Ellipsis] ('ruff', 'format')
max_bump_type max_bump_type BumpType None

Fields

Field Type Default Since Description
after_file_write_hooks tuple[str, Ellipsis] | None - unreleased -
changelog_cleanup_count int 30 unreleased If the .changelog reach more than changelog_cleanup_count post-merge we will add an extra commit cleaning up the old entries. We archive the changelog_cleanup_count - changelog_keep_count to directories.
changelog_keep_count int 10 unreleased When the changelog is cleaned, how many entries are kept?
commit_fix_diff_suffixes tuple[str, Ellipsis] ... unreleased -
commit_fix_prefixes tuple[str, Ellipsis] ... unreleased -
dev_mode bool False unreleased -
file_header str '# Generated by pkg-ext' unreleased Added to the top of each generated file.
is_bot bool False unreleased -
pkg_directory Path PydanticUndefined unreleased -
repo_root Path PydanticUndefined unreleased -
skip_open_in_editor bool False unreleased -
keep_private bool False unreleased -
tag_prefix str '' unreleased -
keep_prerelease bool False unreleased -
ignored_symbols frozenset[str] frozenset() unreleased -
format_command tuple[str, Ellipsis] ('ruff', 'format') unreleased -
max_bump_type BumpType | None - unreleased -

Changes

Version Change
0.3.0 field 'after_file_write_hooks' default added: None
0.3.0 field 'max_bump_type' default added: None
0.3.0 added base class 'BaseSettings'
0.2.0 field 'repo_root' default removed (was: PydanticUndefined)
0.2.0 field 'pkg_directory' default removed (was: PydanticUndefined)
0.1.1 added optional field 'repo_url' (default: '')
0.1.1 added optional field 'default_branch' (default: 'main')
0.1.0 Made public