> We really need to separate the project/system props from the > user props > so that certain properties don't get inherited. Or at least > have a block > list that doesn't get inherited.
smells like a good place to use Attributes if you ask me. __ Andy Smith Chief Code Monkey > -----Original Message----- > From: Scott Hernandez [mailto:[EMAIL PROTECTED]] > Sent: Thursday, June 13, 2002 3:18 PM > To: [EMAIL PROTECTED]; [EMAIL PROTECTED] > Subject: RE: [nant-dev] Property Inheritance & nant.onsuccess > > > Yep, this was something I was thinking about when the inheritance > discussion went on. I was going to clean things up afterwards and test > these cases (which reminds me, we still need unit tests for this). > > We really need to separate the project/system props from the > user props > so that certain properties don't get inherited. Or at least > have a block > list that doesn't get inherited. > > Another way to do this is to establish an event model so that you can > add an eventTask which will be called for certain things. > > So I would image that something like this would be reasonable. > > <project> > <event for="onsuccess"> > <call targer="good"/> > </event> > <event for="onfailure"> > <call target="bad-cleanup"/> > </event> > </project> > > And I'd image that there would be events for the following things. > > Start/End (pre/post?) for > 1.) global tasks (as a group) > 2.) individual targets (as they are called/executed) > 3.) whole build process > > As well as success/failure. > > > -----Original Message----- > > From: [EMAIL PROTECTED] > [mailto:nant-developers- > > [EMAIL PROTECTED]] On Behalf Of > [EMAIL PROTECTED] > > Sent: Thursday, June 13, 2002 11:17 AM > > To: [EMAIL PROTECTED] > > Subject: [nant-dev] Property Inheritance & nant.onsuccess > > > > I found something interesting today. > > > > I'm using a master build file that calls tasks in other build files > using > > the nant task. In my master build file I have a nant.onsuccess and > > nant.onfailure property set to execute after the main build file has > > either > > succeeded or failed. When I call the child build files > using the nant > > task > > it tries to execute the nant.onsuccess target because it > has inherited > the > > properties from the master build file but in the child files I don't > have > > a > > success target defined. To keep this from failing I have to put in > empty > > targets in the child build files. Does this make sense or is this > > something that should behave differently. Here is an > example to show > the > > problem. > > > > Example files: > > > > master.build > > > > <project name="master" default="main"> > > > > <property name="hello.world" value="Hello World" /> > > <property name="nant.onsuccess" value="successtarget" /> > > > > <target name="main"> > > <nant buildfile="U:\Spikes\build\a.build" target="one" > failonerror="true" > > verbose="true" /> > > <nant buildfile="U:\Spikes\build\b.build" target="one" > failonerror="true" > > verbose="true" /> > > <nant buildfile="U:\Spikes\build\a.build" target="two" > failonerror="true" > > verbose="true" /> > > <nant buildfile="U:\Spikes\build\b.build" target="two" > failonerror="true" > > verbose="true" /> > > <nant buildfile="U:\Spikes\build\a.build" target="three" > > failonerror="true" > > verbose="true" /> > > <nant buildfile="U:\Spikes\build\b.build" target="three" > > failonerror="true" > > verbose="true" /> > > <nant buildfile="U:\Spikes\build\a.build" target="four" > failonerror="true" > > verbose="true" /> > > <nant buildfile="U:\Spikes\build\b.build" target="four" > failonerror="true" > > verbose="true" /> > > </target> > > > > <target name="successtarget"> > > <echo message="Success!" /> > > </target> > > > > </project> > > > > a.build > > > > <project default="one" name="a"> > > > > <target name="one"><echo message="a.one"/></target> > > <target name="two"><echo message="a.two"/></target> > > <target name="three"><echo message="a.three"/></target> > > <target name="four"><echo message="a.four"/></target> > > > > </project> > > > > b.build > > > > <project default="one" name="b"> > > > > <target name="one"><echo message="b.one"/></target> > > <target name="two"><echo message="b.two"/></target> > > <target name="three"><echo message="b.three"/></target> > > <target name="four"><echo message="b.four"/></target> > > > > </project> > > > > > > > > > > _______________________________________________________________ > > > > Don't miss the 2002 Sprint PCS Application Developer's Conference > > August 25-28 in Las Vegas - > > http://devcon.sprintpcs.com/adp/index.cfm?source=osdntextlink > > > > _______________________________________________ > > Nant-developers mailing list > > [EMAIL PROTECTED] > > https://lists.sourceforge.net/lists/listinfo/nant-developers > > > > _______________________________________________________________ > > Don't miss the 2002 Sprint PCS Application Developer's Conference > August 25-28 in Las Vegas - http://devcon.sprintpcs.com/adp/index.cfm?source=osdntextlink _______________________________________________ Nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers _______________________________________________________________ Don't miss the 2002 Sprint PCS Application Developer's Conference August 25-28 in Las Vegas - http://devcon.sprintpcs.com/adp/index.cfm?source=osdntextlink _______________________________________________ Nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers
