Re: [nant-dev] FTP task

2005-01-04 Thread Sascha Andres
Hi,
* Sascha Andres wrote on 04.01.2005 (15:49):
 I just list the changes as name has sent them to me:
 ^^
 Sorry, I wrote the text first,
 and forgot the name. I inserted
 placeholders, but I forgot that
 one to replace...

Sascha
-- 
sa at programmers-world dot com http://www.livingit.de
Internet sites:
  http://www.not2long.net - Make long links short
  Boomarks online: http://www.mobile-bookmarks.info


---
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almosthttp://www.thinkgeek.com/sfshirt
___
nant-developers mailing list
nant-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nant-developers


[nant-dev] FTP task

2005-01-04 Thread Sascha Andres
Hi,

David Alpert has enhanced my ftp-tasks with many new
features. You can have a look at his new page[1]. AFAIR all
the changes proposed are included. Personally I think the
task could be a candidate for 
0.9 Release.

I just list the changes as name has sent them to me:

--- quoting David Alpert
 a.. up-ascii,up-binary, down-ascii, down-binary are
deprecated but still supported (and should work much the
same as before).

 b.. script has been simplified to remove the CDATA
requirement; it's now processed as a simple text node.

 c.. put and get have been introduced as fileset
derivatives - check out the documentation for
property/attribute descriptions and examples of use.

 d.. credentials element has been replaced with a
connection attribute.

Other features include:

 a.. get include statements are scanned against the remote
directory tree with results sent to verbose logging output.

 b.. multiple get and put statements are supported, any
number, and are processed in the order they appear.

 c.. adding exec=false' to the ftp tag blocks execution
of dir creation and file transfers.  connection is
established so that get includes are still matched against
the remote file tree.

--- end quoting

I think he has done heavy work on it. The result is far more
than I would've seen in a ftp task (execution blocking). I
would like to thank David for his work since I did not had
the time to do the changes I wanted to do.

Sascha

[1] http://www.spinthemoose.com/ftptask/

-- 
sa at programmers-world dot com http://www.livingit.de
Internet sites:
  http://www.not2long.net - Make long links short
  Boomarks online: http://www.mobile-bookmarks.info


---
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almosthttp://www.thinkgeek.com/sfshirt
___
nant-developers mailing list
nant-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nant-developers


Re: [nant-dev] trycatch task ?... discussion of task communication

2004-07-13 Thread Sascha Andres
Hi,
* Troy Laurin wrote on 13.07.2004 (09:24):
 Sascha Andres wrote:

Added above line. Deleted too much, and don't wanted to use
undo after I wrote all of the text ;)

  can be accessed from all tasks. The last function adds a protected 
  object to the store only readable from a task of the same type. The 
  protected Load operations would work analog to this.
 
 The idea of protected data items sounds interesting, but could it be
 implemented without extending Project, just through static properties in
 the task class?  What do public data items offer that can't be done with
 properties?  Would it be better (or is it equivalent?) to implement
 references, similar to Ant?

Just short, cause I'm on my way to work: I think there
should be a difference between public data and properties.
Public data would be part of the communication, the other is
generally part of the build file, used to control how the
build is done. The risk overwriting a user property and what
may result (broken build, hard build file debugging) led me
to propose public data seperated from properties. 
 
  A few words to persistence. Imagine two more overloads, that indicate 
  using a boolean variable if an object should be persistent. When a 
  data store property on the project is set, a datastore with all 
  variables marked persistent will be saved to the given file (and 
  loaded at the beginning of the next run).
 
 Just a comment on overloads:  They're generally evil.  If two methods do
 different things, they should have different names.  Compile errors are
 preferable to strange program behaviour if you call a method
 incorrectly.

I agreee that there is potential for wrong calls. I don't
have a problem splitting it into Save, SaveProtected,
SavePersistent and the respective Load methods. Perhaps
something like

Protected.Save
Public.Save
Persistent.Save
 
 Whether storing xml or storing objects, I'm a little wary about the idea
 of adding magic communication to a build system.  It feels too much
 like accessing the internal API of a system.  If one task relies on the
 output of another task to be in a particular format, then there's
 usually a good chance that the task will break if the other task changes
 its output format.

You're right on this point. But using a tasks output is a
risk. And changing a tasks output should occur only in beta
and / or a major release change. A communication system
would be most helpful when there is a large number of user
defined tasks - where you could use public and/or protected
information.

The magic may be useful for debugging issues (a crash in the
csc task that occurs only from time to time).

-sa

-- 
sa at programmers-world dot com http://www.livingit.de
Internet sites:
  http://www.not2long.net - Make long links short
  Boomarks online: http://www.mobile-bookmarks.info


---
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] NAnt Namespaces

2004-07-13 Thread Sascha Andres
Hi,
* Troy Laurin wrote on 13.07.2004 (10:17):
 Are you suggesting using the namespace for the class implementing the
 task, when referencing the task in the build file?  This seems like it
 could be excessively verbose, to me.

Well, I always use a short namespace. So I actually don't
thought that it may get longer. What about using a task
attribute [TaskNamespace(Sascha)] which forces me to use
Sascha:TaskName.../Sascha:TaskName?

 [Conflicting task scenary]

Yes, you're right. I just haven't thought of this yet.
 
 I appreciate the need for convenience, but since namespaces are a tool
 for a correctness problem, it's not valid to compromise correctness for
 convenience.

May the proposed namespace attribute be a compronmise
between convenience and too long namespaces?

-sa

-- 
sa at programmers-world dot com http://www.livingit.de
Internet sites:
  http://www.not2long.net - Make long links short
  Boomarks online: http://www.mobile-bookmarks.info


---
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] NAnt Namespaces

2004-07-13 Thread Sascha Andres
Hi,
* Troy Laurin wrote on 13.07.2004 (15:57):
 Defining namespace in the class defining the task is an interesting idea
 and a possible solution... it's worth comparing this with the other
 viable solutions to see what's the best solution, both in terms of
 functionality as well as correctness and convenience.

On my way to work, I thought on my proposal. I wouldn't use
a seperate attribute but changing the task attribute
instead. The pro is, that we can rely that there *is* a
namespace associated with each task. The con is, that it
would require a rework on all tasks.

A second con came into my mind, but it left as fast as it
came: Giving all nant tasks a namespace would require a
nant:csc.../nant:csc instead of csc.../csc. To avoid
this, give the project a property defaultnamespace which is
set to nant per default, but may be overriden by the user.
 
 Rather than continuing this discussion (in particular, compare 
 contrast) on this list, is it worth creating a page for the
 requirements/semantics of namespace support to the nant wiki pages?

I don't have a problem discussing it here or on the wiki.
Just tell me where discussion is running ;)

-sa

-- 
sa at programmers-world dot com http://www.livingit.de
Internet sites:
  http://www.not2long.net - Make long links short
  Boomarks online: http://www.mobile-bookmarks.info


---
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] [New task] Stopwatch

2004-07-13 Thread Sascha Andres
Hi,

here is a new task. Generally it's a task to measure the
time between two calls of it.

-sa

-- 
sa at programmers-world dot com http://www.livingit.de
Internet sites:
  http://www.not2long.net - Make long links short
  Boomarks online: http://www.mobile-bookmarks.info
using System;
using NAnt.Core;
using NAnt.Core.Util;
using NAnt.Core.Attributes;
namespace TimeTasks {
  /// summaryTake the time/summary
  /// remarks
  ///   para
  /// Time is measured from first call to recurring calls.
  ///   /para
  ///   para
  /// Name attribute is used to identify which stopwatch to use.
  ///   /para
  ///   example
  /// paraMeasure time to sleep with the see cref=Tasks.SleepTask/ 
task/para
  ///   /example
  /// /remarks
  [TaskName(stopwatch)]
  public class Stopwatch : Task {
private const long TICKTIME = 1000;

private string _stopWatchName = ;

/// summarythe timer /summary
[TaskAttribute(name, Required=true)]
[StringValidator(AllowEmpty=false)]
public string StopWatchName {
  get { return _stopWatchName; }
  set { _stopWatchName = StringUtils.ConvertEmptyToNull(value); }
} //  Name

#region constructor
public Stopwatch() {
  return;
} // Time()
#endregion


/// summarySave time or show ticks/summary
protected override void ExecuteTask() {

  long actualTicks = DateTime.Now.Ticks;

  if (this.Project.Properties.Contains(_stopWatchName + SW)) {
long ticksRun = actualTicks - 
long.Parse(this.Project.Properties[_stopWatchName + SW]);

long nanoSeconds = (ticksRun - ((ticksRun / TICKTIME) * TICKTIME)) * 100;
long microSeconds = nanoSeconds / 1000;
nanoSeconds -= (microSeconds * 1000);
long miliSeconds = microSeconds / 1000;
microSeconds -= (miliSeconds * 1000);
ticksRun /= TICKTIME;
long minutes = ticksRun / 60;
long seconds = ticksRun - (minutes * 60);

// this.Log(Level.Info, {0}Timer run for {1}m {2}s {3}ms {4}mis {5}ns, 
this.LogPrefix, minutes, seconds, miliSeconds, microSeconds, nanoSeconds);
this.Log(Level.Info, {0}Timer run for {1}m {2}s {3}ms, this.LogPrefix, 
minutes, seconds, miliSeconds);
  } else {
this.Project.Properties[_stopWatchName + SW] =  actualTicks.ToString();
  } // if
  return;
} // ExecuteTask()

  } // Stopwatch
} // TimeTasks


Re: [nant-dev] trycatch task ?

2004-07-09 Thread Sascha Andres
Hi,
* Martin Aliger wrote on 09.07.2004 (08:40):
 I think both are cases of inter-task communication. IMO current nant is
 totally missing such communication. errorproperty proposal is very limited
 implementation of such communication. I'd rather prefer making something
 more robust enabling more advanced scenarios like examining what failed or
 what was skipped (mainly in complex tasks like solution) etc.

Well, there is a workaround: I wrote a stopwatch task (I
wanted to know time some tasks are taking). The user must
give a name. Based on this name I create a property that I
used to save the current timestamp. If not empty, I compare
the current timestamp to the saved one (hopefully in the
property).

The bad in this approach is (IMHO), that the property
becomes 'visible' to the outer world in the script. This is
not always intended.

 Some time ago I propose XML-like based communication - maybe its time comes?
 How do you see it now when there was enough time to consider it?

I don't like the we-do-anything-in-xml approach. XML is a
nice thing, but it certainly adds some overhead to
communications. I would prefer an invisible property system
based on keys. This would allow to store informations in one
task and to read it in another one, without dealing with
properties set by the user.

I could also imagine a way of making them optionally
persistent. This would be a way to provide numerous version
tasks a clear way to save / load information from one run to
the next without 'proprietary' file formats.

 trycatch task is also good addition in mine eyes. I personally dont see
 anything bad in implementing both - trycatch and some kinf of communication
 in the same time. Different scenarios should use different approaches

A try catch task can help to make things more clear. I like
the idea that something like that arises.

-sa

-- 
sa at programmers-world dot com http://www.livingit.de
Internet sites:
  http://www.not2long.net - Make long links short
  Boomarks online: http://www.mobile-bookmarks.info


---
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] trycatch task ?... discussion of task communication

