Forward slash in template.xml task name is not rejected
Brought to you by:
ken_raisor,
tuma
If a heading contains a '/' in the template XML, Process Dashboard seems to fail at escaping the slash with the noticible result being that the timing button is disabled.
eg: <phase name="Stage - Update/Draft" type="plan"/>
The above line repeatably causes the issue and is fixed by removing the slash.
Tested under 1.7 and 2.0 with the same result.
This is not a defect in the timing logic, it is ultimately a defect in the template.xml file.
Throughout the dashboard, you will notice that slash characters are used when constructing the full path name of a project or task. For example, you might see a path like "/Project/My Project/My Component/Task 1" in the time log. The slash character is a special character, and it is reserved to have the meaning of parent-child hierarchy containment. Since it is reserved, the WBS Editor and Hierarchy Editor never let you create a task with a slash in the name. (This is exactly analogous to the way the Windows operating system will not let you create a file with a backslash in the name.)
In your template.xml file, you are specifying the creation of a task that has a slash in the name. That task is breaking the rule described above, which could have a large number of downstream consequences (not just disabled timing). To avoid breaking the rules, you'll need to choose a new name for your task. Something like "Stage - Update, Draft" would be legal.
The corresponding bug in the dashboard might be that (a) the documentation should make this rule more clear, and (b) the parsing logic should possibly reject template.xml files that contain such an error. I've updated the name of this ticket accordingly.
Diff: