piping an email to sa-learn --spam now returns: archive-iterator: invalid (undef) format in target list, 2 at /usr/lib/perl5/ven dor_perl/5.8.8/Mail/SpamAssassin/ArchiveIterator.pm line 724, <STDIN> line 1. Worked fine yesterday with 3.1.3 Reproducible: Always Steps to Reproduce: cat singlemail | sa-learn --spam (or "[|] [CTRL-W] sa-learn --spam" in pine) Actual Results: archive-iterator: invalid (undef) format in target list, 2 at /usr/lib/perl5/ven dor_perl/5.8.8/Mail/SpamAssassin/ArchiveIterator.pm line 724, <STDIN> line 1. Learned tokens from 1 message(s) (1 message(s) examined) Expected Results: Learned tokens from 1 message(s) (1 message(s) examined)
Testing further shows that this is a problem with the autodetect. If specifying - (for stdin), it works. If relying on autodetecting the input stream, it no longer does.
I see the same message from sa-learn since upgrading SpamAssassin from 3.1.3 to 3.1.8. Arthur's workaround of explicitly adding "-" to sa-learn's command line helps in my case too.
This problem is already reported to upstream and the patch is ready: https://issues.apache.org/SpamAssassin/show_bug.cgi?id=5336 /ediap
Fixed in 3.1.8-r1.
*** Bug 127459 has been marked as a duplicate of this bug. ***