Hello Dovecot users,
Now that Dovecot v2.1.0 is out there, I release Pigeonhole v0.3.0. The most significant new features are support for the Sieve editheader extension and the sieve-filter tool. I haven’t received much feedback on these new features, which can either mean that they are mostly bug-free or that not many people have tried these, so these are still considered experimental.
- Renamed sieve_global_path setting to sieve_default for clarity. Old name is still recognized for backwards compatibility. Support for the ancient (pre v1.1) name for this setting “global_script_path” is now dropped.
- Added means to prohibit use of redirect action. Setting sieve_max_redirects to 0 now means that redirect is disallowed instead of unlimited. Default value remains four.
- Fixed interaction of Sieve include extension with ManageSieve. It is updated to match new requirements in the draft include specification. Missing included scripts are no longer an error at upload time.
- Updated RFC2822 header field body verification to exclude non-printing characters (RFC5322). Only Sieve actions that can create unstructured header values (currently enotify/mailto and editheader) are affected by this change.
- Completed sieve-filter tool to a useful state. The sieve-filter tool provides a means to (re)filter messages in a mailbox through a Sieve script.
- Implemented the Sieve editheader extension. It is now possible to add and remove message headers from within Sieve.
- ManageSieve: added support for reading quoted and literal strings as a stream. Fixes support for handing large SASL responses (analogous to similar changes in Dovecot). It is now also allowed to use a quoted string for the PUTSCRIPT script argument.
- Added code to cleanup tmp directory in Sieve storage directory (sieve_dir) every once in a while.
- Added support for substituting the entire message during Sieve processing. This is used for the filter action provided by the new sieve_extprograms plugin (provided separately for now). The filter action allows passing the message through an external program.
- Added support for restricting certain Sieve language extensions to (admin-controled) global scripts. Restricted extensions can be configured using the new sieve_global_extensions setting. This is particularly useful for some of the Dovecot-specific (plugin-based) Sieve extensions, that can be somewhat hazardous when under direct control of users (e.g. sieve_extprograms).
The release is available as follows:
Refer to pigeonhole.dovecot.org and the Dovecot v2.x wiki for more information. Have fun testing this new release and don’t hesitate to notify me when there are any problems.