X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=bindings%2Fpython%2Fnotmuch%2Fdatabase.py;h=3770b13299d1af3cf4626b126c5eccbc01293911;hb=3545a2960db0017cd2e632171015069e99656488;hp=926bac63f5931882941238b866dc3b4ee5b14bc1;hpb=995303c21bb5012b7eeaa1fe5fd15ae175bfa1e6;p=notmuch diff --git a/bindings/python/notmuch/database.py b/bindings/python/notmuch/database.py index 926bac63..3770b132 100644 --- a/bindings/python/notmuch/database.py +++ b/bindings/python/notmuch/database.py @@ -195,7 +195,7 @@ class Database(object): # Raise a NotmuchError if not initialized self._verify_initialized_db() - return notmuch_database_needs_upgrade(self._db) + return nmlib.notmuch_database_needs_upgrade(self._db) def upgrade(self): """Upgrades the current database @@ -261,10 +261,10 @@ class Database(object): # return the Directory, init it with the absolute path return Directory(abs_dirpath, dir_p, self) - def add_message(self, filename): + def add_message(self, filename, sync_maildir_flags=False): """Adds a new message to the database - `filename` should be a path relative to the path of the open + :param filename: should be a path relative to the path of the open database (see :meth:`get_path`), or else should be an absolute filename with initial components that match the path of the database. @@ -274,8 +274,12 @@ class Database(object): notmuch database will reference the filename, and will not copy the entire contents of the file. - If the message contains Maildir flags, we will -depending on the - notmuch configuration- sync those tags to initial notmuch tags. + :param sync_maildir_flags: If the message contains Maildir + flags, we will -depending on the notmuch configuration- sync + those tags to initial notmuch tags, if set to `True`. It is + `False` by default to remain consistent with the libnotmuch + API. You might want to look into the underlying method + :meth:`Message.maildir_flags_to_tags`. :returns: On success, we return @@ -317,9 +321,11 @@ class Database(object): if not status in [STATUS.SUCCESS, STATUS.DUPLICATE_MESSAGE_ID]: raise NotmuchError(status) - #construct Message(), sync initial tags from Maildir flags and return + #construct Message() and return msg = Message(msg_p, self) - msg.maildir_flags_to_tags() + #automatic sync initial tags from Maildir flags + if sync_maildir_flags: + msg.maildir_flags_to_tags() return (msg, status) def remove_message(self, filename):