← Back to team overview

gtg-contributors team mailing list archive

task syncing

 

Hello developers,

This is a tecnical question on the datastore & co.

I've been evaluating how tasks get synced back to the backend. I've found
that the current implementation of having a callback function(s) stored
in the task is not very good when dealing with different backends,
mainly because:
 - when a backend is enabled/disabled, we have to go though all tasks and
   disconnect them
 - if a task changes its tags (and thus should be stored in a different
   backend) we have to change the sync function

So, I'm trying to use signals instead. Something like "task-should-be-synced"
emitted in task.sync() and intercepted by the TaskSource.

It seems to be a bit faster than the current implementation (the trunk
39 seconds to load 1000 tasks is cut down to 25), but my test are really
unscientific.

So, I was wondering, is there a reason why you (well, Lionel and
Bertrand) chose to not use signals? I don't think so, but the question
is bugging me.

Thanks, 
  Luca

Attachment: signature.asc
Description: Digital signature


Follow ups