Package: alot
Version: 0.9-1
Severity: normal

Hi,

with python3-gpg 1.12.0-4 I get the following error when opening alot:

Traceback (most recent call last):
  File "/usr/share/alot/alot/crypto.py", line 261, in 
_decrypt_verify_with_context
    encrypted, verify=True)
  File "/usr/lib/python3/dist-packages/gpg/core.py", line 432, in decrypt
    raise errors.BadSignatures(verify_result, results=results)
gpg.errors.BadSignatures: C91B325B77F252FB: No public key

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/alot", line 11, in <module>
    load_entry_point('alot==0.9', 'console_scripts', 'alot')()
  File "/usr/share/alot/alot/__main__.py", line 137, in main
    UI(dbman, cmdstring)
  File "/usr/share/alot/alot/ui.py", line 141, in __init__
    self.mainloop.run()
  File "/usr/lib/python3/dist-packages/urwid/main_loop.py", line 286, in run
    self._run()
  File "/usr/lib/python3/dist-packages/urwid/main_loop.py", line 384, in _run
    self.event_loop.run()
  File "/usr/lib/python3/dist-packages/urwid/main_loop.py", line 1340, in run
    reraise(*exc_info)
  File "/usr/lib/python3/dist-packages/urwid/compat.py", line 58, in reraise
    raise value
  File "/usr/lib/python3/dist-packages/urwid/main_loop.py", line 1354, in 
wrapper
    rval = f(*args,**kargs)
  File "/usr/lib/python3/dist-packages/urwid/main_loop.py", line 1313, in 
_twisted_idle_callback
    callback()
  File "/usr/lib/python3/dist-packages/urwid/main_loop.py", line 572, in 
entering_idle
    self.draw_screen()
  File "/usr/lib/python3/dist-packages/urwid/main_loop.py", line 586, in 
draw_screen
    canvas = self._topmost_widget.render(self.screen_size, focus=True)
  File "/usr/lib/python3/dist-packages/urwid/widget.py", line 144, in 
cached_render
    canv = fn(self, size, focus=focus)
  File "/usr/lib/python3/dist-packages/urwid/decoration.py", line 226, in render
    canv = self._original_widget.render(size, focus=focus)
  File "/usr/lib/python3/dist-packages/urwid/widget.py", line 144, in 
cached_render
    canv = fn(self, size, focus=focus)
  File "/usr/lib/python3/dist-packages/urwid/container.py", line 1086, in render
    focus and self.focus_part == 'body')
  File "/usr/share/alot/alot/buffers/buffer.py", line 19, in render
    return self.body.render(size, focus)
  File "/usr/lib/python3/dist-packages/urwid/widget.py", line 144, in 
cached_render
    canv = fn(self, size, focus=focus)
  File "/usr/lib/python3/dist-packages/urwid/listbox.py", line 471, in render
    (maxcol, maxrow), focus=focus)
  File "/usr/lib/python3/dist-packages/urwid/listbox.py", line 416, in 
calculate_visible
    next, pos = self._body.get_next( pos )
  File "/usr/share/alot/alot/walker.py", line 46, in get_next
    return self._get_at_pos(start_from + self.direction)
  File "/usr/share/alot/alot/walker.py", line 72, in _get_at_pos
    widget = self._get_next_item()
  File "/usr/share/alot/alot/walker.py", line 85, in _get_next_item
    next_widget = self.containerclass(next_obj, **self.kwargs)
  File "/usr/share/alot/alot/widgets/search.py", line 26, in __init__
    self.rebuild()
  File "/usr/share/alot/alot/widgets/search.py", line 61, in rebuild
    self.structure[partname])
  File "/usr/share/alot/alot/widgets/search.py", line 145, in build_text_part
    content = prepare_string(name, thread, maxw)
  File "/usr/share/alot/alot/widgets/search.py", line 213, in prepare_string
    s = content(thread)
  File "/usr/share/alot/alot/widgets/search.py", line 188, in 
prepare_content_string
    lastcontent = ' '.join(m.get_body_text() for m in msgs)
  File "/usr/share/alot/alot/widgets/search.py", line 188, in <genexpr>
    lastcontent = ' '.join(m.get_body_text() for m in msgs)
  File "/usr/share/alot/alot/db/message.py", line 266, in get_body_text
    return extract_body(self.get_email())
  File "/usr/share/alot/alot/db/message.py", line 105, in get_email
    f.read(), self._session_keys)
  File "/usr/share/alot/alot/db/utils.py", line 306, in 
decrypted_message_from_bytes
    session_keys)
  File "/usr/share/alot/alot/db/utils.py", line 263, in 
decrypted_message_from_message
    _handle_encrypted(m, m, session_keys)
  File "/usr/share/alot/alot/db/utils.py", line 176, in _handle_encrypted
    sigs, d = crypto.decrypt_verify(payload, session_keys)
  File "/usr/share/alot/alot/crypto.py", line 226, in decrypt_verify
    return _decrypt_verify_with_context(ctx, encrypted)
  File "/usr/share/alot/alot/crypto.py", line 266, in 
_decrypt_verify_with_context
    (plaintext, _, _) = ctx.decrypt(encrypted, verify=False)
  File "/usr/lib/python3/dist-packages/gpg/core.py", line 431, in decrypt
    for s in verify_result.signatures):
AttributeError: 'NoneType' object has no attribute 'signatures'


The problem is solved by upgrading python3-gpg to 1.13.1-6. Thus, alot
should gain a versioned dependency.

Thanks!

cheers, josch

Reply via email to