RE: [nant-dev] GUI for NAnt...
Hi Naveen, I'm not quite sure what you're asking. Is this related to building an msi using NAnt? If so, then yes what you're describing should be possible. You would need to create a custom dialog and specify the components for that dialog. This can be done using various sub-elements of the msi task. An example of creating a dialog for the msi task is here: http://nant.sourceforge.net/wiki/index.php/sample%20build%20file The sample adds a dialog to get information for specifying a virtual directory. Hope that helps Jim -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Naveen Noel Sent: Tuesday, July 06, 2004 3:16 PM To: [EMAIL PROTECTED] Subject: [nant-dev] GUI for NAnt... Hi, I want to add screens when running an installation in NAnt. So, for that I added some screens to read the XML build file and allow the user to modify it and finally when I was done, I ran the build file. But suppose, I want to display the copying of files with a progress bar in a form, then is this possible? Someone please help... -- With Regards, Naveen... --- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers --- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers
[nant-dev] Re: Fileset scanning speed-ups in CVS
Just as an extra note- Before the change, there were 13 regex comparisons in one of our projects. The change reduces this to 128000 string comparisons (taking less than 1% of the time) and 2000 regex comparisons (taking the remaining 60% of the time). Note that all numbers are approximate from profiling- you can use nprof to get some of your own if you wish. I'm considering adding regex compilation to the mix, avoiding some of the Regex.Match overhead (since the regexes should only be compiled once for a single build file). I'm not certain if the overhead of compiling regexes would overwhelm the savings, but I'm more confident now that the majority of generated regular expressions (ie: filesets passed to subtasks) are now simple regular expressions. The remaining regular expressions are likely the ones passed by the build file author themselves, along with some of the built-in ones like **/CVS/**, etc. If we cache the compiled Matt. Matthew Mastracci wrote: I just checked in a change to fileset scanning that eliminates a large chunk of time (checked via profiling) during many of the common NAnt operations. One of the biggest losers on the profiling run was Regex.Match(), called many, many times during a build. The new code replaces a good proportion of these with CompareInfo.Compare() calls, reducing the overhead dramatically. Instead of converting all includes to regexes, the new code will only convert those that actually contain wildcards. Matt. --- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com --- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers
Re: [nant-dev] Fileset scanning speed-ups in CVS
Scott Hernandez wrote: Good work. That is one that needed to be optimized :) Do you have profiler stats/results on other most called, or time most spent in, functions? It would be good to list them so anyone out there could step up to challenge themselves with optimizing those functions. Just an idea... Unfortunately, I haven't hooked up the "copy to clipboard" functionality in nprof, so all I can provide is a screenshot. ;) I can probably summarize the trouble spots by hand- the NAnt-bootstrap build would be a good candidate. My goal right now is to catch the low-hanging fruit for a general build to match (or exceed) VS.NET's compilation speed wherever possible. Matt. - Original Message - From: "Matthew Mastracci" <[EMAIL PROTECTED]> I just checked in a change to fileset scanning that eliminates a large chunk of time (checked via profiling) during many of the common NAnt operations. One of the biggest losers on the profiling run was Regex.Match(), called many, many times during a build. The new code replaces a good proportion of these with CompareInfo.Compare() calls, reducing the overhead dramatically. Instead of converting all includes to regexes, the new code will only convert those that actually contain wildcards. begin:vcard fn:Matthew Mastracci n:Mastracci;Matthew org:aclaro Softworks, inc. adr:;;1900 a - 11 St. SE;Calgary;Alberta;T2H 3G2;Canada email;internet:[EMAIL PROTECTED] title:Software Developer tel;work:(403) 299-6612 x-mozilla-html:FALSE url:http://www.aclaro.com version:2.1 end:vcard
Re: [nant-dev] Fileset scanning speed-ups in CVS
Good work. That is one that needed to be optimized :) Do you have profiler stats/results on other most called, or time most spent in, functions? It would be good to list them so anyone out there could step up to challenge themselves with optimizing those functions. Just an idea... - Original Message - From: "Matthew Mastracci" <[EMAIL PROTECTED]> > I just checked in a change to fileset scanning that eliminates a large > chunk of time (checked via profiling) during many of the common NAnt > operations. > > One of the biggest losers on the profiling run was Regex.Match(), called > many, many times during a build. The new code replaces a good > proportion of these with CompareInfo.Compare() calls, reducing the > overhead dramatically. > > Instead of converting all includes to regexes, the new code > will only convert those that actually contain wildcards. --- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers
[nant-dev] Fileset scanning speed-ups in CVS
I just checked in a change to fileset scanning that eliminates a large chunk of time (checked via profiling) during many of the common NAnt operations. One of the biggest losers on the profiling run was Regex.Match(), called many, many times during a build. The new code replaces a good proportion of these with CompareInfo.Compare() calls, reducing the overhead dramatically. Instead of converting all includes to regexes, the new code will only convert those that actually contain wildcards. Matt. --- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers
[nant-dev] GUI for NAnt...
Hi, I want to add screens when running an installation in NAnt. So, for that I added some screens to read the XML build file and allow the user to modify it and finally when I was done, I ran the build file. But suppose, I want to display the copying of files with a progress bar in a form, then is this possible? Someone please help... -- With Regards, Naveen... --- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers
Re: [nant-dev] SolutionTask / VCProj support / Additional include directories
Thibaut, This change has been committed to cvs. Thanks, Gert - Original Message - From: <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Tuesday, July 06, 2004 1:19 PM Subject: [nant-dev] SolutionTask / VCProj support / Additional include directories Hi, here's a small patch proposal for VCProject.cs. When using the solution task with .vcproj (c++) projects, additional include directories are concatenated to a single "/I folder1;folder2" parameter in the call to cl (splitting is only based on comma). This doesn't work, as the compiler documentation reports this : /I "To add more than one directory, use this option more than once." Under VS.Net 2003 at least, additional include directories are separated by ";" rather than "," so I propose this : 263c263 < foreach (string includeDir in includeDirs.Split(',')) { --- > foreach (string includeDir in includeDirs.Split (",;".ToCharArray())) { regards, Thibaut Barrère --- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers --- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers
Re: [nant-dev] Projects and current working directory
Matthew, I don't think its a good idea to change this back to the old behaviour, as the new behaviour allows access to files in both the working directory, and the base directory of the project. Gert - Original Message - From: "Matthew Mastracci" <[EMAIL PROTECTED]> To: "Nant-Developers (E-mail)" <[EMAIL PROTECTED]> Sent: Tuesday, July 06, 2004 5:57 PM Subject: [nant-dev] Projects and current working directory > Something that changed in the last six months or so (perhaps longer?) is > that the projects no longer set their working directory equal to the > base directory of the project itself. > > I'm proposing the following patch to Project.cs to fix this. Since I > don't know if anyone relies on the current, strange behaviour, I'm > posting this here for discussion. > > I know that Project.GetFullPath() is supposed to handle this stuff, but > I believe there might be a few cases within NAnt where it isn't handled > properly (ie: paths are taken literally, rather than using > Project.GetFullPath). I know my compiles take longer with > this disabled, but I haven't yet determined what the problem is. > > --- Project.cs 24 May 2004 18:03:38 - 1.71 > +++ Project.cs 5 Jul 2004 22:36:36 - > @@ -882,8 +882,12 @@ > public bool Run() { > Exception error = null; > DateTime startTime = DateTime.Now; > +string oldDirectory = Directory.GetCurrentDirectory(); > > try { > +// change to the base directory of the project before > running anything > +Directory.SetCurrentDirectory(BaseDirectory); > + > OnBuildStarted(this, new BuildEventArgs(this)); > Log(Level.Info, "Buildfile: {0}", BuildFileUri); > > @@ -917,6 +921,9 @@ > // signal build failure > return false; > } finally { > +// restore the old directory > +Directory.SetCurrentDirectory(oldDirectory); > + > string endTarget; > > if (error == null) { > > > > --- > This SF.Net email sponsored by Black Hat Briefings & Training. > Attend Black Hat Briefings & Training, Las Vegas July 24-29 - > digital self defense, top technical experts, no vendor pitches, > unmatched networking opportunities. Visit www.blackhat.com > ___ > nant-developers mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/nant-developers > --- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers
[nant-dev] Projects and current working directory
Something that changed in the last six months or so (perhaps longer?) is that the projects no longer set their working directory equal to the base directory of the project itself. I'm proposing the following patch to Project.cs to fix this. Since I don't know if anyone relies on the current, strange behaviour, I'm posting this here for discussion. I know that Project.GetFullPath() is supposed to handle this stuff, but I believe there might be a few cases within NAnt where it isn't handled properly (ie: paths are taken literally, rather than using Project.GetFullPath). I know my compiles take longer with this disabled, but I haven't yet determined what the problem is. --- Project.cs 24 May 2004 18:03:38 - 1.71 +++ Project.cs 5 Jul 2004 22:36:36 - @@ -882,8 +882,12 @@ public bool Run() { Exception error = null; DateTime startTime = DateTime.Now; +string oldDirectory = Directory.GetCurrentDirectory(); try { +// change to the base directory of the project before running anything +Directory.SetCurrentDirectory(BaseDirectory); + OnBuildStarted(this, new BuildEventArgs(this)); Log(Level.Info, "Buildfile: {0}", BuildFileUri); @@ -917,6 +921,9 @@ // signal build failure return false; } finally { +// restore the old directory +Directory.SetCurrentDirectory(oldDirectory); + string endTarget; if (error == null) { --- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers
[nant-dev] Re: [nant-commits] CVS: nant/src/NAnt.Console NAnt.Console.exe.config,1.58,1.59
You're right - it is braindead. It works if you only specify a single component to license, otherwise it fails. :( What I didn't realize is that it will try over and over to re-populate its hashtable, failing. This causes the assembly resolution to fail. Unfortunately, there isn't any way to call lc.exe multiple times. We should probably be documenting some of these quirks somewhere. I usually end up running into something that looks like a bug, but turns out to be "by design". Matt. Matthew Mastracci wrote: Gert Driesen wrote: Matthew, The .NET 1.1 lc.exe indeed has a command line switch for specifying assembly references, but it doesn't work. That's why we don't use it. Actually, it does and I have proof. :) The only thing is that you can't specify assemblies that exist in the GAC (it gives you various errors from having the same key twice in a hashtable). Basically, it works for me and I can see exactly why given the decompiled source. Using Reflector: handler1 = new ResolveEventHandler(LicenseCompiler.OnAssemblyResolve); AppDomain.CurrentDomain.AssemblyResolve += handler1; context1 = new DesigntimeLicenseContext(); and in OnAssemblyResolve ... foreach (string text2 in LicenseCompiler.assemblies) { assembly1 = Assembly.LoadFrom(text2); if (assembly1 == null) { return null; } text3 = assembly1.GetName().Name; LicenseCompiler.assemHash.Add(text3, assembly1); if (text3 != text1) { continue; } return assembly1; } ... Gert - Original Message - From: "Matthew Mastracci" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Tuesday, July 06, 2004 2:24 AM Subject: [nant-commits] CVS: nant/src/NAnt.Console NAnt.Console.exe.config,1.58,1.59 Update of /cvsroot/nant/nant/src/NAnt.Console In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8787 Modified Files: NAnt.Console.exe.config Log Message: lc.exe supports assembly references Index: NAnt.Console.exe.config === RCS file: /cvsroot/nant/nant/src/NAnt.Console/NAnt.Console.exe.config,v retrieving revision 1.58 retrieving revision 1.59 diff -C2 -d -r1.58 -r1.59 *** NAnt.Console.exe.config 5 Jul 2004 18:11:21 - 1.58 --- NAnt.Console.exe.config 6 Jul 2004 00:24:11 - 1.59 *** *** 153,156 --- 153,157 lc + name="supportsassemblyreferences">true --- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com ___ nant-commits mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-commits --- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers
[nant-dev] Re: ResGen assembly references?
Gert Driesen wrote: Can't we do a quick parse of the resx sources to see if they require those references ? A large number of cases do not require any references at all. Yeah we probably could ... Just didn't/don't have time for that, and didn't see much need for it at that point ... I had to comment it out here because it was taking up to ten seconds to compile each .resx file in the solution. BTW- could we just skip copying resources and compile the .resx files after we copy references? I'm assuming that VS.NET would be compiling the .resx file using only the "Copy Local" references anyways, so we wouldn't be doing anything differently. I'm working on cutting down the time for a build in our shop again (via profiling)- this is one of the biggest culprits right now. :) I understand, but we can't sacrifice features for performance. But on the other hand we shouldn't slow down *every* solution based build in order to satisfy some corner cases if we can avoid doing so. No ofcourse not, if we can combine performance and features, I'm all for it ;-) This is a really big performance drain for any build that uses references extensively. I'd say it's a good candidate for performance tuning. :) Matt. --- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers
[nant-dev] Re: [nant-commits] CVS: nant/src/NAnt.Console NAnt.Console.exe.config,1.58,1.59
Gert Driesen wrote: Matthew, The .NET 1.1 lc.exe indeed has a command line switch for specifying assembly references, but it doesn't work. That's why we don't use it. Actually, it does and I have proof. :) The only thing is that you can't specify assemblies that exist in the GAC (it gives you various errors from having the same key twice in a hashtable). Basically, it works for me and I can see exactly why given the decompiled source. Using Reflector: handler1 = new ResolveEventHandler(LicenseCompiler.OnAssemblyResolve); AppDomain.CurrentDomain.AssemblyResolve += handler1; context1 = new DesigntimeLicenseContext(); and in OnAssemblyResolve ... foreach (string text2 in LicenseCompiler.assemblies) { assembly1 = Assembly.LoadFrom(text2); if (assembly1 == null) { return null; } text3 = assembly1.GetName().Name; LicenseCompiler.assemHash.Add(text3, assembly1); if (text3 != text1) { continue; } return assembly1; } ... Gert - Original Message - From: "Matthew Mastracci" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Tuesday, July 06, 2004 2:24 AM Subject: [nant-commits] CVS: nant/src/NAnt.Console NAnt.Console.exe.config,1.58,1.59 Update of /cvsroot/nant/nant/src/NAnt.Console In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8787 Modified Files: NAnt.Console.exe.config Log Message: lc.exe supports assembly references Index: NAnt.Console.exe.config === RCS file: /cvsroot/nant/nant/src/NAnt.Console/NAnt.Console.exe.config,v retrieving revision 1.58 retrieving revision 1.59 diff -C2 -d -r1.58 -r1.59 *** NAnt.Console.exe.config 5 Jul 2004 18:11:21 - 1.58 --- NAnt.Console.exe.config 6 Jul 2004 00:24:11 - 1.59 *** *** 153,156 --- 153,157 lc + name="supportsassemblyreferences">true --- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com ___ nant-commits mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-commits begin:vcard fn:Matthew Mastracci n:Mastracci;Matthew org:aclaro Softworks, inc. adr:;;1900 a - 11 St. SE;Calgary;Alberta;T2H 3G2;Canada email;internet:[EMAIL PROTECTED] title:Software Developer tel;work:(403) 299-6612 x-mozilla-html:FALSE url:http://www.aclaro.com version:2.1 end:vcard
Re: [nant-dev] Re: ResGen assembly references?
Can anyone give me a hint on how to create these assembly references in 1.0/1.1 via VS.NET? I haven't seen them before. Gert Driesen wrote: - Original Message - From: "Ian MacLean" <[EMAIL PROTECTED]> To: "Gert Driesen" <[EMAIL PROTECTED]> Cc: "Matthew Mastracci" <[EMAIL PROTECTED]>; "Nant-Developers (E-Mail)" <[EMAIL PROTECTED]> Sent: Tuesday, July 06, 2004 8:25 AM Subject: Re: [nant-dev] Re: ResGen assembly references? Gert Driesen wrote: - Original Message - From: "Matthew Mastracci" <[EMAIL PROTECTED]> To: "Matthew Mastracci" <[EMAIL PROTECTED]> Cc: "Gert Driesen" <[EMAIL PROTECTED]> Sent: Tuesday, July 06, 2004 3:13 AM Subject: Re: ResGen assembly references? <>Matthew Mastracci wrote: After upgrading to the latest CVS version, I've found that the task is taking a long time to run for each project because it seems to be copying all of the project references. These are necessary, as resx files can contain references to types in the project references. So need to be able to instantiate these types. What's the reason for this behaviour? We've never needed it before and it increases our build time dramatically. I don't think the 1.0 or 1.1 tasks can even utilize assembly references. We didn't need it as we didn't implement this yet. The resgen.exe tool for the .NET 1.0 and .NET 1.1 does not provide direct support for assembly references, but you can trick it into the by copying the tool itself, and all assembly references to the same (temporary) directory, and launching the tool from there. This is what we do for .NET 1.0 and .NET 1.1. For .NET 2.0 we just specify the assembly references on the command line. Can't we do a quick parse of the resx sources to see if they require those references ? A large number of cases do not require any references at all. Yeah we probably could ... Just didn't/don't have time for that, and didn't see much need for it at that point ... I'm working on cutting down the time for a build in our shop again (via profiling)- this is one of the biggest culprits right now. :) I understand, but we can't sacrifice features for performance. But on the other hand we shouldn't slow down *every* solution based build in order to satisfy some corner cases if we can avoid doing so. No ofcourse not, if we can combine performance and features, I'm all for it ;-) Gert begin:vcard fn:Matthew Mastracci n:Mastracci;Matthew org:aclaro Softworks, inc. adr:;;1900 a - 11 St. SE;Calgary;Alberta;T2H 3G2;Canada email;internet:[EMAIL PROTECTED] title:Software Developer tel;work:(403) 299-6612 x-mozilla-html:FALSE url:http://www.aclaro.com version:2.1 end:vcard
[nant-dev] SolutionTask / VCProj support / Additional include directories
Hi, here's a small patch proposal for VCProject.cs. When using the solution task with .vcproj (c++) projects, additional include directories are concatenated to a single "/I folder1;folder2" parameter in the call to cl (splitting is only based on comma). This doesn't work, as the compiler documentation reports this : /I "To add more than one directory, use this option more than once." Under VS.Net 2003 at least, additional include directories are separated by ";" rather than "," so I propose this : 263c263 < foreach (string includeDir in includeDirs.Split(',')) { --- > foreach (string includeDir in includeDirs.Split (",;".ToCharArray())) { regards, Thibaut Barrère --- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers
Re: [nant-dev] Re: ResGen assembly references?
- Original Message - From: "Ian MacLean" <[EMAIL PROTECTED]> To: "Gert Driesen" <[EMAIL PROTECTED]> Cc: "Matthew Mastracci" <[EMAIL PROTECTED]>; "Nant-Developers (E-Mail)" <[EMAIL PROTECTED]> Sent: Tuesday, July 06, 2004 8:25 AM Subject: Re: [nant-dev] Re: ResGen assembly references? > Gert Driesen wrote: > > >- Original Message - > >From: "Matthew Mastracci" <[EMAIL PROTECTED]> > >To: "Matthew Mastracci" <[EMAIL PROTECTED]> > >Cc: "Gert Driesen" <[EMAIL PROTECTED]> > >Sent: Tuesday, July 06, 2004 3:13 AM > >Subject: Re: ResGen assembly references? > > > > > > <>Matthew Mastracci wrote: > > > >>>After upgrading to the latest CVS version, I've found that the > >>> task is taking a long time to run for each project because it > >>>seems to be copying all of the project references. > >>> > >>> > > > >These are necessary, as resx files can contain references to types in the > >project references. So need to be able to instantiate these types. > > > > > > > >>>What's the reason for this behaviour? We've never needed it before > >>>and it increases our build time dramatically. I don't think the 1.0 > >>>or 1.1 tasks can even utilize assembly references. > >>> > >>> > > > >We didn't need it as we didn't implement this yet. The resgen.exe tool for > >the .NET 1.0 and .NET 1.1 does not provide direct support for assembly > >references, but you can trick it into the by copying the tool itself, and > >all assembly references to the same (temporary) directory, and launching the > >tool from there. This is what we do for .NET 1.0 and .NET 1.1. For .NET > >2.0 we just specify the assembly references on the command line. > > > > > > > Can't we do a quick parse of the resx sources to see if they require > those references ? A large number of cases do not require any references > at all. Yeah we probably could ... Just didn't/don't have time for that, and didn't see much need for it at that point ... > > >>>I'm working on cutting down the time for a build in our > >>>shop again (via profiling)- this is one of the biggest culprits right > >>>now. :) > >>> > >>> > > > >I understand, but we can't sacrifice features for performance. > > > > > > > But on the other hand we shouldn't slow down *every* solution based > build in order to satisfy some corner cases if we can avoid doing so. No ofcourse not, if we can combine performance and features, I'm all for it ;-) Gert --- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers