Releases: djcb/mu
1.4.7
Release 1.4.6
Bugfix release 1.4.6
release 1.4
1.4 (released, as of April 18 2020)
═══════════════════════════════════
mu
╌╌
• mu now defaults to the [XDG Base Directory Specification] for the
default locations for various files. E.g. on Unix the mu database
now lives under `~/.cache/mu/' rather than `~/.mu'. You can still
use the old location by passing `--muhome=~/.mu' to various `mu'
commands, or setting `(setq mu4e-mu-home "~/.mu")' for `mu4e'.
If your `~/.cache' is volatile (e.g., is cleared on reboot), you may
want use `--muhome'. Some mailing-list dicussion suggest that's
fairly rare though.
After upgrading, you may wish to delete the files in the old
location to recover some diskspace.
• There's a new subcommand `mu init' to initialize the mu database,
which takes the `--maildir' and `--my-address' parameters that
`index' used to take. These parameters are persistent so `index'
does not need (or accept) them anymore. `mu4e' now depends on those
parameters.
`init' only needs to be run once or when changing these parameters.
That implies that you need to re-index after changing these
parameters.
• There is another new subcommand `mu info' to get information about
the mu database, the personal addresses etc.
• The contacts cache (which is used by `mu cfind' and `mu4e''s
contact-completion) is now stored as part of the Xapian database
rather than as a separate file.
• The `--xbatchsize' and `--autoupgrade' options for indexing are gone
now; both are determined implicitly now.
[XDG Base Directory Specification]
<https://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html>
mu4e
╌╌╌╌
• `mu4e' no longer uses the `mu4e-maildir' and
`mu4e-user-mail-address-list' variables; instead it uses the
information it gets from `mu' (see the `mu' section above).
It is strongly recommended that you run `mu init' with the
appropriate parameters to (re)initialize the Xapian database, as
mentioned in the mu-section above.
The main screen shows your address(es), and issues a warning if
`user-email-address' is not part of that (and refer you to `mu
init'). You can avoid the addresses in the main screen and the
warning by setting `mu4e-main-view-hide-addresses' to non-nil.
• In many cases, `mu4e' used to receive /all/ contacts after each
indexing operation; this was slow for some users, so we have updated
this to /only/ get the contacts that have changed since the last
round.
We also moved sorting the contacts to the mu-side, which speeds
things up further. However, as a side-effect of this,
`mu4e-contacts-rewrite-function' and
`mu4e-compose-complete-ignore-address-regexp' have been obsoleted;
users of those should migrate to `mu4e-contact-process-function';
see its docstring for details.
• Christophe Troestler contributed support for Gnus'
calender-invitation handling in mu4e (i.e., you should be able to
accept/reject invitations etc.). It's very fresh code, and likely
it'll be tweaked in the future. But it's available now for testing.
Note that this requires the gnus-based viewer, as per `(setq
mu4e-view-use-gnus t)'
• In addition, he added support for custom headers, so the ones for
for the non-gnus-view should work just as well.
• Pierre Neidhardt contributed an experimental "Account Setup Helper"
which wraps the existing context setup with some niceties for
accounts. See the manual for details.
• `org-mode' support is enabled by default now. `speedbar' support is
disabled by default.
• `mu4e' now adds message-ids to messages when saving drafts, so we
can find them even with `mu4e-headers-skip-duplicates'.
• Bookmarks (as in `mu4e-bookmarks') are now simple plists (instead of
cl structs). `make-mu4e-bookmark' has been updated to produce such
plists (for backward compatibility). A bookmark now looks like a
list of e.g. `(:name "My bookmark" :query "banana OR pear" :key ?f)'
this format is a bit easier extensible.
• `mu4e' recognizes an attribute `:hide t', which will hide the
bookmark item from the main-screen (and speedbar), but keep it
avilable through the completion UI.
• `mu4e-maildir-shortcuts' have also become plists. The older format
is still recognized for backward compatibility, but you are
encouraged to upgrade.
• Replying to mailing-lists has been improved, allowing for choosing
for replying to all, sender, list-only.
• A very visible change, `mu4e' now shows unread/all counts for
bookmarks in the main screen. This is on by default, but can be
disabled by setting `:hide-unread' in the bookmark `plist' to `t'.
For speed-reasons, these counts do _not_ filter out duplicates or
messages that have been removed from the filesystem behind mu4e's
back.
• `mu4e-attachment-dir' now also applies to composing messages; it
determines the default directory for inclusion.
• The mu4e <-> mu interaction has been rewritten to communicate using
s-expressions, with a repl for testing. If you have readline
installed, you also get history.
toys
╌╌╌╌
• Updated the `mug' toy UI to use Webkit2/GTK+. Note that this is just
a toy which is not meant for distribution. `msg2pdf' is disabled for
now.
1.3.10
mu/mu4e release 1.2
1.2
After a bit over a year since version 1.0, here is version 1.2. This is
mostly a bugfix release, but there are also a number of new features.
mu
- Substantial (algorithmic) speed-up of message-threading; this also (or
especially) affects mu4e, since threading is the default. See commit
eb9bfbb1ca3c for all the details, and thanks to Nicolas Avrutin.
- The query-parser now generates better queries for wildcard searches, by
using the Xapian machinery for that (when available) rather than
tranforming into regexp queries.
- The perl backend is hardly used and will be removed; for now we just
disable it in the build.
- Allow outputing messages in json format, closely following the sexp
output. This adds an (optional) dependency on the Json-Glib library.
mu4e
- Bump the minimal required emacs version to 24.4. This was already de-facto
true, now it is enforced.
- In mu4e-bookmarks, allow the `:query` element to take a function (or
lambda) to dynamically generate the query string.
- There is a new message-view for mu4e, based on the Gnus' article-view.
This bring a lot of (but not all) of the very rich Gnus article-mode
feature-set to mu4e, such as S/MIME-support, syntax-highlighting,
For now this is experimental ("tech preview"), but might replace the
current message-view in a future release. Enable it with:
(setq mu4e-view-use-gnus t)
Thanks to Christophe Troestler for his work on fixing various encoding
issues.
- Many bug fixes
guile
- Now requires guile 2.2.
Contributors for this release:
Ævar Arnfjörð Bjarmason, Albert Krewinkel, Alberto Luaces, Alex Bennée, Alex
Branham, Alex Murray, Cheong Yiu Fung, Chris Nixon, Christian Egli,
Christophe Troestler, Dirk-Jan C. Binnema, Eric Danan, Evan Klitzke, Ian
Kelling, ibizaman, James P. Ascher, John Whitbeck, Junyeong Jeong, Kevin
Foley, Marcelo Henrique Cerri, Nicolas Avrutin, Oleh Krehel, Peter W. V.
Tran-Jørgensen, Piotr Oleskiewicz, Sebastian Miele, Ulrich Ölmann
mu 1.0
After a decade of development, mu 1.0!
mu
- New, custom query parser which replaces Xapian's 'QueryParser'
both in mu and mu4e. Existing queries should still work, but the
new engine handles non-alphanumeric queries much better.
- Support regular expressions in queries (with the new query engine),
e.g. "subject:/foo.*bar/". See the new `mu-query` and updated
`mu-easy` manpages for examples.
- cfind: ensure nicks are unique
- auxiliary programs invoked from mu/mu4e survive terminating the
shell / emacs
mu4e
- Allow for rewriting message bodies
- Toggle-menus for header settings
- electric-quote-(local-)mode work when composing emails
- Respect format=flowed and delsp=yes for viewing plain-text
messages
- Added new mu4e-split-view mode: single-window
- Add menu item for `untrash'.p
- Unbreak abbrevs in mu4e-compose-mode
- Allow forwarding messages as attachments
(`mu4e-compose-forward-as-attachment')
- Default to 'skip duplicates' and 'include headers' in
headers-view, which should be good defaults for most users. Can
be customized using `mu4e-headers-skip-duplicates' and
`mu4e-headers-include-related', respectively.
- Many bug fixed (see github for all the details).
- Updated documentation
Contributors for this release:
Ævar Arnfjörð Bjarmason, Alex Bennée, Arne Köhn, Christophe
Troestler, Damien Garaud, Dirk-Jan C. Binnema, galaunay, Hong Xu,
Ian Kelling, John Whitbeck, Josiah Schwab, Jun Hao, Krzysztof
Jurewicz, maxime, Mekeor Melire, Nathaniel Nicandro, Ronald Evers,
Sean 'Shaleh' Perry, Sébastien Le Callonnec, Stig Brautaset,
Thierry Volpiatto, Titus von der Malsburg, Vladimir Sedach, Wataru
Ashihara, Yuri D'Elia.
And all the people on the mailing-list and in github, with bug
reports, questions and suggestions.
1.0-alpha3
Another pre-release for the upcoming 1.0
1.0-alpha2
1.0-alpha2
1.0-alpha0
Note, the pre-configured tarball(mu-1.0-alpha0.tar.xz
) below is recommended, so you can do the familiar ./configure && make
.
0.9.18
mu
- Increase the default maximum size for messages to index to 500
Mb; you can customize this using the --max-msg-size parameter to
mu index. - implement "lazy-checking", which makes mu not descend into
subdirectories when the directory-timestamp is up to date;
greatly speeds up indexing (see --lazy-check) - prefer gpg2 for crypto
- fix a crash when running on OpenBSD
- fix --clear-links (broken filenames)
mu4e
reading messages
- Add
mu4e-action-view-with-xwidget
, and action for viewing
e-mails inside a Webkit-widget inside emacs (requires emacs 25.x
with xwidget/webkit/gtk3 support) - Explicitly specify utf8 for external html viewing, so browsers
can handle it correctly. - Make `shr' the default renderer for rich-text emails (when
available) - Add a :user-agent field to the message-sexp (in mu4e-view), which
is either the User-Agent or X-Mailer field, when present.
composing messages
- Cleanly handle early exits from message composition as well as
while composing. - Allow for resending existing messages, possibly editing them. M-x
mu4e-compose-resend, or use the menu; no shortcut. - Better handle the closing of separate compose frames
- Improved font-locking for the compose buffers, and more extensive
checks for cited parts. - automatically sign/encrypt replies to signed/encrypted messages
(subject to `mu4e-compose-crypto-reply-policy')
searching & marking
- Add a hook
mu4e-mark-execute-pre-hook
, which is run just before
executing marks. - Just before executing any search, a hook-function
mu4e-headers-search-hook
is invoked, which receives the
search expression as its parameter. - In addition, there's a
mu4e-headers-search-bookmark-hook
which
gets called when searches get invoked as a bookmark (note that
mu4e-headers-search-hook
will also be called just
afterwards). This hook also receives the search expression as its
parameter. - Remove the 'z' keybinding for leaving the headers
view. Keybindings are precious! - Fix parentheses/precedence in narrowing search terms
indexing
- Allow for indexing in the background; see
mu4e-index-update-in-background
. - Better handle mbsync output in the update buffer
- Add variables mu4e-index-cleanup and mu4e-index-lazy to enable
lazy checking from mu4e; you can sit from mu4e using something
like:
(setq
mu4e-index-cleanup nil ;; don't do a full cleanup check
mu4e-index-lazy-check t) ;; don't consider up-to-date dirs
misc
- don't overwrite global-mode-string, append to it.
- Make org-links (and more general, all users of
mu4e-view-message-with-message-id) use a headers buffer, then
view the message. This way, those linked message are just like
any other, and can be deleted, moved etc. - Support org-mode 9.x
- Improve file-name escaping, and make it support non-ascii filenames
- Attempt to jump to the same messages after a re-search update operation
- Add action for spam-filter options
- Let `mu4e~read-char-choice' become case-insensitive if there is
no exact match; small convenience that affects most the
single-char option-reading in mu4e.
Perl
- an experimental Perl binding ("mup") is available now. See
perl/README.md for details.
Contributors:
Aaron LI, Abdo Roig-Maranges, Ævar Arnfjörð Bjarmason, Alex Bennée, Allen, Anders Johansson, Antoine Levitt, Arthur Lee, attila, Charles-H. Schulz, Christophe Troestler, Chunyang Xu, Dirk-Jan C. Binnema, Jakub Sitnicki, Josiah Schwab, jsrjenkins, Jun Hao, Klaus Holst, Lukas Fürmetz, Magnus Therning, Maximilian Matthe, Nicolas Richard, Piotr Trojanek, Prashant Sachdeva, Remco van 't Veer, Stephen Eglen, Stig Brautaset, Thierry Volpiatto, Thomas Moulia, Titus von der Malsburg, Yuri D'Elia
Getting the package
Download the official tarball.
Note, the below files are not complete releases, and require a full autotools setup. So, better pick the official one!