Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package rspamd for openSUSE:Factory checked 
in at 2026-03-31 15:22:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rspamd (Old)
 and      /work/SRC/openSUSE:Factory/.rspamd.new.1999 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rspamd"

Tue Mar 31 15:22:27 2026 rev:45 rq:1343711 version:4.0.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/rspamd/rspamd.changes    2025-12-18 
18:37:58.730063830 +0100
+++ /work/SRC/openSUSE:Factory/.rspamd.new.1999/rspamd.changes  2026-03-31 
15:23:12.138602610 +0200
@@ -1,0 +2,112 @@
+Mon Mar 30 13:04:02 UTC 2026 - Marcus Rueckert <[email protected]>
+
+- Update to 4.0.0
+  Upgrade Notes
+  Action required for per-user Bayes with Redis sharding: Jump Hash
+  has been replaced with Ring Hash (Ketama). Run rspamadm
+  statistics_dump migrate after upgrading or accept temporary
+  accuracy loss as data is re-learned. Single Redis server setups
+  are not affected.
+
+  Other breaking changes
+  - Content URLs included by default — URLs from PDF and other
+    computed parts are now returned by task:get_urls(). Set
+    include_content_urls = false in local.d/options.inc to restore
+    old behavior.
+  - SSL auto-detection — ssl = true worker option removed; SSL is
+    now auto-detected from bind socket flags.
+  - libfasttext removed — Replaced with built-in mmap-based shim.
+    ENABLE_FASTTEXT cmake option no longer exists. Existing models
+    still work with massive memory savings.
+  - SenderScore RBLs disabled — Requires MyValidity account
+    registration; was non-functional without it.
+  - Suspicious TLDs now map-based — Hardcoded list replaced with
+    conf/maps.d/suspicious_tlds.inc, customizable via local.d/.
+  - Neural autolearn options renamed — Now match RBL module naming
+    conventions.
+  - Token bucket load balancing — Enabled by default for proxy
+    upstreams, replacing simple round-robin.
+  - DKIM RFC conformance — Unknown and broken DKIM keys now handled
+    per RFC.
+  Key Features
+  - /checkv3 Multipart Protocol New /checkv3 endpoint using
+    multipart/form-data requests and multipart/mixed responses.
+    Metadata sent as structured JSON/msgpack instead of HTTP
+    headers. Per-part zstd compression, zero-copy writev responses,
+    and proxy support. Client-side: rspamc --protocol-v3 / rspamc
+    --msgpack.
+  - Pluggable Async Hyperscan Cache Hyperscan compilation and
+    caching moved to an async Lua backend with Redis storage
+    support. Shared hyperscan databases across workers and hosts.
+    Self-healing cache auto-detects stale blobs and triggers
+    recompile. Small databases compiled in-memory without file
+    caching.
+  - Multi-Flag Fuzzy Hashes Single fuzzy hash can carry up to 8
+    flags simultaneously (epoch 12). Multiple rules match the same
+    digest with independent flag/value pairs. Redis update path
+    rewritten in Lua with EVALSHA + NOSCRIPT recovery. Fully
+    backward-compatible.
+  - HTML Fuzzy Phishing Detection Dual-mode fuzzy: template
+    matching + domain-sensitive matching. New FUZZY_HTML_PHISHING
+    symbol fires when an HTML template matches but link domains
+    differ — detecting reused phishing templates with swapped
+    links.
+  - HTTPS Server Support Workers can now serve HTTPS natively,
+    enabling secure WebUI and API without a reverse proxy. SSL
+    auto-detected from bind socket configuration.
+  - Built-in Fasttext Shim External C++ library replaced with
+    zero-dependency mmap-based reader. Shared memory across workers
+    (MAP_SHARED) eliminates per-worker heap copies (~500MB-7GB
+    savings). Hot-reloadable via maps infrastructure.
+  - UUID v7 Per Task Native UUID v7 generation per task, synced
+    with Log-Tag header. New ClickHouse UUID v7 column support for
+    correlation across systems.
+  - Neural / LLM Embeddings External pretrained neural model
+    support. Multi-layer funnel architecture with language-based
+    model/URL selection. Multi-model fasttext embedding with SIF
+    word weighting. Expression-based autolearn for LLM providers.
+  - Multi-Class Bayes Classifiers support arbitrary classes beyond
+    binary spam/ham. WebUI learning UI, /stat and
+    /bayes/classifiers endpoints updated. Shard migration tool for
+    the Jump Hash to Ring Hash transition.
+  - Legacy Protocol Enhancements Milter add/remove headers and
+    extended symbol info now exposed in RSPAMC/SPAMC text protocol.
+    Enables Exim and other legacy clients to access milter headers.
+  Other Notable Features
+  - Token bucket load balancing for proxy upstreams with
+    configurable burst parameters
+  - Ring Hash (Ketama) consistent hashing with true minimal
+    disruption and recovery
+  - Structured metadata exporter with zstd compression and detected
+    MIME types
+  - ARC trusted_authserv_id for reusing upstream
+    Authentication-Results headers
+  - Reply-To validity checks in headers_checks
+  - Fuzzy hashes in Redis history for matched hash tracking
+  - HTTP content negotiation framework with zstd compression for
+    /stat endpoint
+  - Attachment filename sub-tokens for improved Bayes classifier
+    accuracy
+  - GPT module — configurable consensus thresholds and
+    context_augment hook
+  - New rspamadm subcommands — autolearnstats, logstats, mapstats
+  - ASCII85 decode and PDF object padding evasion fixes for PDF
+    extraction
+  Critical Fixes
+  - Stop ev_io watcher in fuzzy UDP session destroy
+    (use-after-free)
+  - Fix CPU busy-loop in fuzzy TCP client
+  - RHEL/CentOS 10+ SHA-1 DKIM crypto-policy bypass
+  - DKIM RSA signing memory leak fix
+  - Self-healing hyperscan cache for stale blobs
+  - Multiple use-after-free fixes on config reload (regexp maps,
+    multipatterns)
+  - PCRE2 complexity checks before JIT compilation
+  - Rework alternative parts detection (R_PARTS_DIFFER)
+  - SPF address family flag inheritance fix
+  - Ratelimit compatibility with old records
+  - Default map URL path to "/" when no path component (crash fix)
+
+  https://docs.rspamd.com/changelog/4.0.0
+
+-------------------------------------------------------------------

Old:
----
  rspamd-3.14.2.tar.gz

New:
----
  rspamd-4.0.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ rspamd.spec ++++++
--- /var/tmp/diff_new_pack.vMTC89/_old  2026-03-31 15:23:14.874716593 +0200
+++ /var/tmp/diff_new_pack.vMTC89/_new  2026-03-31 15:23:14.910718093 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package rspamd
 #
-# Copyright (c) 2025 SUSE LLC and contributors
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -48,6 +48,7 @@
 
 %if 0%{?suse_version} >= 1500 && ! 0%{?sle_version}
   %bcond_without ext_hiredis
+  %bcond_without jemalloc
 %endif
 
 %if 0%{?suse_version} >= 1500
@@ -67,7 +68,7 @@
 %endif
 
 Name:           rspamd
-Version:        3.14.2
+Version:        4.0.0
 Release:        0
 Summary:        Spam filtering system
 License:        Apache-2.0
@@ -77,6 +78,7 @@
 Source1:        usr.bin.rspamd
 Patch0:         rspamd-conf.patch
 Patch1:         rspamd-after-redis-target.patch
+Provides:       bundled(fmt) = 11.0.0
 %if !0%{?is_opensuse}
 # because 80-check-malware-scan-clamav triggered in SLE-15-SP2
 BuildRequires:  -post-build-checks-malwarescan
@@ -86,7 +88,6 @@
 BuildRequires:  db-devel
 BuildRequires:  file-devel
 BuildRequires:  gcc%{?force_gcc_version}-c++
-BuildRequires:  gd-devel
 %if %{with hyperscan}
 BuildRequires:  pkgconfig(libhs)
 %endif
@@ -107,17 +108,6 @@
 %endif
 BuildRequires:  pcre2-devel
 BuildRequires:  pkgconfig
