--- Steve Loughran <[EMAIL PROTECTED]> wrote: [SNIP] > > I was thinking about this. > > the original example may have been inherently > brittle to change - a > sufficiently fast transform could have taken 0 > seconds, but the fact > is, our granularity logic has broken the build on > windows, but possibly > not Unix. > > We can't say 'set the granularity value' because > that relies on the > person with the problem being capable of editing > the build file. What > if it came from somebody else, somebody who works on > a unix box? We need > a way of making a build file work on a windows/NTFS > system without > requiring edits to the build, else we break > transparency of platform. > > 1. we could have a property > "ant.filesys.granularity" which can be set > to something in a build.properties or on the command > line. if unset, you > get the default.. > > 2. we could have a task to query the current > granularity.
2K/XP and I assume NT include a CHKNTFS.EXE executable that tests local drives' filesystem type. > > 3. In theory we can test a DOS filesys for being > NTFS, or at least not FAT > > (a) NTFS files are streams, f.txt:0 is the default > stream, but you can > add more like f.txt:1 that may work from Java. > > (b) Maybe there is some case or file length logic we > can try too > > (c) We could create 3 files, all at t, t+1, t+2, > then read the > timestamps. If they are all 1s apart, then we are on > a proper FS. If two > have the same timestamp, it is FAT. I like this > test, as it would work > over the net, etc, etc, and because it test the > behaviour I want > -granularity. Yeah, that's okay too. > > given we can do the tests, when and how? We could > hit the temp dir, do > the files and assume that is the system granularity > unless overridden > by end users. Or we assume that drives A: and B: are > FAT, > We could default as usual but make available either through distro or for DL (maybe an Ant library) a build.xml that would execute the check and append the result to %HOME%\antrc_pre.bat (and take it out in %HOME%\antrc_post.bat?). Kind of messy though. Still it would be optional but still end-user enough that you wouldn't have to be a developer to do it. Basically this would be a last configuration step on NT-derivatives for setting up Ant. -my random thoughts, Matt > The other thing is that once we have an override > point, that applies > everywhere, we could go > -win9x : 2s > -WinNT systems: 1s *unless overriden*. That is, we > say "we assume NTFS > unless you say otherwise, either in the global > properties or in a > <copy> task. > > > > > -Steve > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: > [EMAIL PROTECTED] > For additional commands, e-mail: > [EMAIL PROTECTED] > > __________________________________ Celebrate Yahoo!'s 10th Birthday! Yahoo! Netrospective: 100 Moments of the Web http://birthday.yahoo.com/netrospective/ --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]