Re: [webkit-dev] webkit-patch and SVN
On Wed, Apr 14, 2010 at 5:06 PM, Adam Barth aba...@webkit.org wrote: On Wed, Apr 14, 2010 at 4:52 PM, Geoffrey Garen gga...@apple.com wrote: I'd rather keep the current behavior and have it operate on the entire repository. I think it will be too easy to make mistakes and leave out large portions of a patch if it only operates upon the current working directory. That's a fixable mistake, though, if/when it happens. Taking huge amounts of time unnecessarily diff'ing the LayoutTests directory is a fixed cost that is unavoidable and unfixable. How long is a huge amount of time? Here are some stats from my laptop. In the first run, I suspect webkit was not in my disk cache (since I recently compiled another checkout): ~/svn/webkit3$ time svn diff real0m23.437s user0m1.936s sys 0m7.531s In the second run, I suspect webkit was in my disk cache: ~/svn/webkit3$ time svn diff real0m8.929s user0m2.019s sys 0m6.012s ~/svn/webkit3$ svn --version svn, version 1.6.3 (r38063) If the diff is taking much longer than these times, you probably have a borked SVN working copy. We've seen really slow working copies when the working copy was created with SVN 1.5 and then upgraded to 1.6. If your SVN is slow, you might consider blowing away your working copy and making a new one with SVN 1.6. Adam This may not seem like a huge difference, but 23 seconds is enough to encourage me to cd WebCore before running svn-create-patch or prepare-ChangeLog. -Darin ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] webkit-patch and SVN
On Wed, Apr 14, 2010 at 11:47 PM, Darin Fisher da...@chromium.org wrote: On Wed, Apr 14, 2010 at 5:06 PM, Adam Barth aba...@webkit.org wrote: On Wed, Apr 14, 2010 at 4:52 PM, Geoffrey Garen gga...@apple.com wrote: I'd rather keep the current behavior and have it operate on the entire repository. I think it will be too easy to make mistakes and leave out large portions of a patch if it only operates upon the current working directory. That's a fixable mistake, though, if/when it happens. Taking huge amounts of time unnecessarily diff'ing the LayoutTests directory is a fixed cost that is unavoidable and unfixable. How long is a huge amount of time? Here are some stats from my laptop. In the first run, I suspect webkit was not in my disk cache (since I recently compiled another checkout): ~/svn/webkit3$ time svn diff real 0m23.437s user 0m1.936s sys 0m7.531s In the second run, I suspect webkit was in my disk cache: ~/svn/webkit3$ time svn diff real 0m8.929s user 0m2.019s sys 0m6.012s ~/svn/webkit3$ svn --version svn, version 1.6.3 (r38063) If the diff is taking much longer than these times, you probably have a borked SVN working copy. We've seen really slow working copies when the working copy was created with SVN 1.5 and then upgraded to 1.6. If your SVN is slow, you might consider blowing away your working copy and making a new one with SVN 1.6. This may not seem like a huge difference, but 23 seconds is enough to encourage me to cd WebCore before running svn-create-patch or prepare-ChangeLog. Does that mean you're not writing tests for your changes? ;) I don't have a good sense for what SVN workflows are like. I've switched over to SVN for a bit to try to understand how it works, but I haven't learned all the tricks yet. Adam ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] webkit-patch and SVN
On Thu, Apr 15, 2010 at 12:09 AM, Adam Barth aba...@webkit.org wrote: On Wed, Apr 14, 2010 at 11:47 PM, Darin Fisher da...@chromium.org wrote: On Wed, Apr 14, 2010 at 5:06 PM, Adam Barth aba...@webkit.org wrote: On Wed, Apr 14, 2010 at 4:52 PM, Geoffrey Garen gga...@apple.com wrote: I'd rather keep the current behavior and have it operate on the entire repository. I think it will be too easy to make mistakes and leave out large portions of a patch if it only operates upon the current working directory. That's a fixable mistake, though, if/when it happens. Taking huge amounts of time unnecessarily diff'ing the LayoutTests directory is a fixed cost that is unavoidable and unfixable. How long is a huge amount of time? Here are some stats from my laptop. In the first run, I suspect webkit was not in my disk cache (since I recently compiled another checkout): ~/svn/webkit3$ time svn diff real0m23.437s user0m1.936s sys 0m7.531s In the second run, I suspect webkit was in my disk cache: ~/svn/webkit3$ time svn diff real0m8.929s user0m2.019s sys 0m6.012s ~/svn/webkit3$ svn --version svn, version 1.6.3 (r38063) If the diff is taking much longer than these times, you probably have a borked SVN working copy. We've seen really slow working copies when the working copy was created with SVN 1.5 and then upgraded to 1.6. If your SVN is slow, you might consider blowing away your working copy and making a new one with SVN 1.6. This may not seem like a huge difference, but 23 seconds is enough to encourage me to cd WebCore before running svn-create-patch or prepare-ChangeLog. Does that mean you're not writing tests for your changes? ;) I don't have a good sense for what SVN workflows are like. I've switched over to SVN for a bit to try to understand how it works, but I haven't learned all the tricks yet. Adam It is common for me to re-create WebCore/ChangeLog as I modify my solution, and I've also worked on a fair number of patches that are just porting / getting existing tests to pass :-/ My workflow with svn is to work from a subdirectory if I can to minimize the cost of svn operations. If I need to work from the topmost directory, then I typically specify the directories I'm interested in on the svn command line (e.g., svn commit WebCore LayoutTests). That way the commands run faster. -Darin ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] webkit-patch and SVN
15.04.2010, в 00:37, Darin Fisher написал(а): If I need to work from the topmost directory, then I typically specify the directories I'm interested in on the svn command line (e.g., svn commit WebCore LayoutTests). That way the commands run faster. That's what I usually do, but I rarely pass the whole LayoutTests directory: prepare-ChangeLog WebCore LayoutTests/fast/dom svn ci WebCore LayoutTests/fast/dom LayoutTests/ChangeLog - WBR, Alexey Proskuryakov ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
[webkit-dev] webkit-patch and SVN
Anders brought to my attention this afternoon that webkit-patch currently does all SVN operations from the root directory instead of being current-directory aware. That behavior matches how Git operates, but does not need to be how webkit-patch operates. Question: Do SVN users wish to have webkit-patch be current-working-directory aware? Meaning: upload will only prepare-ChangeLog for the current directory and upload an svn diff under the current directory. land will only land the current subdirectory. The propose change will make webkit-patch inconsistent between VCS tools, but consistent with the users choice of SVN vs. Git. Is this SVN users desired behavior? -eric ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] webkit-patch and SVN
On Wed, Apr 14, 2010 at 2:13 PM, Eric Seidel e...@webkit.org wrote: Anders brought to my attention this afternoon that webkit-patch currently does all SVN operations from the root directory instead of being current-directory aware. That behavior matches how Git operates, but does not need to be how webkit-patch operates. Question: Do SVN users wish to have webkit-patch be current-working-directory aware? Meaning: upload will only prepare-ChangeLog for the current directory and upload an svn diff under the current directory. land will only land the current subdirectory. The propose change will make webkit-patch inconsistent between VCS tools, but consistent with the users choice of SVN vs. Git. Is this SVN users desired behavior? I'd rather keep the current behavior and have it operate on the entire repository. I think it will be too easy to make mistakes and leave out large portions of a patch if it only operates upon the current working directory. -Ken ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] webkit-patch and SVN
I'd rather keep the current behavior and have it operate on the entire repository. I think it will be too easy to make mistakes and leave out large portions of a patch if it only operates upon the current working directory. That's a fixable mistake, though, if/when it happens. Taking huge amounts of time unnecessarily diff'ing the LayoutTests directory is a fixed cost that is unavoidable and unfixable. Geoff ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] webkit-patch and SVN
On Wed, Apr 14, 2010 at 4:52 PM, Geoffrey Garen gga...@apple.com wrote: I'd rather keep the current behavior and have it operate on the entire repository. I think it will be too easy to make mistakes and leave out large portions of a patch if it only operates upon the current working directory. That's a fixable mistake, though, if/when it happens. Taking huge amounts of time unnecessarily diff'ing the LayoutTests directory is a fixed cost that is unavoidable and unfixable. How long is a huge amount of time? Here are some stats from my laptop. In the first run, I suspect webkit was not in my disk cache (since I recently compiled another checkout): ~/svn/webkit3$ time svn diff real0m23.437s user0m1.936s sys 0m7.531s In the second run, I suspect webkit was in my disk cache: ~/svn/webkit3$ time svn diff real0m8.929s user0m2.019s sys 0m6.012s ~/svn/webkit3$ svn --version svn, version 1.6.3 (r38063) If the diff is taking much longer than these times, you probably have a borked SVN working copy. We've seen really slow working copies when the working copy was created with SVN 1.5 and then upgraded to 1.6. If your SVN is slow, you might consider blowing away your working copy and making a new one with SVN 1.6. Adam ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] webkit-patch and SVN
On Wed, Apr 14, 2010 at 2:13 PM, Eric Seidel e...@webkit.org wrote: Question: Do SVN users wish to have webkit-patch be current-working-directory aware? [snip] The propose change will make webkit-patch inconsistent between VCS tools, but consistent with the users choice of SVN vs. Git. Is this SVN users desired behavior? I will surprise myself here and say that webkit-patch should do things the SVN way when using SVN and the Git way when using Git. Normally I am in favor of having VCS wrappers paper over the differences between systems, but from experience I can say that when using SVN I often have multiple changes in flight in a single checkout, whereas Git makes that very difficult. Since this means you can't get the SVN way using Git, it would mean that we'd have to use the Git way when using SVN, which would remove useful functionality and, as Geoffrey Garen point out, make submitting via SVN substantially slower to boot. -- Dirk -eric ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] webkit-patch and SVN
On Apr 14, 2010, at 2:13 PM, Eric Seidel wrote: Anders brought to my attention this afternoon that webkit-patch currently does all SVN operations from the root directory instead of being current-directory aware. That behavior matches how Git operates, but does not need to be how webkit-patch operates. Question: Do SVN users wish to have webkit-patch be current-working-directory aware? Meaning: upload will only prepare-ChangeLog for the current directory and upload an svn diff under the current directory. land will only land the current subdirectory. The propose change will make webkit-patch inconsistent between VCS tools, but consistent with the users choice of SVN vs. Git. Is this SVN users desired behavior? As an SVN user, I would prefer if webkit-patch operations that create a patch worked on the current directory or below, and failed if you are in a directory that does not contain a ChangeLog. I sometimes have independently landable patches in JavaScriptCore an in WebCore +LayoutTests and it is handy to be able to use webkit-patch without having to locally revert one of the two patches. Regards, Maciej ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] webkit-patch and SVN
2010/4/15 Dirk Pranke dpra...@chromium.org: On Wed, Apr 14, 2010 at 2:13 PM, Eric Seidel e...@webkit.org wrote: Question: Do SVN users wish to have webkit-patch be current-working-directory aware? [snip] The propose change will make webkit-patch inconsistent between VCS tools, but consistent with the users choice of SVN vs. Git. Is this SVN users desired behavior? I will surprise myself here and say that webkit-patch should do things the SVN way when using SVN and the Git way when using Git. Normally I am in favor of having VCS wrappers paper over the differences between systems, but from experience I can say that when using SVN I often have multiple changes in flight in a single checkout, whereas Git makes that very difficult. How so? You can stage or commit single files or directories, even a single chunk of the changes within a file if you use the interactive add. git diff also can show changes in a single file or directory, git log can show the changelog for single file or directory... All you need to do is to give the file or directory on the command line, separated with -- in case there is (possibility of) a clash with a symbolic commit name (tag or branch). Since this means you can't get the SVN way using Git, it would mean that we'd have to use the Git way when using SVN, which would remove useful functionality and, as Geoffrey Garen point out, make submitting via SVN substantially slower to boot. Given the above, I believe it would be quite possible to make the git part of the script cwd-aware too. -- Kalle Vahlman, z...@iki.fi Powered by http://movial.com Interesting stuff at http://sandbox.movial.com See also http://syslog.movial.fi ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] webkit-patch and SVN
On Wed, Apr 14, 2010 at 9:49 PM, Kalle Vahlman kalle.vahl...@gmail.com wrote: 2010/4/15 Dirk Pranke dpra...@chromium.org: On Wed, Apr 14, 2010 at 2:13 PM, Eric Seidel e...@webkit.org wrote: Question: Do SVN users wish to have webkit-patch be current-working-directory aware? [snip] The propose change will make webkit-patch inconsistent between VCS tools, but consistent with the users choice of SVN vs. Git. Is this SVN users desired behavior? I will surprise myself here and say that webkit-patch should do things the SVN way when using SVN and the Git way when using Git. Normally I am in favor of having VCS wrappers paper over the differences between systems, but from experience I can say that when using SVN I often have multiple changes in flight in a single checkout, whereas Git makes that very difficult. How so? You can stage or commit single files or directories, even a single chunk of the changes within a file if you use the interactive add. git diff also can show changes in a single file or directory, git log can show the changelog for single file or directory... All you need to do is to give the file or directory on the command line, separated with -- in case there is (possibility of) a clash with a symbolic commit name (tag or branch). You're right about that. I was thinking more of things like svn status only looks at the subtree whereas git status will always look at the whole tree. This makes it easy for people to write tools on top of SVN for managing multiple changes in flight at once (like gclient), whereas I've not seen people try to do that with Git (you could do it with 'git stash', but, of course, Git has so many knobs you can do just about anything). -- Dirk ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev