[python] cleanup the bindings

classic Classic list List threaded Threaded
6 messages Options
Patrick Totzke Patrick Totzke
Reply | Threaded
Open this post in threaded view
|

[python] cleanup the bindings


These patches clean up the bindings a bit.
I ran `pep8` and `pyflakes` over the code and fixed the parts it didn't like.
Lastly, I fixed some reStructuredText syntax errors that lead to warnings
while building the sphinx docs.
Best,
/p
_______________________________________________
notmuch mailing list
[hidden email]
http://notmuchmail.org/mailman/listinfo/notmuch
Patrick Totzke Patrick Totzke
Reply | Threaded
Open this post in threaded view
|

[PATCH 1/3] pep8 fixes

no changes to the code, only fixed stuff denounced by `pep8 *py`
---
 bindings/python/notmuch/__init__.py |    2 +-
 bindings/python/notmuch/database.py |   28 +++++++++++++++----------
 bindings/python/notmuch/globals.py  |   38 +++++++++++++++++++++++++++++++---
 bindings/python/notmuch/thread.py   |    1 -
 4 files changed, 52 insertions(+), 17 deletions(-)

diff --git a/bindings/python/notmuch/__init__.py b/bindings/python/notmuch/__init__.py
index 539afed..f3ff987 100644
--- a/bindings/python/notmuch/__init__.py
+++ b/bindings/python/notmuch/__init__.py
@@ -69,7 +69,7 @@ from notmuch.globals import (
     TagTooLongError,
     UnbalancedFreezeThawError,
     UnbalancedAtomicError,
-    NotInitializedError
+    NotInitializedError,
 )
 from notmuch.version import __VERSION__
 __LICENSE__ = "GPL v3+"
diff --git a/bindings/python/notmuch/database.py b/bindings/python/notmuch/database.py
index 25b4b1b..ca17273 100644
--- a/bindings/python/notmuch/database.py
+++ b/bindings/python/notmuch/database.py
@@ -27,6 +27,7 @@ from notmuch.thread import Threads
 from notmuch.message import Messages, Message
 from notmuch.tag import Tags
 
+
 class Database(object):
     """The :class:`Database` is the highest-level object that notmuch
     provides. It references a notmuch database, and can be opened in
@@ -83,12 +84,14 @@ class Database(object):
 
     """ notmuch_database_find_message"""
     _find_message = nmlib.notmuch_database_find_message
-    _find_message.argtypes = [NotmuchDatabaseP, c_char_p, POINTER(NotmuchMessageP)]
+    _find_message.argtypes = [NotmuchDatabaseP, c_char_p,
+                              POINTER(NotmuchMessageP)]
     _find_message.restype = c_uint
 
     """notmuch_database_find_message_by_filename"""
     _find_message_by_filename = nmlib.notmuch_database_find_message_by_filename
-    _find_message_by_filename.argtypes = [NotmuchDatabaseP, c_char_p, POINTER(NotmuchMessageP)]
+    _find_message_by_filename.argtypes = [NotmuchDatabaseP, c_char_p,
+                                          POINTER(NotmuchMessageP)]
     _find_message_by_filename.restype = c_uint
 
     """notmuch_database_get_all_tags"""
@@ -177,8 +180,8 @@ class Database(object):
         :param status: Open the database in read-only or read-write mode
         :type status:  :attr:`MODE`
         :returns: Nothing
-        :exception: Raises :exc:`NotmuchError` in case
-            of any failure (possibly after printing an error message on stderr).
+        :exception: Raises :exc:`NotmuchError` in case of any failure
+                    (possibly after printing an error message on stderr).
         """
         res = Database._open(_str(path), mode)
 
@@ -293,12 +296,12 @@ class Database(object):
         (creating it if it does not exist(?))
 
         .. warning:: This call needs a writeable database in
-           :attr:`Database.MODE`.READ_WRITE mode. The underlying library will exit the
-           program if this method is used on a read-only database!
+           :attr:`Database.MODE`.READ_WRITE mode. The underlying library will
+           exit the program if this method is used on a read-only database!
 
         :param path: An unicode string containing the path relative to the path
-              of database (see :meth:`get_path`), or else should be an absolute path
-              with initial components that match the path of 'database'.
+              of database (see :meth:`get_path`), or else should be an absolute
+              path with initial components that match the path of 'database'.
         :returns: :class:`Directory` or raises an exception.
         :exception:
             :exc:`NotmuchError` with :attr:`STATUS`.FILE_ERROR
@@ -325,7 +328,8 @@ class Database(object):
         return Directory(_str(abs_dirpath), dir_p, self)
 
     _add_message = nmlib.notmuch_database_add_message
-    _add_message.argtypes = [NotmuchDatabaseP, c_char_p, POINTER(NotmuchMessageP)]
+    _add_message.argtypes = [NotmuchDatabaseP, c_char_p,
+                             POINTER(NotmuchMessageP)]
     _add_message.restype = c_uint
 
     def add_message(self, filename, sync_maildir_flags=False):
@@ -490,7 +494,8 @@ class Database(object):
         """Returns :class:`Tags` with a list of all tags found in the database
 
         :returns: :class:`Tags`
-        :execption: :exc:`NotmuchError` with :attr:`STATUS`.NULL_POINTER on error
+        :execption: :exc:`NotmuchError` with :attr:`STATUS`.NULL_POINTER
+                    on error
         """
         self._assert_db_is_initialized()
         tags_p = Database._get_all_tags(self._db)
@@ -748,7 +753,8 @@ class Directory(object):
     _get_child_directories.restype = NotmuchFilenamesP
 
     def _assert_dir_is_initialized(self):
-        """Raises a NotmuchError(:attr:`STATUS`.NOT_INITIALIZED) if dir_p is None"""
+        """Raises a NotmuchError(:attr:`STATUS`.NOT_INITIALIZED)
+        if dir_p is None"""
         if self._dir_p is None:
             raise NotmuchError(STATUS.NOT_INITIALIZED)
 
diff --git a/bindings/python/notmuch/globals.py b/bindings/python/notmuch/globals.py
index 36354fc..f5c8d52 100644
--- a/bindings/python/notmuch/globals.py
+++ b/bindings/python/notmuch/globals.py
@@ -89,6 +89,7 @@ Invoke the class method `notmuch.STATUS.status2str` with a status value as
 argument to receive a human readable string"""
 STATUS.__name__ = 'STATUS'
 
+
 class NotmuchError(Exception):
     """Is initiated with a (notmuch.STATUS[, message=None]). It will not
     return an instance of the class NotmuchError, but a derived instance
@@ -97,7 +98,8 @@ class NotmuchError(Exception):
 
     @classmethod
     def get_exc_subclass(cls, status):
-        """Returns a fine grained Exception() type,detailing the error status"""
+        """Returns a fine grained Exception() type,
+        detailing the error status"""
         subclasses = {
             STATUS.OUT_OF_MEMORY: OutOfMemoryError,
             STATUS.READ_ONLY_DATABASE: ReadOnlyDatabaseError,
@@ -109,7 +111,7 @@ class NotmuchError(Exception):
             STATUS.TAG_TOO_LONG: TagTooLongError,
             STATUS.UNBALANCED_FREEZE_THAW: UnbalancedFreezeThawError,
             STATUS.UNBALANCED_ATOMIC: UnbalancedAtomicError,
-            STATUS.NOT_INITIALIZED: NotInitializedError
+            STATUS.NOT_INITIALIZED: NotInitializedError,
         }
         assert 0 < status <= len(subclasses)
         return subclasses[status]
@@ -125,7 +127,7 @@ class NotmuchError(Exception):
         # no 'status' or cls is subclass already, return 'cls' instance
         if not status or cls != NotmuchError:
             return super(NotmuchError, cls).__new__(cls)
-        subclass = cls.get_exc_subclass(status) # which class to use?
+        subclass = cls.get_exc_subclass(status)  # which class to use?
         return subclass.__new__(subclass, *args, **kwargs)
 
     def __init__(self, status=None, message=None):
