Skip to content

Unreleased Changes in The Mainline

Breaking Changes

Other Changes and Enhancements

  • queue helper: certain misconfigurations are now detected at startup, improving error discovery.
  • New ip_lookup_strategy option controlling how A/AAAA lookups are performed when resolving MX hosts. Since this option is set in the egress path, it means that you can control resolution on a per-source basis if you wish.

  • memoize and the lruttl cache layer will now consider a pending populate that has taken longer than the populate timeout to have been abandoned, once a subsequent lookup is initiated. This may cause pre-existing waiters to awake and report the cache lookup as failed, but will unblock future lookups. In addition, we now bound the number of retries in this sort of internal inconsistency state to 10, which may cause errors to be reported earlier and/or more frequently than in prior versions, but should result in less of an overall bottleneck in the triggering scenario.

  • kumo.serde.json_encode_pretty now outputs keys of json objects in sorted order. This means that utilities such as resolve-shaping-domain will now output keys in sorted order as well.

Fixes

  • sources helper didn't allow creating empty egress pools
  • RFC5965 and RFC3464 parsing now strips enclosing angle brackets from envelope address fields in the ARF/OOB message.