New stable version.
Many internal cleanups/fixups/C++20-modernization, but also a number of
new features:
mu:
- better handling of html parts
- fall back to most recent 'Received' for 'Date:'-less messages
- record the time-zone offset
mu4e:
- improved mime-handling
- improved HTML view (generate HTML view for pure text as well)
- hide "clickables" until requested (but see
mu4e-view-always-show-url-indicators)
scm:
- performance improvements
- new methods for querying system configuration" and querying database
fields, and getting timezone information (for 'date' and 'changed')
See NEWS.org for further details.
Add an (experimental/example) script for the mu4e's dbus server (i.e.,
mu4e-dbus-mode). This has a 'dump' and 'waybar' mode, the latter which
can show the mu4e's output on waybar.
Since we require meson 1.3(.2), we can modernize the usage a bit,
as well as improve some logic
- use / instead of join_paths
- use option.allowed() instead of !option.disable()
- use cxx.get_supported_arguments
- use fs.copyfile instead of configure_file
- show a summary at the end of the configuration
For the (rare) messages without a Date: header, attempt to guess a date
from the top (most-recent) Received: header. Not perfect, of course, but
better than nothing.
Requires re-indexing to apply to already indexed messages.
Should help for #1083.
mu4e used strings processing the server output (from mu4e server) and
interpreting the s-expressions, but it's cleaner and slightly faster to
use a buffer instead. So that is what we do now.
Support a configuration function, with the system-configuration.
Update docs.
Add a tests for language, using the configuration to see if we support
it.
Let guile handle the message-map (with weak-hash-table), so we avoid the
cleanup race.
Better handle the fd handling (and avoid calling gc() each time when
we're nearing the limit)
Fix some typos, small errors, debug leftovers. Removed unused
mu-cmd-count.cc. Improve test-coverage. Fix manpage.
Make the errors for unknown commands a little friendlier.
Move the various seq_ functions, as well as std::(stable_)sort,
std::accumulate, std::transform, std::find, std::find_if to their C++20
std::ranges counterparts.
Cleanup the query running and handling the results.
- in threading, use stable_sort
- remove dead code
- fix indentation in a few places
- don't need Option in various run_... in mu-query.cc