> But if we convert what MANIFEST provides (i.e. Unix directory
> separators) into whatever the current platform needs (i.e. what
> canonpath() does) then it should agree with whatever svn spits out.
> Or am I missing something?

No, that's exactly what I think needs to be done.  In the patch
canonpath is used with the result of the svn execution only.  That's not
enough.  @manifest_files would need to be changed too, otherwise it
contains the file names with forward slashes from MANIFEST.  There's
also a regex $lf_files_regexp that seems to filter files, and the part
that uses it would need to be aware of the changed separator, too.

> Essentially my patch is just a less fragile version of the patch you
> submitted to get this test to work on Windows.  (at least, I don't
> think I'm changing the functionality that much).

I simple changed the backward slashes to forward slashes, thus forward
slashes everywhere.

Which was what *I* intended to do with my patch, but after staring at
it long enough, I realised that's not what *it* was saying!  :-)
Ooops.

I'd like to avoid converting the entire MANIFEST from Unix to Windows
directory separators just so that we can have the hash we're
generating in t/distro/file_metadata.t  has consistent keys;
converting to explicitly Unix should be enough (and converting the
whole MANIFEST would make the test even slower than it already is).
Even more so considering that there is a ticket in RT trying to get
rid of MANIFEST.  Anyway, attached is another patch, which hopefully
does the right thing now.  If everyone's happy with the patch, I'll
apply and commit it to trunk.

Ron, would it be ok if you could check the patch to see if it works on
Win32?  Thanks heaps in advance.

Paul

Attachment: file_metadata.patch
Description: Binary data

Reply via email to