Bash 3.1.17(8) CR/LF problem
Wed Sep 27 19:41:00 GMT 2006
I recently updated to Bash 3.1.17(8) and found my local build system
failing due to the removal of CR/LF support:
"A script on a binary mount that uses \r\n line endings will probably
encounter syntax errors or odd variable assignments, because the \r is
treated literally. If this happens to you, use d2u to fix the line
endings, or change your script to live in a text mount point. A
script that resides on a text mount can have either line ending (even
inconsistently mixed), but be aware that text mount points are
slower, due to \r\n filtering."
Unfortunately simply running "d2u" isn't a solution because:
* Some revision control systems make the files read-only.
* Some detect the change to <LF> as changes require manual merging.
* Some translate files to a "Local" format (CR/LF on Windows).
I think the bigger issue here is that this arbitrary change will break
a "significant" number of existing scripts. I contract for a few
companies that use Cygwin/Bakefile to achieve support for multiple
compilers/tool-chains, and for hourly auto-build servers. This change
will break all of them - some of which have been functional for over 4
In my opinion a better solution would have been to err on the side of
compatibility and only use the new fast readline code if manually
Discussions around the local office this morning have resulted in the
project manager being forced to consider branching a Cygwin mirror,
rolling back Bash to 3.1.17(6) and mandating all developers use the
intranet mirror and not grab any further web updates.
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
More information about the Cygwin