Greetings, Astroid v0.13 has been released! Astroid is a lightweight and fast graphical threads-with-tags email client for notmuch. Written in C++ using GTK+, WebKit2 and GMime. Astroid can be acquired, along with instructions for use, at: https://github.com/astroidmail/astroid once you get Astroid running press '?' to get a list of keybindings for the current context. For 'The Tour' check out: https://github.com/astroidmail/astroid/wiki ## Changes since v0.12 * Move to WebKit2 We have now finally moved to WebKit2. This is a big change since WebKit2 required all DOM manipulation to be moved to a WebExtension running in a separate process. The IPC with the extension is implemented using Google ProtoBufs (>= 3.0) and Unix Domain Sockets. WebKit2 is actively maintained and consequently a long list of CVEs in the old WebKit no longer cause worries. Additionally, each part is shown in separate IFRAMEs so that essentially all received content is sandboxed (some metadata like addresses are escaped and shown in main page). This protects better against EFAIL type attacks (which I believe we were not vulnerable to anyway). Expect some instability while breaking in this new change! Important: Make sure you update your plugins! If they try to use the old WebKit GIO bindings with the new WebKit objects astroid will freeze. Part rendering: * Show parts in IFRAME * Toggle between parts without re-opening * The default part shown (HTML or TEXT) is now configurable * Optionally show HTML part if no other part Images and EFAIL: * Do not allow images in encrypted messages (#499) * Show CID (attached) images in HTML parts (on C-i) * Zoom messages with C-+ and C-- Syntax highlighting: * Syntax highlighting through JS has been replaced by a syntax highlight plugin based on Pygments. * Add filter_part plugin method, which can be used to modify the displayed HTML depending on either the text/plain or the text/html part. Misc: * Logging can be configured to go to syslog (or stdout, default). File logging is removed since we now have multiple processes and this would complicate writing to one file. * The configuration file is no longer written back by default if missing values are found. This also means that values undefined by the user will be updated if the default is changed. Various checks for merging older versions of the configuration file to the current version has been removed. The parser is more resilient and the old versions are old. Regards, Gaute