libSieve 2.2.7 -------------- - Fixed a duplicate symbol definition (thanks to Wilfried Goesgens). - Fixed a mismatched function declaration (thanks to Eugene Prokopiev). - More cases where Vacation should be ignored (thanks to Dilyan Palauzov). - Generate Vacation handle according to RFC 5230 (thanks to Dilyan Palauzov). - Use of NULL without declaration (thanks to Dilyan Palauzov). - Added pkgconfig support (thanks to Dilyan Palauzov). - Documentation corrections (thanks to Dilyan Palauzov). - Use left-recursion when parsing stringlists (thanks to Dilyan Palauzov). libSieve 2.2.6 -------------- - Fix for bracketed comments (thanks to Daniel Shahaf). - More graceful handling of malformed addresses (thanks to Paul Stevens). - Return header and address errors separately from script parse errors. libSieve 2.2.5 -------------- - Allowed CFLAGS to pass through Makefile.am (thanks to Bernard Johnson). - Use # instead of __STRING for assertion stringification. - Fixed off-by-one when reallocing space for repeated headers (thanks to Petri Laine). libSieve 2.2.4 -------------- - Improved several test scripts. - Fixed a memory leak in header parsing. - Fixed a memory leak in comparator lookup. - Accepted patch from Steffen Schuetz to respect :from in vacation action. libSieve 2.2.3 -------------- - Numeric relational comparators were backwards. libSieve 2.2.2 -------------- - Added more test scripts. - Added support for RFC 3431 Relational comparators. - Fixed segfault when parsing group syntax with empty address list. libSieve 2.2.1 -------------- - Removed accidental dependency on Check. - Added exception handling system. - Added test runner scripts to sv_test. libSieve 2.2.0 -------------- - Updated top-level README. - Fixed address test not working. - Fixed innocuous yet annoying GCC 4 warnings. libSieve 2.1.13 --------------- - Fixed capabilities missingspaces. - Fixed alloca.h in vasnprintf for FreeBSD. libSieve 2.1.12 --------------- - Fixed namespace issue with vasnprintf. libSieve 2.1.11 --------------- - Minor fixes to build with flex 2.5.33. - Updated to Vacation draft 6. - Updated to imap4flags. - Dropped support for imapflags. - Added callback for subaddress rather than using a hardcoded user+mailbox format. - Added a callback for debug messages. - Regex is always built in now. - Fixed multiline "text: string ." blocks. libSieve 2.1.10 -------------- - Fixed sieve2_listextensions. - Fixed segfault when client returns null pointers from the getenvelope callback. - Improved handling of extension require's. - Fixed segfault when parsing zero length address. libSieve 2.1.9 -------------- - Fixed subaddress, getenvelope and vacation. - Added additional debugging messages. - Added new and updated draft rfc's. libSieve 2.1.8 -------------- - Created a testsuite of scripts and messages to exercise RFC and Draft comformance. - Fixed a memory allocation issue that prevented the library from being used again after sieve2_free had been called. libSieve 2.1.7 -------------- - Rewrote the API again. I finally like it! - Settled on the LGPL for all of my new code. - Replaced the RSA MD5 implementation with a public domain version. - Documentation updated for the new API. libSieve 2.1.6 -------------- - Added a set of error-retrieval functions. libSieve 2.1.5 -------------- (formerly libsieve 2.2.0_pre3) - CFLAGS now includes -Wall and compiles very cleanly. Messages from lex/yacc are benign. - Namespace cleanups: internal global functions prefixed with "libsieve_" for consistency. - Local regex library, borrowed from GNU glibc 2.3.2. Used under LGPL license version 2.1. - Compiles under Win32 with Visual C++, with many thanks to Brandon Knitter. libSieve 2.1.4 -------------- (formerly libsieve 2.2.0_pre1) - Sieve 2 API has begun. More changes should be expected during the 2.1 series. - All later-CMU code removed and/or replaced; original licensing is now entirely old-CMU style and augmented by the GNU GPL as it is placed on all new code and applies to the distribution as a whole from here forward. - "Poor man's parsers" for RFC 2/822 addresses and message headers replaced with lex/yacc. - Extensive Valgrinding performed to identify memory leaks; no known leaks remain. - Many more changes, amounting to perhaps a 70% rewrite of all code. libSieve 2.1.3 -------------- - Accepted patches from Timo Sirainen: - Added function xstrconcat - Changed strdup to strndup - Changed strcpy to xstrcpy - Changed uglies to xstrconcat - Rebuild .y and .l in Makefile.am - Changed int to size_t where applicable - Added explicit casting where applicable - Accepted patches from Oliver Tappe: - Fixed examples for the web site - Removed useless headers - Now builds on BeOS - Cleaned up lots of K&R style function declarations libSieve 2.1.2 -------------- - Changed `timestamp` to $timestamp in configure scripts. - Added missing autoconf and libtool scripts. - Fixed a typo in index.html libSieve 2.1.1 -------------- - First public release of the libSieve distribution. - com_err library removed. - Conversion to GNU autotools for the build process. libSieve 2.1.0 -------------- - Forked from CMU Sieve 2.1. - SourceForge project site and a new web site and CVS tree and prepared. - Dependencies on libCyrus trimmed to a bare minimum. CMU Sieve 2.1 ------------- - Compliant with RFC 3028. As a result, fileinto and redirect only accept a single string and NOT a string-list. - Compliant with draft-martin-sieve-notify-01. As a result, notify actions will need to be updated to the new syntax. CMU Sieve 2.0 ------------- - Compliant with draft-showalter-sieve-11.txt and draft-showalter-sieve-vacation-03.txt. - Added support for the regex, imapflags, notify and subaddress extensions. See README for references. - Verifies email addresses in redirect and vacation actions are syntactically correct (compliant with RFC822). - Run-time error reporting. - Changed callback interface to use callback contexts instead of individual parameters. Also added an error string buffer for run-time error reporting. - Vacation will not reply to any message containing an "auto-submitted" header containing anything other than "no". CMU Sieve 1.4 ------------- Now included with imapd distribution (hell, why not?). Error returning and recovering: added error recovering to the parser (but not much!) added error messages to the parser Working on error returning and error recovering. run-time errors detect some errors in lexer? Working on even better parsing: verify addresses could be addresses verify mailboxes could be mailboxes verify outgoing headers can be headers CMU Sieve 1.3 ------------- Changed for integration with cyrus deliver. CMU Sieve 1.2 ------------- Added additional callbacks (ok, so I want to make my integration with deliver easier) and envelope and vacation support. Made it compile without libcyrus. It should compile without libcyrus, but then it does not implement the "address" test. That's just too much work to do when I have a neato library to do it for me. Todo: - regex matching CMU Sieve 1.1 ------------- - Updated to draft-showalter-sieve-07bis.txt - Simple API (see sieve_interface.h; currently mostly undocumented) - Implements all of the optional features except "envelope" - Maintains "if it parses, it probably runs" behavior. (Goal: minimize run-time errors.) CMU Sieve 1.0 ------------- - prototype implementation