Community
Participate
Working Groups
A number of usability issues have been reported related to subtask visibility and incoming status.
Critical subtasks fixed for 2.2. Remaining are on for 2.3/3.0.
Need to defer: http://wiki.eclipse.org/index.php/Mylyn/3.0_Plan#Deferred_Items
We've entered into design discussion for this change but have yet converged. Deferring.
Here is what we have come up with in our discussion so far: - Add an option to the query page for settings a flag to retrieve subtasks when querying. - SynchronizeTasksJob needs to be modified to not retrieve subtasks by default. SynchronizeQueriesJob should provide SynchronizeTasksJob with a list of tasks for which subtasks need to be retrieved.
Created attachment 134036 [details] first pass Potential solution, makes use of session object.
Created attachment 134037 [details] mylyn/context/zip
The approach looks good to me. My only concern is that before we have solved the problem better on a conceptual level I would like to avoid putting this into API. How about not exposing the includeRelations flag on IRepositoryQuery but cast to internals in BugzillaSearchPage instead? You might also want to use an "extended" attribute to store the includeRelations flag to avoid having to modify the persistence implementation and task list format.
Created attachment 134360 [details] updated patch Thanks for reviewing Steffen. This updated patch addresses the concerns you raised. Mik, if you could run with this patch before we commit to this it would be great since there are some outstanding usability concerns. For example, there is a scenario where subtasks will not be exposed when expected. When a query is switch from not retrieving subtasks over to one that will retrieve subtasks. In this case if a task has a subtask that doesn't match the query the subtask will not be revealed until the task either has incoming changes or is deleted and resynchronized (a full task data retrieval occurs).
Now running from patch. Seems like that edge case may be acceptable. We should document it carefully if we're stuck with it.
Can we make this work for JIRA as well?
Let's discuss this on the next call. Considering the inconsistencies caused by the change I don't think this should go into the release and I'm not sure that it's worth investing additional time into it.
I'm seeing errors like the following on every sync. Could it be related: java.lang.IllegalArgumentException: Element https://bugs.eclipse.org/bugs-60289 does not exist in the task list. at org.eclipse.mylyn.internal.tasks.core.TaskList.getValidElement(TaskList.java:465) at org.eclipse.mylyn.internal.tasks.core.TaskList.addTask(TaskList.java:150) at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeTasksJob.synchronizedTaskRelations(SynchronizeTasksJob.java:184) at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeTasksJob.run(SynchronizeTasksJob.java:147) at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeTasksJob.run(SynchronizeTasksJob.java:131) at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeQueriesJob.run(SynchronizeQueriesJob.java:221) at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeRepositoriesJob.updateQueries(SynchronizeRepositoriesJob.java:148) at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeRepositoriesJob.run(SynchronizeRepositoriesJob.java:111) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Are you running on the patch?
Yup. Have been running on it for two weeks or so.
Further progress to be made in next cycle.
*** Bug 281552 has been marked as a duplicate of this bug. ***
I have moved the last remaining subtask to bug 248377 and we can track further progress on that bug. Great job on getting all these fixes in Rob!