Hi,

yesterday I found that since some time (sorry, cannot say that more exactly)
my offlineimap's presynchook started to fail, and investigating I have a doubt
about what were wrong.

My script basically looks like this:

  from notmuch2 import Database

  def handle_deleted_messages(db):
      ...

  def move_spam_to_junk(db):
      ...
      
  with Database() as db:
      handle_deleted_messages(db)
      move_spam_to_junk(db)

It surely worked without issue for years, but now I get this:

  >>> from notmuch2 import Database
  >>> db = Database()
  Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    File "/usr/lib/python3/dist-packages/notmuch2/_database.py", line 160, in 
__init__
      raise errors.NotmuchError(ret, msg)
  notmuch2.NoDatabaseError: Error: could not locate database.

even if Database doc still says that the path argument can be omitted:

 |  :param path: The directory of where the database is stored.  If
 |     ``None`` the location will be searched according to
 |     :ref:`database`

Sure enough the configuration contains a "database" section, and the
default_path() class method is able to look it up:

  >>> Database.default_path()
  PosixPath('/home/lele/Maildir')

so fixed my problem with a minor tweak, ie doing

  with Database(Database.default_path()) as db:
      handle_deleted_messages(db)
      move_spam_to_junk(db)

I wonder where the trouble is is: has something changed in the notmuch2
bridge, or is the Database documentation out of date?

Thanks in advance and happy xmass everybody!

ciao, lele.
-- 
nickname: Lele Gaifax | Quando vivrò di quello che ho pensato ieri
real: Emanuele Gaifas | comincerò ad aver paura di chi mi copia.
[email protected]  |                 -- Fortunato Depero, 1929.

_______________________________________________
notmuch mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to