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

Reply via email to