We have released Rspamd 2.4 today.
This is a bug fixes release mainly.
3 major projects in this release:
- Logger system rework: fixed syslog logging, improved architecture, improved logging reload
- URL composition library (similar to old 2tld map for surbl module), use this library in RBL module for all URL like objects: urls, emails, dkim domains
- Implemented SSL client caching: it should improve client SSL connections: Clickhouse, SMTPS, maps check and so on for both client and a server.
Several major fixes:
- Parsing of the content type attributes
- Avoid collisions in mempool variables
- Fixed Redis Sentinel support
- Fixed IPv6 listening
- Fixed mime modifications for 7bit parts
- Fixed passthrough result and smtp message
- Important eSLD url composition fixes
- Various neural network plugin fixes
Useful features:
- Custom additional columns in Clickhouse plugin
- Support of CDB maps everywhere to share huge maps across workers with no extra cost
Here is the list of the most important changes:
- [CritFix] Fix parsing of the content type attributes
- [Feature] Clickhouse: Add extra columns support
- [Feature] Rbl: Add url_compose_map option for RBL rules
- [Fix] ‘R’ flag is for all headers regexp
- [Fix] Allow to reset settings id from Lua (e.g. because of the priority)
- [Fix] Avoid collisions in mempool variables by changing fuzzy caching logic
- [Fix] Avoid strdup usage for symbols options
- [Fix] Do not trust stat(2) it lies
- [Fix] Filter all options for symbols to have sane characters
- [Fix] Fix all headers iteration
- [Fix] Fix allowed_settings for neural
- [Fix] Fix listen socket parsing
- [Fix] Fix maps expressions evaluation
- [Fix] Fix sentinel connections leak by using async connections
- [Fix] Fix smtp message on passthrough result
- [Fix] Fix tld compositon rules
- [Fix] Fuzzy_storage: Do not check for shingles if a direct hash has been found
- [Fix] Lua_mime: Do not perform QP encoding for 7bit parts
- [Fix] Neural: Distinguish missing symbols from symbols with low scores
- [Fix] Support listening on systemd sockets by name
- [Project] Add lua_urls_compose library
- [Project] Allow to set a custom log function to the logger
- [Project] CDB maps: Start making cdb a first class citizen
- [Project] Clickhouse: Add extra columns concept
- [Project] Fix urls composition rules, add unit tests
- [Project] Unify cdb maps
- [Rework] Logger infrastructure rework
- [Rework] Refactor libraries structure
- [Rework] Rework SSL caching
- [Rework] Update snowball stemmer to 2.0 and remove all crap aside of UTF8