@@ -140,28 +142,49 @@ class NotmuchError(Exception):
         else:
             return 'Unknown error'
 
+
 # List of Subclassed exceptions that correspond to STATUS values and are
 # subclasses of NotmuchError.
 class OutOfMemoryError(NotmuchError):
     status = STATUS.OUT_OF_MEMORY
+
+
 class ReadOnlyDatabaseError(NotmuchError):
     status = STATUS.READ_ONLY_DATABASE
+
+
 class XapianError(NotmuchError):
     status = STATUS.XAPIAN_EXCEPTION
+
+
 class FileError(NotmuchError):
     status = STATUS.FILE_ERROR
+
+
 class FileNotEmailError(NotmuchError):
     status = STATUS.FILE_NOT_EMAIL
+
+
 class DuplicateMessageIdError(NotmuchError):
     status = STATUS.DUPLICATE_MESSAGE_ID
+
+
 class NullPointerError(NotmuchError):
     status = STATUS.NULL_POINTER
+
+
 class TagTooLongError(NotmuchError):
     status = STATUS.TAG_TOO_LONG
+
+
 class UnbalancedFreezeThawError(NotmuchError):
     status = STATUS.UNBALANCED_FREEZE_THAW
+
+
 class UnbalancedAtomicError(NotmuchError):
     status = STATUS.UNBALANCED_ATOMIC
+
+
 class NotInitializedError(NotmuchError):
     """Derived from NotmuchError, this occurs if the underlying data
     structure (e.g. database is not initialized (yet) or an iterator has
@@ -170,7 +193,6 @@ class NotInitializedError(NotmuchError):
     status = STATUS.NOT_INITIALIZED
 
 
-
 def _str(value):
     """Ensure a nicely utf-8 encoded string to pass to libnotmuch
 
@@ -187,34 +209,42 @@ class NotmuchDatabaseS(Structure):
     pass
 NotmuchDatabaseP = POINTER(NotmuchDatabaseS)
 
+
 class NotmuchQueryS(Structure):
     pass
 NotmuchQueryP = POINTER(NotmuchQueryS)
 
+
 class NotmuchThreadsS(Structure):
     pass
 NotmuchThreadsP = POINTER(NotmuchThreadsS)
 
+
 class NotmuchThreadS(Structure):
     pass
 NotmuchThreadP = POINTER(NotmuchThreadS)
 
+
 class NotmuchMessagesS(Structure):
     pass
 NotmuchMessagesP = POINTER(NotmuchMessagesS)
 
+
 class NotmuchMessageS(Structure):
     pass
 NotmuchMessageP = POINTER(NotmuchMessageS)
 
+
 class NotmuchTagsS(Structure):
     pass
 NotmuchTagsP = POINTER(NotmuchTagsS)
 
+
 class NotmuchDirectoryS(Structure):
     pass
 NotmuchDirectoryP = POINTER(NotmuchDirectoryS)
 
+
 class NotmuchFilenamesS(Structure):
     pass
 NotmuchFilenamesP = POINTER(NotmuchFilenamesS)
diff --git a/bindings/python/notmuch/thread.py b/bindings/python/notmuch/thread.py
index d903c76..dbd6c0f 100644
--- a/bindings/python/notmuch/thread.py
+++ b/bindings/python/notmuch/thread.py
@@ -247,7 +247,6 @@ class Thread(object):
             raise NotmuchError(STATUS.NOT_INITIALIZED)
         return Thread._get_thread_id(self._thread)
 
-
     _get_total_messages = nmlib.notmuch_thread_get_total_messages
     _get_total_messages.argtypes = [NotmuchThreadP]
     _get_total_messages.restype = c_int
--
1.7.4.1

_______________________________________________
notmuch mailing list
[hidden email]
http://notmuchmail.org/mailman/listinfo/notmuch
Patrick Totzke Patrick Totzke
Reply | Threaded
Open this post in threaded view
|

[PATCH 2/3] remove unused imports

In reply to this post by Patrick Totzke
---
 bindings/python/notmuch/database.py |    4 ++--
 bindings/python/notmuch/filename.py |    2 +-
 bindings/python/notmuch/globals.py  |    1 -
 bindings/python/notmuch/message.py  |    3 +--
 bindings/python/notmuch/thread.py   |    2 +-
 5 files changed, 5 insertions(+), 7 deletions(-)

diff --git a/bindings/python/notmuch/database.py b/bindings/python/notmuch/database.py
index ca17273..706e8c8 100644
--- a/bindings/python/notmuch/database.py
+++ b/bindings/python/notmuch/database.py
@@ -18,9 +18,9 @@ Copyright 2010 Sebastian Spaeth <[hidden email]>'
 """
 
 import os
-from ctypes import c_int, c_char_p, c_void_p, c_uint, c_long, byref, POINTER
+from ctypes import c_char_p, c_void_p, c_uint, c_long, byref, POINTER
 from notmuch.globals import (nmlib, STATUS, NotmuchError, NotInitializedError,
-     NullPointerError, OutOfMemoryError, XapianError, Enum, _str,
+     NullPointerError, Enum, _str,
      NotmuchDatabaseP, NotmuchDirectoryP, NotmuchMessageP, NotmuchTagsP,
      NotmuchQueryP, NotmuchMessagesP, NotmuchThreadsP, NotmuchFilenamesP)
 from notmuch.thread import Threads
diff --git a/bindings/python/notmuch/filename.py b/bindings/python/notmuch/filename.py
index 077754e..6b332a9 100644
--- a/bindings/python/notmuch/filename.py
+++ b/bindings/python/notmuch/filename.py
@@ -18,7 +18,7 @@ Copyright 2010 Sebastian Spaeth <[hidden email]>'
 """
 from ctypes import c_char_p
 from notmuch.globals import (nmlib, STATUS, NotmuchError,
-    NotmuchFilenamesP, NotmuchMessagesP, NotmuchMessageP)
+    NotmuchFilenamesP, NotmuchMessageP)
 
 
 class Filenames(object):
diff --git a/bindings/python/notmuch/globals.py b/bindings/python/notmuch/globals.py
index f5c8d52..f69c73d 100644
--- a/bindings/python/notmuch/globals.py
+++ b/bindings/python/notmuch/globals.py
@@ -18,7 +18,6 @@ Copyright 2010 Sebastian Spaeth <[hidden email]>'
 """
 
 from ctypes import CDLL, c_char_p, c_int, Structure, POINTER
-from ctypes.util import find_library
 
 #-----------------------------------------------------------------------------
 #package-global instance of the notmuch library
diff --git a/bindings/python/notmuch/message.py b/bindings/python/notmuch/message.py
index e0c7eda..2534742 100644
--- a/bindings/python/notmuch/message.py
+++ b/bindings/python/notmuch/message.py
@@ -19,7 +19,7 @@ Copyright 2010 Sebastian Spaeth <[hidden email]>'
 """
 
 
-from ctypes import c_char_p, c_void_p, c_long, c_uint, c_int
+from ctypes import c_char_p, c_long, c_uint, c_int
 from datetime import date
 from notmuch.globals import (nmlib, STATUS, NotmuchError, Enum, _str,
     NotmuchTagsP, NotmuchMessagesP, NotmuchMessageP, NotmuchFilenamesP)
@@ -27,7 +27,6 @@ from notmuch.tag import Tags
 from notmuch.filename import Filenames
 import sys
 import email
-import types
 try:
     import simplejson as json
 except ImportError:
diff --git a/bindings/python/notmuch/thread.py b/bindings/python/notmuch/thread.py
index dbd6c0f..c575c88 100644
--- a/bindings/python/notmuch/thread.py
+++ b/bindings/python/notmuch/thread.py
@@ -17,7 +17,7 @@ along with notmuch.  If not, see <http://www.gnu.org/licenses/>.
 Copyright 2010 Sebastian Spaeth <[hidden email]>'
 """
 
-from ctypes import c_char_p, c_void_p, c_long, c_int
+from ctypes import c_char_p, c_long, c_int
 from notmuch.globals import (nmlib, STATUS,
     NotmuchError, NotmuchThreadP, NotmuchThreadsP, NotmuchMessagesP,
     NotmuchTagsP,)
--
1.7.4.1

_______________________________________________
notmuch mailing list
[hidden email]
http://notmuchmail.org/mailman/listinfo/notmuch
Patrick Totzke Patrick Totzke
Reply | Threaded
Open this post in threaded view
|

[PATCH 3/3] fix sphinx compile-time warnings

In reply to this post by Patrick Totzke
no changes to the code, only makes compiling the docs smoother
as some rsT syntax errors were fixed
---
 bindings/python/docs/source/index.rst |   17 ++++----
 bindings/python/notmuch/database.py   |   67 ++++++++++++++++++--------------
 bindings/python/notmuch/message.py    |   27 +++++++------
 bindings/python/notmuch/tag.py        |   11 +++--
 4 files changed, 68 insertions(+), 54 deletions(-)

diff --git a/bindings/python/docs/source/index.rst b/bindings/python/docs/source/index.rst
index 73d2a3b..f7d3d60 100644
--- a/bindings/python/docs/source/index.rst
+++ b/bindings/python/docs/source/index.rst
@@ -138,10 +138,10 @@ More information on specific topics can be found on the following pages:
 
    .. method:: __len__()
 
-   .. warning:: :meth:`__len__` was removed in version 0.6 as it exhausted
-       the iterator and broke list(Messages()). Use the
-       :meth:`Query.count_messages` function or use
-       `len(list(msgs))`.
+   .. warning::
+  
+      :meth:`__len__` was removed in version 0.6 as it exhausted the iterator and broke
+      list(Messages()). Use the :meth:`Query.count_messages` function or use `len(list(msgs))`.
 
 :class:`Message` -- A single message
 ----------------------------------------
@@ -205,10 +205,11 @@ More information on specific topics can be found on the following pages:
 
    .. method:: __len__
 
-       .. warning:: :meth:`__len__` was removed in version 0.6 as it
-           exhausted the iterator and broke list(Tags()). Use
-           :meth:`len(list(msgs))` instead if you need to know the
-           number of tags.
+       .. warning::
+
+            :meth:`__len__` was removed in version 0.6 as it exhausted the iterator and broke
+            list(Tags()). Use :meth:`len(list(msgs))` instead if you need to know the number of
+            tags.
 
    .. automethod:: __str__
 
diff --git a/bindings/python/notmuch/database.py b/bindings/python/notmuch/database.py
index 706e8c8..471adaa 100644
--- a/bindings/python/notmuch/database.py
+++ b/bindings/python/notmuch/database.py
@@ -40,16 +40,19 @@ class Database(object):
     :exc:`XapianError` as the underlying database has been
     modified. Close and reopen the database to continue working with it.
 
-    .. note:: Any function in this class can and will throw an
-           :exc:`NotInitializedError` if the database was not
-           intitialized properly.
-
-    .. note:: Do remember that as soon as we tear down (e.g. via `del
-           db`) this object, all underlying derived objects such as
-           queries, threads, messages, tags etc will be freed by the
-           underlying library as well. Accessing these objects will lead
-           to segfaults and other unexpected behavior. See above for
-           more details.
+    .. note::
+
+        Any function in this class can and will throw an
+        :exc:`NotInitializedError` if the database was not intitialized
+        properly.
+
+    .. note::
+
+        Do remember that as soon as we tear down (e.g. via `del db`) this
+        object, all underlying derived objects such as queries, threads,
+        messages, tags etc will be freed by the underlying library as well.
+        Accessing these objects will lead to segfaults and other unexpected
+        behavior. See above for more details.
     """
     _std_db_path = None
     """Class attribute to cache user's default database"""
@@ -253,10 +256,8 @@ class Database(object):
         neither begin nor end necessarily flush modifications to disk.
 
         :returns: :attr:`STATUS`.SUCCESS or raises
-
-        :exception: :exc:`NotmuchError`:
-            :attr:`STATUS`.XAPIAN_EXCEPTION
-                Xapian exception occurred; atomic section not entered.
+        :exception: :exc:`NotmuchError`: :attr:`STATUS`.XAPIAN_EXCEPTION
+                    Xapian exception occurred; atomic section not entered.
 
         *Added in notmuch 0.9*"""
         self._assert_db_is_initialized()
@@ -295,9 +296,11 @@ class Database(object):
         """Returns a :class:`Directory` of path,
         (creating it if it does not exist(?))
 
-        .. warning:: This call needs a writeable database in
-           :attr:`Database.MODE`.READ_WRITE mode. The underlying library will
-           exit the program if this method is used on a read-only database!
+        .. warning::
+
+            This call needs a writeable database in
+            :attr:`Database.MODE`.READ_WRITE mode. The underlying library will
+            exit the program if this method is used on a read-only database!
 
         :param path: An unicode string containing the path relative to the path
               of database (see :meth:`get_path`), or else should be an absolute
@@ -459,10 +462,11 @@ class Database(object):
     def find_message_by_filename(self, filename):
         """Find a message with the given filename
 
-        .. warning:: This call needs a writeable database in
-           :attr:`Database.MODE`.READ_WRITE mode. The underlying library will
-           exit the program if this method is used on a read-only
-           database!
+        .. warning::
+
+            This call needs a writeable database in
+            :attr:`Database.MODE`.READ_WRITE mode. The underlying library will
+            exit the program if this method is used on a read-only database!
 
         :returns: If the database contains a message with the given
             filename, then a class:`Message:` is returned.  This
@@ -791,10 +795,12 @@ class Directory(object):
           and know that it only needs to add files if the mtime of the
           directory and files are newer than the stored timestamp.
 
-          .. note:: :meth:`get_mtime` function does not allow the caller
-                 to distinguish a timestamp of 0 from a non-existent
-                 timestamp. So don't store a timestamp of 0 unless you are
-                 comfortable with that.
+          .. note::
+
+                :meth:`get_mtime` function does not allow the caller to
+                distinguish a timestamp of 0 from a non-existent timestamp. So
+                don't store a timestamp of 0 unless you are comfortable with
+                that.
 
           :param mtime: A (time_t) timestamp
           :returns: Nothing on success, raising an exception on failure.
@@ -928,13 +934,16 @@ class Filenames(object):
     def __len__(self):
         """len(:class:`Filenames`) returns the number of contained files
 
-        .. note:: As this iterates over the files, we will not be able to
-               iterate over them again! So this will fail::
+        .. note::
+
+            As this iterates over the files, we will not be able to
+            iterate over them again! So this will fail::
 
                  #THIS FAILS
                  files = Database().get_directory('').get_child_files()
-                 if len(files) > 0:              #this 'exhausts' msgs
-                     # next line raises NotmuchError(:attr:`STATUS`.NOT_INITIALIZED)!!!
+                 if len(files) > 0:  # this 'exhausts' msgs
+                     # next line raises
+                     # NotmuchError(:attr:`STATUS`.NOT_INITIALIZED)
                      for file in files: print file
         """
         if self._files_p is None:
diff --git a/bindings/python/notmuch/message.py b/bindings/python/notmuch/message.py
index 2534742..2f0fd92 100644
--- a/bindings/python/notmuch/message.py
+++ b/bindings/python/notmuch/message.py
@@ -127,10 +127,12 @@ class Messages(object):
         """Return the unique :class:`Tags` in the contained messages
 
         :returns: :class:`Tags`
-        :exceptions: :exc:`NotmuchError` STATUS.NOT_INITIALIZED if not inited
+        :exceptions: :exc:`NotmuchError` STATUS.NOT_INITIALIZED if not init'ed
 
