Sievesmith

Uploading

Upload (⌘S) sends the script to the server. Sievesmith first checks it: a script with errors is not sent, and the server checks it again before it is stored.

Upload with a message

With the Git mirror on, Upload with Message… (⌥⌘S) adds a note that becomes part of the Git commit, e.g. why you changed a rule.

When the script changed elsewhere

If someone changed the script on the server since you opened it (webmail, another device, another app), Sievesmith does not overwrite it. It shows both versions and merges them: changes in different places are combined automatically; where both changed the same lines, you choose which version to keep, per conflict or for all at once. Then Upload Merged.

Working offline

When the server cannot be reached, the upload waits in a queue on this device. A banner in the script list counts waiting uploads, and each script shows its state. Waiting uploads go out on their own when the app becomes active again or the network returns, or when you refresh the script list. A failed attempt is retried later; a change made elsewhere in the meantime opens the merge instead.