2004-07-09 Thread Sascha Andres
Hi,
* Martin Aliger wrote on 09.07.2004 (13:43):
 to pass information from one task to other. Since speed is not main interest
 in automated builds (sorry Matt - I still appreciate your optimization
 work!) XML should be straightforward solution. But I never think we will
 serialize XML on every task. XML hierarchy is pretty efficiently stored in
 memory like object tree and that should be enough (what is exactly what you
 propose, isn't it?)

Task communication is no more than sharing information in
the mean of a variable all tasks can read (or a memory
location with XML or what-ever in it).

When I think a bit more of sharing information throughout
tasks I come to these points:

In a programming language, data can be:

* private
* public
* protected
* static

and with a bit more work

* persistent

IMO there is no situation where I can think of a need for
'declaring' something static in NAnt if there would be task
communication[1]. Correct me if you can imagine.

IMHO private data is always task-instance specific and
doesn't need to be tracked by a NAnt wide communication
system.

Public data can be shared with other tasks without
restrictions.

Protected data can only be accessed by tasks of the same
type (like my stopwatch task).

I'll focus on persistent data later.

How about introducing a 'DataStore' that is working
comparable to the properties:

this.Project.DataStore.Save(object);
this.Project.DataStore.Save(name, object);
this.Project.DataStore.Save(name, object, type);

First function would be the magic variable. If set in a
task, this value remains. If not set, the output of the task
could be written to this special variable. So a load
operation always refers to the task running before.

Second function would lay an object in the data store with a
key so it can be accessed from all tasks. The last function
adds a protected object to the store only readable from a
task of the same type. The protected 

Load operations would work analog to this.

A few words to persistence. Imagine two more overloads, that
indicate using a boolean variable if an object should be
persistent. When a data store property on the project is
set, a datastore with all variables marked persistent will
be saved to the given file (and loaded at the beginning of
the next run).

Personally I would restrict the use of persistent data to
objects that are serializable for the sake of easy save and
restore.

In a first version I would try a datastore based on
hashtables. But that's a step further.

And after a second thought there are some things certainly
coming up if task communication is possible:

* How can I list all key / value combinations in the
  datastore?

* Can there be persitence over the bounds of a buildfile?

* Can I persist data only accessible to one specific
  task-instance? 

The persistence feature is certainly very interesting, but
would definitly lead to much more possible complexity in
both the build files and the tasks. This should be taken
into account.

Nevertheless I would call me a supporter for the idea of
communication as it would have been great if I could have
used this in my own version task and probably the stopwatch
task.

And to close the run with XML: If a task lays XML to the
store or not would be up to the tasks author. In some cases
this is a nice, straightforward way to organize information,
in others not. Who cares if you can use the store for all
kind of objects?

-sa

[1] This is IMHO true as long as NAnt doesn't use a high 
level language to write buildfiles ;)

-- 
sa at programmers-world dot com http://www.livingit.de
Internet sites:
  http://www.not2long.net - Make long links short
  Boomarks online: http://www.mobile-bookmarks.info


---
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] FTP Task - new version

2004-06-20 Thread Sascha Andres
Hi,

I did a first hack on the scripting support. The task now
excutes in the following order:
 
1 upload binary
2 upload ascii
3 download binary
4 download ascii
5 script

A short example:

ftp server=my-ftp.de remotepath=/pub/
up-binary
include name=test.zip /
/up-binary
script![CDATA[
pwd
cwd /pub
pwd
]]/script
/ftp

I put it up on
http://www.livingit.de/downloads/ftp-task.zip.

Definitly untested are any calls for put or get in the
scripting section. Use the filesets to up-/download.

-sa

-- 
sa at programmers-world dot com http://www.livingit.de
Internet sites:
  http://www.not2long.net - Make long links short
  Boomarks online: http://www.mobile-bookmarks.info


---
This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference
Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer
Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA
REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND
___
nant-developers mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/nant-developers


[nant-dev] FTP Task - new version

2004-06-19 Thread Sascha Andres
Hi,

I reworked my ftp-up and ftp-down task. The zip file
containing the code for both tasks is offline. Instead there
is a new file online at
http://www.livingit.de/downloads/ftp-task.zip.

It provides one task ftp capable of up-/downloading
ascii/binary files to an anonymous/authenticated ftp server.

In short there are those properties in ftp:

server = nema or ip of the ftp server
remotepath = directory to upload to or to download from
port = give a different port than 21

You can authenticate with a credentials subelement. It
evaluates the username and password properties. username
defaults to anonymous, password to [EMAIL PROTECTED]

You have 4 filesets:

up-binary, up-ascii, down-binary and down-ascii

If downloading use the basedir property to set the local
directory. This path will be stripped for the files to
download. Instead the remotepath property is used.

A short exapmple:

ftp server=my-ftp.de remotepath=www/
credentials username=user password=pass /
up-binary
include name=test.zip /
/up-binary
up-ascii
include name=ascii.txt /
/up-ascii
down-binary
include name=test2.zip /
/down-binary
down-ascii basedir=C:\
include name=ascii2.txt /
/down-ascii
/ftp

Open for completion: Read a subelement script that
contains simple ftp commands and execute them.

The files are processed in the following order:

1 upload binary
2 upload ascii
3 download binary
4 download ascii

After that a future script element will be processed.

Open for any suggestions,
Sascha

-- 
sa at programmers-world dot com http://www.livingit.de
Internet sites:
  http://www.not2long.net - Make long links short
  Boomarks online: http://www.mobile-bookmarks.info


---
This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference
Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer
Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA
REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND
___
nant-developers mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/nant-developers


Re: [nant-dev] FileSet attribute

2004-06-08 Thread Sascha Andres
Hi,
* Gert Driesen wrote on 07.06.2004 (12:37):
 Are you using a very recent version of NAnt, as the include element was
 only recently added.  You might want to try the includes element :

Is 25.05.2005 recent enough? But I tried (and got deprecated
messages). Nothing changed. I've overseen that the ftpup
task runs. And I do not see a difference in handling the
fileset. I uploaded the actual code on
http://www.livingit.de/downloads/nant-tasks.zip if you want
to take a look in it.

By the way, I would take responsibility for the ftp task in
0.9 if nobody has already started or any other reasons.

My ideas for further changes to the task:

* Integrate the both existing tasks (ftpup and ftpdown) to
one task. Currently I'm thinking of something like this:

ftp server=server.de
credentials user=user password=pass /
upload
binaries
include name=*.zip /
/binaries
ascii
include name=*.txt /
/ascii
  /upload
download
!-- binary and ascii filesets --
/download
/ftp

* create a script task ftpscript that enables to execute ftp
command directly:

