Rspamd 3.6 has been released

06 Aug 2023

We are excited to present the latest version of Rspamd - version 3.6. This release brings a host of new features, enhancements, and fixes to improve further the performance, flexibility, and security of the Rspamd email scanning system. With additions like language detection configuration, dynamic multimap symbol registration, and enhanced fuzzy storage options, Rspamd continues to evolve as a powerful and reliable solution for filtering and classifying messages.

New Features:

  • Added one_shot option to specific multimap rules for improved rule behavior
  • Introduced language detection configuration and associated attributes
  • Added sentinel_password option to enhance Redis sentinel password protection
  • Enabled denial of specific fuzzy flags by default for better control over fuzzy storage
  • Implemented a controller endpoint to retrieve fuzzy hashes from messages
  • Added extra symbol for URL redirector when reaching nested limit for easier identification
  • Included a function to transliterate utf8 to ascii with normalization for text processing
  • Added html parsing limit and set order to urls structure for improved handling
  • Expanded functionality of lua_rsa library with additional functions
  • Enabled fuzzy workers to exchange blocked information
  • Allowed weak flags in fuzzy storage for more versatile fuzzy matching
  • Enabled reading options from maps in the multimap plugin for dynamic configuration
  • Provided alternative methods when fasttext detection is enabled
  • Enabled counting stats per key per flag for better statistics tracking
  • Completed implementation of dynamic composites for more flexible rule composition
  • Improved processing of HTML parts before text ones for better text extraction
  • Reorganized struct rspamd_url for reduced memory footprint
  • Implemented saving fuzzy ratelimit buckets for rate control
  • Added ip_map strategy to external_relay plugin for more versatile IP handling
  • Implemented on_load support for maps to perform actions on map loading

Fixes:

  • Addressed race condition between config new/free using a counter to ensure stability
  • Enhanced fasttext language model with pre-tokenized words for improved detection
  • Fixed issues with rspamd_has_only_html_part for accurate HTML detection
  • Resolved order of destruction race between Redis pool and Lua for stable behavior
  • Addressed parsing of invalid mask values for proper configuration handling
  • Adjusted header parsing to include the last character when no value is present
  • Addressed various issues with fuzzystat for accurate fuzzy storage behavior
  • Corrected counter usage for more accurate counting
  • Implemented measures to clean pending bucket and remove bad hyperscan files
  • Updated stats before encryption to ensure accurate data representation
  • Improved DMARC grammar by allowing spaces before ;
  • Fixed registration issue in RBL plugin when using symbols_prefixes
  • Removed obsolete files related to rspamd-redirector

Project Enhancements:

  • Enabled dynamic registration of multimap symbols for flexible rule management
  • Implemented fasttext language detection for efficient language classification
  • Refactored default max shots to avoid interfering with options
  • Rewrote dkim keygen tool in Lua for better performance and functionality
  • Added thread hijacking composite rule for improved rule handling

Please note that this is not an exhaustive list of changes and other minor improvements, bug fixes and optimizations have also been included in this release.