Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 802654 - mail-filter/spamassassin-3.4.6-r1 fails tests
Summary: mail-filter/spamassassin-3.4.6-r1 fails tests
Status: RESOLVED OBSOLETE
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Philippe Chaintreuil
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-07-17 21:56 UTC by Agostino Sarubbo
Modified: 2023-10-27 00:49 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,117.18 KB, text/plain)
2021-07-17 21:56 UTC, Agostino Sarubbo
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Agostino Sarubbo gentoo-dev 2021-07-17 21:56:38 UTC
https://blogs.gentoo.org/ago/2020/07/04/gentoo-tinderbox/

Issue: mail-filter/spamassassin-3.4.6-r1 fails tests.
Discovered on: amd64 (internal ref: ci)

NOTE:
This machine uses GCC-11: https://gcc.gnu.org/gcc-11/porting_to.html
If you think this is a GCC-11 related issue, please block bug 732706.
Comment 1 Agostino Sarubbo gentoo-dev 2021-07-17 21:56:41 UTC
Created attachment 724597 [details]
build.log

build log and emerge --info
Comment 2 Philippe Chaintreuil 2021-07-17 23:31:08 UTC
My initial take is that these tests are failing because neither the berkdb nor gdbm USE flags are enabled on dev-lang/perl in the test setup.

I *think*, these are tests that need a db, and in the setup, none are available.

Not sure what the answer is here.  To require one of them if USE=test is enabled, or to nuke the tests when neither is enabled.  Or bug upstream to skip the tests when no db providers are available.
Comment 3 Ionen Wolkens gentoo-dev 2021-07-18 03:26:07 UTC
(In reply to Philippe Chaintreuil from comment #2)
> Not sure what the answer is here.  To require one of them if USE=test is
> enabled, or to nuke the tests when neither is enabled.  Or bug upstream to
> skip the tests when no db providers are available.
Tests shouldn't be minimal, aim to run as many as possible along with the deps they need.
(use || ( ... ) if either backends are okay for tests).

But what about runtime?

Is this just a test-only thing or is berkdb/gdbm expected at runtime too? Now that profiles dropped default berkdb, this may become an issue for someone.

Not that I'm familiar with spamassassin, so don't ask me :)
Comment 4 Philippe Chaintreuil 2021-07-26 20:53:05 UTC
(In reply to Ionen Wolkens from comment #3)
> Tests shouldn't be minimal, aim to run as many as possible along with the
> deps they need.
> (use || ( ... ) if either backends are okay for tests).
> 
> But what about runtime?
> 
> Is this just a test-only thing or is berkdb/gdbm expected at runtime too?
> Now that profiles dropped default berkdb, this may become an issue for
> someone.
> 
> Not that I'm familiar with spamassassin, so don't ask me :)

One can technically run spamassassin without any db backing -- just download rules from the internet and have no bayes/learning -- but I think it's a small minority that does.

I think these tests are failing because they're running in that minimal configuration.  ("DBBasedAddrList.pm line 128" is about selecting a db backend to use and finding none.  Those lines also say "open of auto-whitelist file failed" -- and "auto" indicates learning -- there's no db to put the learning into available.)  Having berkdb no longer present is likely why these just started failing.

So in this USE="-berkdb -mysql -postgresql -sqlite" setup, I suspect these tests shouldn't be running.  However if any of those are set, then they should be present and passing.

1.)  I should contact upstream and figure out if they expect tests to fail when there's no db at all.  Seems like they should be skipped instead.
2.)  I'm probably overlooking it, but does the test setup test all USE flag combinations?  Are we only failing these tests for this specific combination?  Or is this the only combination being run?  (If it's the only one, is there documentation about how to affect which use flags are set in test?)
Comment 5 Philippe Chaintreuil 2023-10-27 00:49:29 UTC
Closing: 3.4.6-r1 is no longer in the tree.