ftpscript server=server.de
credentials user=user password=pass /
code![CDATA[
DELE file.zip
BINARY
PUT newfile.zip
  ]]/code
/ftpscript

Just a short question: Can a complete task be marked as
obsolete (recognized by NAnt)?

-sa

-- 
sa at programmers-world dot com http://www.livingit.de
Internet sites:
  http://www.not2long.net - Make long links short
  Boomarks online: http://www.mobile-bookmarks.info


---
This SF.Net email is sponsored by: GNOME Foundation
Hackers Unite!  GUADEC: The world's #1 Open Source Desktop Event.
GNOME Users and Developers European Conference, 28-30th June in Norway
http://2004/guadec.org
___
nant-developers mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/nant-developers


Re: [nant-dev] FileSet attribute

2004-06-06 Thread Sascha Andres
Hi,

currently my code looks like this:

// the binaries property

[BuildElement(binaries)]
public FileSet binaries {
get {
return _binaryFileset;
} set {
_binaryFileset = value;
}
} // BinaryFileset

The usage:

if (null != _binaryFileset) {
foreach(string binaryFile in _binaryFileset.FileNames) {
// ftp transfer
} // foreach
} // if

Well, _binaryFileset.Count equals always 0, my buildfile
looks like this:

ftpdown server=server.de verbose=true
credentials username=uiser password=pass /
binaries basedir=/
include name=test2.zip /
/binaries
/ftpdown

Besides this, the transfer seems to run smoothly. I decided
to crete a ftpscript task that works like the script task, a
code section executed line by line (well, that differs from
the script task ;)).

-sa

-- 
sa at programmers-world dot com http://www.livingit.de
Internet sites:
  http://www.not2long.net - Make long links short
  Boomarks online: http://www.mobile-bookmarks.info


---
This SF.Net email is sponsored by the new InstallShield X.
From Windows to Linux, servers to mobile, InstallShield X is the one
installation-authoring solution that does it all. Learn more and
evaluate today! http://www.installshield.com/Dev2Dev/0504
___
nant-developers mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/nant-developers


Re: [nant-dev] 0.85 release (fwd)

2004-06-05 Thread Sascha Andres
Hi,
* James Geurts wrote on 05.06.2004 (11:54):
 the archives shows that this hasn't been brought up for a
 little while. I'm thinking that we should push a 0.85
 release out the door. It has been over 5 months since
 the last release, and I generally think that a release
 would be a good thing. I'm not quite sure what needs to be
 done, but I would be

Release later, but stable. That is my opinion when it comes
to version runs.

Every one or two weeks I look if there's a new nightly
build. If so I start using it (in production environment).

Don't misunderstand me. I know that from a production point
of view, nightly builds seem to be a nightmare. But I never
had problems with the nightly builds that broke my buildfile
for an upcoming release. Using nightly builds of nant is
like using xp in software development. And that is what
helps the nant developers to find errors early. Perhaps you 
want to try a nightly build?

Well, and when it's time to release a 0.85? I think it's up
to Gert, Scott and others to decide. When looking on the
release plan, I see there 4 tasks in progress (all about 70%
ready. It might be a good idea to release 0.85 when those
features are done.

Just my 2 cents,
-sa

-- 
sa at programmers-world dot com http://www.livingit.de
Internet sites:
  http://www.not2long.net - Make long links short
  Boomarks online: http://www.mobile-bookmarks.info


---
This SF.Net email is sponsored by the new InstallShield X.
From Windows to Linux, servers to mobile, InstallShield X is the one
installation-authoring solution that does it all. Learn more and
evaluate today! http://www.installshield.com/Dev2Dev/0504
___
nant-developers mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/nant-developers


Re: [nant-dev] ftp task

2004-06-04 Thread Sascha Andres
Hi,
* Sascha Andres wrote on 03.06.2004 (19:24):
 I splitted the ftp into ftpdown and ftpup, that made the
 start easier. And IMHO two tasks are easier than one task
 with a switch.

Now I make a proposal to enhance the tasks and to make them
one. My proposal would be to use two filesets (one for up-,
one for downloading files).

 Currently I'm not sure how to implement a complete ftp
 script, that is doing more than one ftp command (create dir,
 delete file, etc) without reconnecting everytime. I could
 imagine something like a fileset for implementing custom ftp
 commands, but I'm not yet sure about this. I tend to give
 that task a name of it's own - say ftpscript. In my personal

Scripting is something I would leave in a seperate task.

-sa

-- 
sa at programmers-world dot com http://www.livingit.de
Internet sites:
  http://www.not2long.net - Make long links short
  Boomarks online: http://www.mobile-bookmarks.info


---
This SF.Net email is sponsored by the new InstallShield X.
From Windows to Linux, servers to mobile, InstallShield X is the one
installation-authoring solution that does it all. Learn more and
evaluate today! http://www.installshield.com/Dev2Dev/0504
___
nant-developers mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/nant-developers


[nant-dev] FileSet attribute

2004-06-04 Thread Sascha Andres
Hi,

for my ftp tasks I try to introduce two fileset attributes,
but had no real success until now. Here's how I tried:

// variable:
private FileSet _binaryFileset = new FileSet();

// property:
[TaskAttribute(binaries)]
public FileSet binaries {
  get {
return _binaryFileset;
  } set {
  _binaryFileset = value;
}
} // BinaryFileset

My test file looks like this:

ftpup server=livingit.de remotepath=/livingit/www/
binaries
include name=test.zip /
/binaries
/ftpup

If I set binaries to required, nant says that there is no
binaries attribute in the ftpup task.

I'm stuck in the code, I mean I see no difference in what is
done in the touch task. Any hints appreciated,

Sascha

-- 
sa at programmers-world dot com http://www.livingit.de
Internet sites:
  http://www.not2long.net - Make long links short
  Boomarks online: http://www.mobile-bookmarks.info


---
This SF.Net email is sponsored by the new InstallShield X.
From Windows to Linux, servers to mobile, InstallShield X is the one
installation-authoring solution that does it all. Learn more and
evaluate today! http://www.installshield.com/Dev2Dev/0504
___
nant-developers mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/nant-developers


Re: [nant-dev] New commandline option for extension assemblies

2004-06-04 Thread Sascha Andres
Hi,
* Gert Driesen wrote on 04.06.2004 (15:43):
[intend] 
For now, I named the new option /extension (short name /ext) :
 
  -ext[ension]:textload NAnt extensions from the specified
assembly
 
 Is that ok, or does anybody have a better proposal ?

That's perfectly OK. Not a subsitue, but more a complement:
How about adding an extension task to nant that is executed
as soon as the build file is loaded and is executed always,
independent of the called target.

-sa

-- 
sa at programmers-world dot com http://www.livingit.de
Internet sites:
  http://www.not2long.net - Make long links short
  Boomarks online: http://www.mobile-bookmarks.info


---
This SF.Net email is sponsored by the new InstallShield X.
From Windows to Linux, servers to mobile, InstallShield X is the one
installation-authoring solution that does it all. Learn more and
evaluate today! http://www.installshield.com/Dev2Dev/0504
___
nant-developers mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/nant-developers


Re: [nant-dev] resgen - no default namespace used

2004-06-02 Thread Sascha Andres
Hi,
* Gert Driesen wrote on 02.06.2004 (15:59):
 Are you using the resgen task standalone, or as you using a compiler task
 (eg csc) which takes care of the compilation of resources ?

I use the csc, taking care of the resources. I'll try later
to use resgen, later on including the generated resource
file.

-sa

-- 
sa at programmers-world dot com http://www.livingit.de
Internet sites:
  http://www.not2long.net - Make long links short
  Boomarks online: http://www.mobile-bookmarks.info


---
This SF.Net email is sponsored by the new InstallShield X.
From Windows to Linux, servers to mobile, InstallShield X is the one
installation-authoring solution that does it all. Learn more and
evaluate today! http://www.installshield.com/Dev2Dev/0504
___
nant-developers mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/nant-developers


Re: [nant-dev] Licensing

2003-10-09 Thread Sascha Andres
Hi,
* Am 09.10.2003 (18:18) schrieb Gert Driesen:
  There sould be no reason we can't get the licencing change in for the
  next release - assuming we can deal with any copyright holder issues.
  So now we need to make the official dicision as to which licence. I'm
  leaning towards BSD - what are everyone elses thoughts ?
 
 I would also prefer BSD, unless there's a slight chance that Apache is going
 to accept .NET projects :-)

Just my 2 cents on licensing change or stay or whatever:

* I think any license change should remember it's
  contributers thoughts. One main thing is, that we all
  contributed here because we think it' a great done job and
  it helps us in out current job. If we help us with writing
  tasks and posting it here, we help others. But one thing
  is no one likes to see his work be used by a third person
  to earn a lot of money without seeing the project
  *mentioned*.

* On the other a build tool will find it's way to corporate
  use. We had a discussion earlier. Corporate use brings up
  long time developed helpers, which won't be under an OS
  License. Support for NAnt will be probably included, and
  this would lead to licensing issues (breaking included).
  Who'll fight in case of licensing issues? One sole
  developer? The lead developers as representatives? Who
  pays? In dept, no one. Who wants to have companies having
  this problems? No one. We're all happy when NAnt can and
  will be used in a corporate environment. If a license
  change helps to improve relationship here, I'm strongly
  pro change.

As said. Just my cents. 'til tomorrow.

-sa

-- 
sa at programmers-world dot com
http://www.livingit.de
Boomarks online: http://www.mobile-bookmarks.info
 Soon available in english

Mail geschrieben: Donnerstag, den 09. Oktober 2003 um 22:41


---
This SF.net email is sponsored by: SF.net Giveback Program.
SourceForge.net hosts over 70,000 Open Source Projects.
See the people who have HELPED US provide better services:
Click here: http://sourceforge.net/supporters.php
___
nant-developers mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/nant-developers


[nant-dev] Error while testing

2003-10-04 Thread Sascha Andres
Hi,

while building on a friends PC, we got an error NAnt could
not delete a directory. We looked, but it *was* deleted
successfully. The user has admin rights. The directory is
located under the temp dir.

I've attached the log.

-sa

-- 
sa at programmers-world dot com
http://www.livingit.de
Bookmarks online: http://www.mobile-bookmarks.info
  Soon available in english

A new supply of round tuits has arrived and are available from Mary.
Anyone who has been putting off work until they got a round tuit now
has no excuse for further procrastination.
NAnt version 0.8.3 Copyright (C) 2001-2003 Gerry Shaw
http://nant.sourceforge.net

Buildfile: file:///C:/Documents and 
Settings/molitor_t/Desktop/nant-0.8.3.50105/NAnt.build
 [echo] Using 'net-1.0' Framework

init:


debug:


build:

 [echo] Build Directory is C:\Documents and 
Settings\molitor_t\Desktop\nant-0.8.3.50105/build/nant-0.8.3.50105-debug
 [nant] src/NAnt.Core/NAnt.Core.build build

Buildfile: file:///C:/Documents and 
Settings/molitor_t/Desktop/nant-0.8.3.50105/src/NAnt.Core/NAnt.Core.build

build:

Total time: 0 seconds.

BUILD SUCCEEDED

 [nant] src/NAnt.Console/NAnt.Console.build build

Buildfile: file:///C:/Documents and 
Settings/molitor_t/Desktop/nant-0.8.3.50105/src/NAnt.Console/NAnt.Console.build

build:

Total time: 0 seconds.

BUILD SUCCEEDED

 [nant] src/NAnt.DotNet/NAnt.DotNet.build build

Buildfile: file:///C:/Documents and 
Settings/molitor_t/Desktop/nant-0.8.3.50105/src/NAnt.DotNet/NAnt.DotNet.build

build:

Total time: 0 seconds.

BUILD SUCCEEDED

 [nant] src/NAnt.Zip/NAnt.Zip.build build

Buildfile: file:///C:/Documents and 
Settings/molitor_t/Desktop/nant-0.8.3.50105/src/NAnt.Zip/NAnt.Zip.build

build:

Total time: 0 seconds.

BUILD SUCCEEDED

 [nant] src/NAnt.NUnit/NAnt.NUnit.build build

Buildfile: file:///C:/Documents and 
Settings/molitor_t/Desktop/nant-0.8.3.50105/src/NAnt.NUnit/NAnt.NUnit.build

build:

Total time: 0 seconds.

BUILD SUCCEEDED

 [nant] src/NAnt.SourceControl/NAnt.SourceControl.build build

Buildfile: file:///C:/Documents and 
Settings/molitor_t/Desktop/nant-0.8.3.50105/src/NAnt.SourceControl/NAnt.SourceControl.build

build:

Total time: 0 seconds.

BUILD SUCCEEDED

 [nant] src/NAnt.Win32/NAnt.Win32.build build

Buildfile: file:///C:/Documents and 
Settings/molitor_t/Desktop/nant-0.8.3.50105/src/NAnt.Win32/NAnt.Win32.build

build:

Total time: 0 seconds.

BUILD SUCCEEDED

 [nant] src/NAnt.VSNet/NAnt.VSNet.build build

Buildfile: file:///C:/Documents and 
Settings/molitor_t/Desktop/nant-0.8.3.50105/src/NAnt.VSNet/NAnt.VSNet.build

build:

Total time: 0 seconds.

BUILD SUCCEEDED

 [nant] src/NAnt.VisualCpp/NAnt.VisualCpp.build build

Buildfile: file:///C:/Documents and 
Settings/molitor_t/Desktop/nant-0.8.3.50105/src/NAnt.VisualCpp/NAnt.VisualCpp.build

build:

Total time: 0 seconds.

BUILD SUCCEEDED

 [nant] tests/NAnt.Core/NAnt.Core.build build

Buildfile: file:///C:/Documents and 
Settings/molitor_t/Desktop/nant-0.8.3.50105/tests/NAnt.Core/NAnt.Core.build

build:

Total time: 0 seconds.

BUILD SUCCEEDED

 [nant] tests/NAnt.Console/NAnt.Console.build build

Buildfile: file:///C:/Documents and 
Settings/molitor_t/Desktop/nant-0.8.3.50105/tests/NAnt.Console/NAnt.Console.build

build:

Total time: 0 seconds.

BUILD SUCCEEDED

 [nant] tests/NAnt.DotNet/NAnt.DotNet.build build

Buildfile: file:///C:/Documents and 
Settings/molitor_t/Desktop/nant-0.8.3.50105/tests/NAnt.DotNet/NAnt.DotNet.build

build:

Total time: 0 seconds.

BUILD SUCCEEDED

 [nant] tests/NAnt.Zip/NAnt.Zip.build build

Buildfile: file:///C:/Documents and 
Settings/molitor_t/Desktop/nant-0.8.3.50105/tests/NAnt.Zip/NAnt.Zip.build

build:

Total time: 0 seconds.


Re: [nant-dev] New task: cat

2003-09-17 Thread Sascha Andres
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


Re: [nant-dev] License task fix - patch included

2003-09-16 Thread Sascha Andres
Hi,

here's a first version. It createsthe license file as it
should - at least it runs OK here. I attached the new
LicenseTask.cs

-sa

-- 
sa at programmers-world dot com
http://www.livingit.de
Bookmarks online: http://www.mobile-bookmarks.info
  Soon available in english

The New York Times is read by the people who run the country.  The
Washington Post is read by the people who think they run the country.
The National Enquirer is read by the people who think Elvis is alive
and running the country ...
-- Robert J Woodhead
// NAnt - A .NET build tool
// Copyright (C) 2001-2002 Gerry Shaw
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
//
// Matthew Mastracci ([EMAIL PROTECTED])
// Sascha Andres ([EMAIL PROTECTED])

using System;
using System.Collections;
using System.Collections.Specialized;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Globalization;
using System.IO;
using System.Reflection;

using NAnt.Core;
using NAnt.Core.Attributes;
using NAnt.Core.Types;

namespace NAnt.DotNet.Tasks {
/// summary
/// Generates a c.licence/c file from a c.licx/c file.
/// /summary
/// remarks
/// If no output file is specified, the default filename is the name of the 
/// target file with the extension c.licenses/c appended.
/// /remarks
/// example
///   para
///   Generate the file ccomponent.exe.licenses/c file from 
ccomponent.licx/c.
///   /para
///   code
/// ![CDATA[
/// license input=component.licx licensetarget=component.exe /
/// ]]
///   /code
/// /example 
[TaskName(license)]
public class LicenseTask : Task {
#region Private Instance Fields

private FileSet _assemblies;
private string _input;
private string _output;
private string _strTarget;

#endregion Private Instance Fields

#region Public Instance Constructors

/// summary
/// Initializes a new instance of the see cref=LicenseTask / class.
/// /summary
public LicenseTask(){
_assemblies = new FileSet();
return;
} // LicenseTask

#endregion Public Instance Constructors

#region Public Instance Properties

/// summary
/// Input file to process.
/// /summary
[TaskAttribute(input, Required=true)]
[StringValidator(AllowEmpty=false)]
public string Input {
get { 
return _input; 
} set { 
  _input = value; 
  }
} // Input

/// summary
/// Name of the resource file to output.
/// /summary
[TaskAttribute(output, Required=false)]
public string Output {
get { 
return _output; 
} set { 
  _output = value;
  }
} // Output

/// summary
/// Names of the references to scan for the licensed component.
/// /summary
[FileSet(assemblies)]
public FileSet Assemblies {
get { 
return _assemblies;
} set { 
  _assemblies = value;
  }
} // Assemblies

/// summary
/// The output executable file for which the license will be generated.
/// /summary
[TaskAttribute(licensetarget, Required=true)]
[StringValidator(AllowEmpty=false)]
public string Target{
get

[nant-dev] New task: cat

2003-09-16 Thread Sascha Andres
Hi, 

I had a problem where I merge sourcefiles into one assembly,
while I use them normally in more than one assembly to link
only what I need.

I'm using the ndoc task to document, and hence it's missing
the namespace descriptions, if I do not create a new
namespace.xml for the merged assembly.

Basicly appending all namespace.xml files from the seperated
assemblies into one new would do the job. I would do this
with cat under unix, but I found it nice to have a task
doing this.

There are three attributes:

 * file
 * pipe
 * append

The last two are optional. The first one is the file to cat. 
If this is the only attribute given, it will print it on the
screen. If pip is given, it will create - that means
overwrite, since append defaults to false - the given file 
and insert the contents of file. If append is true the
content is appended where I've reached what I wanted.

I just think I post it here for inclusion in NAnt or
NAnt-contrib.

-sa

-- 
sa at programmers-world dot com
http://www.livingit.de
Bookmarks online: http://www.mobile-bookmarks.info
  Soon available in english

Life would be so much easier if we could just look at the source code.
// NAnt - A .NET build tool
// Copyright (C) 2001-2002 Gerry Shaw
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

// Sascha Andres ([EMAIL PROTECTED])

using System;
using System.Globalization;
using System.Xml;
using System.IO;

using NAnt.Core.Attributes;
using NAnt.Core.Util;

namespace NAnt.Core.Tasks {
/// summary
/// A somehow compareable task to 'cat' from a unix/linux system
/// /summary
/// example
///   paraPrints a file on the screen/para
///   code
/// ![CDATA[
/// cat file=input.txt /
/// ]]
///   /code
///   paraPrints a file to an other file. Overwrite is the default!/para
///   code
/// ![CDATA[
/// cat file=input.txt pipe=output.txt /
/// ]]
///   /code
///   paraPrints two files to one other file./para
///   code
/// ![CDATA[
/// cat file=input.txt pipe=output.txt /
/// cat file=input2.txt pipe=output.txt append=true /
/// ]]
///   /code
/// /example
[TaskName(cat)]
public class CatTask : Task {
#region Private Instance Fields

private string _filein = ;
private string _fileout = ;
private string _append = Boolean.FalseString;

#endregion Private Instance Fields

#region Public Instance Properties

/// summary
/// The file to display.
/// /summary
[TaskAttribute(file, Required=true)]
public string File {
get { return _filein; }
set {
_filein = value; 
}
}

/// summary
/// Write the output to
/// /summary
[TaskAttribute(pipe, Required=false)]
public string Pipe {
get { return _fileout; }
set {
_fileout = value; 
}
}

/// summary
/// Append to file
/// /summary
[TaskAttribute(append, Required=false)]
[BooleanValidator()]
public string Append {
get { return _append; }
set {
_append = value;
}
}

#endregion Public Instance Properties

#region Override implementation of Task

/// summary
/// Outputs the message to the build log.
/// /summary
protected override void ExecuteTask() {
bool bUseFile = false;
using (StreamReader sr = new StreamReader(_filein)) {
StreamWriter sw = null;
if (_fileout != ) {
bUseFile = true;
sw = new StreamWriter(_fileout, Convert.ToBoolean(_append));
}
while(true) {
string strLine = sr.ReadLine();
if (strLine == null) {
break;
}
if (!bUseFile) {
Log(Level.Info, LogPrefix + strLine);
} else {
sw.WriteLine(strLine);
}
}
if (bUseFile

[nant-dev] License task fix - patch included

2003-09-15 Thread Sascha Andres
Hi,

after a while looking where the error was, I reworked my
changes, did a few comments and a diff file for patching.

You may want to take a look at it - I did not created a new
AppDomain, but it is functionally on my system now. If this
is correct, it could be submitted to CVS.

-sa

-- 
sa at programmers-world dot com
http://www.livingit.de
Bookmarks online: http://www.mobile-bookmarks.info
  Soon available in english

If God had meant for us to be in the Army, we would have been born with
green, baggy skin.
151c151,157
 
alAssemblyFilesLoaded.Add(Path.GetFullPath(asmLoaded.Location).ToLower(CultureInfo.InvariantCulture));
---
   /* It can happen that an empty or null string is in the
* collection. If so, Getpath fails.
* Just ignore them (what else could we do
*/
   if (asmLoaded.Location.TrimEnd().TrimStart() !=   
 asmLoaded.Location != null) {
   
 alAssemblyFilesLoaded.Add(Path.GetFullPath(asmLoaded.Location).ToLower(CultureInfo.InvariantCulture));
   }
168c174
 Log(Level.Verbose, LogPrefix +  -  + strAssembly +  
(loaded with real filename));
---
 Log(Level.Verbose, LogPrefix + strAssembly +  (loaded 
 with real filename));
171c177
 Log(Level.Verbose, LogPrefix +  -  + strAssembly +  
(not loaded));
---
 Log(Level.Verbose, LogPrefix + strAssembly +  (not 
 loaded));
179c185
 
---
 
184c190
 Log(Level.Verbose, );
---
 
197c203
 
---
   
237c243
 Log(Level.Info, ((Type) 
htLicenses[strLine]).Assembly.CodeBase);
---
 Log(Level.Info, LogPrefix + ((Type) 
 htLicenses[strLine]).Assembly.CodeBase);
254c260
 
---
 
256a263
   Log(Level.Verbose, LogPrefix + Deleting existing  + 
 strResourceFilename);
260c267
 
---
   
266a274,277
 Log(Level.Verbose, LogPrefix + Created  + strResourceFilename);
 dlc = null;
 
 return;


Re: [nant-dev] License task fix - patch included

2003-09-15 Thread Sascha Andres
Hi,
* Ian MacLean wrote on 16.09.2003 (01:17):
 It would be better if it did load a new appdomain. Otherwise every 
 assembly loaded will hang around until NAnt terminates. See the 
 assemblyinfo task ( AssemblyInfoTask.cs) for a simple example of the 
 spawning app-domain technique.

I'll have a look at it. It may take some time, since I'm
currently very busy at work. As far as I can see, the start
would be to create an appdomain, create an instance of it
and use a function to pass an object back containing the
relevant info.

-sa

-- 
sa at programmers-world dot com
http://www.livingit.de
Bookmarks online: http://www.mobile-bookmarks.info
  Soon available in english

If the weather is extremely bad, church attendance will be down.  If
the weather is extremely good, church attendance will be down.  If the
bulletin covers are in short supply, however, church attendance will
exceed all expectations.
-- Reverend Chichester


---
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] license task broken

2003-09-14 Thread Sascha Andres
Hi,

I'm using the following statement in my buildscript:

license input=license.licx licensetarget=start.exe /

This is similar to the help file. But: I _always_ gt an
exception about an invalid path. Before I had an fileset
included with the assemblies to be licensed, but this is
just the same error. I think this is a newly introduced bug,
since this happens after updating to the latest nightly
build.

-sa

-- 
sa at programmers-world dot com
http://www.livingit.de
Bookmarks online: http://www.mobile-bookmarks.info
  Soon available in english

They make a desert and call it peace.
-- Tacitus (55?-120?)


---
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] license task broken

2003-09-14 Thread Sascha Andres
Hi,

It seems I found two bugs. One is in the licese task itself.
It can happen (actually it does on one of my systems),
thatasmLoaded.Location is either an empty string or null. If
so, Path.GetFullPath(...) throws an exception. The attached
diff files addesses this issue.

The second thing seems to be in Directory scanner (I'm not
sure, cause I have not much time to dive into this yet). If
I give something like D:\licensed_components\*.dll as
includes in the nested assembly, he tries to load dlls
without the ending. Eg A file name assembly.dll gets only
assembly .

HTH,
-sa

-- 
sa at programmers-world dot com
http://www.livingit.de
Bookmarks online: http://www.mobile-bookmarks.info
  Soon available in english

Es brilig war.  Die schlichte Toven
Wirrten und wimmelten in Waben;
Und aller-mumsige Burggoven
Dir mohmen Rath ausgraben.
-- Lewis Carrol, Through the Looking Glass
151c151,153
 
alAssemblyFilesLoaded.Add(Path.GetFullPath(asmLoaded.Location).ToLower(CultureInfo.InvariantCulture));
---
   if (asmLoaded.Location.TrimEnd().TrimStart() 
 !=   asmLoaded.Location != null) {
   
 alAssemblyFilesLoaded.Add(Path.GetFullPath(asmLoaded.Location).ToLower(CultureInfo.InvariantCulture));
   }


Re: [nant-dev] license task broken

2003-09-14 Thread Sascha Andres
Hi,
* Matthew Mastracci wrote on 14.09.2003 (12:45):
 Yet another bug is that the License task loads assemblies (as far as I
 can remember) into the main AppDomain.  It needs to have code to load
 these assemblies in a separate AppDomain, like the NUnit tasks have.

You're right. It does that way. But this is a minor problem
as long as other bugs prevent using the license task at all.
And this could be considered as 'by design'.

Something to the found problems: Even a full path (no 
placeholders) don't make the license task running.

-sa

-- 
sa at programmers-world dot com
http://www.livingit.de
Bookmarks online: http://www.mobile-bookmarks.info
  Soon available in english

Electrocution, n.:
Burning at the stake with all the modern improvements.


---
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] 0.8.3 final

2003-09-07 Thread Sascha Andres
Hi,
* Ian MacLean wrote on 07.09.2003 (16:04):
 Jaroslaw Kowalski wrote:
 Maybe it's time to have version 1.0 released ? I believe NAnt is stable
 enough now to handle even large projects like mono both on windows and
 linux and having production version 1.0 would only make more people
 (corporate?) use nant.
  
 
 I tend to agree with you. Corporate users don't really gel with the 
 opensource style 0.x release numbers. Lets table up a list of things to 
 target at a 1.0 and see how that looks.

I've not written much here, I mostly read what's written.
But this time I just want to post my personal oppinion.

Even if corporate users din't like 0.x releases - thinking
they are low quality releases without - there is one thing
they like even less: 1.x releases that tend to react beta
like. Think about the solution task.

NAnt is really good stuff and I like it, and I think it's
really not far from 1.0 release. When talking about a 1.0
release at least the following tasks should be included
(don't forget: my personal oppinion as a corporate
developer):

 * a version system task for cvs - a SourceSafe one would be
   nice too, cause I know many using this.
 * ensure documentation ist complete, the way it's now is
   ok, but if there are leaks, they should be filled.
 * sql would really enhance NAnt and would make the
   possibilities outstanding.

The features I think that should come in 1.1 are:

 * Input tasks (personally I think thzat in corporate use
   this has low priority. I would tend to use an sql task to
   make decisions. It would not break the possibility of a
   build server, or nightly stand-alone build.
 * a tight integration with the different IDEs - VS.NET
   being the highest priority.

Well, just some of my thoughts. They are not ment to be
offending - as I'm only a reader and from time to time
writer - so take it mostly as an user's feedback on a
roadmap.

-sa

-- 
sa at programmers-world dot com
http://www.livingit.de
Bookmarks online: http://www.mobile-bookmarks.info
  Soon available in english

Somewhere, just out of sight, the unicorns are gathering.


---
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] ngen Task

2003-07-08 Thread Sascha Andres
Hi,

this is my first post to the NAnt developers list. When I
first looked at NAnt I wanted to understand how does it
work. So I made my own task - a ngen task. I have not much
time to maintain an ever changing task, but I think there
may be the one or other who could use this task too.

So I decided to post this task here. If someone wants to
integrate this task - feel free. It would be nice if there
is something like based on initial code by or something 
like this. But after all you're free to use it like you 
want to use it. Or even don't use it. 

Bye,

Sascha

-- 
sa at programmers-world dot com
http://www.livingit.de
Bookmarks online: http://www.mobile-bookmarks.info
  Soon available in english

If God wanted us to be brave, why did he give us legs?
-- Marvin Kitman


SourceForge.NAnt.Tasks.zip
Description: Zip archive