Newer
Older
v0.1.5 18-4-2009 Stephan Bosch <stephan@rename-it.nl>
* Ported the implementation of the Sieve include extension to the latest
draft. This means that the import and export commands are replaced by a new
command called global. The import and export commands are now DEPRICATED and
are mere aliases for the global command. The new specification also adds the
:once modifier to the include command. The also newly specified global.*
variable namespace is not implemented yet as support for variable namespaces
is currently missing.
* Did a major rework of the multiscript support for better error handling and
made sure that persistent global scripts (sieve_before/sieve_after) are
always executed, even when the user does not have a script of his own and
a global default is missing.
+ Provided basic support for the environment extension. Currenly, the name,
version and host items are useful. Others are pending.
+ Improved error message that is presented when an unknown Sieve extension is
provided as argument to the require command. It now notifies the user that
Sieve core commands do not need to be specified in require.
- Fixed bug in includes at levels deeper than one.
- Fixed bug in address matching that was caused by the failure to handle group
specifications. In dovecot, these are marked by address items with NULL
elements, which causes a segfault if not considered. The group 'undisclosed-
recipients:;' in particular triggered this bug. Bug reported by Bernhard
Schmidt.
v0.1.4 21-3-2009 Stephan Bosch <stephan@rename-it.nl>
* Started work on the sieve-filter tool. With this command line tool it will
be possible to (re-)apply Sieve filters on a mail folder. It is currently
undocumented and far from functional.
+ Added a custom debug extension that provides the possibility to print debug
messages from scripts executed by the Sieve tools.
- Fixed issue with opening relative paths as a mail file. Bug reported by Ian
P. Christian.
- Fixed MAC OSX compile problem. Turns out the extern modifier was missing at
multiple places. Bug reported by Edgar Fuss.
- Fixed Solaris compile problem: removed unecessary and unportable linker
flags that caused compile to fail. Bug reported by Andrés Yacopino.
v0.1.3 12-2-2009 Stephan Bosch <stephan@rename-it.nl>
* Adapted to changes in Dovecot, making this release dependent on Dovecot
* Made mail address comparison fully case-insensitive. This is particularly
noticeable for the :addresses argument of the vacation command.
+ Finished enotify extension. Currently, only the mailto notification method
is implemented. All still needs to be tested thoroughly.
+ Implemented multiscript support. It is now possible to execute multiple
Sieve scripts sequentially. Administrator-controlled scripts can be
executed before and after the user's script. Still needs to be tested
thoroughly.
+ Implemented support for configuring the available Sieve extensions.
+ Made the subaddress extension (partially) configurable using the
sieve_subaddress_sep setting, which allows specifying a (multi-charater)
separator other than '+'.
+ Compiler now warns about invalid header field names used for the header and
address tests.
+ Vacation extension now properly generates a References header for the
response message.
+ Added testing of basic result execution to the test suite. Also added
supportfor testing the outgoing messages produced by the Sieve interpreter.
+ Included execution of the actual result in the sieve-test command line tool.
The undocumented sieve-exec tool that existed for this is now removed as
planned.
+ Added support for the now obsolete 'imapflags' extension for backwards
compatibility with CMUSieve. This also implements the mark/unmark commands.
- Fixed bugs in the regex extension: 1) if an optional match value did not in
fact match, subsequent match values would get unexpected indexes. 2) fixed
segfault bug occuring when regex is freed.
- Fixed bug in the use of the :from agrument for the vacation command. If this
address included a phrase part, the response would not be a valid RFC822
message.
- Plugged a theoretical security hole occuring when a directory is opened as a
Sieve binary.
- Cleaned up and fixed various log messages.
- Fixed bug in the outgoing address verification. Addresses ending in ',' were
erroneously accepted.
v0.1.2 26-11-2008 Stephan Bosch <stephan@rename-it.nl>
- Fixed important bug in the redirect action (and probably other actions like
reject and vacation that only send messages). This was a bug in the handling
of context information during the execution of actions. It caused the sieve
interpreter to crash with a segfault when redirect was executed.
v0.1.1 24-11-2008 Stephan Bosch <stephan@rename-it.nl>
* Re-enabled support for compiling against dovecot headers. Much like
cmusieve, command line tools like sievec and sieved are not compiled in this
case.
* Started implementation of enotify extension. Not anywhere near finished
though.
* Adapted to changes in Dovecot on various occasions, making this release
dependent on Dovecot >= v1.2.alpa4.
+ Improved logging of errors at specific occasions and added debug messages to
find script execution problems quicker.
+ Removed code duplication between command line tools and the test suite.
Also restructured the sources of the tools.
+ Added UTF-8 to UTF-7 folder name conversion for compatibility with IMAP.
+ Created man pages for the command line tools. These are automatically
installed upon 'make install'
+ Incorporated Valgrind support into the testsuite and fixed a few memory
leaks in the process.
- Fixed compile error surfacing for gcc3.4. Forgot mask argument for the
open() system call when the O_CREAT flag is specified. Bug found by
Sergey Ivanov.
- Fixed bug in the sievec tool. -d output was always written to stdout.
- Fixed important bug in the imap4flags extension. When no :flags argument is
specified, the previous version would always use the final value of the
internal variable to set the flags. This means that modifications to the
internal variable also affected the bare fileinto/keep actions executed
earlier. This does not comply to the RFC.
- Fixed bug in the include extension's import/export commands. Duplicate
import/exports caused problems.
- Fixed bug in the handling of non-existent scripts. Errors were sometimes
ignored.
- Dovecot omitted unfolding multi-line headers. This was added to the cmusieve
plugin after the code was incorporated into the new implementation. This is
now mplicitly fixed by concurrent change in Dovecot.
v0.1.0 23-10-2008 Stephan Bosch <stephan@rename-it.nl>