+PH/05 It is now possible to redefine a macro within the configuration file.
+ The macro must have been previously defined within the configuration (or
+ an included file). A definition on the command line using the -D option
+ causes all definitions and redefinitions within the file to be ignored.
+ In other words, -D overrides any values that are set in the file.
+ Redefinition is specified by using '==' instead of '='. For example:
+
+ MAC1 = initial value
+ ...
+ MAC1 == updated value
+
+ Redefinition does not alter the order in which the macros are applied to
+ the subsequent lines of the configuration file. It is still the same
+ order in which the macros were originally defined. All that changes is
+ the macro's value. Redefinition makes it possible to accumulate values.
+ For example:
+
+ MAC1 = initial value
+ ...
+ MAC1 == MAC1 and something added
+
+ This can be helpful in situations where the configuration file is built
+ from a number of other files.
+
+PH/06 Macros may now be defined or redefined between router, transport,
+ authenticator, or ACL definitions, as well as in the main part of the
+ configuration. They may not, however, be changed within an individual
+ driver or ACL, or in the local_scan, retry, or rewrite sections of the
+ configuration.
+
+PH/07 $acl_verify_message is now set immediately after the failure of a
+ verification in an ACL, and so is available in subsequent modifiers. In
+ particular, the message can be preserved by coding like this:
+
+ warn !verify = sender
+ set acl_m0 = $acl_verify_message
+
+ Previously, $acl_verify_message was set only while expanding "message"
+ and "log_message" when a very denied access.
+
+PH/08 The redirect router has two new options, sieve_useraddress and
+ sieve_subaddress. These are passed to a Sieve filter to specify the :user
+ and :subaddress parts of an address. Both options are unset by default.
+ However, when a Sieve filter is run, if sieve_useraddress is unset, the
+ entire original local part (including any prefix or suffix) is used for
+ :user. An unset subaddress is treated as an empty subaddress.
+