Re: [nant-dev] New task: cat
Hi, * Gert Driesen wrote on 17.09.2003 (07:57): wouldn't it be better to have something similar to the Ant concat task (http://ant.apache.org/manual/CoreTasks/concat.html), which allows files to be concatenated or the tasks inline text be appended (or overwritten) to the destination file ? A fileset is indeed a good idea. Myself I found that it would be nice to have a filtering option, that adds part of the functionality that's in grep. I think of an attribute filter which takes an regular expression. When doing this, I will add fileset support. If a fileset is given the file attribute gets ignored. Hence, I will make it optional.The task won't fail if no input is given. I'll have a look at the echo task to see how inline text ist handled, and see if I put this in the upcoming version. -sa -- sa at programmers-world dot com http://www.livingit.de Bookmarks online: http://www.mobile-bookmarks.info Soon available in english CChheecckk yyoouurr dduupplleexx sswwiittcchh.. --- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers
[nant-dev] RE: [Nant-users] How do one update the AssemblyVersion build number?
use the version task and the asminfo task ! split your assemblyinfo.cs in two - one is maintained manually and contains everything but the assembly version attribute - the other one will be auto-generated by the asminfo task and will contain the version number from the version task. this number is passed through a propery set by the version task (see prefix) version path=VersionInfo.txt buildtype=noincrement prefix=assembly. revisiontype=increment / asminfo output=VersionInfo.cs language=CSharp imports import name=System.Reflection / /imports attributes attribute type=AssemblyVersionAttribute value=${assembly.version} / attribute type=AssemblyCopyrightAttribute value=2003 (c) ME ! / /attributes /asminfo if you have many projects, use a foreach. no executables, works with VB if you don't like the version task, claim for an enhancement, i use it as is anyway. áËë^¨¥Ë)¢{(ç[É8bAzEÊzÚ yé!y«m§ÿí)äç¤r¿±ù×^½éh¥ê¥x%Ëgj{]z«²X¬¶Ë(º·~àzwÛi³ÿåËl²«qç讧zßåËlþX¬¶)ù×^½éh¥êì
[nant-dev] solution task fix
hi, i think there's a problem in the way compiled resource filenames are computed in the solution task. I had a collision which was failing my build (cf my mail to the nant users list solution task - problem with resources on the 9th sept). The filenames are computed by scanning the corresponding source files (cs or vb) to each resx file, looking for a namespace and class with a regexp, maybe to find out a unique name (namespace + classname should be unique). The problem is that the regexp used aren't robust enough. There is also in the code an alternative way of doing so : using the path of the file as a unique name, and this seems to work well. I can't figure out why this first manner is put forward in the code, it sounds like making two many assumptions to me, whereas more robust algorithms exist. may I suggest the following fix, it forces the alternative way. If adopted, 3 functions would need to be deleted as well (GetDependentResourceName and the like), not included in this fix for clarity. --- resource.cs Wed Sep 03 11:00:01 2003 +++ resource.cs Wed Sep 17 15:18:35 2003 @@ -225,9 +225,9 @@ string inFile = _resourceSourceFile; string outFile; -if (!StringUtils.IsNullOrEmpty(_dependentFile)) { -outFile = GetDependentResourceName(_dependentFile); -} else { +// if (!StringUtils.IsNullOrEmpty(_dependentFile)) { +//outFile = GetDependentResourceName(_dependentFile); +// } else { StringBuilder sb = new StringBuilder(); if (!StringUtils.IsNullOrEmpty(Project.ProjectSettings.RootNamespace)) { sb.Append(Project.ProjectSettings.RootNamespace); @@ -240,7 +240,7 @@ } sb.Append(.resources); outFile = sb.ToString(); -} +//} outFile = Project.ProjectSettings.GetTemporaryFilename(outFile); _solutionTask.Project.Indent(); It does not prevent my project to have localized resource dlls (which BTW need dedicated tasks). áËë^¨¥Ë)¢{(ç[É8bAzEÊzÚ yé!y«m§ÿí)äç¤r¿±ù×^½éh¥ê¥x%Ëgj{]z«²X¬¶Ë(º·~àzwÛi³ÿåËl²«qç讧zßåËlþX¬¶)ù×^½éh¥êì
Re: [nant-dev] solution task fix
Unfortunately, VS.NET uses the name of the class as the generated resources filename. Changing this would break any designer-created code. BTW, as a friendly suggestion. :) I can't read your mail from Sept. 9 because it appears to be encoded in something other than text/plain. I get nant-users in digest form, which means that I ignore any HTML/RTF mail that gets sent to it (not fun reading through HTML tags, as you can probably imagine). For archival purposes, it is highly recommended to send mail to the mailing list in text/plain format only. If this is not possible, ensure that your mail client is at least sending this as backup to text/html. Matt. Vincent Labatut wrote: hi, i think there's a problem in the way compiled resource filenames are computed in the solution task. I had a collision which was failing my build (cf my mail to the nant users list solution task - problem with resources on the 9th sept). The filenames are computed by scanning the corresponding source files (cs or vb) to each resx file, looking for a namespace and class with a regexp, maybe to find out a unique name (namespace + classname should be unique). The problem is that the regexp used aren't robust enough. There is also in the code an alternative way of doing so : using the path of the file as a unique name, and this seems to work well. I can't figure out why this first manner is put forward in the code, it sounds like making two many assumptions to me, whereas more robust algorithms exist. may I suggest the following fix, it forces the alternative way. If adopted, 3 functions would need to be deleted as well (GetDependentResourceName and the like), not included in this fix for clarity. --- resource.cs Wed Sep 03 11:00:01 2003 +++ resource.cs Wed Sep 17 15:18:35 2003 @@ -225,9 +225,9 @@ string inFile = _resourceSourceFile; string outFile; -if (!StringUtils.IsNullOrEmpty(_dependentFile)) { -outFile = GetDependentResourceName(_dependentFile); -} else { +// if (!StringUtils.IsNullOrEmpty(_dependentFile)) { +//outFile = GetDependentResourceName(_dependentFile); +// } else { StringBuilder sb = new StringBuilder(); if (!StringUtils.IsNullOrEmpty(Project.ProjectSettings.RootNamespace)) { sb.Append(Project.ProjectSettings.RootNamespace); @@ -240,7 +240,7 @@ } sb.Append(.resources); outFile = sb.ToString(); -} +//} outFile = Project.ProjectSettings.GetTemporaryFilename(outFile); _solutionTask.Project.Indent(); It does not prevent my project to have localized resource dlls (which BTW need dedicated tasks). N???X???'???u???)??Y?\?g???????b?HzG(?????u??^??X??X??v??zZ)z?%??l???q???z?mX???(??~??zw??X?b??u??^rs== --- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers
RE: [nant-dev] solution task fix
VS.NET uses the full name of the class (namespace.classnam) for the behind the scenes .resx files (those resource files automatically created to hold WinForm resources, etc. If you create a .resx explicitly and add it to your project (for example, to hold string resources for internationalization purposes), VS.NET will use the filename prefixed with a namespace. The namespace will be a combination of your project's default namespace and the filepath to the .resx file. So, if you have a file called strings.resx in subdirectory 'Other' of a project with namespace 'Stuff', the resource will be embedded as Stuff.Other.strings.resource. So, parsing an associated .cs file is only sometimes appropriate (for the cases where the .resx file was automatically created behind the scenes). -Original Message- From: Matthew Mastracci [mailto:[EMAIL PROTECTED] Sent: Wednesday, September 17, 2003 9:50 AM To: Vincent Labatut Cc: [EMAIL PROTECTED] Subject: Re: [nant-dev] solution task fix Unfortunately, VS.NET uses the name of the class as the generated resources filename. Changing this would break any designer-created code. BTW, as a friendly suggestion. :) I can't read your mail from Sept. 9 because it appears to be encoded in something other than text/plain. I get nant-users in digest form, which means that I ignore any HTML/RTF mail that gets sent to it (not fun reading through HTML tags, as you can probably imagine). For archival purposes, it is highly recommended to send mail to the mailing list in text/plain format only. If this is not possible, ensure that your mail client is at least sending this as backup to text/html. Matt. Vincent Labatut wrote: hi, i think there's a problem in the way compiled resource filenames are computed in the solution task. I had a collision which was failing my build (cf my mail to the nant users list solution task - problem with resources on the 9th sept). The filenames are computed by scanning the corresponding source files (cs or vb) to each resx file, looking for a namespace and class with a regexp, maybe to find out a unique name (namespace + classname should be unique). The problem is that the regexp used aren't robust enough. There is also in the code an alternative way of doing so : using the path of the file as a unique name, and this seems to work well. I can't figure out why this first manner is put forward in the code, it sounds like making two many assumptions to me, whereas more robust algorithms exist. may I suggest the following fix, it forces the alternative way. If adopted, 3 functions would need to be deleted as well (GetDependentResourceName and the like), not included in this fix for clarity. --- resource.cs Wed Sep 03 11:00:01 2003 +++ resource.cs Wed Sep 17 15:18:35 2003 @@ -225,9 +225,9 @@ string inFile = _resourceSourceFile; string outFile; -if (!StringUtils.IsNullOrEmpty(_dependentFile)) { -outFile = GetDependentResourceName(_dependentFile); -} else { +// if (!StringUtils.IsNullOrEmpty(_dependentFile)) { +//outFile = GetDependentResourceName(_dependentFile); +// } else { StringBuilder sb = new StringBuilder(); if (!StringUtils.IsNullOrEmpty(Project.ProjectSettings.RootNamespace)) { sb.Append(Project.ProjectSettings.RootNamespace); @@ -240,7 +240,7 @@ } sb.Append(.resources); outFile = sb.ToString(); -} +//} outFile = Project.ProjectSettings.GetTemporaryFilename(outFile); _solutionTask.Project.Indent(); It does not prevent my project to have localized resource dlls (which BTW need dedicated tasks). N???X???'???u???)??Y?\?g?? ?????b?HzG(?????u??^??X??X??v??zZ)z?%??l???q?? ?z?mX???(??~??zw??X?b??u??^rs== --- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers +,~wzf¢+,¦o$áyyézW(ëhæ¯zxm¶ÿ¶§ÊþÇçj{]z«²f¢)à+-©íuë^®Éb²Û,¢êÜyú+ém¦Ïÿ+-²Ê.¢¸ë+-³ùb²~çj{]z«
Re: [nant-dev] New task: cat
There is already a concat task in NAntContrib... And the task already support filesets Nick From: Sascha Andres [EMAIL PROTECTED] To: [EMAIL PROTECTED] Subject: Re: [nant-dev] New task: cat Date: Wed, 17 Sep 2003 09:21:20 +0200 MIME-Version: 1.0 Hi, * Gert Driesen wrote on 17.09.2003 (07:57): wouldn't it be better to have something similar to the Ant concat task (http://ant.apache.org/manual/CoreTasks/concat.html), which allows files to be concatenated or the tasks inline text be appended (or overwritten) to the destination file ? A fileset is indeed a good idea. Myself I found that it would be nice to have a filtering option, that adds part of the functionality that's in grep. I think of an attribute filter which takes an regular expression. When doing this, I will add fileset support. If a fileset is given the file attribute gets ignored. Hence, I will make it optional.The task won't fail if no input is given. I'll have a look at the echo task to see how inline text ist handled, and see if I put this in the upcoming version. -sa -- sa at programmers-world dot com http://www.livingit.de Bookmarks online: http://www.mobile-bookmarks.info Soon available in english CChheecckk yyoouurr dduupplleexx sswwiittcchh.. --- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers _ MSN Search, le moteur de recherche qui pense comme vous ! http://fr.ca.search.msn.com/ --- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers
RE : [nant-dev] solution task fix
thanks, got it now ! So this is what visual studio acutally does... I found a thread where a guy was stuck because of visual studio grasping the wrong class name for his resource !! ;) (he had defined multiple classes within the same file, visual studio takes the first) http://www.dotnet247.com/247reference/msgs/10/52512.aspx I think we should still strengthen the regexp because it caught something in one of my source files which was not a classname, resulting in an invalid file name and an exception in path.combine. The following line in my source file causes a bug (c#) : string l_str_temp = div class=\QuotasGauge\ style=\WIDTH: + WIDTH_GAUGE.ToString() + px;\; I'll give it a look and try to come back with a better regexp... Matthew: I finally ended up in changing my email client and address ! sorry for the inconvenienceS -Original Message- From: Erv Walter [mailto:[EMAIL PROTECTED] Sent: Wednesday, September 17, 2003 5:00 AM To: Matthew Mastracci; Vincent Labatut Cc: [EMAIL PROTECTED] Subject: Re: [nant-dev] solution task fix VS.NET uses the full name of the class (namespace.classnam) for the behind the scenes .resx files (those resource files automatically created to hold WinForm resources, etc. If you create a .resx explicitly and add it to your project (for example, to hold string resources for internationalization purposes), VS.NET will use the filename prefixed with a namespace. The namespace will be a combination of your project's default namespace and the filepath to the .resx file. So, if you have a file called strings.resx in subdirectory 'Other' of a project with namespace 'Stuff', the resource will be embedded as Stuff.Other.strings.resource. So, parsing an associated .cs file is only sometimes appropriate (for the cases where the .resx file was automatically created behind the scenes). -Original Message- From: Matthew Mastracci [mailto:[EMAIL PROTECTED] Sent: Wednesday, September 17, 2003 9:50 AM To: Vincent Labatut Cc: [EMAIL PROTECTED] Subject: Re: [nant-dev] solution task fix Unfortunately, VS.NET uses the name of the class as the generated resources filename. Changing this would break any designer-created code. BTW, as a friendly suggestion. :) I can't read your mail from Sept. 9 because it appears to be encoded in something other than text/plain. I get nant-users in digest form, which means that I ignore any HTML/RTF mail that gets sent to it (not fun reading through HTML tags, as you can probably imagine). For archival purposes, it is highly recommended to send mail to the mailing list in text/plain format only. If this is not possible, ensure that your mail client is at least sending this as backup to text/html. Matt. Vincent Labatut wrote: hi, i think there's a problem in the way compiled resource filenames are computed in the solution task. I had a collision which was failing my build (cf my mail to the nant users list solution task - problem with resources on the 9th sept). The filenames are computed by scanning the corresponding source files (cs or vb) to each resx file, looking for a namespace and class with a regexp, maybe to find out a unique name (namespace + classname should be unique). The problem is that the regexp used aren't robust enough. There is also in the code an alternative way of doing so : using the path of the file as a unique name, and this seems to work well. I can't figure out why this first manner is put forward in the code, it sounds like making two many assumptions to me, whereas more robust algorithms exist. may I suggest the following fix, it forces the alternative way. If adopted, 3 functions would need to be deleted as well (GetDependentResourceName and the like), not included in this fix for clarity. --- resource.cs Wed Sep 03 11:00:01 2003 +++ resource.cs Wed Sep 17 15:18:35 2003 @@ -225,9 +225,9 @@ string inFile = _resourceSourceFile; string outFile; -if (!StringUtils.IsNullOrEmpty(_dependentFile)) { -outFile = GetDependentResourceName(_dependentFile); -} else { +// if (!StringUtils.IsNullOrEmpty(_dependentFile)) { +//outFile = GetDependentResourceName(_dependentFile); +// } else { StringBuilder sb = new StringBuilder(); if (!StringUtils.IsNullOrEmpty(Project.ProjectSettings.RootNamespace)) { sb.Append(Project.ProjectSettings.RootNamespace); @@ -240,7 +240,7 @@ } sb.Append(.resources); outFile = sb.ToString(); -} +//} outFile = Project.ProjectSettings.GetTemporaryFilename(outFile); _solutionTask.Project.Indent(); It does not prevent my project to have localized resource dlls (which BTW need dedicated tasks). --- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven.
Re: RE : [nant-dev] solution task fix
Heh... I can see why it caught that as the wrong class. You might be able to reorder stuff to get around this problem. The *correct* solution for us would be to use a real C# parser. Perhaps the Mono C# parser would work, if the license is compatible. The regex one is good enough 99% of this time, but can't detect and ignore stuff like strings/etc. You *might* be able to use the new nesting regex constructs to ignore strings, but those hurt my brain. Handling the @strings would also be an extra nightmare: (?/name /) Captures the matched substring into a group name or number name. The string used for /name/ must not contain any punctuation and it cannot begin with a number. You can use single quotes instead of angle brackets; for example, |(?'name')|. (?/name1-name2/ ) Balancing group definition. Deletes the definition of the previously defined group /name2/ and stores in group /name1 /the interval between the previously defined /name2/ group and the current group. If no group /name2/ is defined, the match backtracks. Because deleting the last definition of /name2/ reveals the previous definition of /name2,/ this construct allows the stack of captures for group /name2 /to be used as a counter for keeping track of nested constructs such as parentheses. In this construct /name1 /is optional. You can use single quotes instead of angle brackets; for example, |(?'name1-name2')|. Thanks for the text/plain email! Much easier to read. ;) Matt. Vincent Labatut wrote: thanks, got it now ! So this is what visual studio acutally does... I found a thread where a guy was stuck because of visual studio grasping the wrong class name for his resource !! ;) (he had defined multiple classes within the same file, visual studio takes the first) http://www.dotnet247.com/247reference/msgs/10/52512.aspx I think we should still strengthen the regexp because it caught something in one of my source files which was not a classname, resulting in an invalid file name and an exception in path.combine. The following line in my source file causes a bug (c#) : string l_str_temp = div class=\QuotasGauge\ style=\WIDTH: + WIDTH_GAUGE.ToString() + px;\; I'll give it a look and try to come back with a better regexp... Matthew: I finally ended up in changing my email client and address ! sorry for the inconvenienceS -Original Message- From: Erv Walter [mailto:[EMAIL PROTECTED] Sent: Wednesday, September 17, 2003 5:00 AM To: Matthew Mastracci; Vincent Labatut Cc: [EMAIL PROTECTED] Subject: Re: [nant-dev] solution task fix VS.NET uses the full name of the class (namespace.classnam) for the behind the scenes .resx files (those resource files automatically created to hold WinForm resources, etc. If you create a .resx explicitly and add it to your project (for example, to hold string resources for internationalization purposes), VS.NET will use the filename prefixed with a namespace. The namespace will be a combination of your project's default namespace and the filepath to the .resx file. So, if you have a file called strings.resx in subdirectory 'Other' of a project with namespace 'Stuff', the resource will be embedded as Stuff.Other.strings.resource. So, parsing an associated .cs file is only sometimes appropriate (for the cases where the .resx file was automatically created behind the scenes). -Original Message- From: Matthew Mastracci [mailto:[EMAIL PROTECTED] Sent: Wednesday, September 17, 2003 9:50 AM To: Vincent Labatut Cc: [EMAIL PROTECTED] Subject: Re: [nant-dev] solution task fix Unfortunately, VS.NET uses the name of the class as the generated resources filename. Changing this would break any designer-created code. BTW, as a friendly suggestion. :) I can't read your mail from Sept. 9 because it appears to be encoded in something other than text/plain. I get nant-users in digest form, which means that I ignore any HTML/RTF mail that gets sent to it (not fun reading through HTML tags, as you can probably imagine). For archival purposes, it is highly recommended to send mail to the mailing list in text/plain format only. If this is not possible, ensure that your mail client is at least sending this as backup to text/html. Matt. Vincent Labatut wrote: hi, i think there's a problem in the way compiled resource filenames are computed in the solution task. I had a collision which was failing my build (cf my mail to the nant users list solution task - problem with resources on the 9th sept). The filenames are computed by scanning the corresponding source files (cs or vb) to each resx file, looking for a namespace and class with a regexp, maybe to find out a unique name (namespace + classname should be unique). The problem is that the regexp used aren't robust enough. There is also in the code an alternative way of doing so : using the path of the file as a unique name, and this seems to work well. I can't figure out why this first manner is put forward in
RE: [nant-dev] servicecontroller task
I think a very clear name would be computername. I don't think anyone would misinterpret that attribute name. If you do a /? On netsvc.exe, the usage help says NETSVC servicename \\computername /command Looking forward to using this new task. Jason -Original Message- From: Gert Driesen [mailto:[EMAIL PROTECTED] Sent: Tuesday, September 09, 2003 3:02 AM To: Morris, Jason; Nant-Developers (E-Mail) Subject: Re: [nant-dev] servicecontroller task Hi Morris, It should work with remote services, there's a machine (should I rename it to server or computer ?) attribute that allows you to specifiy the server name. Gert - Original Message - From: Morris, Jason [EMAIL PROTECTED] To: Nant-Developers (E-Mail) [EMAIL PROTECTED] Sent: Monday, September 08, 2003 7:01 PM Subject: RE: [nant-dev] servicecontroller task Any chance to make this task work for remote services? In my build/deploy setup, I need to stop/start/restart services on our production box, from our build box. I currently use the exec task with netsvc.exe so that I can specify a remote machine. I think I got netsvc.exe out of the Win2K resource kit, but memory is a little fuzzy... It would be great if this task could do that by specifying an attribute like computer= or server= or whatever name appeals to people. Jason -Original Message- From: Gert Driesen [mailto:[EMAIL PROTECTED] Sent: Sunday, September 07, 2003 11:45 PM To: Erv Walter; Nant-Developers (E-Mail) Subject: Re: [nant-dev] servicecontroller task After doing some more tests, I've come to the conclusion that I'll need to add the waittimeout attribute again, as I do need to make sure a service has reached the right status after I've performed an action on it ... so I should allow the user to configure how long the task can wait for a service to reach a certain status ... ... otherwise performing two actions in a row (in case of a restart, this means stop and start) will cause problems ... Gert - Original Message - From: Erv Walter [EMAIL PROTECTED] To: Gert Driesen [EMAIL PROTECTED]; Nant-Developers (E-Mail) [EMAIL PROTECTED] Sent: Sunday, September 07, 2003 5:36 PM Subject: RE: [nant-dev] servicecontroller task Great Idea. I'd love to get a few more exec tasks out of my builds. My only suggestion would be to include a Restart action (which would be equivalent to Stop followed by Start with the appropriate waitforstatuses). -Original Message- From: Gert Driesen [mailto:[EMAIL PROTECTED] Sent: Sunday, September 07, 2003 3:50 AM To: Nant-Developers (E-Mail) Subject: [nant-dev] servicecontroller task Hi, I'm thinking about adding a task for stopping/starting/pausing/continueing a service, and at the same time waiting for it to reach a certain status. It would look something like this : servicecontroller service=iisadmin action=Start | Stop | Continue | Pause waitforstatus=Paused | Running | waittimeout=... / As the name suggests, I would use the servicecontroller task to implement this task, which should make it pretty straightforward. Ofcourse, this task will be win32-specific, and as such would be part of the NAnt.Win32 namespace and assembly. Any remarks, suggestions, ... ? Gert --- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers --- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers --- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers --- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers --- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers --- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf ___ nant-developers mailing list [EMAIL
Re: [nant-dev] New task: cat
Sascha, I guess I have this question... Should both these functionalities be combined in a single task? Why not just support two sep. tasks. concat ... .../ / filter .../ That leaves the choice to the user about what they want to do. They can mix and match anyway they want. - Original Message - From: Sascha Andres [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Wednesday, September 17, 2003 1:15 PM Subject: Re: [nant-dev] New task: cat Hi, * Sascha Andres wrote on 17.09.2003 (21:56): Perhaps it's time to move it to NAnt.Core? I'll have a look, and see what needs to be done to implement the filter I mentioned earlier. After that, I'll post a patch for that one. I had a look at the concat task. The concat task uses a FileStrem to read and write. So it can handle binary files as well as text files. It has one caveat to transfer this way: It makes it hard to work with a filter using regular expressions. I see the following possibilities: * Add a filter attribute. If set use a StreamReader / StreamWriter combination. I don't really like this one, as this sounds like bad design. * Drop the filter idea. I think a filtering task would be nice to have.- At least when it's done with the power of regular expressions. * Use concat as a binary save cat, rename my cat task to something more regex specific, but leave the cat functionality. Add fileet support, make filter not optional. What do you think? --- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers
Re: [nant-dev] New task: cat
I agree. Filter should probably be a seperate task. It might be worth looking at Ants filterset concept. http://ant.apache.org/manual/CoreTypes/filterset.html Ian Sascha, I guess I have this question... Should both these functionalities be combined in a single task? Why not just support two sep. tasks. concat ... .../ / filter .../ That leaves the choice to the user about what they want to do. They can mix and match anyway they want. - Original Message - From: Sascha Andres [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Wednesday, September 17, 2003 1:15 PM Subject: Re: [nant-dev] New task: cat Hi, * Sascha Andres wrote on 17.09.2003 (21:56): Perhaps it's time to move it to NAnt.Core? I'll have a look, and see what needs to be done to implement the filter I mentioned earlier. After that, I'll post a patch for that one. I had a look at the concat task. The concat task uses a FileStrem to read and write. So it can handle binary files as well as text files. It has one caveat to transfer this way: It makes it hard to work with a filter using regular expressions. I see the following possibilities: * Add a filter attribute. If set use a StreamReader / StreamWriter combination. I don't really like this one, as this sounds like bad design. * Drop the filter idea. I think a filtering task would be nice to have.- At least when it's done with the power of regular expressions. * Use concat as a binary save cat, rename my cat task to something more regex specific, but leave the cat functionality. Add fileet support, make filter not optional. What do you think? --- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers --- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf ___ nant-developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-developers