Release Notes

Apache JSieve

jSieve is a Java implementation of the Sieve mail filtering language defined by RFC 3028. jSieve is implemented as a langauge processor that can be plugged into any internet mail application to add Sieve support.

Comments, Questions and Issues

jSieve is a sub-project of Apache James. Please direct your comments and questions to the relevant James list.

To report issues, such as bugs, go to As jSieve comes with a fairly extensive suite of jUnit Tests, it would be most helpful for bug reports to be accompanied by an illustrative jUnit test case.

Licensing and legal issues

For legal and licensing issues, please look in the legal section of the documentation or read the LICENSE and NOTICE files.

Version 0.3

This release is the first to include mailet and utility modules, in addition to the core parsing library. The configuration API has changed significantly to replace magic singletons with POJOs suitable for IoC. The default configuration mechanism has been retained so though calls have changed, existing configurations should still be compatible.

Utilities include node serializers to xml and sieve script. The mailet module provides Sieve in the James 3 codebase.


Sub-tasks Completed

Bugs Fixed

  • [JSIEVE-49] - CPU spins when :matches expression contains "*************"

Improvements Made

  • [JSIEVE-47] - Access to script comments
  • [JSIEVE-52] - Check Support For Numeric Quantifiers

New Features Added

  • [JSIEVE-43] - Add API for generating a Sieve script from a parse tree
  • [JSIEVE-50] - Sieve-In-XML (Experimental Preview)

Tasks Completed

  • [JSIEVE-16] - Singletons -> IoC
  • [JSIEVE-24] - Include build time libraries (javacc, javamail, activation) in the source distribution
  • [JSIEVE-33] - Remove .junit. package name from tests.
  • [JSIEVE-34] - make jsieve a multimodule project