Source code for semantic_release.errors
"""Custom Errors"""
[docs]
class SemanticReleaseBaseError(Exception):
"""
Base Exception from which all other custom Exceptions defined in semantic_release
inherit
"""
[docs]
class InternalError(SemanticReleaseBaseError):
"""Raised when an internal error occurs, which should never happen"""
[docs]
class InvalidConfiguration(SemanticReleaseBaseError):
"""Raised when configuration is deemed invalid"""
[docs]
class InvalidParserOptions(InvalidConfiguration):
"""Raised when the parser options are invalid"""
[docs]
class MissingGitRemote(SemanticReleaseBaseError):
"""Raised when repository is missing the configured remote origin or upstream"""
[docs]
class InvalidVersion(ValueError, SemanticReleaseBaseError):
"""
Raised when Version.parse attempts to parse a string containing
an invalid version.
"""
[docs]
class NotAReleaseBranch(InvalidConfiguration):
"""
Raised when semantic_release is invoked on a branch which isn't configured for
releases
"""
[docs]
class DetachedHeadGitError(SemanticReleaseBaseError):
"""Raised when the git repository is in a detached HEAD state"""
[docs]
class CommitParseError(SemanticReleaseBaseError):
"""
Raised when a commit cannot be parsed by a commit parser. Custom commit parsers
should also raise this Exception
"""
[docs]
class MissingMergeBaseError(SemanticReleaseBaseError):
"""
Raised when the merge base cannot be found with the current history. Generally
because of a shallow git clone.
"""
[docs]
class UnexpectedResponse(SemanticReleaseBaseError):
"""
Raised when an HTTP response cannot be parsed properly or the expected structure
is not found.
"""
[docs]
class IncompleteReleaseError(SemanticReleaseBaseError):
"""
Raised when there is a failure amongst one of the api requests when creating a
release on a remote hvcs.
"""
[docs]
class AssetUploadError(SemanticReleaseBaseError):
"""
Raised when there is a failure uploading an asset to a remote hvcs's release artifact
storage.
"""
[docs]
class ParserLoadError(SemanticReleaseBaseError):
"""
Raised when there is a failure to find, load, or instantiate a custom parser
definition.
"""
[docs]
class BuildDistributionsError(SemanticReleaseBaseError):
"""Raised when there is a failure to build the distribution files."""
[docs]
class GitAddError(SemanticReleaseBaseError):
"""Raised when there is a failure to add files to the git index."""
[docs]
class GitCommitError(SemanticReleaseBaseError):
"""Raised when there is a failure to commit the changes."""
[docs]
class GitCommitEmptyIndexError(SemanticReleaseBaseError):
"""Raised when there is an attempt to commit an empty index."""
[docs]
class GitTagError(SemanticReleaseBaseError):
"""Raised when there is a failure to tag the release."""
[docs]
class GitPushError(SemanticReleaseBaseError):
"""Raised when there is a failure to push to the git remote."""
[docs]
class GitFetchError(SemanticReleaseBaseError):
"""Raised when there is a failure to fetch from the git remote."""
[docs]
class LocalGitError(SemanticReleaseBaseError):
"""Raised when there is a failure with local git operations."""
[docs]
class UnknownUpstreamBranchError(SemanticReleaseBaseError):
"""Raised when the upstream branch cannot be determined."""
[docs]
class UpstreamBranchChangedError(SemanticReleaseBaseError):
"""Raised when the upstream branch has changed before pushing."""