Visualization in MSBuild Sidekick v2
I have decided that I am going to blog a bit about new features we have in v2 of our tool; the first feature selected is target visualization.
The rational behind this feature goes like that - what if my build script takes lots of time to execute? Then changing it, running it, changing again to fix issues etc. becomes bothesome very quickly. So ideally one should be able to preview the build script execution (similar perhaps to EXPLAIN PLAN Oracle command, if you know what I mean).
In MSBuild Sidekick v2 we provide Target Diagram view; when project is loaded, the menu "Tools"->"View Targets DIagram" will display visualization screen
When the window first opened, the targets selected for visualization are project default targets. It is possible to select one or more targets different from the defaults.
For the selected target(s), execution tree is displayed graphically; tasks may be shown or hidden using corresponding toolbar button. The graphical diagram may be zoomed in or out, printed or saved to file. The elements on the diagram may be also rearranged; mouse right click on the element will invoke context menu.
On targets and tasks in the diagram there may appear two kinds of additional indicators - whether element is imported (relative to currently loaded project) and whether element has condition defined. For elements with condition set, condition will be eventually evaluated at run-time, diagram indicating what targets/tasks may be skipped due to condition.
Putting the cursor over the element (or selecting element, right-clicking it and selecting info) will show element details such as condition etc. in hint baloon.
We hope that feature will allow MSBuild project developer to gain better understanding of project structure without building it.