Haraka v2.8.25 Release Notes

Release Date: 2019-10-11 // 10 months ago
  • 🔄 Changes

    • 🚚 conn: remove TLS version from header #2648
    • Actually enforce using key for INTERNALCMD #2643
    • trans: assign conditions to named vars #2638
    • ⬇️ drop node.js v6 support #2632
    • ✅ conn: use is_local instead of localhost addr tests #2627
    • ✅ spamassassin: spamassassin: strip useless WS from tests #2624
    • ⚡️ es6: many updates #2615, #2674, #2680
    • ⚡️ systemctl: update service definition #2612
    • 💅 lint: bracket style to match newer eslint:recommended #2680
    • 👕 lint: use object shorthands (eslint:recommended) #2680
    • logger: use safer Object.prototype.hasOwnProperty #2680
    • outbound: permit # char in SMTP status code response #2689
    • ⚡️ dkim_sign: improve docs, add tests, es6 updates #2649
    • ⏪ dkim_sign: restore default key signing feature #2649
    • ⚡️ tmp module: update to latest #2614
    • ⚡️ semver: update to latest #2616, #2651
    • ⚡️ async: update to latest #2653, #2664
    • 🗄 repo cleanup: replaced deprecated plugins with list #2681
    • ✅ spf: es6 patterns, results.pass, test improvements, es6 patterns #2700

    🆕 New features

    • spf: add config option to fail on NONE #2644

    🛠 Fixes

    • ✂ mailheader: fully quality header name in _remove_more #2647
    • haraka: Connection.createConnection is not a constructor #2618
    • problems with japanese characters in body and part header #2675
    • toobusy: fix hook name (connect_pre -> connect) #2672
    • outbound: watch for socket timeouts #2687
    • outbound: permit # char prefix in SMTP status code response #2691
    • mailheader: strip whitespace between encoded-words #2702

Previous changes from v2.8.24

  • 🔄 Changes

    • early_talker: skip if sender has good karma #2551
    • ⚡️ dockerfile: update to node 10 #2552
    • ⚡️ Update deprecated usages of Buffer #2553
    • early_talker: extend reasons to skip checking #2564
    • tls: add 'ca' option (for CA root file) #2571
    • outbound: little cleanups #2572
    • smtp_client: pass pool_timeout to new SMTPClient #2574
    • 0️⃣ server: default to nodes=1 (was undefined) #2573
    • ✅ test/server: use IPv4 127.0.0.1 instead of localhost #2584
    • queue/smtp_*: add v3 upgrade notice and config setting #2585
    • spf: use the skip config for helo/ehlo checks #2587
    • spf: avoid 2nd EHLO evaluation if EHLO host is identical #2592
    • ♻️ queue.js refactoring #2593
    • 📜 Log dkim_sign parse errors with connection ID #2596
    • ⚡️ Update ipaddr.js to the latest version #2599
    • ⏱ make inactivity timeout match docs #2607

    🆕 New Features

    • Implement SIGTERM graceful shutdown if pid is 1 #2547
    • tls: require validated certs on some ports with requireAuthorized #2554
    • spamassassin: disable checks when requested #2564
    • clamd: permit skipping for relay clients #2564
    • outbound: exported outbound.temp_fail_queue, outbound.delivery_queue and add TimerQueue.discard()
    • 🔌 status: new plugin #2577

    🛠 Fixes

    • 🔌 mf.resolvable: reduce timeout by one second (so < plugin.timeout) #2544
    • LMTP blocks under stress #2556
    • invalid DKIM when empty body #2410
    • prevent running callback multiple times on TLS unix socket #2509
    • ➕ add missing callback when listing queue and empty directory
    • 📜 correct MIME parsing when charset: utf8 and encoding: 8bit #2582
    • 0️⃣ spamassassin: default check flags to true #2583
    • ⏱ smtp_client: destroy when connection gets conn timeout error #2604
    • 🚚 on error and timeout, remove listeners and destroy conn. #2606