""" Provide exception classes for :mod:`migrate` """ class Error(Exception): """Error base class.""" class ApiError(Error): """Base class for API errors.""" class KnownError(ApiError): """A known error condition.""" class UsageError(ApiError): """A known error condition where help should be displayed.""" class ControlledSchemaError(Error): """Base class for controlled schema errors.""" class InvalidVersionError(ControlledSchemaError): """Invalid version number.""" class VersionNotFoundError(KeyError): """Specified version is not present.""" class DatabaseNotControlledError(ControlledSchemaError): """Database should be under version control, but it's not.""" class DatabaseAlreadyControlledError(ControlledSchemaError): """Database shouldn't be under version control, but it is""" class WrongRepositoryError(ControlledSchemaError): """This database is under version control by another repository.""" class NoSuchTableError(ControlledSchemaError): """The table does not exist.""" class PathError(Error): """Base class for path errors.""" class PathNotFoundError(PathError): """A path with no file was required; found a file.""" class PathFoundError(PathError): """A path with a file was required; found no file.""" class RepositoryError(Error): """Base class for repository errors.""" class InvalidRepositoryError(RepositoryError): """Invalid repository error.""" class ScriptError(Error): """Base class for script errors.""" class InvalidScriptError(ScriptError): """Invalid script error.""" class InvalidVersionError(Error): """Invalid version error.""" # migrate.changeset class NotSupportedError(Error): """Not supported error""" class InvalidConstraintError(Error): """Invalid constraint error""" class MigrateDeprecationWarning(DeprecationWarning): """Warning for deprecated features in Migrate"""