Bugs item #1165252, was opened at 2005-03-17 15:10
Message generated for change (Comment added) made by drieseng
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=402868&aid=1165252&group_id=31650

Category: Tasks
Group: 0.85
Status: Open
>Resolution: None
Priority: 5
Submitted By: Scott Winslow (swinslow)
Assigned to: Gert Driesen (drieseng)
Summary: copy task using created instead of modified date

Initial Comment:
<copy> is overwriting newer files with older files 
because it checks age based on created date rather 
than modified date. I'm pretty sure that it should be 
modified date, otherwise simply relocating a file prior to 
the copy task will make the file look newer than it really 
is. As an example: if you create a file, copy it elsewhere 
and then go back and modify the original, copy would 
not overwrite the previously copied file with the more 
recently modified one. 

Considering that the <touch> task is touching the 
modified date, I think that <copy>'s use of the created 
date is a bug rather than the intended behaviour.

File in directory:
Created:        Monday, March 14, 2005, 7:31:44 PM
Modified:       Monday, March 14, 2005, 7:31:35 PM
Accessed:       Today, March 16, 2005, 11:12:36 AM

File overwriting it:
Created:        Today, March 16, 2005, 11:23:44 AM
Modified:       Monday, March 07, 2005, 12:16:11 PM
Accessed:       Today, March 16, 2005, 11:23:44 AM


NAnt 0.85 (Build 0.85.1793.0; rc1; 11/28/2004)
Framework version 1.1.4322
OS Version: Win2000 Server 5.00.2195 SP4


----------------------------------------------------------------------

>Comment By: Gert Driesen (drieseng)
Date: 2005-04-07 22:29

Message:
Logged In: YES 
user_id=707851

I also get the correct results with the build file you attached, 
but I now the cause for the results you're seeing.

I've fixed it locally, but still need to produce unit tests for it 
before I commit it to cvs.

----------------------------------------------------------------------

Comment By: Scott Winslow (swinslow)
Date: 2005-03-21 17:22

Message:
Logged In: YES 
user_id=86359

You're test file worked fine, but I've attached one that shows 
what I was seeing. Sorry for not giving more info the first time 
around:

I'm copying multiple project outputs into a single directory, 
and there is overlap because one of these projects is a 
collection of "foundation" DLLs we use in all other projects. I 
want to make sure I get the most recently compiled of each 
DLL without having to know the order the projects were most 
recently built in. Based on <copy>'s documentation, it looked 
like running it with flatten="true" was going to do exactly 
what I wanted.

Whether it's due to the flatten operation or something to do 
with the file names matching, it doesn't seem to be acting 
right in my scenario. I did a quick peek at the source, and 
where I looked it was using the modified date, so I'm rather 
confused as well...

----------------------------------------------------------------------

Comment By: Gert Driesen (drieseng)
Date: 2005-03-18 18:34

Message:
Logged In: YES 
user_id=707851

Scott,

We're definitely using the last write time (modified date) to 
check whether a certain is up-to-date.

I've attached a build file that I used to try to reproduce this 
issue.

Let me know if you get the same results using that build file.

Gert

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=402868&aid=1165252&group_id=31650


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
nant-developers mailing list
nant-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nant-developers

Reply via email to