Postfix 3.0.0 stable release added to EL6 and EL7 repositories

Today the stable version of Postfix 3.0 is released. If you want to use this version of EL6 or EL7 you can find, packages in my yum repo.
In this release you will find the following changes and new features:

  • SMTPUTF8 support for internationalized domain names and address localparts as defined in RFC 6530 and related documents. SMTPUTF8 support is a work in progress it is expected to be completed during the Postfix 3.1 development cycle. See SMTPUTF8_README for a summary of limitations.
  • Support for dynamically-linked Postfix libraries and database plugins.
  • An OPT-IN safety net for the selective adoption of new Postfix default settings. If you do nothing, the old Postfix default settings *should* remain in effect (complain to your downstream maintainer if that is not the case). See COMPATIBILITY_README for detailed descriptions of Postfix logfile messages.
  • Support for operations on multiple lookup tables. The pipemap:{map1,map2...} database type implements a pipeline of lookup tables where the result from one lookup table becomes a query for the next table; the unionmap:{map1,map2,...} database type sends the same query to multiple lookup tables and concatenates their results.
  • Support for pseudo-tables that make simple things easy to implement. The inline:{key1=value1,key2=value2,...} table avoids the need to create an external file for just a few items; and the randmap{value1,value2,...} table implements random selection from the specified values.
  • Table-driven transformation of DNS lookup results and of delivery agent status codes and messages. Typically, one would use a PCRE table to fix problematic DNS responses or to fix the handling of delivery errors. See smtp_dns_reply_filter, smtp_delivery_status_filter, and similarly-named parameters for other Postfix daemons.
  • Improved configuration file syntax with support for the ternary operator such as ${name?{iftrue}:{iffalse}}, comparison operators such as ${{expr1}==${expr2}?{iftrue}:{iffalse}}, per-Milter and per-policy server timeout and other settings, master.cf parameters that contain whitespace, import/export_environment settings that contain whitespace, and "static" table lookup results that contain whitespace. Support for multiple lookup results in access(5) and header/body_checks(5) tables is expected to be completed in the Postfix 3.1 development cycle.
  • Per-session command profiles, logged at the end of each inbound SMTP session. For example, a password-guessing bot is logged as "disconnect from name[addr] ehlo=1 auth=0/1 commands=1/2", meaning that the client sent one EHLO command that worked, one AUTH command that failed, and hung up without sending a QUIT command. This information is always logged, and can help to solve puzzles without verbose logging or network sniffers.