offlineimap icon indicating copy to clipboard operation
offlineimap copied to clipboard

post- and presync hooks for quick and full syncs

Open dopefishh opened this issue 4 years ago • 2 comments

The postsynchook and presynchook are configuration options to execute a process before of after synchronisation.

In my case it would be useful to discriminate between quick syncs and full syncs in regards to post- and presynchooks. My postsynchook is quite CPU intensive and I would like to only run it on full syncs and skip it on quick syncs.

To keep it backwards compatible I propose to add four new configuration options so that there are a total of six synchooks:

  • presynchook Executes before both a quick and a full sync
  • postsynchook Executes after both a quick and a full sync
  • prequicksynchook Executes only before a quick sync
  • postquicksynchook Executes only after a quick sync
  • prefullsynchook Executes only before a full sync
  • postfullsynchook Executes only after a full sync

I'm fine with implementing this but I wanted to poll enthusiasm first.

dopefishh avatar Sep 01 '21 08:09 dopefishh

I'd merge patches. You might like to contribute to offlineimap3, though.

nicolas33 avatar Sep 02 '21 21:09 nicolas33

BTW, I think the best way to implement this is not to introduce yet another configuration option. I'd rather add a new "context" argument object when calling the user function.

nicolas33 avatar Sep 02 '21 21:09 nicolas33