[Python-Dev] Mercurial, linefeeds, and Visual Studio

Jason R. Coombs jaraco at jaraco.com
Thu Jun 4 15:02:53 CEST 2009


I just wanted to share my experience with the mercurial checkout.  I cloned http://code.python.org/hg/branches/py3k to continue work on http://bugs.python.org/issue1578269 but I found that when I click on PC/VS8.0/pcbuild.sln, nothing happens.

This appears to be due to a bug/limitation in vslauncher in that it doesn't recognize LF as a line separator.  vslauncher is the default association for sln files and its purpose is to parse out the .sln file and launch it with the appropriate Visual Studio version based on the header.  What makes matters worse is if vslauncher fails to recognize the format, it does nothing, so it just appears as if the file fails to launch anything.

It seems that within the hg repository, everything has been converted to LF for line endings.  I suspect this is because HG provides no integrated support for line-ending conversions and because the hg to svn bridge is probably running on a Unix OS.

So converting the pcbuild.sln file to CRLF line endings resolved the problem and the file would launch normally.  Also, without conversion, it was possible to open the .sln file in Visual Studio explicitly.

I wanted to share this with the community in case anyone else runs into this issue.  Also, if there's a recommended procedure for addressing this issue (and others that might arise due to non-native line endings), I'd be interested to hear it.

Regards,
Jason


More information about the Python-Dev mailing list