-        .. note:: :meth:`collect_tags` will iterate over the messages and
-          therefore will not allow further iterations.
+        .. note::
+
+            :meth:`collect_tags` will iterate over the messages and therefore
+            will not allow further iterations.
         """
         if self._msgs is None:
             raise NotmuchError(STATUS.NOT_INITIALIZED)
@@ -358,14 +360,15 @@ class Message(object):
         """Gets all direct replies to this message as :class:`Messages`
         iterator
 
-        .. note:: This call only makes sense if 'message' was
-          ultimately obtained from a :class:`Thread` object, (such as
-          by coming directly from the result of calling
-          :meth:`Thread.get_toplevel_messages` or by any number of
-          subsequent calls to :meth:`get_replies`). If this message was
-          obtained through some non-thread means, (such as by a call
-          to :meth:`Query.search_messages`), then this function will
-          return `None`.
+        .. note::
+
+            This call only makes sense if 'message' was ultimately obtained from
+            a :class:`Thread` object, (such as by coming directly from the
+            result of calling :meth:`Thread.get_toplevel_messages` or by any
+            number of subsequent calls to :meth:`get_replies`). If this message
+            was obtained through some non-thread means, (such as by a call to
+            :meth:`Query.search_messages`), then this function will return
+            `None`.
 
         :returns: :class:`Messages` or `None` if there are no replies to
             this message.
@@ -646,7 +649,7 @@ class Message(object):
 
         This means that changes to the message state, (via :meth:`add_tag`,
         :meth:`remove_tag`, and :meth:`remove_all_tags`), will not be
-        committed to the database until the message is :meth:`thaw`ed.
+        committed to the database until the message is :meth:`thaw` ed.
 
         Multiple calls to freeze/thaw are valid and these calls will
         "stack". That is there must be as many calls to thaw as to freeze
diff --git a/bindings/python/notmuch/tag.py b/bindings/python/notmuch/tag.py
index f3a3d27..a77b68d 100644
--- a/bindings/python/notmuch/tag.py
+++ b/bindings/python/notmuch/tag.py
@@ -113,11 +113,12 @@ class Tags(object):
     def __str__(self):
         """The str() representation of Tags() is a space separated list of tags
 
-        .. note:: As this iterates over the tags, we will not be able
-               to iterate over them again (as in retrieve them)! If
-               the tags have been exhausted already, this will raise a
-               :exc:`NotmuchError` STATUS.NOT_INITIALIZED on
-               subsequent attempts.
+        .. note::
+
+            As this iterates over the tags, we will not be able to iterate over
+            them again (as in retrieve them)! If the tags have been exhausted
+            already, this will raise a :exc:`NotmuchError`
+            STATUS.NOT_INITIALIZED on subsequent attempts.
         """
         return " ".join(self)
 
--
1.7.4.1

_______________________________________________
notmuch mailing list
[hidden email]
http://notmuchmail.org/mailman/listinfo/notmuch
spaetz spaetz
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 1/3] pep8 fixes

In reply to this post by Patrick Totzke
On Mon,  5 Dec 2011 21:12:33 +0000, Patrick Totzke <[hidden email]> wrote:
> no changes to the code, only fixed stuff denounced by `pep8 *py`

Hi, just tried to apply but it doesn't apply cleanly anymore, can you
update the patch to latest master?

Sorry for letting this languish for so long.

Sebastian

_______________________________________________
notmuch mailing list
[hidden email]
http://notmuchmail.org/mailman/listinfo/notmuch

attachment0 (203 bytes) Download Attachment
Patrick Totzke Patrick Totzke
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 1/3] pep8 fixes

Quoting Sebastian Spaeth (2012-01-02 16:23:05)
>Hi, just tried to apply but it doesn't apply cleanly anymore, can you
>update the patch to latest master?

no need: you already pushed these three patches on Dec 6, if i'm not mistaken.
best,
/p
_______________________________________________
notmuch mailing list
[hidden email]
http://notmuchmail.org/mailman/listinfo/notmuch