#1104033 dovecot-antispam: incompatible with dovecot 2.4

#1104033#5
Date:
2025-04-24 14:20:50 UTC
From:
To:
dovecot-antispam does not currently build against dovecot 2.4 (currently in
experimental).  Logs from an attempted build are included below.

The upstream status of this project is unclear, given that the last activity
in its git repository (at the time of this bug report) was in 2017.  Is
dovecot-antispam still maintained? Are there plans to port it to dovecot
2.4.x?

dpkg-source: info: building dovecot-antispam in dovecot-antispam_2.0+20171229-1.1.dsc
 debian/rules binary
dh_testdir
cp -f defconfig .config
/usr/bin/make CC="x86_64-linux-gnu-gcc" CFLAGS="-O2 -g"
make[1]: Entering directory '/src/dovecot-antispam'
cc -DHAVE_CONFIG_H -I/usr/include/dovecot/ -I/usr/include/dovecot/src/ -I/usr/include/dovecot/src/lib/ -I/usr/include/dovecot/src/lib-storage/ -I/usr/include/dovecot/src/lib-mail/ -I/usr/include/dovecot/src/lib-imap/ -I/usr/include/dovecot/src/lib-dict/ -I/usr/include/dovecot/src/lib-index/ -I/usr/include/dovecot/src/imap/ -o dovecot-version dovecot-version.c
./dovecot-version > dovecot-version.h
  CC   antispam-storage.o
In file included from antispam-storage.c:1:
dovecot-version.h:17:49: fatal error: antispam-storage-2.4.c: No such file or directory
   17 | #define ANTISPAM_STORAGE                        "antispam-storage-2.4.c"
      |                                                 ^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: *** [Makefile:37: antispam-storage.o] Error 1
make[1]: Leaving directory '/src/dovecot-antispam'
make: *** [debian/rules:23: lib90_antispam_plugin.so] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2

#1104033#10
Date:
2025-04-24 18:29:59 UTC
From:
To:
With dovecot 2.4.1 now in unstable, this is release critical.  Adjusting
severity accordingly.

#1104033#23
Date:
2025-07-07 17:35:44 UTC
From:
To:
Hi, Ubuntu has now pulled in dovecot 2.4.1 as well, and I've noticed the
issue with dovecot-antispam not yet updated to the dovecot 2.4 API.

Does Debian have a desired approach for how this issue should be
handled?  Dropping dovecot-antispam as a dependency could resolve it but
would lose an important feature for users.

The amount of change needed last time, for dovecot 2.3, looks like it
wasn't too extensive, has there been analysis on what would need adapted
to make it work with 2.4?

https://salsa.debian.org/ron/dovecot-antispam/-/commit/713e9e9ffd4adfcc58c6e12470e87c9fd1b8af44

Bryce

#1104033#28
Date:
2025-08-05 05:02:44 UTC
From:
To:
I had a server running dovecot-antispam for many, many years, and feared
the loss of this functionality with the trixie release, however there is
good news!

dovecot can be configured to natively handle precisely what this package
provides, via sieve integration.  It's documented upstream, and works in
both 2.3¹ and 2.4².

I successfully configured it under bookworm (dovecot 2.3), removed
dovecot-antispam, and after satisfactory results, upgraded to trixie
(dovecot 2.4), had a bit of headache with the conf file migration, and
now it's working great!

FWIW, I was worried about downtime with a production system, so I took
quite a few extra steps to handle the migration.  Debian, and these
packages in particular, are quite flexible, AWESOME!

  * Rebuilt dovecot-antispam with bookworm-backports version of dovecot,
    2.3.19.1 -> 2.3.21.1, since there is ABI incompatibility.  This was
    probably unnecessary (somehow I inferred the idea that I better be
    on the latest 2.3.x version before continuing...), but rebuilding
    the package was trivial.

  * Upgraded to bookworm-backports versions of dovecot and [site-local]
    dovecot-antispam packages on the production system, though
    unnecessary, was trivial.

  * Implemented the dovecot 2.3 spam-reporting documentation¹ replacing
    the need for dovecot-antispam.  This was really straight-forward, as
    I had already been using sieve, and had minimum downtime on the
    production system.

  * In preparation for the 2.4 migration: Using a scratch trixie virtual
    machine, installed the bookworm-backports version of dovecot (should
    work with bookworm version too);  Copied production conf files over
    the fresh install - the result is non-functional (missing LDA), but
    verifies daemon startup;  Upgraded to trixie version;  Manually
    merged the *.ucf-dist files - this took quite a bit of time
    deciphering the customizations that have been in place ~15 years,
    reading docs, etc.;  tar'd up the new conf files and threw away the
    VM;

  * On the production system: Package-pinned dovecot to the
    bookworm-backports version;  Upgraded the rest of the system to
    trixie;  Amazed this worked so well!

  * Finally, on the production system: Unpacked the pre-migrated conf
    files from the test VM;  Removed package-pin and upgraded dovecot to
    trixie version;  Fought with some configuration problems related to
    the 2.4 migration for a while, but had nothing to do with the
    spam-reporting functionality;  Viola!


¹ https://doc.dovecot.org/2.3/configuration_manual/howto/antispam_with_sieve/

² https://doc.dovecot.org/2.4.1/core/config/spam_reporting.html

#1104033#35
Date:
2025-10-12 11:36:08 UTC
From:
To:
I just checked and there appears to be a port to 2.4 in the upstream git
repo, committed just 12h ago.

https://git.sipsolutions.net/dovecot-antispam.git/commit/?id=d36b66307a546cb9a403ee45132795745dc784c3

Jordi

#1104033#40
Date:
2025-10-21 06:20:02 UTC
From:
To:
Yes, I've been talking to Johannes about whether we want to keep this
alive
for (at least) another cycle - this is a preliminary patch that still
needs
some actual testing which neither of us have actually completed yet.

So if you have a (non-critical) system you can run some tests on, we'd
love
to hear reports about any issues you ran into - but in his words, at
present:

"It's probably not something you should package right now ... I don't
have a
lot of confidence yet and need to sleep ... 2.4 changed a lot of things
in
the config"

But it is work in progress to look forward to.

   Cheers,
   Ron