- don't make assumptions on where programs live (i.e., /bin/sh, /bin/rm,
/bin/mv) are not universal
- dont invoke shell when unnecessary
- improve error-handling
Somewhere along the way, the body-txt and body-html fields were merged
into a single body field. Later, commit 8eac392221 ("guile: re-enable
the guile support") finally removed support for Field::Id::BodyHtml from
mu:c:get-field.
Unfortunately mu.scm and the documentation are still stuck in the past, so
update them. mu:body-txt is now a synonym for mu:body, and mu:body-html
always returns #f.
I wanted to add a mu:body test also for the rfc822.1 message, but there's
currently a bug where its body text is is duplicated (issue #2802), so the
test would fail.
It's stated to be US-ASCII with 7-bit encoding, but it contains the
UTF-8 character '—'.
Fixing the encoding very slightly changes the average size of messages
reported by mu:average, so adjust the new expected value.
When meson is run in a build path that is different from source root, the
generated shared library cannot be found under "<source_root>/guile". This
patch adds the corresponding path under build root to guile_root_path so that
they continue to work.
This should fix https://github.com/djcb/mu/issues/2631.
We were using dates (in documentation, (c) notices etc) based on the
build-date; that makes it hard to do reproducible builds, so specify a
specific date in the top-level meson file, and use that throughout.
Since 2008, autotools has served us well - thank you!
However, mu is now using meson build, and it's time to remove the
autotools support -- one build system is enough.
snarfing is tricky to get to work portably with c++ code. So, for now let's just
include the pre-generated .x files and safe us a bit of time. They're not very
prone to change anyway.