maestral.exceptions¶
This module defines Maestral’s error classes. It should be kept free of memory heavy imports.
All errors inherit from MaestralApiError which has title and message attributes
to display the error to the user. Errors which are related to syncing a specific
file or folder inherit from SyncError, a subclass of MaestralApiError.
Module Contents¶
- exception maestral.exceptions.MaestralApiError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
ExceptionBase class for Maestral errors
MaestralApiError provides attributes that can be used to generate human-readable error messages and metadata regarding affected file paths (if any).
Errors originating from the Dropbox API or the ‘local API’ both inherit from MaestralApiError.
- Parameters:
title (str) – A short description of the error type. This can be used in a CLI or GUI to give a short error summary.
message (str) – A more verbose description which can include instructions on how to proceed to fix the error.
dbx_path (str | None) – Dropbox path of the item that caused the error.
dbx_path_from (str | None) – Dropbox origin path of the item that caused the error. This should be set for instance when error occurs when moving an item.
local_path (str | None) – Local path of the item that caused the error.
local_path_from (str | None) – Local origin path of the item that caused the error. This should be set for instance when error occurs when moving an item.
- exception maestral.exceptions.SyncError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
MaestralApiErrorBase class for recoverable sync issues.
- exception maestral.exceptions.DataCorruptionError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
SyncErrorRaised when data is corrupted in transit during upload or download.
- exception maestral.exceptions.DataChangedError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
SyncErrorRaised when file changes during upload.
- exception maestral.exceptions.InsufficientPermissionsError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
SyncErrorRaised when accessing a file or folder fails due to insufficient permissions, both locally and on Dropbox servers.
- exception maestral.exceptions.InsufficientSpaceError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
SyncErrorRaised when the Dropbox account or local drive has insufficient storage space.
- exception maestral.exceptions.PathError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
SyncErrorRaised when there is an issue with the provided file or folder path such as invalid characters or a too long file name.
- exception maestral.exceptions.NotFoundError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
SyncErrorRaised when a file or folder is requested but does not exist.
- exception maestral.exceptions.ConflictError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
SyncErrorRaised when trying to create a file or folder which already exists.
- exception maestral.exceptions.FileConflictError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
ConflictErrorRaised when trying to create a file which already exists.
- exception maestral.exceptions.FolderConflictError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
SyncErrorRaised when trying to create or folder which already exists.
- exception maestral.exceptions.IsAFolderError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
SyncErrorRaised when a file is required but a folder is provided.
- exception maestral.exceptions.NotAFolderError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
SyncErrorRaised when a folder is required but a file is provided.
- exception maestral.exceptions.DropboxServerError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
SyncErrorRaised in case of internal Dropbox errors.
- exception maestral.exceptions.RestrictedContentError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
SyncErrorRaised when trying to sync restricted content, for instance when adding a file with a DMCA takedown notice to a public folder.
- exception maestral.exceptions.UnsupportedFileError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
SyncErrorRaised when this file type cannot be downloaded but only exported. This is the case for G-suite files.
- exception maestral.exceptions.FileSizeError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
SyncErrorRaised when attempting to upload a file larger than 350 GB in an upload session or larger than 150 MB in a single upload. Also raised when attempting to download a file with a size that exceeds file system’s limit.
- exception maestral.exceptions.FileReadError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
SyncErrorRaised when reading a local file failed.
- exception maestral.exceptions.SymlinkError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
SyncErrorRaised when we cannot sync a symlink.
- exception maestral.exceptions.DropboxConnectionError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
MaestralApiErrorRaised when the connection to Dropbox fails
- exception maestral.exceptions.CancelledError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
MaestralApiErrorRaised when syncing is cancelled by the user.
- exception maestral.exceptions.NotLinkedError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
MaestralApiErrorRaised when no Dropbox account is linked.
- exception maestral.exceptions.InvalidDbidError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
MaestralApiErrorRaised when the given Dropbox ID does not correspond to an existing account.
- exception maestral.exceptions.KeyringAccessError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
MaestralApiErrorRaised when retrieving a saved auth token from the user keyring fails.
- exception maestral.exceptions.NoDropboxDirError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
MaestralApiErrorRaised when the local Dropbox folder cannot be found.
- exception maestral.exceptions.CacheDirError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
MaestralApiErrorRaised when creating the cache directory fails.
- exception maestral.exceptions.InotifyError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
MaestralApiErrorRaised when the local Dropbox folder is too large to monitor with inotify.
- exception maestral.exceptions.OutOfMemoryError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
MaestralApiErrorRaised when there is insufficient memory to complete an operation.
- exception maestral.exceptions.DatabaseError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
MaestralApiErrorRaised when reading or writing to the database fails.
- exception maestral.exceptions.DropboxAuthError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
MaestralApiErrorRaised when authentication fails.
- exception maestral.exceptions.TokenExpiredError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
DropboxAuthErrorRaised when authentication fails because the user’s token has expired.
- exception maestral.exceptions.TokenRevokedError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
DropboxAuthErrorRaised when authentication fails because the user’s token has been revoked.
- exception maestral.exceptions.CursorResetError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
MaestralApiErrorRaised when the cursor used for a longpoll or list-folder request has been invalidated. Dropbox will very rarely invalidate a cursor. If this happens, a new cursor for the respective folder has to be obtained through files_list_folder. This may require re-syncing the entire Dropbox.
- exception maestral.exceptions.BadInputError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
MaestralApiErrorRaised when an API request is made with bad input. This should not happen during syncing but only in case of manual API calls.
- exception maestral.exceptions.BusyError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
MaestralApiErrorRaised when trying to perform an action which is only possible in the idle state and we cannot block or queue the job.
- exception maestral.exceptions.UnsupportedFileTypeForDiff(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
MaestralApiErrorRaised when a diff for an unsupported file type was issued.
Bases:
MaestralApiErrorRaised when creating a shared link fails.
- exception maestral.exceptions.PathRootError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
MaestralApiErrorRaised when making an API call with an invalid path root header.
- exception maestral.exceptions.UpdateCheckError(title, message='', dbx_path=None, dbx_path_from=None, local_path=None, local_path_from=None)[source]¶
Bases:
MaestralApiErrorRaised when checking for updates fails.