
Hi, I have some more remarks/questions about the new Saga specifications, this time about the task package. Here they are, in random order: Bugs: task.wait() in the details does not specify a default value for the timeout. PreCond on task.cancel(): sais that task is in 'Running' state, but the Notes say that it can also be in a final state, in which case the cancel has no effect. Why does task_container.remove() return the removed task? It is already specified as parameter. PostCond on task_container.run(): sais that all tasks in the container are in 'Running' state, but I guess the only thing you can be sure of is that the state is not 'New', like with task.run(). PostCond on task_container.cancel(): sais that if no timeout occurs all tasks in the container are in 'Canceled' state. But the tasks can be in another final state as well. Debatable issues: task_container: what is the difference between list_tasks() and get_tasks()? list_tasks() originally returned the cookies. Should it now return a list of object ids? Or should the method just be removed alltogether? I am not sure that it is a good idea to have get_result() call rethrow(). How do I now make a distinction between an exception coming from the get_result() call itself and an exception from the task? I guess that in the exception handler I can check the state of the task, but that does not give you a definite answer: if the state is "FAILED", the exception can still come from get_result() itself, can it not? Why not leave it to the user to call rethrow() if he/she wants, and as it was before? Cheers, Ceriel