The stable Postfix release is called postfix-2.3.x where 2=major
release number, 3=minor release number, x=patchlevel.  The stable
release never changes except for patches that address bugs or
emergencies. Patches change the patchlevel and the release date.

New features are developed in snapshot releases. These are called
postfix-2.4-yyyymmdd where yyyymmdd is the release date (yyyy=year,
mm=month, dd=day).  Patches are never issued for snapshot releases;
instead, a new snapshot is released.

The mail_release_date configuration parameter (format: yyyymmdd)
specifies the release date of a stable release or snapshot release.

Incompatibility with Postfix 2.2 and earlier
============================================

If you upgrade from Postfix 2.2 or earlier, read RELEASE_NOTES-2.3
before proceeding.

Major changes with Postfix snapshot 20070121
============================================

The support for Milter header modification requests was revised.
With minimal change in the on-disk representation, the code was
greatly simplified, and regression tests were updated to ensure
that old errors were not re-introduced.  The queue file format is
entirely backwards compatible with Postfix 2.3.

Incompatible changes with Postfix snapshot 20070116
===================================================

A new field is added to the queue file "size" record that specifies
the message content length.  Postfix 2.3 and older Postfix 2.4
versions will ignore this field, and will report the message size
as it was before the body was replaced.

Major changes with Postfix snapshot 20070116
============================================

Support for Milter requests to replace the message body.  Postfix
now implements all the header/body modification requests that are
available with Sendmail 8.13.

Incompatible changes with Postfix snapshot 20061217
===================================================

Postfix no longer requires a domain name. It uses "localdomain" as
the default Internet domain name when no domain is specified via
main.cf or via the machine's hostname.

Major changes with Postfix snapshot 20061217
============================================

More precise queue flushing with the ETRN, "postqueue -s site", and
"sendmail -qRsite" commands, after minimization of race conditions.
New per-queue-file flushing with "postqueue -i queueid" and "sendmail
-qIqueueid".

Incompatible changes with Postfix snapshot 20061214
===================================================

The check_smtpd_policy client sends TLS certificate attributes
(client ccert_subject, ccert_issuer) only after successful client
certificate verification. The reason is that the certification
verification status itself is not available in the policy request.

The check_smtpd_policy client sends TLS certificate fingerprint
information even when the certificate itself was not verified.

The remote SMTP client TLS certificate fingerprint can be used for
access control even when the certificate itself was not verified.

Incompatible changes with Postfix snapshot 20061209
===================================================

The Postfix installation procedure no longer updates main.cf with
"unknown_local_recipient_reject_code = 450". Four years after the
introduction of mandatory recipient validation, this transitional
tool is no longer neeed.

After upgrading Postfix you MUST execute "postfix reload", otherwise
the queue manager may log a warnings with:

    warning: connect to transport retry: Connection refused

The upgrade procedure adds a new "retry" service to the master.cf
file.  If you make the mistake of copying old Postfix configuration
files over the new files, the queue manager may log warnings with:

    warning: connect to transport retry: Connection refused

To fix your master.cf file, use "postfix upgrade-configuration"
followed by "postfix reload".

Small changes were made to the default bounce message templates,
to prevent HTML-aware software from hiding or removing the text
"<postmaster>", and producing misleading text.

Major changes with Postfix snapshot 20061209
============================================

Better interoperability with non-conforming SMTP servers that reply
and disconnect before Postfix has sent the complete message content.

Improved worst-case (old and new) queue manager performance when
deferring or bouncing large amounts of mail. Instead of talking to
the bounce or defer service synchronously, this work is now done
in the background by the error or retry service.

Improved worst-case (new) queue manager performance when delivering
multi-recipient mail. The queue manager now proactively reads
recipients from the queue file, instead of waiting for the slowest
deliveries to complete before reading in new recipients.  This
introduces two parameters: default_recipient_refill_limit (how many
recipient slots to refill at a time) and default_recipient_refill_delay
(how long to wait between refill operations). These two parameters
act as defaults for optional per-transport settings.

Better support for queue file systems on file servers with drifting
clocks. Clock skew can be a problem, because Postfix does not deliver
mail until the local clock catches up with the queue file's last
modification time stamp. On systems with usable futimes() or
equivalent (Solaris, *BSD, MacOS, but not Linux), Postfix now always
explicitly sets the queue file last modification time stamps while
creating a queue file.  On systems without usable futimes() (Linux,
and ancient versions of Solaris, SunOS and *BSD) Postfix keeps using
the slower utime() system call to update queue file time stamps
when the file system clock is off with respect to the local system
clock, and logs a warning.

Incompatible changes with Postfix snapshot 20061006
===================================================

The format of SMTP server TLS session cache lookup keys has changed.
The lookup key now includes the master.cf service name.

Major changes with Postfix snapshot 20061006
============================================

Individual CISCO PIX bug workarounds are now on/off configurable.
This introduces new parameters: smtp_pix_workarounds (default:
disable_esmtp, delay_dotcrlf) and smtp_pix_workaround_maps (workarounds
indexed by server IP address).  The default settings are backwards
compatible.

Incompatible changes with Postfix snapshot 20060806
===================================================

Postfix no longer announces its name in delivery status notifications.
Users believe that Wietse provides a free help desk service that
solves all their email problems.
