I implemented ihave. It was easy. I ran into a strange point, though.
require "ihave";
if ihave "foo" {
foo :dwimfactor 4;
}
There are three cases.
1. Server supports foo at upload. Upload results in a managesieve error
such as "NO Maximum DWIM factor is 3". Fine.
2. Server doesn't support foo, period. Upload succeeds, execution
succeeds. Fine.
3. Server doesn't support foo at upload, but is later upgraded to a new
version which supports foo. Now the script fails when run. Not so fine.
It riles me that one thing can break because another is upgraded.
I don't suppose there's anything to do about it, but it still riles me.
Arnt