-%if %{with system_fmt}
-BuildRequires:  pkgconfig(fmt)
-%global with_system_fmt 1
-%if !%{pkg_vcmp fmt-devel > 11}
-Provides:       bundled(fmt) = 11.0.0
-%global with_system_fmt 0
-%endif
-%else
-Provides:       bundled(fmt) = 11.0.0
-%global with_system_fmt 0
-%endif
 BuildRequires:  pkgconfig(glib-2.0) >= 2.28
 %if %{with ext_hiredis}
 BuildRequires:  pkgconfig(hiredis)
@@ -136,7 +126,6 @@
 %{?systemd_ordering}
 %endif
 BuildRequires:  lapack-devel
-BuildRequires:  pkgconfig(libunwind)
 BuildRequires:  pkgconfig(libxxhash)
 BuildRequires:  pkgconfig(libzstd)
 BuildRequires:  pkgconfig(openblas)
@@ -225,7 +214,6 @@
   -DDBDIR=%{_localstatedir}/lib/rspamd      \
   -DRUNDIR=%{_localstatedir}/run/rspamd     \
   -DLOGDIR=%{_localstatedir}/log/rspamd     \
-  -DEXAMPLESDIR=%{_datadir}/examples/rspamd \
   -DPLUGINSDIR=%{_datadir}/rspamd/plugins   \
   -DLIBDIR=%{_libdir}/rspamd                \
   -DINCLUDEDIR=%{_includedir}               \
@@ -233,8 +221,6 @@
   %if 0%{suse_version} > 1315
   -DENABLE_OPTIMIZATION=ON                  \
   %endif
-  -DENABLE_REDIRECTOR=ON                    \
-  -DENABLE_LIBUNWIND:BOOL=ON                \
   -DENABLE_BLAS:BOOL=ON                     \
   -DSYSTEM_XXHASH:BOOL=ON                   \
   -DCMAKE_SKIP_INSTALL_RPATH=ON             \
@@ -244,9 +230,6 @@
   %else
   -DENABLE_LUAJIT=OFF                       \
   %endif
-  -DENABLE_DB=ON                            \
-  -DENABLE_SQLITE=ON                        \
-  -DENABLE_HIREDIS=ON                       \
   -DENABLE_URL_INCLUDE=ON                   \
   -DNO_SHARED=ON                            \
   -DINSTALL_EXAMPLES=ON                     \
@@ -260,7 +243,6 @@
   %if %{with hyperscan}
   -DENABLE_HYPERSCAN=ON                     \
   %endif
-  -DENABLE_GD=ON                            \
   -DENABLE_FANN=ON                          \
   %if %{with utils}
   -DENABLE_UTILS=ON                         \
@@ -269,16 +251,9 @@
   %if %{with jemalloc}
   -DENABLE_JEMALLOC=ON                      \
   %endif
-  %if 0%{?with_system_fmt}
-  -DSYSTEM_FMT=ON                           \
-  %else
-  -DSYSTEM_FMT=OFF                          \
-  %endif
   -DSYSTEM_ZSTD=ON                          \
-  -DDEBIAN_BUILD=1                          \
-  -DRSPAMD_GROUP=%{rspamd_group}            \
   -DRSPAMD_USER=%{rspamd_user}
-make %{?_smp_mflags}
+%cmake_build
 
 %install
 %cmake_install
@@ -365,6 +340,7 @@
 %{_bindir}/rspamd
 %{_bindir}/rspamd-%{version}
 %{_bindir}/rspamd_stats
+%{_bindir}/mapstats
 %{_libdir}/librspamd-actrie.so
 %{_libdir}/librspamd-server.so
 %{_libdir}/librspamd-ev.so
@@ -395,6 +371,10 @@
 %config %{_sysconfdir}/rspamd/worker-normal.inc
 %config %{_sysconfdir}/rspamd/worker-proxy.inc
 %config %{_sysconfdir}/rspamd/lang_detection.inc
+%if %{with hyperscan}
+%config %{_sysconfdir}/rspamd/worker-hs_helper.conf
+%config %{_sysconfdir}/rspamd/worker-hs_helper.inc
+%endif
 
 %dir %{_sysconfdir}/rspamd/local.d
 %config(noreplace) %{_sysconfdir}/rspamd/local.d/worker-controller.inc
@@ -431,6 +411,7 @@
 %config(noreplace) %{_sysconfdir}/rspamd/maps.d/redirectors.inc
 %config(noreplace) %{_sysconfdir}/rspamd/maps.d/spf_dkim_whitelist.inc
 %config(noreplace) %{_sysconfdir}/rspamd/maps.d/surbl-whitelist.inc
+%config(noreplace) %{_sysconfdir}/rspamd/maps.d/suspicious_tlds.inc
 
 %dir %{_sysconfdir}/rspamd/modules.d
 %config(noreplace) %{_sysconfdir}/rspamd/modules.d/antivirus.conf
@@ -467,6 +448,7 @@
 %config(noreplace) %{_sysconfdir}/rspamd/modules.d/multimap.conf
 %config(noreplace) %{_sysconfdir}/rspamd/modules.d/mx_check.conf
 %config(noreplace) %{_sysconfdir}/rspamd/modules.d/neural.conf
+%config(noreplace) %{_sysconfdir}/rspamd/modules.d/neural_autolearn.conf
 %config(noreplace) %{_sysconfdir}/rspamd/modules.d/once_received.conf
 %config(noreplace) %{_sysconfdir}/rspamd/modules.d/p0f.conf
 %config(noreplace) %{_sysconfdir}/rspamd/modules.d/phishing.conf
@@ -558,6 +540,11 @@
 %{_datadir}/rspamd/plugins/url_suspect.lua
 
 %dir %{_datadir}/rspamd/lualib
+%{_datadir}/rspamd/lualib/lua_fuzzy_redis.lua
+%{_datadir}/rspamd/lualib/lua_hs_cache.lua
+%{_datadir}/rspamd/lualib/lua_log_utils.lua
+%{_datadir}/rspamd/lualib/lua_neural_external.lua
+%{_datadir}/rspamd/lualib/lua_neural_learn.lua
 %{_datadir}/rspamd/lualib/ansicolors.lua
 %{_datadir}/rspamd/lualib/argparse.lua
 %{_datadir}/rspamd/lualib/fun.lua
@@ -677,6 +664,10 @@
 %{_datadir}/rspamd/lualib/rspamadm/secretbox.lua
 %{_datadir}/rspamd/lualib/rspamadm/ratelimit.lua
 %{_datadir}/rspamd/lualib/rspamadm/confighelp_plugins.lua
+%{_datadir}/rspamd/lualib/rspamadm/autolearnstats.lua
+%{_datadir}/rspamd/lualib/rspamadm/logstats.lua
+%{_datadir}/rspamd/lualib/rspamadm/mapstats.lua
+%{_datadir}/rspamd/lualib/rspamadm/neural_export.lua
 
 %dir %{_datadir}/rspamd/lualib/plugins
 %{_datadir}/rspamd/lualib/plugins/dmarc.lua
@@ -698,6 +689,7 @@
 %{_datadir}/rspamd/lualib/redis_scripts/bayes_classify.lua
 %{_datadir}/rspamd/lualib/redis_scripts/bayes_learn.lua
 %{_datadir}/rspamd/lualib/redis_scripts/bayes_stat.lua
+%{_datadir}/rspamd/lualib/redis_scripts/fuzzy_update.lua
 
 %dir %{_datadir}/rspamd/rules
 %{_datadir}/rspamd/rules/archives.lua
@@ -734,6 +726,7 @@
 %dir %{_wwwdir}/%{name}
 %{_wwwdir}/%{name}/apple-touch-icon.png
 %{_wwwdir}/%{name}/browserconfig.xml
+%{_wwwdir}/%{name}/ARCHITECTURE.md
 %{_wwwdir}/%{name}/README.md
 %{_wwwdir}/%{name}/favicon.ico
 %{_wwwdir}/%{name}/favicon-16x16.png

++++++ rspamd-3.14.2.tar.gz -> rspamd-4.0.0.tar.gz ++++++
/work/SRC/openSUSE:Factory/rspamd/rspamd-3.14.2.tar.gz 
/work/SRC/openSUSE:Factory/.rspamd.new.1999/rspamd-4.0.0.tar.gz differ: char 
13, line 1

Reply via email to