#+STARTUP:showall
* NEWS (user visible changes)

* 1.5.x (unreleased, development version)

*** mu

    - Follow symlinks in maildirs, and support moving messsages between across
      multiple filesystems (but note that that is quite a bit slower than the
      single-filesystem case)

    - Optionally provide readline support for the mu server (when in tty-mode)

*** mu4e

    - Include maildir-shortcuts in the main-view with overall/unread counts,
      similar to bookmarks, and with the same ~:hide~ and ~:hide-unread~ properties.
      Note that for the latter, you see to update your maildir-shortcuts to the
      new format, as explained in the ~mu4e-maildir-shortcuts~ docstring.

    - Add some more properties for use in capturing org-mode links to messages /
      queries. See [[info:mu4e#Org-mode links][the mu4e manual]] for details.

    - Honor ~truncate-string-ellipsis~ so you can now use 'fancy' ellipses for
      truncated strings with ~(setq truncate-string-ellipsis "…")~


* 1.4 (released, as of April 18 2020)

*** mu

    - mu now defaults to the [[https://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html][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. The
      ~.noupdate~ files are ignored when indexing the first time after ~mu init~ (or
      in general, when the database is empty).

    - 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; both are
      determined implicitly now.

*** 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). If you have a non-default ~mu4e-mu-home~, make sure to set
      it before ~mu4e~ starts.

      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.

    - ~org-mode~ support is enabled by default now. ~speedbar~ support is disabled
      by default. The support org functionality has been moved to ~mu4e-org.el~,
      with ~org-mu4e.el~ remaining for older things.

    - ~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 available 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 that are strings. 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 nor messages that
      have been removed from the filesystem.

    - ~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.

*** 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.


*** How to upgrade

    - upgrade mu to the latest stable version

    - shut down emacs

    - Run `mu init' in a terminal

    - Make sure mu init points to the right Maildir folder and add your email address(es) the following way:
      `mu init --maildir=~/Maildir --my-address=jim@example.com --my-address=bob@example.com'

    - once this is done run `mu index'

    - Don't forget to delete your old mail cache location if necessary (see release notes for more detail).


** 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
      transforming into regexp queries.

    - The perl backend is hardly used and will be removed; for now we just
      disable it in the build.

    - Allow outputting 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,

** 1.0

   After a decade of development, *mu 1.0*!

   Note: the new release requires a C++14 capable compiler.

*** 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'.
    - Unbreak abbrevs in mu4e-compose-mode
    - Allow forwarding messages as attachments
      (`mu4e-compose-forward-as-attachment')
    - New defaults: default to 'skip duplicates' and 'include related'
      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.


** 0.9.18

   New development series which will lead to 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)
    - You can now set the MU_HOME environment variable as an
      alternative way of setting the mu homedir via the --muhome command-line
      parameter.

*** 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:
     #+BEGIN_SRC elisp
(setq mu4e-index-cleanup nil ;; don't do a full cleanup check
  mu4e-index-lazy-check t) ;; don't consider up-to-date dirs #+END_SRC

**** 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, Vladimir
   Sedach

* Old news
  :PROPERTIES:
  :VISIBILITY: folded
  :END:

** 0.9.16

*** Release

    2016-01-20: Release from the 0.9.15 series

*** Contributors:

    Adam Sampson, Ævar Arnfjörð Bjarmason, Bar Shirtcliff, Charles-H. Schulz,
    Clément Pit--Claudel, Damien Cassou, Declan Qian, Dima Kogan, Dirk-Jan C.
    Binnema, Foivos S. Zakkak, Hinrik Örn Sigurðsson, Jeroen Tiebout, JJ Asghar,
    Jonas Bernoulli, Jun Hao, Martin Yrjölä, Maximilian Matthé, Piotr Trojanek,
    prsarv, Thierry Volpiatto, Titus von der Malsburg

    (and of course all people who reported issues, provided suggestions etc.)

** 0.9.15

   - bump version to 0.9.15. From now on, odd minor version numbers
     are for development versions; thus, 0.9.16 is to be the next stable
     release.
   - special case text/calendar attachments to get .vcs
     extensions. This makes it easier to process those with external tools.
   - change the message file names to better conform to the maildir
     spec; this was confusing some tools.
   - fix navigation when not running in split-view mode
   - add `mu4e-view-body-face', so the body-face for message in the
     view can be customized; e.g. (set-face-attribute 'mu4e-view-body-face nil
     :font "Liberation Serif-10")
   - add `mu4e-action-show-thread`, an action for the headers and view
     buffers to search for messages in the same thread as the current one.
   - allow for transforming mailing-list names for display, using
     `mu4e-mailing-list-patterns'.
   - some optimizations in indexing (~30% faster in some cases)
   - new variable mu4e-user-agent-string, to customize the User-Agent:
     header.
   - when removing the "In-reply-to" header from replies, mu4e will
     also remove the (hidden) References header, effectively creating a new
     message-thread.
   - implement 'mu4e-context', for defining and switching between
     various contexts, which are groups of settings. This can be used for
     instance for switch between e-mail accounts. See the section in the manual
     for details.
   - correctly decode mailing-list headers
   - allow for "fancy" mark-characters; and improve the default set
   - by default, the maildirs are no longer cached; please see the
     variable ~mu4e-cache-maildir-list~ if you have a lot of maildirs and it
     gets slow.
   - change the default value for
     ~org-mu4e-link-query-in-headers-mode~ to ~nil~, ie. by default link to the
     message, not the query, as this is usually more useful behavior.
   - overwrite target message files that already exist, rather than
     erroring out.
   - set mu4e-view-html-plaintext-ratio-heuristic to 5, as 10 was too
     high to detect some effectively html-only messages
   - add mu4e-view-toggle-html (keybinding: 'h') to toggle between
     text and html display. The existing 'mu4e-view-toggle-hide-cited' gets the
     new binding '#'.
   - add a customization variable `mu4e-view-auto-mark-as-read'
     (defaults to t); if set to nil, mu4e won't mark messages as read when you
     open them. This can be useful on read-only file-systems, since
     marking-as-read implies a file-move operation.
   - use smaller chunks for mu server on Cygwin, allowing for better
     mu4e support there.

** 0.9.13

*** contributors

    Attila, Daniele Pizzolli, Charles-H.Schulz, David C Sterrat, Dirk-Jan C.
    Binnema, Eike Kettner, Florian Lindner, Foivos S. Zakkak, Gour, KOMURA
    Takaaki, Pan Jie, Phil Hagelberg, thdox, Tiago Saboga, Titus von der
    Malsburg

    (and of course all people who reported issues, provided suggestions etc.)

*** mu/mu4e/guile

    - NEWS (this file) is now visible from within mu4e – "N" in the main-menu.

    - make `mu4e-headers-sort-field', `mu4e-headers-sort-direction'
      public (that, is change the prefix from mu4e~ to mu4e-), so users can
      manipulate them

    - make it possible the 'fancy' (unicode) characters separately for
      headers and marks (see the variable `mu4e-use-fancy-chars'.)

    - allow for composing in a separate frame (see
      `mu4e-compose-in-new-frame')

    - add the `:thread-subject' header field, for showing the subject
      for a thread only once. So, instead of (from the manual):

      #+BEGIN_EXAMPLE
06:32 Nu To Edmund Dantès GstDev + Re: Gstreamer-V4L... 15:08 Nu Abbé Busoni
GstDev + Re: Gstreamer-V... 18:20 Nu Pierre Morrel GstDev \ Re: Gstreamer...
2013-03-18 S Jacopo EmacsUsr + emacs server on win... 2013-03-18 S Mercédès
EmacsUsr \ RE: emacs server ... 2013-03-18 S Beachamp EmacsUsr + Re: Copying a
whole... 22:07 Nu Albert de Moncerf EmacsUsr \ Re: Copying a who... 2013-03-18 S
Gaspard Caderousse GstDev | Issue with GESSimpl... 2013-03-18 Ss Baron Danglars
GuileUsr | Guile-SDL 0.4.2 ava... End of search results #+END_EXAMPLE

      the headers list would now look something like:
      #+BEGIN_EXAMPLE
10:26 ⭑☐ Nicolas Goaziou Orgmode /bulk ◼ Re: [O] 2 issue with Include function
11:00 ⭑☐ Leonard Randall Orgmode /bulk ┗▶ 10:55 ⭑☐ Guillermo Rodrigu... GstDev
/bulk ◼ Re: stop pipeline into a callback function. 12:04 ⭑☐ Enrique Ocaña Gon...
GstDev /bulk ┗▶ 11:27 ⭑☐ Tim Müller GstDev /bulk ◼ 09:34 ⭑☐ Robert Klein Orgmode
/bulk ◼ Re: [O] Agenda Tag filtering - has the behaviour changed? #+END_EXAMPLE

      This is a feature known from e.g. `mutt' and `gnus` and many other
      clients, and can be enabled by customizing `mu4e-headers-fields'
      (replacing `:subject' with `:thread-subject')

      It's not the default yet, but may become so in the future.

    - add some spam-handling actions to mu4e-contrib.el

    - mu4e now targets org 8.x, which support for previous versions
      relegated to `org-old-mu4e.el`. Some of the new org-features are improved
      capture templates.

    - updates to the documentation, in particular about using BBDB.

    - improved URL-handling (use emacs built-in functionality)

    - many bug fixes, including some crash fixes on BSD

*** guile

    – add --delete option to the find-dups scripts, to automatically delete
    them. Use with care!

** Release 0.9.12

*** mu

    - truncate /all/ terms the go beyond xapian's max term length
    - lowercase the domain-part of email addresses in mu cfind (and mu4e), if
      the domain is in ascii
    - give messages without msgids fake-message-ids; this fixes the problem
      where such messages were not found in --include-related queries
    - cleanup of the query parser
    - provide fake message-ids for messages without it; fixes #183
    - allow showing tags in 'mu find' output
    - fix CSV quoting

*** mu4e

    - update the emacs <-> backend protocol; documented in the mu-server man page
    - show 'None' as date for messages without it (Headers View)
    - add `mu4e-headers-found-hook', `mu4e-update-pre-hook'.
    - split org support in org-old-mu4e.el (org <= 7.x) and org-mu4e.el
    - org: improve template keywords
    - rework URL handling

** Release 0.9.5

*** mu

    - allow 'contact:' as a shortcut in queries for 'from:foo OR to:foo OR
      cc:foo OR bcc:foo', and 'recip:' as a shortcut for 'to:foo OR cc:foo OR
      bcc:foo'
    - support getting related messages (--include-related), which includes
      messages that may not match the query, but that are in the same threads as
      messages that were
    - support "list:"/"v:" for matching mailing list names, and the "v"
      format-field to show them. E.g 'mu find list:emacs-orgmode.gnu.org'

*** mu4e

    - scroll down in message view takes you to next message (but see
      `mu4e-view-scroll-to-next')
    - support 'human dates', that is, show the time for today's messages, and
      the date for older messages in the headers view
    - replace `mu4e-user-mail-address-regexp' and `mu4e-my-mail-addresses' with
      `mu4e-user-mail-address-list'
    - support tags (i.e.., X-Keywords and friends) in the headers-view, and the
      message view. Thanks to Abdó Roig-Maranges. New field ":tags".
    - automatically update the headers buffer when new messages are found during
      indexing; set `mu4e-headers-auto-update' to nil to disable this.
    - update mail/index with M-x mu4e-update-mail-and-index; which everywhere in
      mu4e is available with key C-S-u. Use prefix argument to run in
      background.
    - add function `mu4e-update-index' to only update the index
    - add 'friendly-names' for mailing lists, so they should up nicely in the
      headers view

*** guile

    - add 'mu script' command to run mu script, for example to do statistics on
      your message corpus. See the mu-script man-page.

*** mug

    - ported to gtk+ 3; remove gtk+ 2.x code



** Release 0.9.9 <2012-10-14>

*** mu4e
    - view: address can be toggled long/short, compose message
    - sanitize opening urls (mouse-1, and not too eager)
    - tooltips for header labels, flags
    - add sort buttons to header-labels
    - support signing / decryption of messages
    - improve address-autocompletion (e.g., ensure it's case-insensitive)
    - much faster when there are many maildirs
    - improved line wrapping
    - better handle attached messages
    - improved URL-matching
    - improved messages to user (mu4e-(warn|error|message))
    - add refiling functionality
    - support fancy non-ascii in the UI
    - dynamic folders (i.e.., allow mu4e-(sent|draft|trash|refile)-folder) to
      be a function
    - dynamic attachment download folder (can be a function now)
    - much improved manual

*** mu
    - remove --summary (use --summary-len instead)
    - add --after for mu find, to limit to messages after T
    - add new command `mu verify', to verify signatures
    - fix iso-2022-jp decoding (and other 7-bit clean non-ascii)
    - add support for X-keywords
    - performance improvements for threaded display (~ 25% for 23K msgs)
    - mu improved user-help (and the 'mu help' command)
    - toys/mug2 replaces toys/mug

*** mu-guile
    - automated tests
    - add mu:timestamp, mu:count
    - handle db reopenings in the background


** Release 0.9.8.5 <2012-07-01>

*** mu4e

    - auto-completion of e-mail addresses
    - inline display of images (see `mu4e-view-show-images'), uses imagemagick
      if available
    - interactively change number of headers / columns for showing headers with
      C-+ and C-- in headers, view mode
    - support flagging message
    - navigate to previous/next queries like a web browser (with <M-left>,
      <M-right>)
    - narrow search results with '/'
    - next/previous take a prefix arg now, to move to the nth previous/next message
    - allow for writing rich-text messages with org-mode
    - enable marking messages as Flagged
    - custom marker functions (see manual)
    - better "dwim" handling of buffer switching / killing
    - deferred marking of message (i.e.., mark now, decide what to mark for
      later)
    - enable changing of sort order, display of threads
    - clearer marks for marked messages
    - fix sorting by subject (disregarding Re:, Fwd: etc.)
    - much faster handling when there are many maildirs (speedbar)
    - handle mailto: links
    - improved, extended documentation

*** mu

    - support .noupdate files (parallel to .noindex, dir is ignored unless we're
      doing a --rebuild).
    - append all inline text parts, when getting the text body
    - respect custom maildir flags
    - correctly handle the case where g_utf8_strdown (str) > len (str)
    - make gtk, guile, webkit dependency optional, even if they are installed


** Release 0.9.8.4 <2012-05-08>

*** mu4e

    - much faster header buffers
    - split view mode (headers, view); see `mu4e-split-view'.
    - add search history for queries
    - ability to open attachments with arbitrary programs, pipe through shell
      commands or open in the current emacs
    - quote names in recipient addresses
    - mu4e-get-maildirs works now for recursive maildirs as well
    - define arbitrary operations for headers/messages/attachments using the
      actions system -- see the chapter 'Actions' in the manual
    - allow mu4e to be uses as the default emacs mailer (`mu4e-user-agent')
    - mark headers based on a regexp, `mu4e-mark-matches', or '%'
    - mark threads, sub-threads (mu4e-hdrs-mark-thread,
      mu4e-hdrs-mark-subthread, or 'T', 't')
    - add msg2pdf toy
    - easy logging (using `mu4e-toggle-logging')
    - improve mu4e-speedbar for use in headers/view
    - use the message-mode FCC system for saving messages to the sent-messages
      folder
    - fix: off-by-one in number of matches shown

*** general

    - fix for opening files with non-ascii names
    - much improved support for searching non-Latin (Cyrillic etc.) languages
      we can now match 'Тесла' or 'Аркона' without problems
    - smarter escaping (fixes issues with finding message ids)
    - fixes for queries with brackets
    - allow --summary-len for the length of message summaries
    - numerous other small fixes


** Release 0.9.8.3 <2012-04-06>

   *NOTE*: existing mu/mu4e are recommended to run `mu index --rebuild' after
   installation.

*** mu4e

    - allow for searching by editing bookmarks
      (`mu4e-search-bookmark-edit-first') (keybinding 'B')
    - make it configurable what to do with sent messages (see
      `mu4e-sent-messages-behavior')
    - speedbar support (initial patch by Antono V)
    - better handling of drafts:
      - don't save too early
      - more descriptive buffer names (based on Subject, if any)
      - don't put "--text-follows-this-line--" markers in files
    - automatically include signatures, if set
    - add user-settable variables mu4e-view-wrap-lines and mu4e-view-hide-cited,
      which determine the initial way a message is displayed
    - improved documentation

*** general

    - much improved searching for GMail folders (i.e. maildir:/ matching);
      this requires a 'mu index --rebuild'
    - correctly handle utf-8 messages, even if they don't specify this explicitly
    - fix compiler warnings for newer/older gcc and clang/clang++
    - fix unit tests (and some code) for Ubuntu 10.04 and FreeBSD9
    - fix warnings for compilation with GTK+ 3.2 and recent glib (g_set_error)
    - fix mu_msg_move_to_maildir for top-level messages
    - fix in maildir scanning
    - plug some memleaks

** Release 0.9.8.2 <2012-03-11>

*** mu4e:

    - make mail updating non-blocking
    - allow for automatic periodic update ('mu4e-update-interval')
    - allow for external triggering of update
    - make behavior when leaving the headers buffer customizable, ie.
      ask/apply/ignore ('mu4e-headers-leave-behaviour')

*** general

    - fix output for some non-UTF8 locales
    - open ('play') file names with spaces
    - don't show unnecessary errors for --format=links
    - make build warning-free for clang/clang++
    - allow for slightly older autotools
    - fix unit tests for some hidden assumptions (locale, dir structure etc.)
    - some documentation updates / clarifications

** Release 0.9.8.1 <2012-02-18 Sat>

*** mu
    - show only leaf/rfc822 MIME-parts

*** mu4e

    - allow for shell commands with arguments in `mu4e-get-mail-command'.
    - support marking messages as 'read' and 'unread'
    - show the current query in the the mode-line (`global-mode-string').
    - don't repeat 'Re:' / 'Fwd:'
    - colorize cited message parts
    - better handling of text-based, embedded message attachments
    - for text-bodies, concatenate all text/plain parts
    - make filladapt dep optional
    - documentation improvements

** Release 0.9.8 <2012-01-31>

   - '--descending' has  been renamed into '--reverse'
   - search for attachment MIME-type using 'mime:' or 'y:'
   - search for text in text-attachments using 'embed:' or 'e:'
   - searching for attachment file names now uses 'file:' (was: 'attach:')
   - experimental emacs-based mail client -- "mu4e"
   - added more unit tests
   - improved guile binding - no special binary is needed anymore, it's
     installable are works with the normal guile system; code has been
     substantially improved. still 'experimental'

** Release 0.9.7 <2011-09-03 Sat>

   - don't enforce UTF-8 output, use locale (fixes issue #11)
   - add mail threading to mu-find (using -t/--threads) (sorta fixes issue #13)
   - add header line to --format=mutt-ab (mu cfind), (fixes issue #42)
   - terminate mu view results with a form-feed marker (use --terminate) (fixes
     issue #41)
   - search X-Label: tags (fixes issue #40)
   - added toys/muile, the mu guile shells, which allows for message stats etc.
   - fix date handling (timezones)

** Release 0.9.6 <2011-05-28 Sat>

   - FreeBSD build fix
   - fix matching for mu cfind to be as expected
   - fix mu-contacts for broken names/emails
   - clear the contacts-cache too when doing a --rebuild
   - wildcard searches ('*') for fields (except for path/maildir)
   - search for attachment file names (with 'a:'/'attach:') -- also works with
     wildcards
   - remove --xquery completely; use --output=xquery instead
   - fix progress info in 'mu index'
   - display the references for a message using the 'r' character (xmu find)
   - remove --summary-len/-k, instead use --summary for mu view and mu find, and
   - support colorized output for some sub-commands (view, cfind and
     extract). Disabled by default, use --color to enable, or set env MU_COLORS
     to non-empty
   - update documentation, added more examples

** Release 0.9.5 <2011-04-25 Mon>

   - bug fix for infinite loop in Maildir detection
   - minor fixes in tests, small optimizations

** Release 0.9.4 <2011-04-12 Tue>

   - add the 'cfind' command, to search/export contact information
   - add 'flag:unread' as a synonym for 'flag:new OR NOT flag:unseen'
   - updated documentation

** Release 0.9.3 <2011-02-13 Sun>

   - don't warn about missing files with --quiet

** Release 0.9.2 <2011-02-02 Wed>

   - stricter checking of options; and options must now *follow* the sub-command
     (if any); so, something like: 'mu index --maildir=/foo/bar'
   - output searches as plain text (default), XML, JSON or s-expressions using
     --format=plain|xml|json|sexp. For example: 'mu find foobar --output=json'.
     These format options are experimental (except for 'plain')
   - the --xquery option should now be used as --format=xquery, for output
     symlinks, use --format=links. This is a change in the options.
   - search output can include the message size using the 'z' shortcut
   - match message size ranges (i.e.. size:500k..2M)
   - fix: honor the --overwrite (or lack thereof) parameter
   - support folder names with special characters (@, ' ', '.' and so on)
   - better check for already-running mu index
   - when --maildir= is not provided for mu index, default to the last one
   - add --max-msg-size, to specify a new maximum message size
   - move the 'mug' UI to toys/mug; no longer installable
   - better support for Solaris builds, Gentoo.

** Release 0.9.1 <2010-12-05 Sun>

   - Add missing icon for mug
   - Fix unit tests (Issue #30)
   - Fix Fedora 14 build (broken GTK+ 3) (Issue #31)

** Release 0.9 <2010-12-04 Sat>

   - you can now search for the message priority ('prio:high', 'prio:low',
     'prio:normal')
   - you can now search for message flags, e.g. 'flag:attach' for messages with
     attachment, or 'flag:encrypted' for encrypted messages
   - you can search for time-intervals, e.g. 'date:2010-11-26..2010-11-29' for
     messages in that range. See the mu-find(1) and mu-easy(1) man-pages for
     details and examples.
   - you can store bookmarked queries in ~/.mu/bookmarks
   - the 'flags' parameter has been renamed in 'flag'
   - add a simple graphical UI for searching, called 'mug'
   - fix --clearlinks for file systems without entry->d_type (fixes issue #28)
   - make matching case-insensitive and accent-insensitive (accent-insensitive
     for characters in Unicode Blocks 'Latin-1 Supplement' and 'Latin
     Extended-A')
   - more extensive pre-processing is done to make searching for email-addresses
     and message-ids less likely to not work (issue #21)
   - updated the man-pages
   - experimental support for Fedora 14, which uses GMime 2.5.x (fixes issue #29)

** Release 0.8 <2010-10-30 Sat>

   - There's now 'mu extract' for getting information about MIME-parts
     (attachments) and extracting them
   - Queries are now internally converted to lowercase; this solves some of the
     false-negative issues
   - All mu sub-commands now have their own man-page
   - 'mu find' now takes a --summary-len=<n> argument to print a summary of
     up-to-n lines of the message
   - Same for 'mu view'; the summary replaces the full body
   - Setting the mu home dir now goes with -m, --muhome
   - --log-stderr, --reindex, --rebuild, --autoupgrade, --nocleanup, --mode,
     --linksdir, --clearlinks lost their single char version

** Release 0.7 <2010-02-27 Sat>

   - Database format changed
   - Automatic database scheme version check, notifies users when an upgrade
     is needed
   - 'mu view', to view mail message files
   - Support for >10K matches
   - Support for unattended upgrades - that is, the database can automatically
     by upgraded (--autoupgrade). Also, the log file is automatically cleaned
     when it gets too big (unless you use --nocleanup)
   - Search for a certain Maildir using the maildir:,m: search prefixes. For
     example, you can find all messages located in ~/Maildir/foo/bar/cur/msg
     ~/Maildir/foo/bar/new/msg and with m:/foo/bar this replace the search for
     path/p in 0.6
   - Fixes for reported issues ()
   - A test suite with a growing number of unit tests


** Release 0.6 <2010-01-23 Sat>

   - First new release of mu since 2008
   - No longer depends on sqlite


# Local Variables:
# mode: org; org-startup-folded: nil
# fill-column:80
# End:
