semantic_release.commit_parser.scipy module

Parses commit messages using scipy tags of the form:

<tag>(<scope>): <subject>

<body>

The elements <tag>, <scope> and <body> are optional. If no tag is present, the commit will be added to the changelog section “None” and no version increment will be performed.

While <scope> is supported here it isn’t actually part of the scipy style. If it is missing, parentheses around it are too. The commit should then be of the form:

<tag>: <subject>

<body>

To communicate a breaking change add “BREAKING CHANGE” into the body at the beginning of a paragraph. Fill this paragraph with information how to migrate from the broken behavior to the new behavior. It will be added to the “Breaking” section of the changelog.

Supported Tags:

API, DEP, ENH, REV, BUG, MAINT, BENCH, BLD,
DEV, DOC, STY, TST, REL, FEAT, TEST

Supported Changelog Sections:

breaking, feature, fix, Other, None
class semantic_release.commit_parser.scipy.ScipyCommitParser(options: ScipyParserOptions)[source]

Bases: CommitParser[Union[ParsedCommit, ParseError], ScipyParserOptions]

Parser for scipy-style commit messages

parse(commit: Commit) ParseResult[source]
parser_options

alias of ScipyParserOptions

class semantic_release.commit_parser.scipy.ScipyParserOptions(allowed_tags: Tuple[str, ...] = ('API', 'DEP', 'ENH', 'REV', 'BUG', 'MAINT', 'BENCH', 'BLD', 'DEV', 'DOC', 'STY', 'TST', 'REL', 'FEAT', 'TEST'), major_tags: Tuple[str, ...] = ('API',), minor_tags: Tuple[str, ...] = ('DEP', 'DEV', 'ENH', 'REV', 'FEAT'), patch_tags: Tuple[str, ...] = ('BLD', 'BUG', 'MAINT'), default_level_bump: LevelBump = LevelBump.NO_RELEASE)[source]

Bases: ParserOptions

allowed_tags: Tuple[str, ...] = ('API', 'DEP', 'ENH', 'REV', 'BUG', 'MAINT', 'BENCH', 'BLD', 'DEV', 'DOC', 'STY', 'TST', 'REL', 'FEAT', 'TEST')
default_level_bump: LevelBump = 0
major_tags: Tuple[str, ...] = ('API',)
minor_tags: Tuple[str, ...] = ('DEP', 'DEV', 'ENH', 'REV', 'FEAT')
patch_tags: Tuple[str, ...] = ('BLD', 'BUG', 'MAINT')