Commit Graph

224 Commits

Author SHA1 Message Date
34d3bf2e28 tests: only build when needed
Build the tests lazily, i.e., not before `meson test`. This helps with
build-times.
2025-08-15 21:01:05 +03:00
155725ff74 fdl.texi: only need one copy in source tree
No need for identical files in mu4e / guile dirs, move to build-aux.
2025-06-10 10:04:53 +03:00
c0887603c5 guile: avoid body duplication
In message, don't re-fill when unneeded. Add tests.

Fixes #2802.
2025-02-05 21:16:15 +02:00
606f4be74b guile: Fix the mu:body message method
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.
2025-01-04 20:51:14 -03:00
a703f00214 guile: tests: Fix encoding of "atomic" message
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.
2025-01-03 16:33:06 -03:00
fdce40af92 guile: separate guile load/extensions path 2024-03-10 10:28:11 +02:00
80745cbe29 Merge commit 'pullreqs/2635' 2024-03-10 10:27:46 +02:00
68822006c8 guile-tests: fix some typos 2024-02-26 18:31:10 +02:00
db6191e796 Fix guile_load_path to include build path
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.
2024-02-25 17:24:43 -08:00
30b8238522 tests: move to tests/, make optional
While not recommended, sometimes it can be useful to disable building
the unit tests. This can be done now with
    meson -Dtests=disabled build
2024-01-06 18:35:22 +02:00
da0620ea1f guile: fix module installation path 2023-10-31 09:01:28 +02:00
967b724e75 build: avoid dynamic dates for reproducibility
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.
2023-10-14 15:24:00 +03:00
2f5602b938 unit tests: improve
and add a new one for the indexer
2023-09-12 21:38:57 +03:00
b01973205d infodir: allow absolute path
Fixes #2548
2023-09-05 08:34:27 +03:00
28b779efb8 mu-guile: fix guile-test build
upgrade to the new formatting code.

Fixes: #2540
2023-08-22 12:56:18 +03:00
52e3a4766e guile: make guile-extension-dir configurable
We use
   guile_dep.get_variable(pkgconfig: 'extensiondir')
but that's not good for everyone.
2023-08-09 22:02:09 +03:00
d374d94031 clang: avoid some build warnings 2023-07-23 21:04:26 +03:00
d1b8b79aa6 Install Guile extension into Guile's extension directory 2023-07-19 23:39:59 +01:00
4920b56671 update to use fmt-based apis
Not complete, but a first big stab converting users of Mu::Error and
various g_warning & friends, format to the new libfmt-based APIs.
2023-07-05 23:10:13 +03:00
c6fff6a281 all: update for API changes (config etc.)
Use the new & improved APIs.
2023-07-02 00:06:56 +03:00
6979a66630 utils: get rid of mu-util.[ch]
It was getting old...
Remove the unused parts, refactor the few parts still in use.
2023-01-14 20:02:05 +02:00
5bf6fa399b guile: don't run test with asan builds
They're incompatible.
2022-12-29 12:25:58 +02:00
4395edfaa7 guile: avoid compiler warning 2022-12-24 09:30:04 +02:00
96b208d712 build: bump meson requirement to 56.0
We need some of the new functionality in the near-future.

Fix build warnings.
2022-12-19 23:01:16 +02:00
46c741ec9a guile: update scripts
Some minor improvements to the existing scripts
2022-11-17 11:00:06 +02:00
e02df6c786 guile: move msgs-per-* scripts into histogram.scm 2022-11-17 11:00:06 +02:00
fc899c0962 guile: update for removing runtime 2022-11-17 11:00:06 +02:00
529e856d35 guile: define_vars: define for both name and alias
Scripts seem to depend on both.
2022-08-23 22:25:01 +03:00
b91628d009 guile/meson.build: install scripts too
Fixes #2323
2022-08-23 19:33:41 +03:00
a094512067 guile/meson.build: cleanup whitespace 2022-08-23 19:33:34 +03:00
e416a5215f autotools: remove
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.
2022-08-20 11:19:29 +03:00
317fe53ff7 tests: update test helpers and users
Move test-mu-common to mu-test-utils. Use mu_test_init as a wrapper for
g_test_init. Update users.
2022-08-11 22:55:10 +03:00
5e3e2cf28e build: use install-info when installing mu4e/guile
So the docs can be found.
2022-07-01 08:31:00 +03:00
0708033e48 build: update autotools build 2022-06-18 15:21:26 +03:00
2bb16ca7d1 guile: include pre-snarfed code
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.
2022-06-02 21:04:30 +03:00
277a7e0e10 guile: don't extern-c'ify libguile
Already has it... seems to break compilation on some machines?
2022-05-24 19:35:29 +03:00
8eac392221 guile: re-enable the guile support
Update for the internal (Mu::Message) APIs.

Update build.
2022-05-21 17:44:09 +03:00
852c7044d9 guile: update, but disable for now
It's not ready for the new Message
2022-04-30 10:40:45 +03:00
85a3ff71ae guile: upgrade to Mu::Message 2022-04-30 10:40:45 +03:00
1c7854930b guile: improve meson build 2022-04-04 23:43:50 +03:00
27ebfb3b3c lib+guile: use Mu::Option, not std::optional
We need the extensions, and/or let's use _one_ optional implementation everywhere.
2022-03-28 08:58:04 +03:00
de80b557e8 meson: build updates 2022-03-26 17:19:10 +02:00
f7c84006d7 many: update for lib/message updates
Adapt to the new names / directory. Big commit, but mostly just very boring renaming.
2022-03-26 17:19:10 +02:00
4c4fb1759f message: move to lib/message, update naming
Basically, move/rename lib/mu-message* to lib/mu-*.

Add the beginnings of a Message class.
2022-03-26 17:19:10 +02:00
3a7bfab5f5 guile: update unit tests
Make it work with meson.
2022-03-13 12:37:29 +02:00
ca5bb06457 guile: use mu-message-fields 2022-03-07 06:50:18 +02:00
ec826cd838 tests: update naming 2022-02-21 23:51:46 +02:00
f10a7560f7 build: fix some warnings 2022-02-21 23:51:46 +02:00
6a7e706354 guile: use Mu::MessageContact
Use the new contact class
2022-02-21 23:22:42 +02:00
f6f17d5d6b *: update code for Mu::MessageFlags
Migrate the code to use the new niceness
2022-02-17 23:48:59 +02:00