<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Sep 8, 2016 at 1:59 PM, Frediano Ziglio <span dir="ltr"><<a href="mailto:fziglio@redhat.com" target="_blank">fziglio@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div style="font-family:times new roman,new york,times,serif;font-size:12pt;color:#000000"><div><div class="h5"><blockquote style="border-left:2px solid #1010ff;margin-left:5px;padding-left:5px;color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt"><div><blockquote><div>On 8 Sep 2016, at 12:30 PM, Christophe Fergeau <<a href="mailto:cfergeau@redhat.com" target="_blank">cfergeau@redhat.com</a>> wrote:</div><br><div><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">On Thu, Sep 08, 2016 at 09:01:58AM +0300, Dmitry Fleytman wrote:</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><blockquote style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br><blockquote>On 7 Sep 2016, at 18:49 PM, Christophe Fergeau <<a href="mailto:cfergeau@redhat.com" target="_blank">cfergeau@redhat.com</a>> wrote:<br><br>On Wed, Sep 07, 2016 at 06:40:57PM +0300, Dmitry Fleytman wrote:<br><blockquote><br><blockquote>On 7 Sep 2016, at 18:20 PM, Christophe Fergeau <<a href="mailto:cfergeau@redhat.com" target="_blank">cfergeau@redhat.com</a>> wrote:<br><br>On Wed, Sep 07, 2016 at 05:55:31PM +0300, Sameeh Jubran wrote:<br><blockquote>On Wed, Sep 7, 2016 at 5:47 PM, Christophe Fergeau <<a href="mailto:cfergeau@redhat.com" target="_blank">cfergeau@redhat.com</a>><br>wrote:<br><br><blockquote>On Wed, Sep 07, 2016 at 04:10:18PM +0300, Sameeh Jubran wrote:<br><blockquote>Dmitry Fleytman (2):<br>Introduce end-of-line normalization<br></blockquote></blockquote></blockquote><br>So it seems everything was changed from Dos to Unix? What is the<br>rationale for going this way rather than the other way around?<br>I think I would convert all source files to Dos except for the include/<br>ones which are c&p'ed from elsewhere. This would make the diff much<br>smaller, and give us a much less polluted git history.<br></blockquote><br>Hi Christophe,<br><br>We prefer to have the same EOL style for all files in the repository because<br>this way it is much easier to define automatic EOL conversion rules for future commits.<br></blockquote><br>I don't know how you intend to define these automatic EOL conversion<br>rules, but if this is through git hook + script, having a few exceptions<br>is probably not that much complicated than single EOL for the whole<br>repository (but I agree it's less nice).<br></blockquote><br>They are defined already. .gitattributes file introduced by commit<br>that converts line endings is doing the job.<br><br>EOL handling rules may be defined by .gitattributes on a more fine-grained basis,<br>but this will introduce more code to be supported without clear advantages.<br></blockquote><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">Yup, .gitattributes is fairly flexible.</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><blockquote style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br><blockquote><br><br><blockquote>LF has a number of advantages over CR/LF so we decided to use it.<br></blockquote><br>Which are ?<br></blockquote><br>LF are native for UNIX systems and tools. CR character often appears as visible<br>control character in text editors on Linux, for example vi.<br></blockquote><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">I really see that codebase as a Windows thing as I don't think it even</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">compiles with mingw, so I don't feel using the native *Unix* line</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">endings is a very compelling argument here. Especially as my vim was</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">able to cope with line endings just fine (it does not show control</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">chars, it uses the proper ending when I add a new line).</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"></div></blockquote><div><br></div><div>It probably depends on specific vi distribution or configuration as mine behaves differently.</div></div></blockquote></div></div><div>Probably we use vim which has good defaults and can handle quite a lot of encoding/ending<br></div><div>automatically. The old plain vi is like wanting to use notepad on Windows.<br></div><div><br></div><div>More then editors I think git on Windows has some problems.<br></div><span class=""><blockquote style="border-left:2px solid #1010ff;margin-left:5px;padding-left:5px;color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt"><div><blockquote><div><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><blockquote style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br>Some originally-UNIX tools tend to convert line endings to LF event when compiled for Windows.<br>For example "git send-email” that we run on Windows does this. Because of that conversion patches<br>send to the mailing list did not apply as was reported by Frediano.<span> </span><br></blockquote><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">Which would be solved by a .gitattributes file regardless of which</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">line-ending we decide to use.</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><blockquote style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><blockquote><br><blockquote>We believe that one big commit that converts EOL characters is an<br>acceptable price for future simplicity.<br></blockquote><br>Since this is going to get in the way of git log, git blame, ...<br>forever, I'd try to minimize the amount of change there is..<br></blockquote><br>Yes, this will require an additional step for "git blame” users,<br>but only for those who need to drill down to the very beginnings.<br>EOL fixes will appear on "git log" as well, not sure if this is an issue.<br><br>Mixing EOL styles in this repository was a mistake made from the very<br>beginning and it needs to be fixed, better sooner than later.<br></blockquote><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">Mixing EOL within single files is not nice indeed. Personally I think</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">I'd just fix these files with mixed line endings, this makes the changes</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">far less invasive.</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"></div></blockquote><div><br></div><div>No problem, we will do it this way.</div></div></blockquote><div><br></div></span><div>I think honestly that moving all to Unix can solve some future issue but I don't<br></div><div>like too to break the history. I would prepare some patches:<br></div><div>- convert "binary" (utf16le encoded files that git see as binary) files to single byte<br></div><div>  Unix (this is part of this original patch);<br></div><div>- fix mixed line ending files to the nearest (currently DOS) format, specifically:<br></div><div><div><div class="h5">  <blockquote style="border-left:2px solid #1010ff;margin-left:5px;padding-left:5px;color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt"><div><blockquote><div>On 8 Sep 2016, at 12:30 PM, Christophe Fergeau <<a href="mailto:cfergeau@redhat.com" target="_blank">cfergeau@redhat.com</a>> wrote:</div><br><div><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">On Thu, Sep 08, 2016 at 09:01:58AM +0300, Dmitry Fleytman wrote:</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><blockquote style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br><blockquote>On 7 Sep 2016, at 18:49 PM, Christophe Fergeau <<a href="mailto:cfergeau@redhat.com" target="_blank">cfergeau@redhat.com</a>> wrote:<br><br>On Wed, Sep 07, 2016 at 06:40:57PM +0300, Dmitry Fleytman wrote:<br><blockquote><br><blockquote>On 7 Sep 2016, at 18:20 PM, Christophe Fergeau <<a href="mailto:cfergeau@redhat.com" target="_blank">cfergeau@redhat.com</a>> wrote:<br><br>On Wed, Sep 07, 2016 at 05:55:31PM +0300, Sameeh Jubran wrote:<br><blockquote>On Wed, Sep 7, 2016 at 5:47 PM, Christophe Fergeau <<a href="mailto:cfergeau@redhat.com" target="_blank">cfergeau@redhat.com</a>><br>wrote:<br><br><blockquote>On Wed, Sep 07, 2016 at 04:10:18PM +0300, Sameeh Jubran wrote:<br><blockquote>Dmitry Fleytman (2):<br>Introduce end-of-line normalization</blockquote></blockquote></blockquote><br>So it seems everything was changed from Dos to Unix? What is the<br>rationale for going this way rather than the other way around?<br>I think I would convert all source files to Dos except for the include/<br>ones which are c&p'ed from elsewhere. This would make the diff much<br>smaller, and give us a much less polluted git history.</blockquote><br>Hi Christophe,<br><br>We prefer to have the same EOL style for all files in the repository because<br>this way it is much easier to define automatic EOL conversion rules for future commits.</blockquote><br>I don't know how you intend to define these automatic EOL conversion<br>rules, but if this is through git hook + script, having a few exceptions<br>is probably not that much complicated than single EOL for the whole<br>repository (but I agree it's less nice).</blockquote><br>They are defined already. .gitattributes file introduced by commit<br>that converts line endings is doing the job.<br><br>EOL handling rules may be defined by .gitattributes on a more fine-grained basis,<br>but this will introduce more code to be supported without clear advantages.</blockquote><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">Yup, .gitattributes is fairly flexible.</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><blockquote style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br><blockquote><br><br><blockquote>LF has a number of advantages over CR/LF so we decided to use it.</blockquote><br>Which are ?</blockquote><br>LF are native for UNIX systems and tools. CR character often appears as visible<br>control character in text editors on Linux, for example vi.</blockquote><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">I really see that codebase as a Windows thing as I don't think it even</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">compiles with mingw, so I don't feel using the native *Unix* line</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">endings is a very compelling argument here. Especially as my vim was</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">able to cope with line endings just fine (it does not show control</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">chars, it uses the proper ending when I add a new line).</span></div></blockquote><div><br></div><div>It probably depends on specific vi distribution or configuration as mine behaves differently.</div></div></blockquote></div></div><div>Probably we use vim which has good defaults and can handle quite a lot of encoding/ending</div><div>automatically. The old plain vi is like wanting to use notepad on Windows.</div><div><br></div><div>More then editors I think git on Windows has some problems.</div><span class=""><blockquote style="border-left:2px solid #1010ff;margin-left:5px;padding-left:5px;color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt"><div><blockquote><div><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><blockquote style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br>Some originally-UNIX tools tend to convert line endings to LF event when compiled for Windows.<br>For example "git send-email” that we run on Windows does this. Because of that conversion patches<br>send to the mailing list did not apply as was reported by Frediano.<span> </span></blockquote><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">Which would be solved by a .gitattributes file regardless of which</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">line-ending we decide to use.</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><blockquote style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><blockquote><br><blockquote>We believe that one big commit that converts EOL characters is an<br>acceptable price for future simplicity.</blockquote><br>Since this is going to get in the way of git log, git blame, ...<br>forever, I'd try to minimize the amount of change there is..</blockquote><br>Yes, this will require an additional step for "git blame” users,<br>but only for those who need to drill down to the very beginnings.<br>EOL fixes will appear on "git log" as well, not sure if this is an issue.<br><br>Mixing EOL styles in this repository was a mistake made from the very<br>beginning and it needs to be fixed, better sooner than later.</blockquote><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">Mixing EOL within single files is not nice indeed. Personally I think</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">I'd just fix these files with mixed line endings, this makes the changes</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">far less invasive.</span></div></blockquote><div><br></div><div>No problem, we will do it this way.</div></div></blockquote><div><br></div></span><div>I think honestly that moving all to Unix can solve some future issue but I don't</div><div>like too to break the history. I would prepare some patches:</div><div>- convert "binary" (utf16le encoded files that git see as binary) files to single byte</div><div>  Unix (this is part of this original patch);</div><div>- fix mixed line ending files to the nearest (currently DOS) format, specifically:</div><div><div><div class="h5"> <blockquote style="border-left:2px solid #1010ff;margin-left:5px;padding-left:5px;color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt"><div><blockquote><div>On 8 Sep 2016, at 12:30 PM, Christophe Fergeau <<a href="mailto:cfergeau@redhat.com" target="_blank">cfergeau@redhat.com</a>> wrote:</div><br><div><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">On Thu, Sep 08, 2016 at 09:01:58AM +0300, Dmitry Fleytman wrote:</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><blockquote style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br><blockquote>On 7 Sep 2016, at 18:49 PM, Christophe Fergeau <<a href="mailto:cfergeau@redhat.com" target="_blank">cfergeau@redhat.com</a>> wrote:<br><br>On Wed, Sep 07, 2016 at 06:40:57PM +0300, Dmitry Fleytman wrote:<br><blockquote><br><blockquote>On 7 Sep 2016, at 18:20 PM, Christophe Fergeau <<a href="mailto:cfergeau@redhat.com" target="_blank">cfergeau@redhat.com</a>> wrote:<br><br>On Wed, Sep 07, 2016 at 05:55:31PM +0300, Sameeh Jubran wrote:<br><blockquote>On Wed, Sep 7, 2016 at 5:47 PM, Christophe Fergeau <<a href="mailto:cfergeau@redhat.com" target="_blank">cfergeau@redhat.com</a>><br>wrote:<br><br><blockquote>On Wed, Sep 07, 2016 at 04:10:18PM +0300, Sameeh Jubran wrote:<br><blockquote>Dmitry Fleytman (2):<br>Introduce end-of-line normalization</blockquote></blockquote></blockquote><br>So it seems everything was changed from Dos to Unix? What is the<br>rationale for going this way rather than the other way around?<br>I think I would convert all source files to Dos except for the include/<br>ones which are c&p'ed from elsewhere. This would make the diff much<br>smaller, and give us a much less polluted git history.</blockquote><br>Hi Christophe,<br><br>We prefer to have the same EOL style for all files in the repository because<br>this way it is much easier to define automatic EOL conversion rules for future commits.</blockquote><br>I don't know how you intend to define these automatic EOL conversion<br>rules, but if this is through git hook + script, having a few exceptions<br>is probably not that much complicated than single EOL for the whole<br>repository (but I agree it's less nice).</blockquote><br>They are defined already. .gitattributes file introduced by commit<br>that converts line endings is doing the job.<br><br>EOL handling rules may be defined by .gitattributes on a more fine-grained basis,<br>but this will introduce more code to be supported without clear advantages.</blockquote><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">Yup, .gitattributes is fairly flexible.</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><blockquote style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br><blockquote><br><br><blockquote>LF has a number of advantages over CR/LF so we decided to use it.</blockquote><br>Which are ?</blockquote><br>LF are native for UNIX systems and tools. CR character often appears as visible<br>control character in text editors on Linux, for example vi.</blockquote><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">I really see that codebase as a Windows thing as I don't think it even</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">compiles with mingw, so I don't feel using the native *Unix* line</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">endings is a very compelling argument here. Especially as my vim was</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">able to cope with line endings just fine (it does not show control</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">chars, it uses the proper ending when I add a new line).</span></div></blockquote><div><br></div><div>It probably depends on specific vi distribution or configuration as mine behaves differently.</div></div></blockquote></div></div><div>Probably we use vim which has good defaults and can handle quite a lot of encoding/ending</div><div>automatically. The old plain vi is like wanting to use notepad on Windows.</div><div><br></div><div>More then editors I think git on Windows has some problems.</div><span class=""><blockquote style="border-left:2px solid #1010ff;margin-left:5px;padding-left:5px;color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt"><div><blockquote><div><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><blockquote style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br>Some originally-UNIX tools tend to convert line endings to LF event when compiled for Windows.<br>For example "git send-email” that we run on Windows does this. Because of that conversion patches<br>send to the mailing list did not apply as was reported by Frediano.<span> </span></blockquote><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">Which would be solved by a .gitattributes file regardless of which</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">line-ending we decide to use.</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><blockquote style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><blockquote><br><blockquote>We believe that one big commit that converts EOL characters is an<br>acceptable price for future simplicity.</blockquote><br>Since this is going to get in the way of git log, git blame, ...<br>forever, I'd try to minimize the amount of change there is..</blockquote><br>Yes, this will require an additional step for "git blame” users,<br>but only for those who need to drill down to the very beginnings.<br>EOL fixes will appear on "git log" as well, not sure if this is an issue.<br><br>Mixing EOL styles in this repository was a mistake made from the very<br>beginning and it needs to be fixed, better sooner than later.</blockquote><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">Mixing EOL within single files is not nice indeed. Personally I think</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">I'd just fix these files with mixed line endings, this makes the changes</span><br style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><span style="font-family:Helvetica;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">far less invasive.</span></div></blockquote><div><br></div><div>No problem, we will do it this way.</div></div></blockquote><div><br></div></span><div>I think honestly that moving all to Unix can solve some future issue but I don't</div><div>like too to break the history. I would prepare some patches:</div><div>- convert "binary" (utf16le encoded files that git see as binary) files to single byte</div><div>  Unix (this is part of this original patch);</div><div>- fix mixed line ending files to the nearest (currently DOS) format, specifically:</div><div>  qxldod/QxlDod.cpp, qxldod/QxlDod.h, qxldod/driver.h, qxldod/qxldod.vcxproj<br></div><div><br></div><div>About future/added files I would suggest to use Unix format, we can always change<br></div><div>all files to Unix in the future (for instance when we'll update visual studio basically<br></div><div>changing entirely the project files).<br></div><div><br></div><div>I'll send some proposed patches.</div></div></div></div></div></blockquote><div>Thanks, that would be great. We'll wait until you send them and then we'll send v4. </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div style="font-family:times new roman,new york,times,serif;font-size:12pt;color:#000000"><div><div><div><span class="HOEnZb"><font color="#888888"><br></font></span></div><span class="HOEnZb"><font color="#888888"><div><br></div><div>Frediano<br></div><br></font></span></div></div></div></div><br>______________________________<wbr>_________________<br>
Spice-devel mailing list<br>
<a href="mailto:Spice-devel@lists.freedesktop.org">Spice-devel@lists.freedesktop.<wbr>org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/spice-devel" rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/spice-devel</a><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><font size="4" color="#0b5394" face="times new roman, serif">Respectfully,<br></font><div style="font-size:12.8px;color:rgb(136,136,136)"><font size="4" color="#0b5394" face="times new roman, serif"><b><i>Sameeh Jubran</i></b></font></div><div style="font-size:12.8px;color:rgb(136,136,136)"><i style="color:rgb(7,55,99);font-family:"times new roman",serif;font-size:large"><span style="line-height:15px"><a href="https://il.linkedin.com/pub/sameeh-jubran/87/747/a8a" title="View public profile" name="UNIQUE_ID_SafeHtmlFilter_UNIQUE_ID_SafeHtmlFilter_UNIQUE_ID_SafeHtmlFilter_UNIQUE_ID_SafeHtmlFilter_14e2c1de96f8c195_UNIQUE_ID_SafeHtmlFilter_SafeHtmlFilter_SafeHtmlFilter_webProfileURL" style="color:rgb(17,85,204);margin:0px;padding:0px;border-width:0px;outline:none;vertical-align:baseline;text-decoration:none" target="_blank">Linkedin</a></span></i><br></div><div style="font-size:12.8px;color:rgb(136,136,136)"><font size="4" face="times new roman, serif" color="#073763"><i>Junior Software Engineer @ <a href="http://www.daynix.com" target="_blank">Daynix</a>.</i></font></div></div></div></div></div></div></div>
</div></div>