On Wed, Jul 18, 2012, at 10:58 PM, Дилян Палаузов wrote: > Hello, > > The Sieve Email Filtering: Include Extension is partially implemented in > cyrus-imapd in the syntax INCLUDE LOCATION(=one of :global or :personal) > SCRIPTNAME. RFC6609 adds two more optional parameters to the include > command :once and :optional, which I am going to store in the generated > bytecode and consider during execution. > > The one option to implement this in the bytecode, is to define a new > INCLUDE command, rename the current one to INCLUDE_ORIG, and add to the > the bytecode one more parameter for the command. > > The other option is to use some more bits in the location parameter, merely: > in location & 63 is stored B_GLOBAL or B_LOCAL, as it is now > in location & 64 is stored :once and > in location & 128 is stored :optional. > > If :once == :optional == 0 = are not specified, the bytecode is the same > as now, otherwise the location parameter is increased by 64 or 128. > > Any preferences for the first approach (storing in sieve bytecode a new > word for once/optional and creating a new INCLUDE/INCLUDE_ORIG bytecode > command) or for the second (utilizing the unused bits in the LOCATION > parameter and not adding a new bytecode for INCLUDE_ORIG). > > Do you think, that it is necessary to increase the sieve/bytecode.h's > BYTECODE_VERSION, provided that on master the version was already > increased for VACATION :SECONDS and there was no release in the meantime?
How many have we used? How many do we have left? Unwillingness to increase version numbers is a curse I tell you. (that said, it's not likely to affect any sites other than FastMail and we tend to upgrade everything at once, or close enough to) Bron. -- Bron Gondwana br...@fastmail.fm