[prev in list] [next in list] [prev in thread] [next in thread] 

List:       postfix-announce
Subject:    Postfix stable release 3.0.0
From:       wietse () porcupine ! org (Wietse Venema)
Date:       2015-02-08 22:29:11
Message-ID: 3kgQ5M1j9kzJrQ1 () spike ! porcupine ! org
[Download RAW message or body]

[An on-line version of this announcement will be available at
http://www.postfix.org/announcements/postfix-3.0.0.html]

Postfix stable release 3.0.0 is available. This release ends support
for Postfix 2.8.

The main changes in no particular order are:

* SMTPUTF8 support for internationalized domain names and address
  localparts as defined in RFC 6530 and related documents. The
  implementation is based on code contributed by Arnt Gulbrandsen
  who was sponsored by CNNIC. 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. The implementation is based on code by LaMont Jones for
  Debian Linux. See INSTALL for detailed descriptions of the available
  options.

* 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.

You can find the Postfix source code at the mirrors listed at
http://www.postfix.org/.

	Wietse

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic