1This is the Postfix 3.3 (stable) release. 2 3The stable Postfix release is called postfix-3.3.x where 3=major 4release number, 3=minor release number, x=patchlevel. The stable 5release never changes except for patches that address bugs or 6emergencies. Patches change the patchlevel and the release date. 7 8New features are developed in snapshot releases. These are called 9postfix-3.4-yyyymmdd where yyyymmdd is the release date (yyyy=year, 10mm=month, dd=day). Patches are never issued for snapshot releases; 11instead, a new snapshot is released. 12 13The mail_release_date configuration parameter (format: yyyymmdd) 14specifies the release date of a stable release or snapshot release. 15 16If you upgrade from Postfix 3.1 or earlier, read RELEASE_NOTES-3.2 17before proceeding. 18 19License change 20--------------- 21 22This software is distributed with a dual license: in addition to the 23historical IBM Public License 1.0, it is now also distributed with the 24more recent Eclipse Public License 2.0. Recipients can choose to take 25the software under the license of their choice. Those who are more 26comfortable with the IPL can continue with that license. 27 28Major changes - compatibility safety net 29---------------------------------------- 30 31[20180106] With compatibility_level < 1, the Postfix SMTP server 32now warns for mail that would be blocked by the Postfix 2.10 33smtpd_relay_restrictions feature, without blocking that mail. This 34extends the compatibility safety net for sites that upgrade from 35earlier Postfix versions (questions on the postfix-users list show 36there is a steady trickle). See COMPATIBILITY_README for details. 37 38Major changes - configuration 39----------------------------- 40 41[20170617] The postconf command now warns about unknown parameter 42names in a Postfix database configuration file. As with other unknown 43parameter names, these warnings can help to find typos early. 44 45[20180113] New read-only service_name parameter that contains the 46master.cf service name of a Postfix daemon process (it that is empty 47in a non-daemon process). This can make Postfix SMTP server logging 48logging distinct by setting the syslog_name in master.cf with "-o 49syslog_name=postfix/$service_name" for the "submission" and "smtps" 50services, and can make Postfix SMTP client distinct by setting "-o 51syslog_name=postfix/$service_name" for the "relay" service. 52 53Major changes - container support 54--------------------------------- 55 56[20171218] Preliminary support to run Postfix in the foreground, 57with "postfix start-fg". This requires that Postfix multi-instance 58support is disabled. To receive Postfix syslog information on the 59container's host, mount the host's /dev/log socket inside the 60container (example: "docker run -v /dev/log:/dev/log ..."), and 61specify a distinct Postfix "syslog_name" prefix that identifies the 62logging from the Postfix instance. Postfix does not log systemd 63events. 64 65Major changes - database support 66--------------------------------- 67 68[20170617] The postconf command warns about unknown parameter names 69in a Postfix database configuration file. 70 71[20171227] The pgsql_table(5) hosts parameter now supports the 72postgresql:// URI syntax. Contributed by Magosányi Árpád. 73 74Major changes - header format 75----------------------------- 76 77[20180010] This release changes the format of 'full name' information 78in Postfix-generated From: headers, when a local program such as 79/bin/mail submits a message without From: header. 80 81Postfix-generated From: headers with 'full name' information are 82now formatted as "From: name <address>" by default. Specify 83"header_from_format = obsolete" to get the earlier form "From: 84address (name)". See the postconf(5) manpage for more details. 85 86Major changes - invisible changes 87--------------------------------- 88 89[20170617] Additional paranoia in the VSTRING implementation: a 90null byte after the end of vstring buffers (this is a safety net 91so that C-style string operations won't scribble past the end); 92earlier detection of bad length and precision format string specifiers 93(these are the result of programming error, as Postfix format strings 94cannot be specified externally). 95 96Major changes - milter support 97------------------------------ 98 99[20171223] Milter applications can now send RET and ENVID parameters 100in SMFIR_CHGFROM (change envelope sender) requests. 101 102Major changes - mixed IPv6/IPv4 support 103--------------------------------------- 104 105[20170505] Workaround for mail delivery problems when 1) both Postfix 106IPv6 and IPv4 support are enabled, 2) some destination announces 107more primary IPv6 MX addresses than primary IPv4 MX addresses, 3) 108the destination is unreachable over IPv6, and 4) Postfix runs into 109the smtp_mx_address_limit before it can try to deliver over IPv4. 110 111When both Postfix IPv6 and IPv4 support are enabled, the Postfix 112SMTP client will now relax MX preferences so that it can schedule 113similar numbers of IPv4 and IPv6 destination addresses. This ensures 114that an IPv6 connectivity problem will not prevent mail from being 115delivered over IPv4 (and vice versa). Specify "smtp_balance_inet_protocols 116= no" to disable this workaround. 117 118Major changes - xclient 119----------------------- 120 121[20171218] The Postfix SMTP server now allows the XCLIENT command 122before STARTTLS when TLS is required. This is useful for servers 123that run behind a reverse proxy server such as nginx. 124 125