Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package spamassassin for openSUSE:Factory checked in at 2022-12-25 15:14:39 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/spamassassin (Old) and /work/SRC/openSUSE:Factory/.spamassassin.new.1563 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "spamassassin" Sun Dec 25 15:14:39 2022 rev:89 rq:1045241 version:unknown Changes: -------- --- /work/SRC/openSUSE:Factory/spamassassin/spamassassin.changes 2022-01-22 08:18:05.338942240 +0100 +++ /work/SRC/openSUSE:Factory/.spamassassin.new.1563/spamassassin.changes 2022-12-25 15:14:54.961394504 +0100 @@ -1,0 +2,70 @@ +Sat Dec 24 18:01:29 UTC 2022 - Arjen de Korte <suse+bu...@de-korte.org> + +- Add BuildRequires Text::Diff that was accidentally removed from + original submission +- Update known warnings + % spamassassin-rpmlintrc + +------------------------------------------------------------------- +Thu Dec 22 10:08:30 UTC 2022 - Paolo Stivanin <i...@paolostivanin.com> + +- Update to spamassissin 4.0.0: + * Notable internal changes: + - Meta rules no longer use priority values, they are evaluated + dynamically when the rules they depend on are finished + - DNS and other asynchronous lookups like DCC or Razor2 plugins + are now launched when priority -100 is reached. This allows + short circuiting at lower priority without sending unneeded + DNS queries + - New internal Mail::SpamAssassin::GeoDB module supporting + RelayCountry and URILocalBL plugins provides a unified + interface to Geographic IP modules. These include: + MaxMind::DB::Reader (GeoIP2) + Geo::IP + IP::Country::DB_File + IP::Country::Fast. + * New plugins: + - Mail::SpamAssassin::Plugin::ExtractText + - Mail::SpamAssassin::Plugin::DMARC + - Mail::SpamAssassin::Plugin::DecodeShortURLs + * HashCash module has been removed completely + * Full detailed changelog: + https://svn.apache.org/repos/asf/spamassassin/trunk/Changes +- Update to iXhash2 4.00: + * Minimum required version: SpamAssassin 4.0.0 +- Update to spampd 2.61: + * Performance and diagnostic improvements, quicker startups, and + a lot of documentation updates. + * Add support for configuration files (examples included in /misc + folder and in POD). + * Add optional "scalable mode" using Net::Server::PreFork module + (16-year TODO!). More info in POD. + * Add --logfile option to control logging destination(s) (syslog, + stderr, and/or file/device). + * Add --logident, --logfacility options for syslog. + * Add multiple levels of help, including full "man" output with + optional HTML formatting. + * Add --show <thing> argument for printing default option values + and other debug. + * Fix SpamAssassin debug logging with versions 3.1+ (output + was going to stderr/wrong syslog/null). + * Fix for IPv6 addresses being used on --host and --relayhost + options (was not possible due to ":<port>" check). + * SIGHUP will now reload SpamAssassin and SpamPD configuration files + (and all module code), still with graceful child process shutdown. + * Use SpamAssassin::Logger module (with SA 3.1+) for all logging. + * Log to stderr by default if running non-daemonized + * Child processes are now renamed to "spampd child" + to distinguish them from the parent in task lists. + * Now requires Net::Server v0.89+ (though latest 2.009 is recommended). + * The --auto-whitelist option is no longer allowed with SpamAssassin v3+. + * Improve --debug option, adding ability to specify + SpamAssassin (v3.1+) debug areas (aka channels/facilities). + * All boolean options can take 0/1 argument and be negated + with "no-" prefix. + * The --children (-c) option is now more formally named + --max-servers (-mxs), but still accepted. + * IO::Socket::UNIX and ::IP are only required if actually + needed for --relaysocket / --relayhost options. + +------------------------------------------------------------------- Old: ---- Mail-SpamAssassin-3.4.6.tar.bz2 Mail-SpamAssassin-3.4.6.tar.bz2.asc Mail-SpamAssassin-rules-3.4.6.r1888502.tgz Mail-SpamAssassin-rules-3.4.6.r1888502.tgz.asc iXhash2-2.05.tar.gz spampd-2.53.tar.gz New: ---- Mail-SpamAssassin-4.0.0.tar.bz2 Mail-SpamAssassin-4.0.0.tar.bz2.asc Mail-SpamAssassin-rules-4.0.0.r1905950.tgz Mail-SpamAssassin-rules-4.0.0.r1905950.tgz.asc iXhash2-4.00.tar.gz spampd-2.61.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ spamassassin.spec ++++++ --- /var/tmp/diff_new_pack.hB7XER/_old 2022-12-25 15:14:56.373402496 +0100 +++ /var/tmp/diff_new_pack.hB7XER/_new 2022-12-25 15:14:56.381402541 +0100 @@ -18,12 +18,12 @@ %bcond_without test -%define ix_version 2.05 -%define spd_version 2.53 -%define sa_version 3.4.6 +%define ix_version 4.00 +%define spd_version 2.61 +%define sa_version 4.0.0 %define sa_float %(echo %{sa_version} | awk -F. '{ printf "%d.%03d%03d", $1, $2, $3 }') %define perl_float %(echo %{perl_version} | awk -F. '{ printf "%d.%03d", $1, $2 }') -%define rules_revision 1888502 +%define rules_revision 1905950 %define IXHASH iXhash2-%{ix_version} %define SPAMPD spampd-%{spd_version} @@ -59,7 +59,6 @@ Patch6: bnc#582111.diff Patch7: basic-lint-without-sandbox.patch Patch10: iXhash2-meta-rules.patch -BuildRequires: perl(Error) BuildRequires: pkgconfig(openssl) BuildRequires: pkgconfig(zlib) # optional, but want them for build (test) @@ -114,7 +113,7 @@ BuildRequires: perl(IO::Zlib) >= 1.04 BuildRequires: perl(MIME::Base64) BuildRequires: perl(Mail::DKIM) >= 0.37 -BuildRequires: perl(Net::DNS) >= 0.58 +BuildRequires: perl(Net::DNS) >= 0.69 BuildRequires: perl(Net::SMTP) BuildRequires: perl(NetAddr::IP) >= 4.010 BuildRequires: perl(Pod::Usage) >= 1.10 @@ -122,15 +121,23 @@ BuildRequires: perl(Test::More) BuildRequires: perl(Time::HiRes) BuildRequires: perl(Time::Local) +# required for tests +BuildRequires: perl(Devel::Cycle) +#BuildRequires: perl(Perl::Critic::Policy::Perlsecret) +BuildRequires: perl(Perl::Critic::Policy::TestingAndDebugging::ProhibitNoStrict) +BuildRequires: perl(Test::More) +BuildRequires: perl(Text::Diff) # optional, but want them for build (test) BuildRequires: perl(Archive::Zip) BuildRequires: perl(BSD::Resource) -BuildRequires: perl(DBD::mysql) +BuildRequires: perl(DBD::SQLite) BuildRequires: perl(DBI) BuildRequires: perl(Devel::Cycle) -BuildRequires: perl(Encode::Detect) +BuildRequires: perl(Email::Address::XS) +BuildRequires: perl(Encode::Detect::Detector) BuildRequires: perl(HTTP::Date) BuildRequires: perl(IO::Socket::INET6) +BuildRequires: perl(IO::Socket::IP) BuildRequires: perl(IO::Socket::SSL) >= 1.76 BuildRequires: perl(IO::String) BuildRequires: perl(IP::Country::Fast) @@ -138,6 +145,7 @@ BuildRequires: perl(Mail::SPF) >= 2.001 BuildRequires: perl(Net::CIDR::Lite) BuildRequires: perl(Net::Ident) +BuildRequires: perl(Net::LibIDN) BuildRequires: perl(Net::Patricia) >= 1.16 BuildRequires: perl(Razor2::Client::Agent) >= 2.61 # @@ -148,7 +156,7 @@ Requires: perl(File::Spec) >= 0.8 Requires: perl(HTML::Parser) >= 3.43 Requires: perl(Mail::DKIM) >= 0.31 -Requires: perl(Net::DNS) >= 0.34 +Requires: perl(Net::DNS) >= 0.69 Requires: perl(NetAddr::IP) >= 4.010 Requires: perl(Pod::Usage) >= 1.10 Requires: perl(Sys::Hostname) @@ -158,10 +166,12 @@ Recommends: perl(BSD::Resource) Recommends: perl(Compress::Zlib) Recommends: perl(DB_File) -Recommends: perl(Encode::Detect) +Recommends: perl(Email::Address::XS) +Recommends: perl(Encode::Detect::Detector) Recommends: perl(Getopt::Long) >= 2.32 Recommends: perl(HTTP::Date) Recommends: perl(IO::Socket::INET6) +Recommends: perl(IO::Socket::IP) Recommends: perl(IO::Socket::SSL) >= 1.76 Recommends: perl(IO::String) Recommends: perl(IO::Zlib) >= 1.04 @@ -173,6 +183,7 @@ Recommends: perl(Net::CIDR::Lite) Recommends: perl(Net::DNS) >= 0.58 Recommends: perl(Net::Ident) +Recommends: perl(Net::LibIDN) Recommends: perl(Net::Patricia) >= 1.16 Recommends: perl(Net::SMTP) Recommends: perl(Razor2::Client::Agent) >= 2.61 @@ -220,7 +231,7 @@ %patch3 %patch6 %patch7 -p1 -%patch10 +%patch10 -p1 cp %{SOURCE11} ./ %build ++++++ Mail-SpamAssassin-3.4.6.tar.bz2 -> Mail-SpamAssassin-4.0.0.tar.bz2 ++++++ /work/SRC/openSUSE:Factory/spamassassin/Mail-SpamAssassin-3.4.6.tar.bz2 /work/SRC/openSUSE:Factory/.spamassassin.new.1563/Mail-SpamAssassin-4.0.0.tar.bz2 differ: char 11, line 1 ++++++ Mail-SpamAssassin-rules-3.4.6.r1888502.tgz -> Mail-SpamAssassin-rules-4.0.0.r1905950.tgz ++++++ ++++ 11569 lines of diff (skipped) ++++++ basic-lint-without-sandbox.patch ++++++ --- /var/tmp/diff_new_pack.hB7XER/_old 2022-12-25 15:14:56.569403606 +0100 +++ /var/tmp/diff_new_pack.hB7XER/_new 2022-12-25 15:14:56.573403628 +0100 @@ -1,7 +1,8 @@ -diff -purN a/t/basic_lint_without_sandbox.t b/t/basic_lint_without_sandbox.t ---- a/t/basic_lint_without_sandbox.t 2020-01-25 03:51:14.000000000 +0100 -+++ b/t/basic_lint_without_sandbox.t 2020-11-10 22:58:02.294809138 +0100 -@@ -25,7 +25,7 @@ my $sandboxfile = "log/test_rules_copy/7 +Index: Mail-SpamAssassin-4.0.0/t/basic_lint_without_sandbox.t +=================================================================== +--- Mail-SpamAssassin-4.0.0.orig/t/basic_lint_without_sandbox.t ++++ Mail-SpamAssassin-4.0.0/t/basic_lint_without_sandbox.t +@@ -23,7 +23,7 @@ my $sandboxfile = "$localrules/70_sandbo # so we can use that to tell if this is the case SKIP: { skip( "Not on a sandbox", 2 ) unless -f $scoresfile; ++++++ bnc#582111.diff ++++++ --- /var/tmp/diff_new_pack.hB7XER/_old 2022-12-25 15:14:56.585403696 +0100 +++ /var/tmp/diff_new_pack.hB7XER/_new 2022-12-25 15:14:56.585403696 +0100 @@ -1,11 +1,13 @@ ---- spamd/spamd.raw.orig 2010-06-24 11:28:10.047109188 +0200 -+++ spamd/spamd.raw 2010-06-24 11:28:57.942234270 +0200 -@@ -174,6 +174,7 @@ +Index: spamd/spamd.raw +=================================================================== +--- spamd/spamd.raw.orig ++++ spamd/spamd.raw +@@ -339,6 +339,7 @@ sub print_usage_and_exit { # defaults my %opt = ( + 'syslog-socket' => 'unix', 'user-config' => 1, - 'ident-timeout' => 5.0, # scaling settings; some of these aren't actually settable via cmdline + 'server-scale-period' => 2, # how often to scale the # of kids, secs ++++++ iXhash2-2.05.tar.gz -> iXhash2-4.00.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/iXhash2-2.05/CHANGELOG new/iXhash2-4.00/CHANGELOG --- old/iXhash2-2.05/CHANGELOG 2012-07-08 13:30:52.000000000 +0200 +++ new/iXhash2-4.00/CHANGELOG 2019-04-30 16:50:07.000000000 +0200 @@ -3,3 +3,8 @@ - First public packaged version +4.00: + +- Minimum required version: SpamAssassin 4.0.0 +- Notice that ix.dnsbl.manitu.net is the only working server at the moment + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/iXhash2-2.05/README new/iXhash2-4.00/README --- old/iXhash2-2.05/README 2012-07-08 13:28:36.000000000 +0200 +++ new/iXhash2-4.00/README 2019-04-30 16:49:57.000000000 +0200 @@ -1,5 +1,5 @@ -iXhash2.pm is a plugin for SpamAssassin 3.2.0 and up. It takes the body of a +iXhash2.pm is a plugin for SpamAssassin 4.0.0 and up. It takes the body of a mail, strips parts from it and then computes a hash value from the rest. These values will then be looked up via DNS to see if the hashes have already been categorized as spam by others. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/iXhash2-2.05/iXhash2.cf new/iXhash2-4.00/iXhash2.cf --- old/iXhash2-2.05/iXhash2.cf 2012-07-08 13:29:31.000000000 +0200 +++ new/iXhash2-4.00/iXhash2.cf 2019-04-30 16:49:39.000000000 +0200 @@ -4,17 +4,12 @@ ifplugin Mail::SpamAssassin::Plugin::iXhash2 -ixhashdnsbl GENERIC_IXHASH generic.ixhash.net. -body GENERIC_IXHASH eval:check_ixhash('GENERIC_IXHASH') -tflags GENERIC_IXHASH net - -ixhashdnsbl NIXSPAM_IXHASH ix.dnsbl.manitu.net. -body NIXSPAM_IXHASH eval:check_ixhash('NIXSPAM_IXHASH') -tflags NIXSPAM_IXHASH net - -ixhashdnsbl SEM_IXHASH ixhash.spameatingmonkey.net. -body SEM_IXHASH eval:check_ixhash('SEM_IXHASH') -tflags SEM_IXHASH net +ixhashdnsbl IXHASH_IX ix.dnsbl.manitu.net. +body IXHASH_IX eval:check_ixhash('IXHASH_IX') +describe IXHASH_IX http://www.ixhash.net/listinfo.html +tflags IXHASH_IX net +score IXHASH_IX 1.5 +reuse IXHASH_IX endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/iXhash2-2.05/iXhash2.pm new/iXhash2-4.00/iXhash2.pm --- old/iXhash2-2.05/iXhash2.pm 2012-07-08 13:29:40.000000000 +0200 +++ new/iXhash2-4.00/iXhash2.pm 2019-04-30 16:54:29.000000000 +0200 @@ -8,28 +8,16 @@ loadplugin Mail::SpamAssassin::Plugin::iXhash2 iXhash2.pm - # The actual rule(s) + # The actual rule ixhashdnsbl IXHASH_IX ix.dnsbl.manitu.net. body IXHASH_IX eval:check_ixhash('IXHASH_IX') describe IXHASH_IX http://www.ixhash.net/listinfo.html tflags IXHASH_IX net score IXHASH_IX 1.5 - ixhashdnsbl IXHASH_GENERIC generic.ixhash.net. - body IXHASH_GENERIC eval:check_ixhash('IXHASH_GENERIC') - describe IXHASH_GENERIC http://www.ixhash.net/listinfo.html - tflags IXHASH_GENERIC net - score IXHASH_GENERIC 1.5 - - ixhashdnsbl IXHASH_SEM ixhash.spameatingmonkey.net. - body IXHASH_SEM eval:check_ixhash('IXHASH_SEM') - describe IXHASH_SEM http://spameatingmonkey.com/lists.html - tflags IXHASH_SEM net - score IXHASH_SEM 1.5 - =head1 DESCRIPTION -iXhash2.pm is a plugin for SpamAssassin 3.2.0 and up. It takes the body of a +iXhash2.pm is a plugin for SpamAssassin 4.0.0 and up. It takes the body of a mail, strips parts from it and then computes a hash value from the rest. These values will then be looked up via DNS to see if the hashes have already been categorized as spam by others. @@ -70,7 +58,7 @@ =cut package Mail::SpamAssassin::Plugin::iXhash2; -my $VERSION = 2.05; +my $VERSION = 4.00; use strict; use Mail::SpamAssassin::Plugin; @@ -125,24 +113,22 @@ $conf->{parser}->register_commands(\@cmds); } -sub parsed_metadata +sub check_dnsbl { my ($self, $opts) = @_; - my $pms = $opts->{permsgstatus}; - my $conf = $pms->{main}->{conf}; return if $self->{ixhash2_disabled}; + my $pms = $opts->{permsgstatus}; + my $conf = $pms->{conf}; + + return if !$pms->is_dns_available(); + unless (keys %{$conf->{ixhashdnsbls}}) { dbg("no ixhashdnsbls configured"); return; } - unless ($pms->is_dns_available()) { - dbg("DNS not available"); - return; - } - $pms->{ixhashdnsbl_active_rules} = {}; foreach my $rulename (keys %{$pms->{conf}->{ixhashdnsbls}}) { next unless $pms->{conf}->is_rule_active('body_evals', $rulename); @@ -153,6 +139,7 @@ # Calculate hashes my $body = $pms->{msg}->get_pristine_body(); + my $hash; # Method #1 and #2 if ($hash = compute1sthash($body)) { $pms->{ixhash_hashes}->{$hash} = 1; } @@ -172,19 +159,21 @@ my $zone = $pms->{conf}->{ixhashdnsbls}->{$rulename}->{zone}; foreach my $hash (keys %{$pms->{ixhash_hashes}}) { my $key = "IXHASH:$zone:$hash"; - my $id = $pms->{main}->{resolver}->bgsend($hash.'.'.$zone, 'A', undef, sub { - my ($pkt, $id, $timestamp) = @_; - $pms->{async}->set_response_packet($id, $pkt, $key, $timestamp); - $self->process_dns_result($pms, $pkt, $rulename, $zone, $hash); - }); - my $ent = { key=>$key, id=>$id, type=>'IXHASH-A', zone=>$zone }; - $pms->{async}->start_lookup($ent); - $pms->register_async_rule_start($rulename); + my $ent = { + key => $key, + zone => $zone, + hash => $hash, + type => 'IXHASH-A', + rulename => $rulename, + }; + $pms->{async}->bgsend_and_start_lookup("$hash.$zone", 'A', undef, $ent, + sub { my($ent, $pkt) = @_; $self->process_dns_result($pms, $ent, $pkt); }, + master_deadline => $pms->{master_deadline} ); } } } -# Dummy rule, logic is handled elsewhere +# Dummy rule, logic is handled in check_dnsbl sub check_ixhash { return 0; @@ -192,14 +181,18 @@ sub process_dns_result { - my ($self, $pms, $response, $rulename, $zone, $hash) = @_; + my ($self, $pms, $ent, $pkt) = @_; + + return if !$pkt; + + my $hash = $ent->{hash}; + my $zone = $ent->{zone}; - foreach my $rr ($response->answer) { + foreach my $rr ($pkt->answer) { next unless $rr->type eq 'A'; next unless $rr->address =~ /^127\./; - dbg("got hit at $zone for $hash ($rr->{address})"); - $pms->got_hit($rulename); - $pms->register_async_rule_finish($rulename); + dbg("got hit at $zone for $hash (".$rr->address.")"); + $pms->got_hit($ent->{rulename}, ""); } } ++++++ iXhash2-meta-rules.patch ++++++ --- /var/tmp/diff_new_pack.hB7XER/_old 2022-12-25 15:14:56.661404126 +0100 +++ /var/tmp/diff_new_pack.hB7XER/_new 2022-12-25 15:14:56.665404148 +0100 @@ -1,36 +1,30 @@ -diff -ur iXhash2-2.05.orig/iXhash2.cf iXhash2-2.05/iXhash2.cf ---- iXhash2-2.05.orig/iXhash2.cf 2012-07-08 13:29:31.000000000 +0200 -+++ iXhash2-2.05/iXhash2.cf 2012-09-26 13:41:11.874466944 +0200 -@@ -1,20 +1,40 @@ +--- Mail-SpamAssassin-4.0.0/iXhash2-4.00/iXhash2.cf.orig 2022-12-22 11:03:27.016843078 +0100 ++++ Mail-SpamAssassin-4.0.0/iXhash2-4.00/iXhash2.cf 2022-12-22 11:04:19.045110018 +0100 +@@ -1,15 +1,40 @@ # Note: loadplugin should really go into local.pre or so -loadplugin Mail::SpamAssassin::Plugin::iXhash2 iXhash2.pm -+loadplugin Mail::SpamAssassin::Plugin::iXhash2 ++loadplugin Mail::SpamAssassin::Plugin::iXhash2 ifplugin Mail::SpamAssassin::Plugin::iXhash2 --ixhashdnsbl GENERIC_IXHASH generic.ixhash.net. --body GENERIC_IXHASH eval:check_ixhash('GENERIC_IXHASH') --tflags GENERIC_IXHASH net -- --ixhashdnsbl NIXSPAM_IXHASH ix.dnsbl.manitu.net. --body NIXSPAM_IXHASH eval:check_ixhash('NIXSPAM_IXHASH') --tflags NIXSPAM_IXHASH net -- --ixhashdnsbl SEM_IXHASH ixhash.spameatingmonkey.net. --body SEM_IXHASH eval:check_ixhash('SEM_IXHASH') --tflags SEM_IXHASH net -+ixhashdnsbl __GENERIC_IXHASH generic.ixhash.net. -+body __GENERIC_IXHASH eval:check_ixhash('GENERIC_IXHASH') -+tflags __GENERIC_IXHASH net +-ixhashdnsbl IXHASH_IX ix.dnsbl.manitu.net. +-body IXHASH_IX eval:check_ixhash('IXHASH_IX') +-describe IXHASH_IX http://www.ixhash.net/listinfo.html +-tflags IXHASH_IX net +-score IXHASH_IX 1.5 +-reuse IXHASH_IX ++ixhashdnsbl __GENERIC_IXHASH generic.ixhash.net. ++body __GENERIC_IXHASH eval:check_ixhash('GENERIC_IXHASH') ++tflags __GENERIC_IXHASH net + -+ixhashdnsbl __NIXSPAM_IXHASH ix.dnsbl.manitu.net. -+body __NIXSPAM_IXHASH eval:check_ixhash('NIXSPAM_IXHASH') -+tflags __NIXSPAM_IXHASH net ++ixhashdnsbl __NIXSPAM_IXHASH ix.dnsbl.manitu.net. ++body __NIXSPAM_IXHASH eval:check_ixhash('NIXSPAM_IXHASH') ++tflags __NIXSPAM_IXHASH net + -+ixhashdnsbl __SEM_IXHASH ixhash.spameatingmonkey.net. -+body __SEM_IXHASH eval:check_ixhash('SEM_IXHASH') -+tflags __SEM_IXHASH net ++ixhashdnsbl __SEM_IXHASH ixhash.spameatingmonkey.net. ++body __SEM_IXHASH eval:check_ixhash('SEM_IXHASH') ++tflags __SEM_IXHASH net + +ixhashdnsbl __HOSTEUROPE_IXHASH hosteurope.ixhash.net. +body __HOSTEUROPE_IXHASH eval:check_ixhash('HOSTEUROPE_IXHASH') ++++++ patch-PgSQL ++++++ --- /var/tmp/diff_new_pack.hB7XER/_old 2022-12-25 15:14:56.701404353 +0100 +++ /var/tmp/diff_new_pack.hB7XER/_new 2022-12-25 15:14:56.701404353 +0100 @@ -1,6 +1,8 @@ ---- lib/Mail/SpamAssassin/BayesStore/PgSQL.pm 2010-01-21 13:14:34.000000000 +0100 -+++ lib/Mail/SpamAssassin/BayesStore/PgSQL.pm 2010-03-17 08:44:19.000000000 +0100 -@@ -941,7 +941,7 @@ +Index: lib/Mail/SpamAssassin/BayesStore/PgSQL.pm +=================================================================== +--- lib/Mail/SpamAssassin/BayesStore/PgSQL.pm.orig ++++ lib/Mail/SpamAssassin/BayesStore/PgSQL.pm +@@ -987,7 +987,7 @@ sub _put_token { } my $escaped_token = _quote_bytea($token); @@ -9,7 +11,7 @@ unless (defined($sth)) { dbg("bayes: _put_token: SQL error: ".$self->{_dbh}->errstr()); -@@ -1004,7 +1004,7 @@ +@@ -1050,7 +1050,7 @@ sub _put_tokens { my $tokenarray = join(",", map { '"' . _quote_bytea($_) . '"' } sort keys %{$tokens}); ++++++ patch-SQL_ASCII_SORT ++++++ --- /var/tmp/diff_new_pack.hB7XER/_old 2022-12-25 15:14:56.717404444 +0100 +++ /var/tmp/diff_new_pack.hB7XER/_new 2022-12-25 15:14:56.717404444 +0100 @@ -1,6 +1,8 @@ ---- lib/Mail/SpamAssassin/Conf/SQL.pm 2006-09-29 15:06:39.000000000 +0200 -+++ lib/Mail/SpamAssassin/Conf/SQL.pm 2007-02-09 16:48:42.000000000 +0100 -@@ -139,9 +139,14 @@ +Index: lib/Mail/SpamAssassin/Conf/SQL.pm +=================================================================== +--- lib/Mail/SpamAssassin/Conf/SQL.pm.orig ++++ lib/Mail/SpamAssassin/Conf/SQL.pm +@@ -148,9 +148,14 @@ sub load_with_dbi { $sql =~ s/_DOMAIN_/$quoted_domain/g; } else { ++++++ patch-URIDNSBL ++++++ --- /var/tmp/diff_new_pack.hB7XER/_old 2022-12-25 15:14:56.733404533 +0100 +++ /var/tmp/diff_new_pack.hB7XER/_new 2022-12-25 15:14:56.737404557 +0100 @@ -1,7 +1,8 @@ -diff -ur Mail-SpamAssassin-3.4.0/lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm Mail-SpamAssassin-3.4.0_fix/lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm ---- Mail-SpamAssassin-3.4.0/lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm 2014-02-07 09:36:27.000000000 +0100 -+++ Mail-SpamAssassin-3.4.0_fix/lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm 2014-02-13 17:24:09.259369721 +0100 -@@ -416,6 +416,8 @@ +Index: Mail-SpamAssassin-4.0.0/lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm +=================================================================== +--- Mail-SpamAssassin-4.0.0.orig/lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm ++++ Mail-SpamAssassin-4.0.0/lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm +@@ -422,6 +422,8 @@ sub check_dnsbl { while (my($uri, $info) = each %{$uris}) { # we want to skip mailto: uris next if ($uri =~ /^mailto:/i); ++++++ spamassassin-rpmlintrc ++++++ --- /var/tmp/diff_new_pack.hB7XER/_old 2022-12-25 15:14:56.777404783 +0100 +++ /var/tmp/diff_new_pack.hB7XER/_new 2022-12-25 15:14:56.781404805 +0100 @@ -1,4 +1,3 @@ -addFilter("no-dependency-on perl-base") addFilter("systemd-service-without-service_.* sa-update.service") -addFilter("suse-missing-rclink sa-update") +addFilter("spamassassin.* no-binary") ++++++ spampd-2.53.tar.gz -> spampd-2.61.tar.gz ++++++ ++++ 8376 lines of diff (skipped)