[webkit-dev] SVN on Windows and the merits of svn:eol-style
Peter Kasting
pkasting at google.com
Tue Jul 21 16:11:26 PDT 2009
If you do not develop on Windows, you may skip to the "*** Question ***"
portion below.
*** PSA for Windows developers ***
Until now WebKit developers on Windows have had to use the Cygwin version of
svn, rather than a "standard" Windows svn, due to limitations in the WebKit
scripts, build process, etc.
On https://bugs.webkit.org/show_bug.cgi?id=27323 I have been working to
remove those roadblocks, and today I have locally succeeded in using my
Windows SVN to:
* check out
* update (via update-webkit and resolve-ChangeLogs)
* build (via build-webkit)
* run (via run-safari)
* prepare patches (via prepare-ChangeLog and svn-create-patch)
* apply and unapply patches (via svn-apply and svn-unapply)
* commit (using commit-log-editor)
Added bonus of a couple other fixes: I did this with a
WebKit-inside-Chromium checkout. In theory this means projects that wish to
include WebKit from the master repository (via svn:externals or some other
mechanism) as part of their source tree may be able to develop in a single
checkout.
Not all these patches have been reviewed and landed yet, but things are
close.
*** Question ***
There is one roadblock to this setup. SVN-on-Windows seems to have a bug
where sometimes (depending on the state of the repository and the checkout),
the diffs it produces for files without svn:eol-style set won't
apply/unapply cleanly, due to line ending issues.
The obvious workaround is to set svn:eol-style everywhere. This has other
side benefits (e.g. preventing files from being checked in with mixed line
endings, and preventing line-ending-sensitive files from being changed
accidentally), and I am told by Eric Seidel that in fact some time ago Darin
Adler used to try and maintain something like this. As a result, a large
portion of the WebKit tree already has this property set.
My question is, how desirable and feasible would it be to return to having
eol-style everywhere?
For a relevant anecdote, in Chromium we enforce that files have
svn:eol-style. This was done using three steps:
* Scripts were used to find files lacking svn:eol-style and set it
appropriately.
* A commit hook was added to prevent developers from regressing this.
* We document a set of auto-props to configure SVN with, so that it will
automatically add eol-style on new files without developers having to do it
manually.
I am not capable of doing the first two of these steps myself, but there are
Chromium team members who could consult if we decided this was a desirable
path for WebKit. The goal would be to minimize disruption and not cause any
ongoing annoyance.
Comments?
PK
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-dev/attachments/20090721/f1d47a5d/attachment.html>
More information about the webkit-dev
mailing list