Depuis la dernière mise à jour du paquet, tous mes serveurs Ubuntu 14.04.1 m'envoient des courriels avec un avertissement Cron - le sujet est
Test Cron -e/usr/sbin/amavisd-new-cronjob &&/usr/sbin/amavisd-new-cronjob sa-sync
avec un contenu corporel
Argument "Perl_version" isn't numeric in numeric ge (>=) at (eval 530) line 1.
Argument "Perl_version" isn't numeric in numeric ge (>=) at (eval 1023) line 1.
Argument "Perl_version" isn't numeric in numeric ge (>=) at (eval 532) line 1.
Argument "Perl_version" isn't numeric in numeric ge (>=) at (eval 1025) line 1.
Dois-je m'inquiéter à ce sujet et comment puis-je le résoudre? Ou puis-je seulement attendre la mise à jour d'Amavis?
Merci.
Dans les commentaires sur @cgross, il semble que je ne sois pas le seul à ne pas avoir mis à niveau SpamAssassin vers la version 3.4.0.
Je vais donc créer ma propre réponse à partir de ce que j'ai fait.
Téléchargez les patchs avec
wget "http://svn.Apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Conf/Parser.pm?r1=1642207&r2=1642206&pathrev=1642207&view=patch" -O parser.pm.patch
wget "http://svn.Apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Conf.pm?r1=1642207&r2=1642206&pathrev=1642207&view=patch" -O conf.pm.patch
Basculez sur root et corrigez les fichiers
su
patch /usr/share/Perl5/Mail/SpamAssassin/Conf/Parser.pm < parser.pm.patch
patch /usr/share/Perl5/Mail/SpamAssassin/Conf.pm < conf.pm.patch
Pour ceux qui utilisent sa-learn
: Basculez vers une version plus récente de Mail-SpamAssassin (par exemple, 3.4.0). Si vous avez installé Mail :: SpamAssassin en utilisant CPAN, vous pouvez le mettre à jour comme ceci:
cpan upgrade Mail::SpamAssassin
Pour tous les autres, examinez vos scripts et essayez d'incorporer la solution de contournement utilisée dans Mail-SpamAssassin:
# Store the version for later use
my $mm_version = $ExtUtils::MakeMaker::VERSION;
# avoid stupid 'Argument "6.30_01" isn't numeric in numeric ge (>=)' warnings;
# strip off the beta Subversion noise that causes the trouble.
$mm_version =~ s/_\S+$//; # "6.30_01" => "6.30"
if ($mm_version+0 < 5.45) {
die "SpamAssassin Makefile.PL requires at least ExtUtils::MakeMaker v5.45";
}
Ceci est un avertissement, pas une erreur fatale. Il peut être ignoré en toute sécurité. Cela est dû à une récente mise à jour de la règle utilisant une condition SA qui a été ajoutée à la jonction mais n'a pas encore été publiée.
La réponse de Germar résoudra le problème mais ne sera peut-être pas acceptable pour ceux qui veulent rester avec du code de distribution pure.
Je ne sais pas avec quelle rapidité les distributions incorporeront les SA modifications: https://svn.Apache.org/viewvc?view=revision&revision=1642207
La règle en question a été désactivée dans le sandbox de règles, elle sera (espérons-le) publiée dans les mises à jour d'ici ce soir (2014-11-30) et cet avertissement devrait alors s'arrêter.