The projecthelp uses xsl templates to transform the source document (build file) without doing any includes (or actually running any tasks; like <property/>). This makes it pretty useless in many cases.
At this point I think we need to re-write the projecthelp stuff to load the document, run (the <include/> tasks only?) global tasks, and then provide help about the build file. The expansion of properties is done in the objects not the xml doc. The xml doc should not be touched during the xml reading process as tasks and elements are created in the nant project. Look at Element.InitializeElement(...) to see how the xml is loaded and properties are expanded. Adding support for included files and property expansion is something we should really do. I think this is a great idea. You would probably need to do something similar to Project.InitializeProjectDocument by looping through and running the <property/> and <include/> tasks, and then this is where things get complicated. Since there are tasks like <if/> and <foreach/> that could change properties and loop through a directory to include multiple build files, it gets complicated what you should run, and should not, to get an accurate summary of what is being included in the buildfile. The good thing about the <include> task is that it can only be used at the project level. Well, I hope that helps. I'm working off no sleep and a crazy night, so let me know if you need any more info. :) ----- Original Message ----- From: "William E Caputo" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Friday, October 31, 2003 11:06 AM Subject: [nant-dev] Expansion of properties in target descriptions > Hi All, > > I realize this is not implemented, and I am not even sure if it should be, > but I was wondering if someone could point me in the right direction for > figuring out if it easily could be done. > > As near as I can tell, projecthelp is extracted using an xslt that is > executed completely independent of the parsing of targets. So, the three > things I am trying to determine right now are: > > 1) Where in the code are the properties expanded into their values for use > in tasks? > 2) Would doing this before transforming for projecthelp be of any value, > or (as I suspect) is it done in the parsed data, and so would have no > impact > 3) What would need to be done to change projecthelp to work off of the > parsed target information (assuming again that this includes the > description). > > If anyone can save me a bit of time by pointing me at the right classes to > look at so I can find the answers, that would be much appreciated. > > Also, if it turns out to be feasible, is this something that the nant team > would be interested in having, or is this considered counter to the design > goals of the tool in some way? > > Best, > Bill > > William E. Caputo > ThoughtWorks, Inc. > http://www.twelve71.com/caputo/ > -------- > Continuous Integration: Watchin' the hella tech ta' boost da' shiggety > shiggety shwa. > > > > > > > > ------------------------------------------------------- > This SF.net email is sponsored by: SF.net Giveback Program. > Does SourceForge.net help you be more productive? Does it > help you create better code? SHARE THE LOVE, and help us help > YOU! Click Here: http://sourceforge.net/donate/ > _______________________________________________ > nant-developers mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/nant-developers > > ------------------------------------------------------- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ _______________________________________________ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers