2010-04-29 Yaar Schnitman <yaar@chromium.org>
[WebKit-https.git] / WebKitTools / ChangeLog
1 2010-04-28  Ojan Vafai  <ojan@chromium.org>
2
3         Reviewed by Eric Seidel.
4
5         webkit-patch doesn't work if a git repo is tracking multiple svn repos
6         https://bugs.webkit.org/show_bug.cgi?id=38290
7         
8         Getting the tests to pass required getting our SVN repo to more closely
9         match the real svn.webkit.org repo by having a trunk directory.
10         That involved adding an extra commit at the beginning and thus changing
11         all the commit numbers in the tests.
12
13         * Scripts/webkitpy/common/checkout/scm.py:
14
15 2010-04-29  Eric Seidel  <eric@webkit.org>
16
17         Reviewed by Adam Barth.
18
19         new-run-webkit-tests can deadlock with Chromium's TestShell
20         https://bugs.webkit.org/show_bug.cgi?id=38298
21
22         Fix _write_command_and_read_line to never send unicode() to
23         test_shell, instead to always encode as utf-8.  This was causing
24         random hangs because if test_shell ever encounters a \0 in the
25         stream it can deadlock with NRWT.
26
27         There is still a deadlock bug to fix in NRWT/test_shell design, however
28         this fix should make the deadlock occur less often.
29
30         * Scripts/webkitpy/layout_tests/port/chromium.py:
31         * Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
32
33 2010-04-29  Chris Jerdonek  <cjerdonek@webkit.org>
34
35         Reviewed by Eric Seidel.
36
37         Refactored svn-apply and svn-unapply to use the new
38         parsePatch() subroutine.
39
40         https://bugs.webkit.org/show_bug.cgi?id=34033
41
42         * Scripts/VCSUtils.pm:
43           - Consolidated %diffHash documentation.
44           - Added prepareParsedPatch().
45
46         * Scripts/svn-apply:
47           - Replaced main while loop with calls to parsePatch() and
48             prepareParsedPatch().
49
50         * Scripts/svn-unapply:
51           - Replaced main while loop with calls to parsePatch() and
52             prepareParsedPatch().
53
54         * Scripts/test-webkitperl:
55           - Changed to render relative test paths rather than absolute
56             test paths.
57
58         * Scripts/webkitperl/VCSUtils_unittest/prepareParsedPatch.pl: Added.
59           - Added unit tests for prepareParsedPatch().
60
61 2010-04-28  Chris Jerdonek  <cjerdonek@webkit.org>
62
63         Reviewed by Eric Seidel.
64
65         Added to VCSUtils's parseDiffHeader() support for binary patches.
66
67         https://bugs.webkit.org/show_bug.cgi?id=38094
68
69         The parseDiffHeader() function is part of new patch-parsing code
70         for svn-apply and svn-unapply that will go live in a subsequent
71         revision.
72
73         * Scripts/VCSUtils.pm:
74           - Added logic to parseDiffHeader() to recognize the ending of
75             the header portion of a binary diff.
76
77         * Scripts/webkitperl/VCSUtils_unittest/parseDiffHeader.pl:
78           - Added unit test cases for SVN and Git binary diffs.
79
80 2010-04-28  Eric Seidel  <eric@webkit.org>
81
82         Reviewed by David Levin.
83
84         Document that subprocess.poll/wait are not threadsafe
85         https://bugs.webkit.org/show_bug.cgi?id=38289
86
87         * Scripts/webkitpy/common/system/executive.py:
88         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
89         * Scripts/webkitpy/layout_tests/port/chromium.py:
90         * Scripts/webkitpy/layout_tests/port/http_server.py:
91         * Scripts/webkitpy/layout_tests/port/server_process.py:
92         * Scripts/webkitpy/layout_tests/port/websocket_server.py:
93
94 2010-04-28  Chris Jerdonek  <cjerdonek@webkit.org>
95
96         Reviewed by Daniel Bates.
97
98         Removed the dividing line (i.e. "====...") logic from the code
99         called by svn-apply and svn-unapply.
100
101         https://bugs.webkit.org/show_bug.cgi?id=38093
102
103         The dividing line logic is unnecessary.  Removing it simplifies the
104         code and makes some subsequent changes easier.
105
106         * Scripts/VCSUtils.pm:
107           - Removed the logic in gitdiff2svndiff() to convert the git
108             "index" line to an SVN dividing line.
109           - Adjusted the logic similarly in parseDiffHeader().
110
111         * Scripts/webkitperl/VCSUtils_unittest/gitdiff2svndiff.pl:
112           - Updated the unit tests as necessary.
113
114         * Scripts/webkitperl/VCSUtils_unittest/parseDiff.pl:
115           - Updated the unit tests as necessary.
116           - Corrected an error in the unit tests whereby all elements
117             of an array were referencing the same element rather than
118             distinct elements -- causing unit test failures to be masked.
119
120         * Scripts/webkitperl/VCSUtils_unittest/parseDiffHeader.pl:
121           - Updated the unit tests as necessary.
122           - Made the same unit test correction as above for parseDiff.pl.
123
124 2010-04-28  Evan Stade  <estade@chromium.org>
125
126         Unreviewed.
127
128         * Scripts/webkitpy/common/config/committers.py: adding myself as a committer
129
130 2010-04-28  Sam Weinig  <sam@webkit.org>
131
132         Reviewed by Mark Rowe.
133
134         Add MiniBrowser to the lists of modules to build and only build it on
135         SnowLeopard and later.
136
137         * Makefile:
138         * MiniBrowser/Makefile:
139
140 2010-04-28  Sam Weinig  <sam@webkit.org>
141
142         Reviewed by Mark Rowe.
143
144         Make running MiniBrowser.app without explicitly setting DYLD_FRAMEWORK_PATH.
145
146         * MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj:
147         * MiniBrowser/mac/make-launchable.sh: Added.
148
149 2010-04-28  Eric Seidel  <eric@webkit.org>
150
151         Reviewed by David Levin.
152
153         Audit all uses of subprocess in webkitpy
154         https://bugs.webkit.org/show_bug.cgi?id=38284
155
156         After further discussions with Jeffrey Yasskin
157         about http://bugs.python.org/issue2320
158         and related issues of using subprocess from
159         multiple threads, I have learned that subprocess
160         is known to be non-threadsafe through recent
161         Python 2.7 builds.
162
163         I'm attempting to lessen our exposure to these
164         subprocess bugs by auditing each use of subprocess
165         in webkitpy.  I did not find any unsafe calls
166         in my audit, but I did remove numerous unneeded
167         import subprocess lines.
168
169         * Scripts/webkitpy/common/checkout/api.py:
170         * Scripts/webkitpy/common/net/bugzilla.py:
171         * Scripts/webkitpy/common/system/deprecated_logging_unittest.py:
172         * Scripts/webkitpy/common/system/user.py:
173         * Scripts/webkitpy/layout_tests/port/base.py:
174         * Scripts/webkitpy/layout_tests/port/chromium_linux.py:
175         * Scripts/webkitpy/layout_tests/port/chromium_mac.py:
176         * Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py: Added.
177         * Scripts/webkitpy/layout_tests/port/chromium_win.py:
178         * Scripts/webkitpy/layout_tests/port/gtk.py:
179         * Scripts/webkitpy/layout_tests/port/mac.py:
180         * Scripts/webkitpy/layout_tests/port/qt.py:
181         * Scripts/webkitpy/layout_tests/port/webkit.py:
182         * Scripts/webkitpy/layout_tests/port/win.py:
183
184 2010-04-28  Darin Adler  <darin@apple.com>
185
186         Ignore a directory the Python tools creates.
187
188         * Scripts/webkitpy/style: Modified property svn:ignore.
189
190 2010-04-28  Darin Adler  <darin@apple.com>
191
192         * Scripts/extract-localizable-strings: Fix minor mistake in
193         argument checking.
194
195 2010-04-28  Luiz Agostini  <luiz.agostini@openbossa.org>
196
197         Reviewed by Kenneth Rohde Christiansen.
198
199         [Qt] QWebPage viewMode property
200         https://bugs.webkit.org/show_bug.cgi?id=38119
201
202         Replacing method qt_wrt_setViewMode by wrt_viewMode property.
203
204         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
205         (LayoutTestController::setViewModeMediaFeature):
206
207 2010-04-28  Chris Jerdonek  <cjerdonek@webkit.org>
208
209         Reviewed by Shinichiro Hamaji.
210
211         Adjusted check-webkit-style so that files with file type NONE
212         are automatically skipped without warning.
213
214         https://bugs.webkit.org/show_bug.cgi?id=38197
215
216         This change simplifies configuring which files to skip.  It also
217         addresses an issue whereby check-webkit-style was unintentionally
218         checking .vcproj files for carriage returns.
219
220         * Scripts/webkitpy/style/checker.py:
221           - Moved the C++, Python, and text file extensions to new
222             module-level configuration variables.
223           - Removed .pyc from the _SKIPPED_FILES_WITHOUT_WARNING configuration
224             variable.
225           - Changed the numeric values of the FileType enum so that
226             FileType.NONE evaluates to False.
227           - For ProcessorDispatcher.should_skip_without_warning():
228             - Changed the method to return True for FileType.NONE files.
229             - Made ChangeLog files an exception to getting skipped.
230           - Changed the StyleProcessor.process() method to raise an
231             exception if given a file path that should not be processed.
232
233         * Scripts/webkitpy/style/checker_unittest.py:
234           - Updated the unit tests and added more test cases as necessary.
235
236 2010-04-28  Eric Seidel  <eric@webkit.org>
237
238         Reviewed by Jeremy Orlow.
239
240         webkitpy: ScriptError('Failed to run "[u\'taskkill.exe\', u\'/f\', u\'/im\', u\'httpd.exe\']" exit_code: 128',)
241         https://bugs.webkit.org/show_bug.cgi?id=38248
242
243         The previous code did not check the return code of taskkill.
244         When I moved that callsite from using subprocess.call to
245         Executive.run_command having a non-zero return code became an error.
246
247         In this change I've centralized our killall handling in executive,
248         and added tests for it to make sure it works.
249
250         Currently kill_process and kill_all swallow exceptions in the cases
251         where the process(es) to be killed do(es) not exist.
252
253         * Scripts/webkitpy/common/system/executive.py:
254         * Scripts/webkitpy/common/system/executive_unittest.py:
255         * Scripts/webkitpy/layout_tests/port/chromium_linux.py:
256         * Scripts/webkitpy/layout_tests/port/chromium_mac.py:
257         * Scripts/webkitpy/layout_tests/port/chromium_win.py:
258         * Scripts/webkitpy/layout_tests/port/gtk.py:
259         * Scripts/webkitpy/layout_tests/port/mac.py:
260         * Scripts/webkitpy/layout_tests/port/qt.py:
261         * Scripts/webkitpy/layout_tests/port/win.py:
262
263 2010-04-28  Eric Seidel  <eric@webkit.org>
264
265         Reviewed by Shinichiro Hamaji.
266
267         wdiff_text throws ScriptError because wdiff returns non-zero when files differ
268         https://bugs.webkit.org/show_bug.cgi?id=38246
269
270         wdiff returns 0 when files are the same, 1 when they differ.
271         run_command by default raises ScriptError if the return code is non-zero.
272         Fixed this by adding a custom error handler which only raises if the
273         return code is not 1.
274
275         I broke up the huge wdiff_text() method into little pieces
276         for easier unit testing.  There is only one functional change here
277         and that is the addition of the custom error handler.
278
279         * Scripts/webkitpy/layout_tests/port/base.py:
280         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
281
282 2010-04-28  Fumitoshi Ukai  <ukai@chromium.org>
283
284         Unreviewed build fix.
285
286         * DumpRenderTree/chromium/TestShell.cpp:
287         (TestShell::dumpImage): format '%u' expects type 'unsigned int', but argument 2 has type 'size_t'.
288         * DumpRenderTree/chromium/WebViewHost.cpp:
289         (WebViewHost::willSendRequest): too few arguments for format.
290
291 2010-04-27  Shinichiro Hamaji  <hamaji@chromium.org>
292
293         Reviewed by Darin Adler and Eric Seidel.
294
295         Add layoutTestController.setPrinting()
296         https://bugs.webkit.org/show_bug.cgi?id=37203
297
298         * DumpRenderTree/LayoutTestController.cpp:
299         (LayoutTestController::LayoutTestController):
300         (setPrintingCallback):
301         (LayoutTestController::staticFunctions):
302         * DumpRenderTree/LayoutTestController.h:
303         (LayoutTestController::isPrinting):
304         (LayoutTestController::setIsPrinting):
305         * DumpRenderTree/mac/DumpRenderTree.mm:
306         (dump):
307
308 2010-04-27  Michael Nordman  <michaeln@google.com>
309
310         Reviewed by Dmitry Titov.
311
312         [Chromium] Add two things to the webkit API to support appcaches in workers.
313         1) WebURLRequest TargetTypes for worker and shared worker main resources.
314         2) Factory method on class WebCommonWorkerClient to
315            createApplicationCacheHost() for the associated worker.
316
317         https://bugs.webkit.org/show_bug.cgi?id=38147
318
319         * DumpRenderTree/chromium/TestWebWorker.h add a stub impl of the factory method 
320         (TestWebWorker::createApplicationCacheHost):
321
322 2010-04-27  Adam Barth  <abarth@webkit.org>
323
324         Reviewed by Eric Seidel.
325
326         run-bindings-tests doesn't work in an SVN checkout
327         https://bugs.webkit.org/show_bug.cgi?id=38225
328
329         Previously detect_scm_system needed an absolute path for SVN.  Now we
330         accept a relative path.
331
332         * Scripts/webkitpy/common/checkout/scm.py:
333         * Scripts/webkitpy/common/checkout/scm_unittest.py:
334
335 2010-04-27  Sam Weinig  <sam@webkit.org>
336
337         Reviewed by Stephanie Lewis.
338
339         Always build WebKit2 when building on SnowLeopard and later. 
340
341         * Scripts/build-webkit:
342
343 2010-04-27  Sam Weinig  <sam@webkit.org>
344
345         Reviewed by Maciej Stachowiak.
346
347         Fix for https://bugs.webkit.org/show_bug.cgi?id=38238
348         Allow both WebKit and WebKit2 to link to the same WebCore.framework
349
350         * Scripts/build-webkit: Remove the UMBRELLA_LDFLAGS override when building
351         WebCore for WebKit2, it is no longer necessary.
352
353 2010-04-27  James Robinson  <jamesr@chromium.org>
354
355         Reviewed by David Levin.
356
357         Fix a typo in chromium.py that causes NRWT to fail in --verbose
358         mode in a Chromium checkout.
359         https://bugs.webkit.org/show_bug.cgi?id=38234
360
361         * Scripts/webkitpy/layout_tests/port/chromium.py:
362
363 2010-04-27  Darin Fisher  <darin@chromium.org>
364
365         Reviewed by Dimitri Glazkov.
366
367         [Chromium] Remove deprecated form of didChangeLocationWithinPage
368         https://bugs.webkit.org/show_bug.cgi?id=38178
369
370         Switch over to implementing didNavigateWithinPage.
371
372         * DumpRenderTree/chromium/WebViewHost.cpp:
373         (TestWebViewDelegate::didNavigateWithinPage):
374         (WebViewHost::didChangeLocationWithinPage):
375         * DumpRenderTree/chromium/WebViewHost.h:
376
377 2010-04-27  Evan Martin  <evan@chromium.org>
378
379         Unreviewed.
380
381         Adding myself to commmitters list.
382
383         * Scripts/webkitpy/common/config/committers.py:
384
385 2010-04-27  Adam Barth  <abarth@webkit.org>
386
387         Reviewed by Darin Adler.
388
389         run-bindings-tests should use --reset-results instead of --overwrite
390         https://bugs.webkit.org/show_bug.cgi?id=38200
391
392         As requested by Ojan.
393
394         * Scripts/run-bindings-tests:
395
396 2010-04-27  Adam Barth  <abarth@webkit.org>
397
398         Reviewed by Eric Seidel.
399
400         REGRESSION(r58261): webkit-patch edit-changelogs is broken
401         https://bugs.webkit.org/show_bug.cgi?id=38204
402
403         In 58261, we added code to abstract step that interrogates the squash
404         and git_commit options, but it doesn't declare that it uses those
405         options.  That means any command that doesn't happen to declare those
406         options might be broken if it uses the cached_lookup mechanism.
407
408         * Scripts/webkitpy/tool/steps/abstractstep.py:
409         * Scripts/webkitpy/tool/steps/applypatch.py:
410         * Scripts/webkitpy/tool/steps/applypatchwithlocalcommit.py:
411         * Scripts/webkitpy/tool/steps/build.py:
412         * Scripts/webkitpy/tool/steps/checkstyle.py:
413         * Scripts/webkitpy/tool/steps/cleanworkingdirectory.py:
414         * Scripts/webkitpy/tool/steps/closebug.py:
415         * Scripts/webkitpy/tool/steps/closebugforlanddiff.py:
416         * Scripts/webkitpy/tool/steps/commit.py:
417         * Scripts/webkitpy/tool/steps/confirmdiff.py:
418         * Scripts/webkitpy/tool/steps/createbug.py:
419         * Scripts/webkitpy/tool/steps/ensurebuildersaregreen.py:
420         * Scripts/webkitpy/tool/steps/ensurelocalcommitifneeded.py:
421         * Scripts/webkitpy/tool/steps/obsoletepatches.py:
422         * Scripts/webkitpy/tool/steps/postcodereview.py:
423         * Scripts/webkitpy/tool/steps/postdiff.py:
424         * Scripts/webkitpy/tool/steps/preparechangelog.py:
425         * Scripts/webkitpy/tool/steps/runtests.py:
426         * Scripts/webkitpy/tool/steps/update.py:
427         * Scripts/webkitpy/tool/steps/updatechangelogswithreviewer.py:
428         * Scripts/webkitpy/tool/steps/validatereviewer.py:
429
430 2010-04-27  Eric Seidel  <eric@webkit.org>
431
432         Reviewed by David Levin.
433
434         prepare-ChangeLog --bug fails on some CYGWIN installs due to missing certs
435         https://bugs.webkit.org/show_bug.cgi?id=38212
436
437         * Scripts/prepare-ChangeLog:
438          - Pass --insecure to curl to work around CYGWIN missing certs.
439
440 2010-04-27  Sam Weinig  <sam@webkit.org>
441
442         Rubber-stamped by Beth Dakin.
443
444         It is no longer necessary to set ENABLE_EXPERIMENTAL_SINGLE_VIEW_MODE
445         or WTF_USE_WEB_THREAD. Remove them.
446
447         * Scripts/build-webkit:
448
449 2010-04-27  Chris Jerdonek  <cjerdonek@webkit.org>
450
451         Reviewed by David Levin.
452
453         Changed Chris Jerdonek from committer to reviewer.
454
455         * Scripts/webkitpy/common/config/committers.py:
456
457 2010-04-27  Benjamin Poulain  <benjamin.poulain@nokia.com>
458
459         Reviewed by Kenneth Rohde Christiansen.
460
461         [Qt] QGraphicsWebView: Arrow keys scroll the graphics-view instead of the web-page
462         https://bugs.webkit.org/show_bug.cgi?id=35834
463
464         The scene should always have the size of the web view otherwhise it is
465         possible to scroll the graphics view.
466
467         * QtLauncher/webview.cpp:
468         (WebViewGraphicsBased::resizeEvent):
469
470 2010-04-27  Diego Gonzalez  <diegohcg@webkit.org>
471
472         Unreviewed.
473
474         Adding myself to committers.py
475
476         * Scripts/webkitpy/common/config/committers.py:
477
478 2010-04-27  Eric Seidel  <eric@webkit.org>
479
480         Reviewed by Adam Barth.
481
482         [chromium] new-run-webkit-tests hangs on Chromium Bots (OS X and Linux)
483         https://bugs.webkit.org/show_bug.cgi?id=37987
484
485         After further research, I believe the hang is caused by:
486         http://bugs.python.org/issue2320
487         Basically Popen() is not reentrant.
488         The workaround is to pass close_fds=True to Popen() on Mac/Linux.
489
490         I fixed our main Popen wrapper "Executive.run_command" to use close_fds=True
491         when appropriate.
492
493         I audited all places we call Popen() and either moved them to run_command
494         or left a FIXME that they are not thread safe.  A few places I added the
495         close_fds workaround there and left an explanitory note.
496
497         * Scripts/webkitpy/common/checkout/scm_unittest.py:
498          - Added note that this Popen use is not threadsafe.
499         * Scripts/webkitpy/common/system/executive.py:
500          - Fixed our Executive.run_* to workaround python bug 2320.
501         * Scripts/webkitpy/common/system/user.py:
502          _ Added note that this Popen use is not threadsafe.
503         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: ditto.
504         * Scripts/webkitpy/layout_tests/port/apache_http_server.py: ditto.
505         * Scripts/webkitpy/layout_tests/port/base.py:
506          - Change wdiff back to using run_command now that we believe it
507            to be threadsafe.
508         * Scripts/webkitpy/layout_tests/port/chromium.py:
509          - Fix to use Executive in places.
510          - Pass self._executive down to the Driver for easier unit testing.
511         * Scripts/webkitpy/layout_tests/port/chromium_win.py:
512          - Re-factor to use a _kill_all method.
513          - Made the _kill_all method use run_command to be threadsafe.
514         * Scripts/webkitpy/layout_tests/port/http_server.py:
515          - Add FIXME about using Executive.
516         * Scripts/webkitpy/layout_tests/port/server_process.py:
517          - Use Executive to be threadsafe.
518         * Scripts/webkitpy/layout_tests/port/webkit.py:
519          - Pass self._executive down to the Driver.
520         * Scripts/webkitpy/layout_tests/port/websocket_server.py:
521          - Add note about Popen not being threadsafe.
522         * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py:
523          - Move one caller to run_command add notes about moving others.
524
525 2010-04-27  Adam Barth  <abarth@webkit.org>
526
527         Reviewed by Maciej Stachowiak.
528
529         REGRESSION(r58261): webkit-patch upload does not work in an SVN checkout.
530         https://bugs.webkit.org/show_bug.cgi?id=38186
531
532         Unfortunately, we don't have a good way of testing this change because
533         our test coverage of the scm.py API is poor...
534
535         * Scripts/webkitpy/common/checkout/scm.py:
536         * Scripts/webkitpy/tool/steps/preparechangelog.py:
537
538 2010-04-26  Eric Seidel  <eric@webkit.org>
539
540         Reviewed by Adam Barth.
541
542         Remove unused code from text_diff.py
543         https://bugs.webkit.org/show_bug.cgi?id=38170
544
545         * Scripts/webkitpy/layout_tests/test_types/text_diff.py:
546          - Remove is_render_tree_dump which appears unused.
547
548 2010-04-26  Adam Barth  <abarth@webkit.org>
549
550         Reviewed by Eric Seidel.
551
552         webkit-patch pretty-diff is broken
553         https://bugs.webkit.org/show_bug.cgi?id=38172
554
555         We need to register for these options because they're used when we look
556         up the diff.
557
558         * Scripts/webkitpy/tool/steps/confirmdiff.py:
559
560 2010-04-26  Adam Barth  <abarth@webkit.org>
561
562         Reviewed by Eric Seidel.
563
564         Add ObjC and GObject to run-bindings-test
565         https://bugs.webkit.org/show_bug.cgi?id=38168
566
567         * Scripts/run-bindings-tests:
568
569 2010-04-26  Adam Barth  <abarth@webkit.org>
570
571         Reviewed by Eric Seidel.
572
573         Add testing infrastructure for JSC bindings generator
574         https://bugs.webkit.org/show_bug.cgi?id=38167
575
576         Add support for testing more than one bindings.  Also, converted the
577         script to PEP8 style.
578
579         * Scripts/run-bindings-tests:
580
581 2010-04-26  Eric Seidel  <eric@webkit.org>
582
583         Reviewed by Adam Barth.
584
585         Refactor results.html generation out into a new method and test it
586         https://bugs.webkit.org/show_bug.cgi?id=38164
587
588         Hopefully this results in no change in functionality.
589
590         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
591         * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py:
592
593 2010-04-26  Adam Barth  <abarth@webkit.org>
594
595         Unreviewed, rolling out r58265.
596         http://trac.webkit.org/changeset/58265
597         https://bugs.webkit.org/show_bug.cgi?id=38021
598
599         This change prevents me from uploading patches.  It also breaks sheriff-bot.
600
601         * Scripts/webkitpy/tool/steps/options.py:
602
603 2010-04-26  Eric Seidel  <eric@webkit.org>
604
605         Reviewed by Adam Barth.
606
607         [chromium] new-run-webkit-tests hangs on Chromium Bots (OS X and Linux)
608         https://bugs.webkit.org/show_bug.cgi?id=37987
609
610         Rolled out:
611         http://trac.webkit.org/changeset/58062
612         http://trac.webkit.org/changeset/58060
613         http://trac.webkit.org/changeset/58059
614         http://trac.webkit.org/changeset/58055
615         http://trac.webkit.org/changeset/58054
616         and parts of:
617         http://trac.webkit.org/changeset/58050
618
619         I also wrote some new comments and a tiny amount of new
620         code to help make ChromiumDriver.run_test easier to read.
621
622         In order to unit-test my new code, I had to change ChromiumDriver
623         to not automatically start itself when created.  That ended up
624         being a lot of plumbing, but is hopefully easier to understand now.
625
626         There are no tests for the (restored) wdiff code.  wdiff does not
627         exist on all systems, so for now we will assume it worked since
628         it is just old code being reverted.
629
630          * Scripts/webkitpy/layout_tests/driver_test.py:
631           - Use create_driver instead of start_driver, and be sure to call .stop()
632          * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
633           - Use create_driver instead of start_driver
634          * Scripts/webkitpy/layout_tests/port/base.py:
635           - Added a comment to explain that diffs are binary files.
636           - Various patch reverts relating to wdiff
637           - Add Driver._command_wrapper to share code between WebKitDriver and ChromiumDriver.
638           - Made _command_wrapper use shlex.split to get rid of the FIXME.
639          * Scripts/webkitpy/layout_tests/port/base_unittest.py: Added.
640           - test the new _command_wrapper
641          * Scripts/webkitpy/layout_tests/port/chromium.py:
642          - Use _command_wrapper to get rid of a bunch of ugly code.
643          - Make __init__ stop auto-starting.
644          - Rename create_driver to start_driver.
645          - Added _write_command_and_read_line to make it possible to
646            put a FIXME next to read_line() w/o having to put it in two places.
647          - Moved test_shell command building into _test_shell_command and tested it.
648          - Fix comments to say test_shell since ChromiumDriver is test_shell only.
649          * Scripts/webkitpy/layout_tests/port/chromium_unittest.py: Added.
650           - Test the new test_shell_command method.
651          * Scripts/webkitpy/layout_tests/port/dryrun.py:
652           - Rename create_driver to start_driver.
653          * Scripts/webkitpy/layout_tests/port/test.py:
654           - Rename create_driver to start_driver.
655          * Scripts/webkitpy/layout_tests/port/webkit.py:
656           - Rename create_driver to start_driver.
657           - Treat output as binary arrays.
658          * Scripts/webkitpy/layout_tests/test_types/test_type_base.py:
659           - Treat diff files as binary.
660          * Scripts/webkitpy/layout_tests/test_types/text_diff.py:
661           - Treat diff files as binary.
662
663 2010-04-26  Adam Barth  <abarth@webkit.org>
664
665         Reviewed by Eric Seidel.
666
667         Move bindings test directory into the scripts directory
668         https://bugs.webkit.org/show_bug.cgi?id=38161
669
670         Change script to point to the new location of these data files.
671
672         * Scripts/run-bindings-tests:
673
674 2010-04-26  Adam Barth  <abarth@webkit.org>
675
676         Unreviewed.  Mark run-bindings-tests executable so we can execute it.
677
678         * Scripts/run-bindings-tests:
679
680 2010-04-26  Tony Chang  <tony@chromium.org>
681
682         Reviewed by David Levin.
683
684         [chromium] build-webkit --chromium should build release by default
685         https://bugs.webkit.org/show_bug.cgi?id=38028
686
687         * Scripts/build-dumprendertree: Also should build release by default
688         * Scripts/build-webkit: Make sure to pass command line args through
689         * Scripts/webkitdirs.pm: Build the right configuration
690
691 2010-04-26  Ojan Vafai  <ojan@chromium.org>
692
693         Reviewed by Eric Seidel.
694
695         complete rietveld bugzilla integration
696         https://bugs.webkit.org/show_bug.cgi?id=38021
697
698         Makes --fancy-review the default. All this means is that the patch will
699         be uploaded to rietveld in addition to bugs.webkit.org. 
700
701         * Scripts/webkitpy/tool/steps/options.py:
702
703 2010-04-26  Chris Jerdonek  <cjerdonek@webkit.org>
704
705         Reviewed by Shinichiro Hamaji.
706
707         For check-webkit-style, renamed the style/processors/ directory
708         to style/checkers/.
709
710         https://bugs.webkit.org/show_bug.cgi?id=38122
711
712         * Scripts/webkitpy/style/checker.py:
713           - Updated import statements.
714
715         * Scripts/webkitpy/style/checker_unittest.py:
716           - Updated import statements.
717
718         * Scripts/webkitpy/style/checkers: Copied from WebKitTools/Scripts/webkitpy/style/processors.
719         * Scripts/webkitpy/style/processors: Removed.
720         * Scripts/webkitpy/style/processors/__init__.py: Removed.
721         * Scripts/webkitpy/style/processors/common.py: Removed.
722         * Scripts/webkitpy/style/processors/common_unittest.py: Removed.
723         * Scripts/webkitpy/style/processors/cpp.py: Removed.
724         * Scripts/webkitpy/style/processors/cpp_unittest.py: Removed.
725         * Scripts/webkitpy/style/processors/python.py: Removed.
726         * Scripts/webkitpy/style/processors/python_unittest.py: Removed.
727         * Scripts/webkitpy/style/processors/python_unittest_input.py: Removed.
728         * Scripts/webkitpy/style/processors/text.py: Removed.
729         * Scripts/webkitpy/style/processors/text_unittest.py: Removed.
730
731 2010-04-06  Ojan Vafai  <ojan@chromium.org>
732
733         Reviewed by Adam Barth.
734
735         Include git commits in the diff for webkit-patch upload/land.
736         https://bugs.webkit.org/show_bug.cgi?id=36394
737
738         Adds --squash, --no-squash and --git-commit.
739
740         --git-commit will use a specific local commit for land/upload.
741         If a commit-range is specified, then that range is treated as
742         a single squashed commit.
743
744         --squash will squash all local changes including working copy changes
745         into a single patch.
746
747         --no-squash is the legacy behavior (upload only considers the working copy,
748         land commits the working copy and then each local commit separately to SVN)
749
750         If neither is specified, then an informative error is raised if there is
751         more than one local commit or when there are local commit(s) and working
752         copy changes.
753
754         If the webkit-patch.squash git config parameter is set, then
755         that will be respected instead of raising an error.
756
757         * Scripts/check-webkit-style:
758         * Scripts/webkitpy/common/checkout/api.py:
759         * Scripts/webkitpy/common/checkout/api_unittest.py:
760         * Scripts/webkitpy/common/checkout/scm.py:
761         * Scripts/webkitpy/common/checkout/scm_unittest.py:
762         * Scripts/webkitpy/style/optparser.py:
763         --git-since is removed and --git-commit no longer implies commit_id..
764         Instead, it treats that individual commit, but also supports commit ranges
765         (e.g. commit_id..) as arguments.
766         * Scripts/webkitpy/style/optparser_unittest.py:
767         * Scripts/webkitpy/style_references.py:
768         * Scripts/webkitpy/tool/commands/download.py:
769         * Scripts/webkitpy/tool/commands/upload.py:
770         * Scripts/webkitpy/tool/main.py:
771         * Scripts/webkitpy/tool/mocktool.py:
772         * Scripts/webkitpy/tool/steps/abstractstep.py:
773         * Scripts/webkitpy/tool/steps/applypatchwithlocalcommit.py:
774         * Scripts/webkitpy/tool/steps/checkstyle.py:
775         * Scripts/webkitpy/tool/steps/commit.py:
776         * Scripts/webkitpy/tool/steps/options.py:
777         * Scripts/webkitpy/tool/steps/postdiff.py:
778         * Scripts/webkitpy/tool/steps/preparechangelog.py:
779         * Scripts/webkitpy/tool/steps/preparechangelogforrevert.py:
780         * Scripts/webkitpy/tool/steps/updatechangelogswithreviewer.py:
781         * Scripts/webkitpy/tool/steps/validatereviewer.py:
782
783 2010-04-26  Chris Jerdonek  <cjerdonek@webkit.org>
784
785         Reviewed by Shinichiro Hamaji.
786
787         Deleted the StyleChecker-related classes that are no longer
788         being used.
789
790         https://bugs.webkit.org/show_bug.cgi?id=38118
791
792         * Scripts/webkitpy/style/checker.py:
793           - Deleted the DeprecatedStyleChecker class.
794
795         * Scripts/webkitpy/style/checker_unittest.py:
796           - Deleted the StyleCheckerTest, StyleCheckerCheckFileBase,
797             StyleCheckerCheckFileTest, and StyleCheckerCheckPathsTest classes.
798
799 2010-04-26  Chris Jerdonek  <cjerdonek@webkit.org>
800
801         Reviewed by Shinichiro Hamaji.
802
803         Changed the StyleChecker class to use the new TextFileReader class.
804
805         https://bugs.webkit.org/show_bug.cgi?id=37066
806
807         This revision separates the code responsible for reading and iterating
808         over text files from the rest of check-webkit-style.
809
810         * Scripts/check-webkit-style:
811           - Changed the script to use the new StyleProcessor and
812             TextFileReader classes instead of the StyleChecker class.
813
814         * Scripts/webkitpy/style/checker.py:
815           - Added a FIXME to rename many of uses of the word "processor" to
816             "checker".  We did this to clarify the difference between
817             ProcessorBase instances passed to the TextFileReader and
818             classes that process and check lines for style.
819           - Added a FIXME to remove FileType.NONE as a possible return value
820             of ProcessorDispatcher._file_type().  This will better consolidate
821             the logic of which files should be skipped.
822           - Added a FIXME to delete the StyleChecker class.
823           - Added the StyleProcessor class which implements ProcessorBase.
824             This class is responsible for processing lines to check style
825             (but not for reading files).  For each file, this class creates
826             creates both a carriage-return checker and a format-specific
827             style checker (e.g. one of C++, Python, etc).
828           - Updated the PatchChecker class to use a TextFileReader instance
829             instead of a StyleChecker.
830
831         * Scripts/webkitpy/style/checker_unittest.py:
832           - Added the StyleProcessor_EndToEndTest class to do "end-to-end"
833             tests of the StyleProcessor class.
834           - Added the StyleProcessor_CodeCoverageTest to test the
835             StyleProcessor class with more complete code coverage.
836             Unlike the StyleProcessor_EndToEndTest class, this class makes
837             heavy use of mock parameters.
838           - Added FIXME's to delete the unit test classes that are no
839             longer needed.
840           - Updated the PatchCheckerTest class to use a MockTextFileReader
841             instead of a MockStyleChecker.
842
843         * Scripts/webkitpy/style/filereader.py:
844           - Updated the TextFileReader class to use the preferred logic
845             of checking file existence at the beginning of the process_file()
846             method instead of in the except block, per
847             https://bugs.webkit.org/show_bug.cgi?id=37122
848
849         * Scripts/webkitpy/style/filereader_unittest.py:
850           - In the TextFileReaderTest class:
851             - Moved the test_process_file__should_not_process() method.
852             - Added a test_process_file__file_stdin() method to test
853               the file path "-".
854
855 2010-04-20  Robert Hogan  <robert@webkit.org>
856
857         Reviewed by Simon Hausmann.
858
859         [Qt] Add more support for textInputController
860
861         Add support for selectedRange(), setMarkedText(), insertText(),
862         and firstRectForCharacterRange().
863
864         Unskip tests:
865
866         fast/forms/input-maxlength-ime-preedit.html
867         fast/forms/input-maxlength-ime-completed.html
868         fast/text/international/thai-cursor-position.html
869         fast/events/ime-composition-events-001.html
870         editing/selection/5825350-1.html
871         editing/selection/5825350-2.html
872         editing/selection/mixed-editability-10.html
873
874         https://bugs.webkit.org/show_bug.cgi?id=35702
875
876         * DumpRenderTree/qt/TextInputControllerQt.cpp:
877         (TextInputController::setMarkedText):
878         (TextInputController::insertText):
879         (TextInputController::selectedRange):
880         (TextInputController::firstRectForCharacterRange):
881         * DumpRenderTree/qt/TextInputControllerQt.h:
882
883 2010-04-23  Eric Seidel  <eric@webkit.org>
884
885         Reviewed by Adam Barth.
886
887         check-webkit-style complains about non-utf8 data in layout test result
888         https://bugs.webkit.org/show_bug.cgi?id=38027
889
890         The problem was we were assuming patch files/diff output as utf-8.
891         Turns out they're not.  We have to treat them as binary data because
892         a single patch may have multiple text files in it with conflicting encodings!
893
894         * Scripts/webkitpy/common/checkout/api.py:
895          - contents_at_revision returns a byte array, so decode it to unicode
896            before passing it to parse_latest_entry_from_file
897         * Scripts/webkitpy/common/checkout/api_unittest.py:
898          - Update our mock mock_contents_at_revision to match the encoding
899            semantics of the real one.
900         * Scripts/webkitpy/common/checkout/scm.py:
901          - Be careful not to decode output which may contain file contents
902            (like diff, cat or show) as the encoding for that content is unknown.
903         * Scripts/webkitpy/common/checkout/scm_unittest.py:
904          - Update our tests to use both latin1 and utf-8 encoded data.
905         * Scripts/webkitpy/common/net/bugzilla.py:
906          - _fill_attachment_form should not assume unicode data.  Callers
907            may wish to attach other types of files to bugs.
908         * Scripts/webkitpy/common/prettypatch.py:
909          - Diffs are byte arrays, deal with them as such.
910         * Scripts/webkitpy/common/prettypatch_unittest.py:
911          - Test to make sure we handle diffs with multiple conflicting encodings.
912         * Scripts/webkitpy/common/system/executive_unittest.py:
913          - Make sure that our unicode support does not break our
914            byte array input support for run_command.
915
916 2010-04-23  Sam Weinig  <sam@webkit.org>
917
918         Reviewed by David Levin.
919
920         Fix for https://bugs.webkit.org/show_bug.cgi?id=38060
921         Split up Threading.h
922
923         Add necessary forwarding headers.
924
925         * DumpRenderTree/ForwardingHeaders/wtf/Atomics.h: Added.
926         * DumpRenderTree/ForwardingHeaders/wtf/ThreadSafeShared.h: Added.
927         * DumpRenderTree/ForwardingHeaders/wtf/ThreadingPrimitives.h: Added.
928
929 2010-04-23  Xiaomei Ji  <xji@chromium.org>
930
931         No need to review.
932
933         Add xji as committer.
934
935         * Scripts/webkitpy/common/config/committers.py:
936
937 2010-04-23  Kevin Ollivier  <kevino@theolliviers.com>
938
939         [wx] Build fix, add platform stub for new LayoutTestController method.
940
941         * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
942         (LayoutTestController::markerTextForListItem):
943
944 2010-04-19  Dirk Pranke  <dpranke@chromium.org>
945
946         Reviewed by Adam Barth.
947
948         new-run-webkit-tests: add a "--retry-failures" flag and a
949         "--no-retry-failures" flag (the former is the default). Also, rename
950         "--print-unexpected-results" and "--retry-unexpected-results" to
951         "--print-last-failures" and "--retry-last-failures" because the
952         retry flag was confusing. The new flag names aren't great, but
953         hopefully they're less confusing.
954
955         https://bugs.webkit.org/show_bug.cgi?id=37838
956
957         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
958
959 2010-04-22  Sam Weinig  <sam@webkit.org>
960
961         Reviewed by Anders Carlsson.
962
963         Fix for https://bugs.webkit.org/show_bug.cgi?id=38022
964         Move isMainThread predicate function to MainThread.h
965
966         Added forwarding header for MainThread.h
967
968         * DumpRenderTree/ForwardingHeaders/wtf/MainThread.h: Added.
969
970 2010-04-23  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
971
972         Reviewed by Kenneth Rohde Christiansen.
973
974         [Qt] Disable Netscape plugin support for minimal configuration
975         https://bugs.webkit.org/show_bug.cgi?id=38026
976
977         Pass the minimal configuration option to Qt build system 
978         as part of the CONFIG variable.
979
980         * Scripts/build-webkit:
981
982 2010-04-22  Fumitoshi Ukai  <ukai@chromium.org>
983
984         Unreviewed fix.
985
986         * Scripts/webkitpy/layout_tests/port/websocket_server.py: fix NameError: global name 'f' is not defined.
987
988 2010-04-22  James Robinson  <jamesr@chromium.org>
989
990         Reviewed by Adam Barth.
991
992         Revert 58077 and follow-ups.  It's broken.
993         https://bugs.webkit.org/show_bug.cgi?id=37664
994
995         * Scripts/new-run-webkit-httpd:
996         * Scripts/new-run-webkit-websocketserver:
997         * Scripts/webkitpy/layout_tests/port/chromium_win.py:
998         * Scripts/webkitpy/layout_tests/port/http_server.py:
999         * Scripts/webkitpy/layout_tests/port/websocket_server.py:
1000
1001 2010-04-22  Yaar Schnitman  <yaar@chromium.org>
1002
1003         Reviewed by Adam Barth.
1004
1005         Integrate v8 testing utility with webkit tests
1006         https://bugs.webkit.org/show_bug.cgi?id=37731
1007
1008         * Scripts/run-bindings-tests: Added.
1009
1010 2010-04-22  Eric Seidel  <eric@webkit.org>
1011
1012         Reviewed by Dimitri Glazkov.
1013
1014         new-run-webkit-tests --verbose shows ever-increasing #EOF lines
1015         https://bugs.webkit.org/show_bug.cgi?id=37794
1016
1017         * Scripts/webkitpy/layout_tests/port/webkit.py:
1018          - Remove the assert() since our ServerProcess code does not always
1019            seem to be reading the full stderr output (or we're not waiting for it to).
1020
1021 2010-04-22  Eric Seidel  <eric@webkit.org>
1022
1023         Reviewed by Adam Barth.
1024
1025         Add code to help debug new-run-webkit-test hangs on the Chromium bots
1026         https://bugs.webkit.org/show_bug.cgi?id=38011
1027
1028         I can see no reasonable way to test this change.
1029         Stubbing out sys._current_frames() and traceback.extract_stack
1030         seems folly.  Dumping real data would have line number
1031         (and possibly other call stack) variance between runs.
1032
1033         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1034          - Add _dump_thread_states and _dump_thread_states_if_necessary
1035            to have our main thread dump the states of all threads every
1036            60 seconds when running in verbose mode.
1037          - Better document what is going on in our main loop.
1038
1039 2010-04-22  Sam Weinig  <sam@webkit.org>
1040
1041         Reviewed by Anders Carlsson.
1042
1043         Fix for https://bugs.webkit.org/show_bug.cgi?id=38002
1044         Add rudimentary statistics gathering for WebKit2
1045
1046         * MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj:
1047         * MiniBrowser/mac/AppDelegate.h:
1048         * MiniBrowser/mac/AppDelegate.m:
1049         (-[BrowserAppDelegate init]):
1050         (-[BrowserAppDelegate newWindow:]):
1051         (-[BrowserAppDelegate getCurrentPageNamespace]):
1052         (-[BrowserAppDelegate _setProcessModel:]):
1053         (-[BrowserAppDelegate showStatisticsWindow:]):
1054         (-[BrowserAppDelegate applicationWillTerminate:]):
1055         * MiniBrowser/mac/BrowserStatisticsWindow.xib: Added.
1056         * MiniBrowser/mac/BrowserStatisticsWindowController.h: Added.
1057         * MiniBrowser/mac/BrowserStatisticsWindowController.m: Added.
1058         (-[BrowserStatisticsWindowController initWithThreadedWKContextRef:processWKContextRef:]):
1059         (-[BrowserStatisticsWindowController dealloc]):
1060         (-[BrowserStatisticsWindowController windowDidLoad]):
1061         (-[BrowserStatisticsWindowController refreshStatistics:]):
1062         * MiniBrowser/mac/BrowserWindowController.h:
1063         * MiniBrowser/mac/English.lproj/MainMenu.xib:
1064         * MiniBrowser/mac/MiniBrowser_Prefix.pch:
1065
1066 2010-04-22  Dave Moore  <davemoore@chromium.org>
1067
1068         Reviewed by Dimitri Glazkov.
1069
1070         Add test support for icon changes.
1071
1072         https://bugs.webkit.org/show_bug.cgi?id=33812
1073
1074         * DumpRenderTree/LayoutTestController.cpp:
1075         (LayoutTestController::LayoutTestController):
1076         (dumpIconChangesCallback):
1077         (LayoutTestController::staticFunctions):
1078         * DumpRenderTree/LayoutTestController.h:
1079         (LayoutTestController::dumpIconChanges):
1080         (LayoutTestController::setDumpIconChanges):
1081         * DumpRenderTree/win/FrameLoadDelegate.cpp:
1082         (FrameLoadDelegate::didChangeIcons):
1083         * DumpRenderTree/win/FrameLoadDelegate.h:
1084         * WinLauncher/WinLauncher.h:
1085         (WinLauncherWebHost::didChangeIcons):
1086
1087 2010-04-22  Eric Seidel  <eric@webkit.org>
1088
1089         Unreviewed.  Script fix.  Will ask dpranke to look tomorrow.
1090
1091         new-run-webkit-tests --verbose shows ever-increasing #EOF lines
1092         https://bugs.webkit.org/show_bug.cgi?id=37794
1093
1094         The bots are seeing cases where .error is sometimes empty.
1095         Lets make the code not crash in that case for now.
1096
1097         * Scripts/webkitpy/layout_tests/port/webkit.py:
1098
1099 2010-04-22  Fumitoshi Ukai  <ukai@chromium.org>
1100
1101         Unreviewed fix.
1102
1103         * Scripts/webkitpy/layout_tests/port/websocket_server.py: fix NameError: global name 'f' is not defined.
1104
1105 2010-04-22  Fumitoshi Ukai  <ukai@chromium.org>
1106
1107         Unreviewed fix.
1108
1109         * Scripts/new-run-webkit-websocketserver: PyWebSocket no longer takes keyword argument 'register_cygwin'.
1110
1111 2010-04-22  Eric Seidel  <eric@webkit.org>
1112
1113         Unreviewed.  Restore the Leopard bots to using
1114         old-run-webkit-tests for now.
1115
1116         * Scripts/run-webkit-tests:
1117
1118 2010-04-22  Fumitoshi Ukai  <ukai@chromium.org>
1119
1120         Unreviewed fix.
1121
1122         * Scripts/webkitpy/layout_tests/port/http_server.py: fix NameError: global name 'env' is not defined.
1123
1124 2010-04-22  Fumitoshi Ukai  <ukai@chromium.org>
1125
1126         Unreviewed fix.
1127
1128         * Scripts/webkitpy/layout_tests/port/websocket_server.py: fix NameError: global name 'env' is not defined.
1129
1130 2010-04-22  Fumitoshi Ukai  <ukai@chromium.org>
1131
1132         Reviewed by Adam Barth.
1133
1134         Chromium: Add --chromium option to new-run-webkit-websocketserver
1135         https://bugs.webkit.org/show_bug.cgi?id=37664
1136
1137         Move cygwin setup logic in chromium_win.py.
1138
1139         * Scripts/new-run-webkit-httpd: remove register_cygwin parameter to pass http_server.
1140         * Scripts/new-run-webkit-websocketserver: add --chromium flag
1141         * Scripts/webkitpy/layout_tests/port/chromium_win.py: setup for cygwin
1142         * Scripts/webkitpy/layout_tests/port/http_server.py: remove cygwin setup logic
1143         * Scripts/webkitpy/layout_tests/port/websocket_server.py: remove cygwin setup logic
1144
1145 2010-04-22  Eric Seidel  <eric@webkit.org>
1146
1147         Reviewed by Adam Barth.
1148
1149         new-run-webkit-tests --verbose shows ever-increasing #EOF lines
1150         https://bugs.webkit.org/show_bug.cgi?id=37794
1151
1152         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
1153          - Fix the log message to explain that this is stderr output, not test output.
1154         * Scripts/webkitpy/layout_tests/port/webkit.py:
1155          - Be sure to reset the server_process.error after reading (seems like the wrong
1156            place to do this, but at least this fixes the bug and dpranke and I can talk
1157            about better designs later).
1158          - Also remove the #EOF from the stderr output before returning it.
1159
1160 2010-04-22  Eric Seidel  <eric@webkit.org>
1161
1162         Unreviewed.  Fixing new-run-webkit-tests on the bots.
1163
1164         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1165          - Fixing _compat_shim_option to take variable keyword args.
1166          - Turns out that nargs + callback is ignored unless type is specified.
1167            So I added the type so that the option was properly consumed.
1168            This was why new-run-webkit-tests couldn't find any tests, it
1169            was looking for them under "20" because that was the argument
1170            which should have been consumed by --exit-after-n-failures.
1171
1172 2010-04-22  Tony Chang  <tony@chromium.org>
1173
1174         Not reviewed, build fix for chromium Windows.
1175
1176         [chromium] fix ImageDiff compile on windows
1177         https://bugs.webkit.org/show_bug.cgi?id=37979
1178
1179         * DumpRenderTree/chromium/ImageDiff.cpp:
1180
1181 2010-04-22  Adam Barth  <abarth@webkit.org>
1182
1183         Unreviewed, rolling out r58069.
1184         http://trac.webkit.org/changeset/58069
1185         https://bugs.webkit.org/show_bug.cgi?id=27751
1186
1187         Broke compile on Windows.
1188
1189         * DumpRenderTree/LayoutTestController.cpp:
1190         (LayoutTestController::staticFunctions):
1191         * DumpRenderTree/LayoutTestController.h:
1192         * DumpRenderTree/chromium/LayoutTestController.cpp:
1193         (LayoutTestController::LayoutTestController):
1194         (LayoutTestController::overridePreference):
1195         * DumpRenderTree/chromium/LayoutTestController.h:
1196         * DumpRenderTree/chromium/TestShell.cpp:
1197         (TestShell::resetWebSettings):
1198         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
1199         * DumpRenderTree/mac/DumpRenderTree.mm:
1200         (resetDefaultsToConsistentValues):
1201         * DumpRenderTree/mac/LayoutTestControllerMac.mm:
1202         * DumpRenderTree/qt/DumpRenderTreeQt.cpp:
1203         (WebCore::WebPage::WebPage):
1204         (WebCore::WebPage::resetSettings):
1205         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
1206         * DumpRenderTree/qt/LayoutTestControllerQt.h:
1207         * DumpRenderTree/win/DumpRenderTree.cpp:
1208         (resetDefaultsToConsistentValues):
1209         * DumpRenderTree/win/LayoutTestControllerWin.cpp:
1210         * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
1211
1212 2010-04-22  Eric Seidel  <eric@webkit.org>
1213
1214         Unreviewed.  Just adding logging.
1215
1216         Adding logging to help debug why the Leopard Bot
1217         can't find any tests to run.
1218
1219         * Scripts/webkitpy/layout_tests/layout_package/test_files.py:
1220         * Scripts/webkitpy/layout_tests/port/base.py:
1221         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1222          - Make it a fatal error to have no tests to run.
1223
1224 2010-04-22  Abhishek Arya  <inferno@chromium.org>
1225
1226         Reviewed by Adam Barth.
1227
1228         Add support for controlling clipboard access from javascript.
1229         Clipboard access from javascript is enabled in test framework.
1230         https://bugs.webkit.org/show_bug.cgi?id=27751
1231
1232         * DumpRenderTree/LayoutTestController.cpp:
1233         (setJavaScriptCanAccessClipboardCallback):
1234         (LayoutTestController::staticFunctions):
1235         * DumpRenderTree/LayoutTestController.h:
1236         * DumpRenderTree/chromium/LayoutTestController.cpp:
1237         (LayoutTestController::LayoutTestController):
1238         (LayoutTestController::setJavaScriptCanAccessClipboard):
1239         (LayoutTestController::overridePreference):
1240         * DumpRenderTree/chromium/LayoutTestController.h:
1241         * DumpRenderTree/chromium/TestShell.cpp:
1242         (TestShell::resetWebSettings):
1243         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
1244         (LayoutTestController::setJavaScriptCanAccessClipboard):
1245         * DumpRenderTree/mac/DumpRenderTree.mm:
1246         (resetDefaultsToConsistentValues):
1247         * DumpRenderTree/mac/LayoutTestControllerMac.mm:
1248         (LayoutTestController::setJavaScriptCanAccessClipboard):
1249         * DumpRenderTree/qt/DumpRenderTreeQt.cpp:
1250         (WebCore::WebPage::WebPage):
1251         (WebCore::WebPage::resetSettings):
1252         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
1253         (LayoutTestController::setJavaScriptCanAccessClipboard):
1254         * DumpRenderTree/qt/LayoutTestControllerQt.h:
1255         * DumpRenderTree/win/DumpRenderTree.cpp:
1256         (resetDefaultsToConsistentValues):
1257         * DumpRenderTree/win/LayoutTestControllerWin.cpp:
1258         (LayoutTestController::setJavaScriptCanAccessClipboard):
1259         * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
1260         (LayoutTestController::setJavaScriptCanAccessClipboard):
1261
1262 2010-04-21  Adam Barth  <abarth@webkit.org>
1263
1264         Reviewed by Eric Seidel.
1265
1266         webkit-patch can't fetch attachments on security bugs
1267         https://bugs.webkit.org/show_bug.cgi?id=37975
1268
1269         Instead of calling CURL, we just need to use our Mechanize object,
1270         which understand bugs.webkit.org authentication.
1271
1272         * Scripts/webkitpy/common/checkout/api.py:
1273         * Scripts/webkitpy/common/net/bugzilla.py:
1274
1275 2010-04-21  Eric Seidel  <eric@webkit.org>
1276
1277         Unreviewed.  Temporary commit, will roll-out before morning.
1278
1279         Turning on new-run-webkit-tests for the Leopard build bot
1280         for testing of the harness.
1281         Users should not noctice (except for the results.html difference).
1282
1283         * Scripts/run-webkit-tests:
1284
1285 2010-04-21  Eric Seidel  <eric@webkit.org>
1286
1287         Unreviewed.  Fix typo in my previous fix attempt.
1288
1289         REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø
1290         https://bugs.webkit.org/show_bug.cgi?id=37765
1291
1292         More on-the-bot debugging, sigh.  I wish I had a local build.
1293
1294         * Scripts/webkitpy/layout_tests/port/base.py:
1295
1296 2010-04-21  Eric Seidel  <eric@webkit.org>
1297
1298         Unreviewed.  Fix typo in my previous fix attempt.
1299
1300         REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø
1301         https://bugs.webkit.org/show_bug.cgi?id=37765
1302
1303         * Scripts/webkitpy/layout_tests/port/base.py:
1304          - Add self. to class variable access.
1305
1306 2010-04-21  Eric Seidel  <eric@webkit.org>
1307
1308         Unreviewed.  Another attempt to fix NRWT for chromium.
1309
1310         REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø
1311         https://bugs.webkit.org/show_bug.cgi?id=37765
1312
1313         * Scripts/webkitpy/layout_tests/port/base.py:
1314          - wdiff_text was returning a byte array instead of a
1315            unicode string.  The simple fix was to just decode
1316            the result.  However, seeing so much duplicated code
1317            with Executive made me cry, so I re-wrote the function
1318            to be more like pretty_patch_text and use run_command
1319            (which already knows how to handle unicode).
1320
1321 2010-04-21  Adam Barth  <abarth@webkit.org>
1322
1323         Reviewed by Eric Seidel.
1324
1325         Windows tests buildbots are too slow to be core builders
1326         https://bugs.webkit.org/show_bug.cgi?id=37970
1327
1328         It's 10:45.  The Windows test bots are still hours behind.  They're too
1329         slow to be core builders.  When they get fast, we can add them back.
1330
1331         * Scripts/webkitpy/common/net/buildbot.py:
1332         * Scripts/webkitpy/common/net/buildbot_unittest.py:
1333
1334 2010-04-21  Eric Seidel  <eric@webkit.org>
1335
1336         Unreviewed.  Attempt one more time to fix NRWT for chromium.
1337
1338         REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø
1339         https://bugs.webkit.org/show_bug.cgi?id=37765
1340
1341         I'm debugging in the blind because I don't have a chromium
1342         build on this laptop.
1343
1344         * Scripts/webkitpy/layout_tests/port/chromium.py:
1345          - Apply the previous fix to a second caller.
1346
1347 2010-04-21  Eric Seidel  <eric@webkit.org>
1348
1349         Unreviewed.  Attempt one more time to fix NRWT for chromium.
1350
1351         REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø
1352         https://bugs.webkit.org/show_bug.cgi?id=37765
1353
1354         * Scripts/webkitpy/layout_tests/port/chromium.py:
1355          - Fix handling of test_shell output so that we always
1356            decode it as utf-8.
1357            Unlike DumpRenderTree test_shell does not ever return
1358            pixel data.  It spits out the pixel dumps in a separate
1359            file, thus all output over stdout is utf-8 text.
1360
1361 2010-04-21  Eric Seidel  <eric@webkit.org>
1362
1363         Unreviewed.  Attempt one more time to fix NRWT for chromium.
1364
1365         REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø
1366         https://bugs.webkit.org/show_bug.cgi?id=37765
1367
1368         * Scripts/webkitpy/layout_tests/test_types/image_diff.py:
1369          - Pass encoding to _save_baseline_data and write_output_files
1370         * Scripts/webkitpy/layout_tests/test_types/test_type_base.py:
1371          - Make _save_baseline_data and write_output_files take an encoding.
1372         * Scripts/webkitpy/layout_tests/test_types/text_diff.py:
1373         - Pass encoding to _save_baseline_data and write_output_files
1374
1375 2010-04-21  No'am Rosenthal  <noam.rosenthal@nokia.com>
1376
1377         Reviewed by Kenneth Rohde Christiansen.
1378
1379         [Qt] QtLauncher: make FPS measurement accurate
1380         https://bugs.webkit.org/show_bug.cgi?id=37934
1381
1382         Instead of counting paints, which are not interchangeable with frames that
1383         the user sees, we now set an arbitrary timer for FPS measurements. The idea is
1384         that if the main thread is delayed for any reason, that timer would be delayed
1385         as well.
1386
1387         * QtLauncher/QtLauncher.pro:
1388         * QtLauncher/fpstimer.cpp: Added.
1389         (FpsTimer::FpsTimer):
1390         (FpsTimer::numFrames):
1391         (FpsTimer::start):
1392         (FpsTimer::stop):
1393         (FpsTimer::timerEvent):
1394         * QtLauncher/fpstimer.h: Added.
1395         * QtLauncher/webview.cpp:
1396         (WebViewGraphicsBased::setFrameRateMeasurementEnabled):
1397         (WebViewGraphicsBased::updateFrameRate):
1398         (WebViewGraphicsBased::paintEvent):
1399         * QtLauncher/webview.h:
1400
1401 2010-04-21  Eric Seidel  <eric@webkit.org>
1402
1403         Unreviewed, just adding missing ":" in python file.
1404
1405         REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø
1406         https://bugs.webkit.org/show_bug.cgi?id=37765
1407
1408         new-run-webkit-tests --chromium was borked.
1409
1410         * Scripts/webkitpy/layout_tests/port/chromium.py:
1411
1412 2010-04-21  Eric Seidel  <eric@webkit.org>
1413
1414         Reviewed by Adam Barth.
1415
1416         REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø
1417         https://bugs.webkit.org/show_bug.cgi?id=37765
1418
1419         Third time is the charm.  I've fixed all the
1420         new-run-webkit-tests regressions from previous attempts.
1421
1422         I fixed the queue to not ignore Tor as a reviwer in r57531,
1423         but instead it throws an exception every time his name is in a patch.
1424
1425         This fixes our Executive.run_command code to work around a Popen
1426         bug http://bugs.python.org/issue5290 whereby python versions before 2.6
1427         do not correctly handle unicode objects as input or output to
1428         Popen.communicate.
1429
1430         Following the advice of:
1431         http://farmdev.com/talks/unicode/
1432         I have changed all of webkitpy to use unicode() objects as strings
1433         instead of str objects (which in Python 3 are renamed "bytes").
1434
1435         String literals were left as "foo" instead of converting to u"foo"
1436         as u"foo" is only required if the string has a non-ascii code point.
1437         Python is smart about comparing str() and unicode() values and will
1438         log an error to the console if the comparison is ever invalid.
1439
1440         Executive.run* now correctly accept and return unicode() objects.
1441         I attempted to fix all the places that we call .write() to make sure we
1442         encode any unicode() objects into utf-8.
1443
1444         I removed several uses of StringIO.  StringIO should generally always be
1445         passed a unicode() value.
1446
1447         Likewise I replaced most calls to open() with codecs.open().
1448         codecs.open() matches Python 3 open semantics in requiring an encoding
1449         parameter.  Files opened with codecs.open() with a unicode-compatible
1450         encoding will vend unicode() objects from their read() calls, like how
1451         StringIO created with a unicode() object will do.
1452
1453         I also deployed "with" statements wider (now that the project has
1454         settled on Python 2.5) to close a bunch of file descriptor leaks.
1455
1456         * Scripts/webkitpy/common/checkout/api_unittest.py:
1457          - Read/write utf-8 files instead of ascii.
1458          - Update the tests to use test for proper unicode() handling.
1459         * Scripts/webkitpy/common/checkout/changelog.py:
1460          - Document that parse_latest_entry_from_file expects
1461            file-like objects which return unicode strings.
1462         * Scripts/webkitpy/common/checkout/changelog_unittest.py:
1463          - Use unicode() strings instead of str() byte arrays.
1464          - Deploy "with" to close file descriptor leaks.
1465         * Scripts/webkitpy/common/checkout/commitinfo.py:
1466          - Remove unneeded import.
1467         * Scripts/webkitpy/common/checkout/scm.py:
1468          - Remove use of str().
1469         * Scripts/webkitpy/common/checkout/scm_unittest.py:
1470          - Read/write utf-8 files and use unicode() strings in testing.
1471         * Scripts/webkitpy/common/config/committers.py:
1472          - Use \u instead of \x to make slightly clearer what we're doing.
1473         * Scripts/webkitpy/common/net/bugzilla.py:
1474          - Add a new _string_contents() method and explain why
1475             we have to call unicode() on the result of soup.string
1476             and why it's safe to do so w/o needing to pass a codec name.
1477           - Remove the (unused) support for passing a file object to add_patch_to_bug().
1478         * Scripts/webkitpy/common/net/buildbot.py:
1479          - Use unicode() instead of str() when needing to coax a
1480             NavigableString object into a unicode() object.
1481         * Scripts/webkitpy/common/net/buildbot_unittest.py:
1482          - Add a test which contains a unicode builder name.
1483         * Scripts/webkitpy/common/net/statusserver.py:
1484          - Remove use of str()
1485         * Scripts/webkitpy/common/prettypatch.py:
1486          - Write out the patch file as utf-8.
1487         * Scripts/webkitpy/common/system/autoinstall.py:
1488          - Write out files with a explicit encodings.
1489          - Deploy "with" to close file descriptor leaks.
1490         * Scripts/webkitpy/common/system/deprecated_logging.py:
1491          - Write out log files as utf-8.
1492         * Scripts/webkitpy/common/system/executive.py:
1493          - Make run* properly take and return unicode() objects.
1494          - Cleaned up input handling in run_command a little by adding
1495            a _compute_input() method which can return early instead of having
1496            such a long/cluttered if-block.
1497         * Scripts/webkitpy/common/system/executive_unittest.py:
1498          - Added a unit test to make sure we don't break Tor again!
1499         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
1500          - Write out the test list as utf-8.
1501         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
1502          - Write out json files as utf-8.
1503         * Scripts/webkitpy/layout_tests/port/apache_http_server.py:
1504          - Deploy "with" to close file descriptor leaks.
1505         * Scripts/webkitpy/layout_tests/port/chromium.py: Add Executive.py FIXME.
1506         * Scripts/webkitpy/layout_tests/port/chromium_linux.py: ditto.
1507         * Scripts/webkitpy/layout_tests/port/chromium_mac.py: ditto.
1508         * Scripts/webkitpy/layout_tests/port/gtk.py: ditto.
1509         * Scripts/webkitpy/layout_tests/port/mac.py: ditto.
1510         * Scripts/webkitpy/layout_tests/port/mac_unittest.py:
1511          - Make the skipped file parsing test unicode.
1512         * Scripts/webkitpy/layout_tests/port/qt.py: Add Executive.py FIXME.
1513         * Scripts/webkitpy/layout_tests/port/server_process.py: ditto.
1514         * Scripts/webkitpy/layout_tests/port/webkit.py:
1515          - Deploy "with" to close file descriptor leaks.
1516         * Scripts/webkitpy/layout_tests/port/websocket_server.py:
1517          - Make explicit the encodings of log files and pid files.
1518         * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py:
1519          - Make encodings explicit and deploy "with".
1520         * Scripts/webkitpy/layout_tests/run_webkit_tests.py: ditto.
1521         * Scripts/webkitpy/layout_tests/test_types/image_diff.py: ditto.
1522         * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: ditto.
1523         * Scripts/webkitpy/layout_tests/test_types/text_diff.py: ditto.
1524         * Scripts/webkitpy/style/filereader_unittest.py: ditto.
1525         * Scripts/webkitpy/thirdparty/__init__.py: ditto.
1526         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
1527          - Removed extra import.
1528         * Scripts/webkitpy/tool/commands/queues.py:
1529          - No need to map args to strings now that run_command does.
1530          - Update test results to match args changes.
1531          - Document our global argument hacks.
1532         * Scripts/webkitpy/tool/commands/upload.py:
1533          - Pass the diff directly to add_patch_to_bug instead of creating a StringIO file wrapper.
1534         * Scripts/webkitpy/tool/mocktool.py:
1535          - Rename add_patch_to_bug argument to match bugzilla.py
1536         * Scripts/webkitpy/tool/steps/abstractstep.py:
1537          - Executive.run_* now require lists instead of strings.
1538            The lack of this change was what broke webkit-patch
1539            for svn users the first time this was landed.
1540         * Scripts/webkitpy/tool/steps/postdiff.py:
1541          - Pass the diff directly to add_patch_to_bug instead of creating a StringIO file wrapper.
1542         * Scripts/webkitpy/tool/steps/postdiffforcommit.py: ditto
1543         * Scripts/webkitpy/tool/steps/postdiffforrevert.py: ditto
1544         * Scripts/webkitpy/tool/steps/steps_unittest.py:
1545          - Fixed spurious logging seen when running test-webkitpy
1546
1547 2010-04-21  Chris Fleizach  <cfleizach@apple.com>
1548
1549         Reviewed by Alexey Proskuryakov.
1550
1551         aria-liveregion-notifications.html fails on leopard release bot
1552         https://bugs.webkit.org/show_bug.cgi?id=37112
1553
1554         Change the way that notifications are listened for by forcing clients
1555         to call a remove listener as well to match the add listener. DRT will
1556         assert if those are not done in the correct order. 
1557
1558         * DumpRenderTree/AccessibilityUIElement.cpp:
1559         (removeNotificationListenerCallback):
1560         (AccessibilityUIElement::getJSClass):
1561         * DumpRenderTree/AccessibilityUIElement.h:
1562         * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:
1563         (AccessibilityUIElement::removeNotificationListener):
1564         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
1565         (-[AccessibilityNotificationHandler initWithPlatformElement:]):
1566         (-[AccessibilityNotificationHandler dealloc]):
1567         (-[AccessibilityNotificationHandler _notificationReceived:]):
1568         (-[AccessibilityNotificationHandler setCallback:]):
1569         (AccessibilityUIElement::AccessibilityUIElement):
1570         (AccessibilityUIElement::~AccessibilityUIElement):
1571         (AccessibilityUIElement::addNotificationListener):
1572         (AccessibilityUIElement::removeNotificationListener):
1573         * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
1574         (AccessibilityUIElement::removeNotificationListener):
1575
1576 2010-04-21  Anders Carlsson  <andersca@apple.com>
1577
1578         Reviewed by Sam Weinig.
1579
1580         Add debug menu items to show/hide the Web View.
1581         https://bugs.webkit.org/show_bug.cgi?id=37958
1582
1583         * MiniBrowser/mac/BrowserWindowController.h:
1584         * MiniBrowser/mac/BrowserWindowController.m:
1585         (-[BrowserWindowController showHideWebView:]):
1586         (-[BrowserWindowController removeReinsertWebView:]):
1587         (-[BrowserWindowController validateMenuItem:]):
1588         * MiniBrowser/mac/English.lproj/MainMenu.xib:
1589
1590 2010-04-21  Eric Seidel  <eric@webkit.org>
1591
1592         Unreviewed.  Rolling out unicode() changes as they broke NRWT for chromium.
1593         Rolling out:
1594         http://trac.webkit.org/changeset/58014
1595         http://trac.webkit.org/changeset/58016
1596         http://trac.webkit.org/changeset/58020
1597
1598         REGRESSION(57531): the commit-queue still hates Tor Arne Vestbo
1599         https://bugs.webkit.org/show_bug.cgi?id=37765
1600
1601         * Scripts/webkitpy/common/checkout/api_unittest.py:
1602         * Scripts/webkitpy/common/checkout/changelog.py:
1603         * Scripts/webkitpy/common/checkout/changelog_unittest.py:
1604         * Scripts/webkitpy/common/checkout/commitinfo.py:
1605         * Scripts/webkitpy/common/checkout/scm.py:
1606         * Scripts/webkitpy/common/checkout/scm_unittest.py:
1607         * Scripts/webkitpy/common/config/committers.py:
1608         * Scripts/webkitpy/common/net/bugzilla.py:
1609         * Scripts/webkitpy/common/net/buildbot.py:
1610         * Scripts/webkitpy/common/net/buildbot_unittest.py:
1611         * Scripts/webkitpy/common/net/statusserver.py:
1612         * Scripts/webkitpy/common/prettypatch.py:
1613         * Scripts/webkitpy/common/system/autoinstall.py:
1614         * Scripts/webkitpy/common/system/deprecated_logging.py:
1615         * Scripts/webkitpy/common/system/executive.py:
1616         * Scripts/webkitpy/common/system/executive_unittest.py:
1617         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
1618         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
1619         * Scripts/webkitpy/layout_tests/port/apache_http_server.py:
1620         * Scripts/webkitpy/layout_tests/port/chromium.py:
1621         * Scripts/webkitpy/layout_tests/port/chromium_linux.py:
1622         * Scripts/webkitpy/layout_tests/port/chromium_mac.py:
1623         * Scripts/webkitpy/layout_tests/port/gtk.py:
1624         * Scripts/webkitpy/layout_tests/port/mac.py:
1625         * Scripts/webkitpy/layout_tests/port/mac_unittest.py:
1626         * Scripts/webkitpy/layout_tests/port/qt.py:
1627         * Scripts/webkitpy/layout_tests/port/server_process.py:
1628         * Scripts/webkitpy/layout_tests/port/webkit.py:
1629         * Scripts/webkitpy/layout_tests/port/websocket_server.py:
1630         * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py:
1631         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1632         * Scripts/webkitpy/layout_tests/test_types/image_diff.py:
1633         * Scripts/webkitpy/layout_tests/test_types/test_type_base.py:
1634         * Scripts/webkitpy/layout_tests/test_types/text_diff.py:
1635         * Scripts/webkitpy/style/filereader_unittest.py:
1636         * Scripts/webkitpy/thirdparty/__init__.py:
1637         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
1638         * Scripts/webkitpy/tool/commands/queues.py:
1639         * Scripts/webkitpy/tool/commands/queues_unittest.py:
1640         * Scripts/webkitpy/tool/commands/upload.py:
1641         * Scripts/webkitpy/tool/mocktool.py:
1642         * Scripts/webkitpy/tool/steps/abstractstep.py:
1643         * Scripts/webkitpy/tool/steps/postdiff.py:
1644         * Scripts/webkitpy/tool/steps/postdiffforcommit.py:
1645         * Scripts/webkitpy/tool/steps/postdiffforrevert.py:
1646         * Scripts/webkitpy/tool/steps/steps_unittest.py:
1647
1648 2010-04-21  Eric Seidel  <eric@webkit.org>
1649
1650         Unreviewed, fixing NRWT for real this time.
1651
1652         REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø
1653         https://bugs.webkit.org/show_bug.cgi?id=37765
1654
1655         * Scripts/webkitpy/layout_tests/test_types/test_type_base.py:
1656          - Add a hack to fix new-run-webkit-tests
1657            my understanding of codecs.open(encoding=None)
1658            must have been wrong.
1659
1660 2010-04-21  Eric Seidel  <eric@webkit.org>
1661
1662         Unreviewed, just fixing exception seen on builders.
1663
1664         REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø
1665         https://bugs.webkit.org/show_bug.cgi?id=37765
1666
1667         * Scripts/webkitpy/layout_tests/test_types/test_type_base.py:
1668          - Pass and encoding to _write_into_file_at_path
1669
1670 2010-04-21  Eric Seidel  <eric@webkit.org>
1671
1672         Reviewed by Adam Barth.
1673
1674         REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø
1675         https://bugs.webkit.org/show_bug.cgi?id=37765
1676
1677         I fixed the queue to not ignore Tor as a reviwer in r57531,
1678         but instead it throws an exception every time his name is in a patch.
1679
1680         This fixes our Executive.run_command code to work around a Popen
1681         bug http://bugs.python.org/issue5290 whereby python versions before 2.6
1682         do not correctly handle unicode objects as input or output to
1683         Popen.communicate.
1684
1685         Following the advice of:
1686         http://farmdev.com/talks/unicode/
1687         I have changed all of webkitpy to use unicode() objects as strings
1688         instead of str objects (which in Python 3 are renamed "bytes").
1689
1690         String literals were left as "foo" instead of converting to u"foo"
1691         as u"foo" is only required if the string has a non-ascii code point.
1692         Python is smart about comparing str() and unicode() values and will
1693         log an error to the console if the comparison is ever invalid.
1694
1695         Executive.run* now correctly accept and return unicode() objects.
1696         I attempted to fix all the places that we call .write() to make sure we
1697         encode any unicode() objects into utf-8.
1698
1699         I removed several uses of StringIO.  StringIO should generally always be
1700         passed a unicode() value.
1701
1702         Likewise I replaced most calls to open() with codecs.open().
1703         codecs.open() matches Python 3 open semantics in requiring an encoding
1704         parameter.  Files opened with codecs.open() with a unicode-compatible
1705         encoding will vend unicode() objects from their read() calls, like how
1706         StringIO created with a unicode() object will do.
1707
1708         I also deployed "with" statements wider (now that the project has
1709         settled on Python 2.5) to close a bunch of file descriptor leaks.
1710
1711         * Scripts/webkitpy/common/checkout/api_unittest.py:
1712          - Read/write utf-8 files instead of ascii.
1713          - Update the tests to use test for proper unicode() handling.
1714         * Scripts/webkitpy/common/checkout/changelog.py:
1715          - Document that parse_latest_entry_from_file expects
1716            file-like objects which return unicode strings.
1717         * Scripts/webkitpy/common/checkout/changelog_unittest.py:
1718          - Use unicode() strings instead of str() byte arrays.
1719          - Deploy "with" to close file descriptor leaks.
1720         * Scripts/webkitpy/common/checkout/commitinfo.py:
1721          - Remove unneeded import.
1722         * Scripts/webkitpy/common/checkout/scm.py:
1723          - Remove use of str().
1724         * Scripts/webkitpy/common/checkout/scm_unittest.py:
1725          - Read/write utf-8 files and use unicode() strings in testing.
1726         * Scripts/webkitpy/common/config/committers.py:
1727          - Use \u instead of \x to make slightly clearer what we're doing.
1728         * Scripts/webkitpy/common/net/bugzilla.py:
1729          - Add a new _string_contents() method and explain why
1730             we have to call unicode() on the result of soup.string
1731             and why it's safe to do so w/o needing to pass a codec name.
1732           - Remove the (unused) support for passing a file object to add_patch_to_bug().
1733         * Scripts/webkitpy/common/net/buildbot.py:
1734          - Use unicode() instead of str() when needing to coax a
1735             NavigableString object into a unicode() object.
1736         * Scripts/webkitpy/common/net/buildbot_unittest.py:
1737          - Add a test which contains a unicode builder name.
1738         * Scripts/webkitpy/common/net/statusserver.py:
1739          - Remove use of str()
1740         * Scripts/webkitpy/common/prettypatch.py:
1741          - Write out the patch file as utf-8.
1742         * Scripts/webkitpy/common/system/autoinstall.py:
1743          - Write out files with a explicit encodings.
1744          - Deploy "with" to close file descriptor leaks.
1745         * Scripts/webkitpy/common/system/deprecated_logging.py:
1746          - Write out log files as utf-8.
1747         * Scripts/webkitpy/common/system/executive.py:
1748          - Make run* properly take and return unicode() objects.
1749          - Cleaned up input handling in run_command a little by adding
1750            a _compute_input() method which can return early instead of having
1751            such a long/cluttered if-block.
1752         * Scripts/webkitpy/common/system/executive_unittest.py:
1753          - Added a unit test to make sure we don't break Tor again!
1754         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
1755          - Write out the test list as utf-8.
1756         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
1757          - Write out json files as utf-8.
1758         * Scripts/webkitpy/layout_tests/port/apache_http_server.py:
1759          - Deploy "with" to close file descriptor leaks.
1760         * Scripts/webkitpy/layout_tests/port/chromium.py: Add Executive.py FIXME.
1761         * Scripts/webkitpy/layout_tests/port/chromium_linux.py: ditto.
1762         * Scripts/webkitpy/layout_tests/port/chromium_mac.py: ditto.
1763         * Scripts/webkitpy/layout_tests/port/gtk.py: ditto.
1764         * Scripts/webkitpy/layout_tests/port/mac.py: ditto.
1765         * Scripts/webkitpy/layout_tests/port/mac_unittest.py:
1766          - Make the skipped file parsing test unicode.
1767         * Scripts/webkitpy/layout_tests/port/qt.py: Add Executive.py FIXME.
1768         * Scripts/webkitpy/layout_tests/port/server_process.py: ditto.
1769         * Scripts/webkitpy/layout_tests/port/webkit.py:
1770          - Deploy "with" to close file descriptor leaks.
1771         * Scripts/webkitpy/layout_tests/port/websocket_server.py:
1772          - Make explicit the encodings of log files and pid files.
1773         * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py:
1774          - Make encodings explicit and deploy "with".
1775         * Scripts/webkitpy/layout_tests/run_webkit_tests.py: ditto.
1776         * Scripts/webkitpy/layout_tests/test_types/image_diff.py: ditto.
1777         * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: ditto.
1778         * Scripts/webkitpy/layout_tests/test_types/text_diff.py: ditto.
1779         * Scripts/webkitpy/style/filereader_unittest.py: ditto.
1780         * Scripts/webkitpy/thirdparty/__init__.py: ditto.
1781         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
1782          - Removed extra import.
1783         * Scripts/webkitpy/tool/commands/queues.py:
1784          - No need to map args to strings now that run_command does.
1785          - Update test results to match args changes.
1786          - Document our global argument hacks.
1787         * Scripts/webkitpy/tool/commands/upload.py:
1788          - Pass the diff directly to add_patch_to_bug instead of creating a StringIO file wrapper.
1789         * Scripts/webkitpy/tool/mocktool.py:
1790          - Rename add_patch_to_bug argument to match bugzilla.py
1791         * Scripts/webkitpy/tool/steps/abstractstep.py:
1792          - Executive.run_* now require lists instead of strings.
1793            The lack of this change was what broke webkit-patch
1794            for svn users the first time this was landed.
1795         * Scripts/webkitpy/tool/steps/postdiff.py:
1796          - Pass the diff directly to add_patch_to_bug instead of creating a StringIO file wrapper.
1797         * Scripts/webkitpy/tool/steps/postdiffforcommit.py: ditto
1798         * Scripts/webkitpy/tool/steps/postdiffforrevert.py: ditto
1799         * Scripts/webkitpy/tool/steps/steps_unittest.py:
1800          - Fixed spurious logging seen when running test-webkitpy
1801
1802 2010-04-21  Kinuko Yasuda  <kinuko@chromium.org>
1803
1804         Unreviewed.
1805
1806         Add myself in committers.py.
1807
1808         * Scripts/webkitpy/common/config/committers.py:
1809
1810 2010-04-21  Dirk Pranke  <dpranke@chromium.org>
1811
1812         Reviewed by Dimitri Glazkov.
1813
1814         new-run-webkit-tests: fix a bug in the Chromium port where we would
1815         try to talk to a crashed test_shell and raise exceptions that weren't
1816         being caught.
1817
1818         https://bugs.webkit.org/show_bug.cgi?id=37941
1819
1820         * Scripts/webkitpy/layout_tests/port/chromium.py:
1821
1822 2010-04-21  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1823
1824         Unreviewed.
1825
1826         [Qt] [Symbian] Build fix.
1827
1828         Work around a Qt quirk. Some versions of Symbian port Qt
1829         QFontDatabase::removeAllApplicationFonts symbol is not available.
1830
1831         * DumpRenderTree/qt/DumpRenderTreeQt.cpp:
1832         (WebCore::DumpRenderTree::open):
1833
1834 2010-04-21  Alexey Proskuryakov  <ap@apple.com>
1835
1836         Unreviewed.
1837
1838         https://bugs.webkit.org/show_bug.cgi?id=37933
1839         <rdar://problem/7719540> XMLHttpRequest.withCredentials should be better enforced.
1840
1841         Adding stub implementation of authenticateSession(). Depending on platform loader behavior,
1842         a real implementation may or may not be necessary for the one test that currently uses it
1843         to pass.
1844
1845         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
1846         (LayoutTestController::authenticateSession):
1847         * DumpRenderTree/qt/LayoutTestControllerQt.h:
1848
1849 2010-04-21  Alexey Proskuryakov  <ap@apple.com>
1850
1851         Reviewed by Brady Eidson.
1852
1853         https://bugs.webkit.org/show_bug.cgi?id=37933
1854         <rdar://problem/7719540> XMLHttpRequest.withCredentials should be better enforced.
1855
1856         Adding authenticateSession() method that adds credentials to per-process credential storage
1857         (for platforms that even have such). No Windows implementation, because writing another
1858         loader for DRT is painful.
1859
1860         * DumpRenderTree/LayoutTestController.cpp:
1861         (authenticateSessionCallback):
1862         (LayoutTestController::staticFunctions):
1863         * DumpRenderTree/LayoutTestController.h:
1864         * DumpRenderTree/mac/LayoutTestControllerMac.mm:
1865         (-[SynchronousLoader dealloc]):
1866         (-[SynchronousLoader connectionShouldUseCredentialStorage:]):
1867         (-[SynchronousLoader connection:didReceiveAuthenticationChallenge:]):
1868         (-[SynchronousLoader connection:didFailWithError:]):
1869         (-[SynchronousLoader connectionDidFinishLoading:]):
1870         (+[SynchronousLoader makeRequest:withUsername:password:]):
1871         (LayoutTestController::authenticateSession):
1872
1873         * DumpRenderTree/win/LayoutTestControllerWin.cpp:
1874         (LayoutTestController::authenticateSession):
1875         * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
1876         (LayoutTestController::authenticateSession):
1877         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
1878         (LayoutTestController::authenticateSession):
1879         Stub implementations.
1880
1881 2010-04-21  Kent Tamura  <tkent@chromium.org>
1882
1883         Reviewed by Dimitri Glazkov.
1884
1885         [DRT/Chromium] Make DRT compilable in Chromium tree
1886         https://bugs.webkit.org/show_bug.cgi?id=37923
1887
1888         We need to use different GYPs in a case of WebKit-only checkout
1889         and a case of whole Chromium checkout because the relative paths
1890         from webkit/ to WebKit/chromium/features.gypi are different in
1891         these cases and we can't use 'conditions' for 'includes' in GYPs.
1892
1893         * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
1894
1895 2010-04-21  Jakub Wieczorek  <jwieczorek@webkit.org>
1896
1897         Reviewed by Darin Adler.
1898
1899         List item markers are not always updated after changes in the DOM.
1900         https://bugs.webkit.org/show_bug.cgi?id=37060
1901
1902         * DumpRenderTree/LayoutTestController.cpp:
1903         (markerTextForListItemCallback): A function that returns the marker text for a given list item.
1904         (LayoutTestController::staticFunctions):
1905         * DumpRenderTree/LayoutTestController.h:
1906         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
1907         (LayoutTestController::markerTextForListItem): Implement it in the GTK port.
1908         * DumpRenderTree/mac/LayoutTestControllerMac.mm:
1909         (LayoutTestController::markerTextForListItem): Add a stub.
1910         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
1911         (LayoutTestController::LayoutTestController):
1912         (LayoutTestController::markerTextForListItem): Implement it in the Qt port.
1913         * DumpRenderTree/qt/LayoutTestControllerQt.h:
1914         * DumpRenderTree/win/LayoutTestControllerWin.cpp:
1915         (LayoutTestController::markerTextForListItem): Add a stub.
1916
1917 2010-04-21  Adam Roben  <aroben@apple.com>
1918
1919         Exclude leaks in CGGradientCreateWithColorComponents from
1920         run-webkit-tests leaks output
1921
1922         The leak in CG is covered by <rdar://problem/7888492>.
1923
1924         Fixes <http://webkit.org/b/37927>.
1925
1926         Reviewed by Eric Carlson.
1927
1928         * Scripts/old-run-webkit-tests:
1929         (sub countAndPrintLeaks): Exclude leaks in
1930         CGGradientCreateWithColorComponents on certain OSs.
1931
1932 2010-04-21  Kent Tamura  <tkent@chromium.org>
1933
1934         Reviewed by Shinichiro Hamaji.
1935
1936         [DRT/Chromium] Import MockSpellCheck from Chromium
1937         https://bugs.webkit.org/show_bug.cgi?id=37910
1938
1939         Import webkit/tools/test_shell/mock_spellcheck.{cc,h} rev.37241 of Chromium.
1940
1941         * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
1942           Add ICU explicitly because WTFString.h includes ICU headers.
1943           Add MockSpellCheck.{cpp,h}.
1944         * DumpRenderTree/chromium/MockSpellCheck.cpp: Added.
1945         * DumpRenderTree/chromium/MockSpellCheck.h: Added.
1946         * DumpRenderTree/chromium/WebViewHost.cpp:
1947         (WebViewHost::spellCheck):
1948         * DumpRenderTree/chromium/WebViewHost.h:
1949         * DumpRenderTree/chromium/config.h: Define JS_EXPORTDATA, which is used
1950           by wtf/text/AtomicString.h included by wtf/text/WTFString.h.
1951
1952 2010-04-21  Adam Barth  <abarth@webkit.org>
1953
1954         Reviewed by Eric Seidel.
1955
1956         Add webkit-patch pretty-diff
1957         https://bugs.webkit.org/show_bug.cgi?id=37892
1958
1959         This is slightly lame because it asks you whether the diff is correct,
1960         but it's a starting point.
1961
1962         * Scripts/webkitpy/tool/commands/__init__.py:
1963         * Scripts/webkitpy/tool/commands/prettydiff.py: Added.
1964         * Scripts/webkitpy/tool/main.py:
1965
1966 2010-04-21  Adam Barth  <abarth@webkit.org>
1967
1968         Reviewed by Darin Adler.
1969
1970         Remove mention of non-existant --no-build option
1971         https://bugs.webkit.org/show_bug.cgi?id=37893
1972
1973         The option doesn't exist!
1974
1975         * Scripts/webkitpy/tool/commands/stepsequence.py:
1976
1977 2010-04-21  Balazs Kelemen  <kb@inf.u-szeged.hu>
1978
1979         Reviewed by Kenneth Rohde Christiansen.
1980
1981         [Qt] Interrupting JavaScript is cumbersome when you use QtLaucher for testing or profiling.
1982         https://bugs.webkit.org/show_bug.cgi?id=37198
1983
1984         * QtLauncher/main.cpp:
1985         (LauncherWindow::toggleInterruptingJavaScriptEnabled):
1986         (LauncherWindow::newWindow):
1987         (LauncherWindow::cloneWindow):
1988         (LauncherWindow::createChrome):
1989         (main):
1990         * QtLauncher/webpage.cpp:
1991         (WebPage::WebPage):
1992         (WebPage::shouldInterruptJavaScript):
1993         * QtLauncher/webpage.h:
1994         (WebPage::setInterruptingJavaScriptEnabled):
1995
1996 2010-04-21  Eric Seidel  <eric@webkit.org>
1997
1998         Unreviewed, rolling out r57963.
1999         http://trac.webkit.org/changeset/57963
2000         https://bugs.webkit.org/show_bug.cgi?id=37759
2001
2002         Three tests started crashing on the Qt bot.
2003
2004         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
2005         * DumpRenderTree/qt/LayoutTestControllerQt.h:
2006
2007 2010-04-21  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2008
2009         Reviewed by Eric Seidel.
2010
2011         Make new-run-webkit-tests work for the Qt port
2012         https://bugs.webkit.org/show_bug.cgi?id=37588
2013
2014         * Scripts/webkitpy/layout_tests/port/qt.py:
2015
2016 2010-04-21  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2017
2018         Reviewed by Eric Seidel.
2019
2020         new-run-webkit-tests: try to detect alternate apache path
2021         https://bugs.webkit.org/show_bug.cgi?id=37587
2022
2023         _check_port_build() also needs to return true in the
2024         base implementation to not fail the check_build step.
2025
2026         * Scripts/webkitpy/layout_tests/port/webkit.py:
2027
2028 2010-04-21  Yi Shen  <yi.4.shen@nokia.com>
2029
2030         Reviewed by Simon Hausmann.
2031
2032         [Qt] Add LayoutTestController interface: computedStyleIncludingVisitedInfo
2033         https://bugs.webkit.org/show_bug.cgi?id=37759
2034
2035         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
2036         (LayoutTestController::computedStyleIncludingVisitedInfo):
2037         * DumpRenderTree/qt/LayoutTestControllerQt.h:
2038
2039 2010-04-21  Eric Seidel  <eric@webkit.org>
2040
2041         Unreviewed, test fix only.
2042
2043         new-run-webkit-tests: implement a --log trace message to be able to display detailed output of an individual test run
2044         https://bugs.webkit.org/show_bug.cgi?id=37726
2045
2046         This change seems to have broken a test.
2047         Attempting to handle the case where we don't have any
2048         timing information.  Dirk may have to correct this change.
2049
2050         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2051
2052 2010-04-19  Eric Seidel  <eric@webkit.org>
2053
2054         Reviewed by Adam Barth.
2055
2056         new-run-webkit-tests has much higher startup latency than run-webkit-tests
2057         https://bugs.webkit.org/show_bug.cgi?id=37643
2058
2059         I got rid of the -expected.checksum reads during startup.
2060         This makes startup noticably better on my laptop.
2061
2062         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
2063          - Use image_hash() instead of .image_hash now that expected.checksum
2064            file reads are done lazily.
2065         * Scripts/webkitpy/layout_tests/port/http_server_base.py:
2066          - Add debug logging for this sleep call.
2067            In my testing I never saw this sleep() hit.
2068         * Scripts/webkitpy/layout_tests/port/websocket_server.py:
2069          - Sleep a shorter interval to make websocket server
2070            startup more responsive.  On my machine startup was
2071            taking around 1 second.
2072          - Remove the unconditional .5s delay on startup.
2073         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2074          - Make image_hash file reads done lazily in a new image_hash() function.
2075          - Add a "Starting testing ..." meter update after DRT threads have
2076            been started, but before we get updates from the first one.
2077          - Rename variable "t" to a full english name to match WebKit style.
2078
2079 2010-04-20  Daniel Bates  <dbates@rim.com>
2080
2081         Reviewed by Eric Seidel.
2082
2083         https://bugs.webkit.org/show_bug.cgi?id=37748
2084
2085         Make Sheriffbot more inspirational.
2086
2087         * Scripts/webkitpy/common/net/bugzilla.py:
2088         * Scripts/webkitpy/common/net/bugzilla_unittest.py:
2089         * Scripts/webkitpy/tool/bot/irc_command.py:
2090         * Scripts/webkitpy/tool/bot/sheriffircbot_unittest.py:
2091         * Scripts/webkitpy/tool/mocktool.py:
2092
2093 2010-04-20  Kent Tamura  <tkent@chromium.org>
2094
2095         Reviewed by Dimitri Glazkov.
2096
2097         [DRT/Chromium] Import Chromium image_diff as ImageDiff
2098         https://bugs.webkit.org/show_bug.cgi?id=37790
2099
2100         ImageDiff.cpp is based on tools/imagediff/image_diff.cc r41911 of Chromium.
2101
2102         * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
2103         * DumpRenderTree/chromium/ImageDiff.cpp: Added.
2104         * Scripts/webkitpy/layout_tests/port/chromium_mac.py:
2105
2106 2010-04-20  Dirk Pranke <dpranke@chromium.org>
2107
2108         This patch to new-run-webkit-tests adds a --log 'trace' option
2109         that prints out detailed info about a given test as it executes
2110         (where the baselines are, what the expectation is, what we got,
2111         how long it took).
2112
2113         https://bugs.webkit.org/show_bug.cgi?id=37726
2114
2115         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2116           - use the newly exposed TestResult class and implement
2117             --log trace
2118         * Scripts/webkitpy/layout_tests/layout_package/dump_render_thread.py:
2119           - rename TestStats to TestResult and make it more public, resulting
2120             in cleaner code
2121         * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py:
2122           - add expectation_to_string() as a separate callable function
2123
2124 2010-04-20  Eric Seidel  <eric@webkit.org>
2125
2126         Unreviewed, rolling out r57907.
2127         http://trac.webkit.org/changeset/57907
2128         https://bugs.webkit.org/show_bug.cgi?id=37765
2129
2130         Appears to have broken MacEWS and possibly webkit-patch upload
2131         for svn users.  Needs further investigation.
2132
2133         * Scripts/webkitpy/common/checkout/api.py:
2134         * Scripts/webkitpy/common/checkout/api_unittest.py:
2135         * Scripts/webkitpy/common/checkout/changelog.py:
2136         * Scripts/webkitpy/common/checkout/changelog_unittest.py:
2137         * Scripts/webkitpy/common/checkout/commitinfo.py:
2138         * Scripts/webkitpy/common/checkout/scm.py:
2139         * Scripts/webkitpy/common/checkout/scm_unittest.py:
2140         * Scripts/webkitpy/common/config/committers.py:
2141         * Scripts/webkitpy/common/net/bugzilla.py:
2142         * Scripts/webkitpy/common/net/buildbot.py:
2143         * Scripts/webkitpy/common/net/buildbot_unittest.py:
2144         * Scripts/webkitpy/common/net/statusserver.py:
2145         * Scripts/webkitpy/common/prettypatch.py:
2146         * Scripts/webkitpy/common/system/autoinstall.py:
2147         * Scripts/webkitpy/common/system/deprecated_logging.py:
2148         * Scripts/webkitpy/common/system/executive.py:
2149         * Scripts/webkitpy/common/system/executive_unittest.py:
2150         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
2151         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
2152         * Scripts/webkitpy/layout_tests/layout_package/metered_stream.py:
2153         * Scripts/webkitpy/layout_tests/port/mac_unittest.py:
2154         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
2155         * Scripts/webkitpy/tool/commands/queues.py:
2156         * Scripts/webkitpy/tool/commands/queues_unittest.py:
2157         * Scripts/webkitpy/tool/commands/upload.py:
2158         * Scripts/webkitpy/tool/mocktool.py:
2159         * Scripts/webkitpy/tool/steps/abstractstep.py:
2160         * Scripts/webkitpy/tool/steps/postdiff.py:
2161         * Scripts/webkitpy/tool/steps/postdiffforcommit.py:
2162         * Scripts/webkitpy/tool/steps/postdiffforrevert.py:
2163         * Scripts/webkitpy/tool/steps/steps_unittest.py:
2164
2165 2010-04-20  Nate Chapin  <japhet@chromium.org>
2166
2167         Unreviewed.
2168
2169         Update my irc handle in committers.py (natechapin -> japhet).
2170
2171         * Scripts/webkitpy/common/config/committers.py:
2172
2173 2010-04-20  Eric Seidel  <eric@webkit.org>
2174
2175         Reviewed by Adam Barth.
2176
2177         REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø
2178         https://bugs.webkit.org/show_bug.cgi?id=37765
2179
2180         I fixed the queue to not ignore Tor as a reviwer in r57531,
2181         but instead it throws an exception every time his name is in a patch.
2182
2183         This fixes our Executive.run_command code to work around a Popen
2184         bug http://bugs.python.org/issue5290 whereby python versions before 2.6
2185         do not correctly handle unicode objects as input or output to
2186         Popen.communicate.
2187
2188         Following the advice of:
2189         http://farmdev.com/talks/unicode/
2190         I'm attempting to take the python unicode plunge and use unicode()
2191         objects as strings instead of str() objects everywhere in webkitpy.
2192
2193         We do not have to use u"" instead of "" because u"a" == "a" as expected
2194         in Python.  Python will generate a warning to the console in cases where
2195         a unicode() == str() operation cannot be performed.
2196
2197         I also cleaned up the input handling in run_command a little by adding
2198         a new _compute_input() method which can return early instead of having
2199         such a long/cluttered if-block.
2200
2201         Executive.run* now correctly accept and return unicode() objects.
2202         I attempted to fix all the places that we call .write() to make sure we
2203         encode any unicode() objects into utf-8.
2204
2205         All places which use StringIO need to be sure to pass StringIO a
2206         pre-encoded byte-array (str object) instead of unicode so that
2207         clients which read from the StringIO don't have encoding exceptions.
2208         To make this easier, I removed the patch_file_object support from
2209         add_patch_to_bug, and changed the 4 places which previously used
2210         StringIO to create a fake patch file.
2211
2212         I attempted to document any places where we are not correctly converting
2213         to/from bytes (str() objects) to strings (unicode() objects).
2214
2215         * Scripts/webkitpy/common/checkout/api_unittest.py:
2216          - Read/write utf-8 files instead of ascii.
2217          - Update the tests to use test for proper unicode() handling.
2218         * Scripts/webkitpy/common/checkout/changelog_unittest.py:
2219          - Use unicode() strings instead of str() byte arrays.
2220         * Scripts/webkitpy/common/checkout/scm.py:
2221          - Remove use of str().
2222         * Scripts/webkitpy/common/checkout/scm_unittest.py:
2223          - Read/write utf-8 files and use unicode() strings in testing.
2224         * Scripts/webkitpy/common/config/committers.py:
2225          - Use \u instead of \x to make slightly clearer what we're doing.
2226         * Scripts/webkitpy/common/net/bugzilla.py:
2227          - Add a new _string_contents() method and explain why
2228            we have to call unicode() on the result of soup.string
2229            and why it's safe to do so w/o needing to pass a codec name.
2230          - Remove the (unused) support for passing a file object to add_patch_to_bug().
2231         * Scripts/webkitpy/common/net/buildbot.py:
2232          - Use unicode() instead of str() when needing to coax a
2233            NavigableString object into a unicode() object.
2234         * Scripts/webkitpy/common/net/statusserver.py:
2235          - Remove use of str()
2236         * Scripts/webkitpy/common/prettypatch.py:
2237          - Write out the patch file as utf-8.
2238         * Scripts/webkitpy/common/system/autoinstall.py:
2239          - Add a FIXME about encoding.
2240         * Scripts/webkitpy/common/system/deprecated_logging.py:
2241          - Document that tee() works on bytes, not strings.
2242         * Scripts/webkitpy/common/system/executive.py:
2243          - Make run* properly take and return unicode() objects.
2244         * Scripts/webkitpy/common/system/executive_unittest.py:
2245          - Added a unit test to make sure we don't break Tor again!
2246         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
2247          - Write out the test list as utf-8.
2248         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
2249          - Write out json files as utf-8.
2250         * Scripts/webkitpy/layout_tests/layout_package/metered_stream.py:
2251          - Add FIXME about encoding handling.
2252         * Scripts/webkitpy/tool/commands/upload.py:
2253          - Pass the diff directly to add_patch_to_bug instead of creating a StringIO file wrapper.
2254         * Scripts/webkitpy/tool/mocktool.py:
2255          - Rename add_patch_to_bug argument to match bugzilla.py
2256         * Scripts/webkitpy/tool/steps/postdiff.py:
2257          - Pass the diff directly to add_patch_to_bug instead of creating a StringIO file wrapper.
2258         * Scripts/webkitpy/tool/steps/postdiffforcommit.py: ditto.
2259         * Scripts/webkitpy/tool/steps/postdiffforrevert.py: ditto.
2260         * Scripts/webkitpy/tool/steps/steps_unittest.py:
2261          - Fixed spurious logging seen when running test-webkitpy
2262
2263 2010-04-20  Chris Jerdonek  <cjerdonek@webkit.org>
2264
2265         Reviewed by Shinichiro Hamaji.
2266
2267         For check-webkit-style, implemented __eq__() and __ne__() (the
2268         built-in equality and inequality methods) for the
2269         DefaultStyleErrorHandler class.
2270
2271         https://bugs.webkit.org/show_bug.cgi?id=37850
2272
2273         This will facilitate unit-testing for a subsequent patch,
2274         namely for https://bugs.webkit.org/show_bug.cgi?id=37850
2275
2276         * Scripts/webkitpy/style/error_handlers.py:
2277           - Added __eq__() and __ne__() to the DefaultStyleErrorHandler
2278             class.
2279
2280         * Scripts/webkitpy/style/error_handlers_unittest.py:
2281           - Added unit tests for __eq__() and __ne__().
2282           - Also included a minor clean-up refactoring of combining the
2283             StyleErrorHandlerTestBase class (which has not needed to
2284             be separate due to previous changes) into the
2285             DefaultStyleErrorHandlerTest class.
2286
2287 2010-04-20  Jakub Wieczorek  <jwieczorek@webkit.org>
2288
2289         Unreviewed.
2290
2291         Add my IRC nick to the committers.py list.
2292
2293         * Scripts/webkitpy/common/config/committers.py:
2294
2295 2010-04-20  Kim Grönholm  <kim.gronholm@nomovok.com>
2296
2297         Reviewed by Simon Hausmann.
2298
2299         [Qt] Multitouch mocking in QtLauncher doesn't work with QGraphicsView
2300         https://bugs.webkit.org/show_bug.cgi?id=37816
2301         
2302         Fix multi-touch mocking in QtLauncher when using QGraphicsView.
2303         Test: https://bug-32434-attachments.webkit.org/attachment.cgi?id=44955
2304
2305         * QtLauncher/main.cpp:
2306         (LauncherWindow::eventFilter):
2307         (LauncherWindow::initializeView):
2308
2309 2010-04-20  MORITA Hajime <morrita@google.com>
2310
2311         Unreviewed, add myself to the committers list.
2312
2313         * Scripts/webkitpy/common/config/committers.py:
2314
2315 2010-04-20  Kent Tamura  <tkent@chromium.org>
2316
2317         Reviewed by Shinichiro Hamaji.
2318
2319         [DRT/Chromium] Fix some unexpected results of editing
2320         https://bugs.webkit.org/show_bug.cgi?id=37843
2321
2322         This change fixes about 70 unexpected results.
2323         The original test_webview_delegate.cc doesn't have this bug.
2324         The bug was introduced when I ported it to WebKit tree.
2325
2326         * DumpRenderTree/chromium/WebViewHost.cpp:
2327         (printRangeDescription): Replace the latter startContainer() with endContainer().
2328
2329 2010-04-19  Dirk Pranke  <dpranke@chromium.org>
2330
2331         Unreviewed, build fix.
2332
2333         Turn off some unit tests for now - the new-run-webkit-tests dryrun
2334         tests for chromium won't work if you don't have a chromium checkout.
2335
2336         https://bugs.webkit.org/show_bug.cgi?id=37841
2337
2338         * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py:
2339
2340 2010-04-19  Dirk Pranke  <dpranke@chromium.org>
2341
2342         Unreviewed, build fix.
2343
2344         (Re-)add dryrun.py; this was renamed from passing.py in the previous
2345         CL but apparently somehow didn't get checked in.
2346
2347         https://bugs.webkit.org/show_bug.cgi?id=37841
2348
2349         * Scripts/webkitpy/layout_tests/port/dryrun.py: Added.
2350
2351 2010-04-19  Shinichiro Hamaji  <hamaji@chromium.org>
2352
2353         Reviewed by David Levin.
2354
2355         check-webkit-style: exits when encountering a deleted file
2356         https://bugs.webkit.org/show_bug.cgi?id=37122
2357
2358         This reverts the quick fix done by r57119 and makes check_patch
2359         not call check_file for deleted files.
2360
2361         Also this change fixes the behavior for "-", which should mean
2362         stdin.  Before this change, the style checker just ignored "-"
2363         with a warning message.
2364
2365         * Scripts/webkitpy/style/checker.py:
2366         * Scripts/webkitpy/style/checker_unittest.py:
2367
2368 2010-04-19  Daniel Bates  <dbates@rim.com>
2369
2370         No review, rolling out 57868.
2371         http://trac.webkit.org/changeset/57868
2372         https://bugs.webkit.org/show_bug.cgi?id=37748
2373
2374         Sheriffbot wasn't very inspirational after this patch.
2375         Instead, he was silent when you said hi :-(. Rolling
2376         out this patch so that I can debug/test this some more.
2377
2378         * Scripts/webkitpy/common/net/bugzilla.py:
2379         * Scripts/webkitpy/common/net/bugzilla_unittest.py:
2380         * Scripts/webkitpy/tool/bot/irc_command.py:
2381         * Scripts/webkitpy/tool/bot/sheriffircbot_unittest.py:
2382         * Scripts/webkitpy/tool/mocktool.py:
2383
2384 2010-04-19  Daniel Bates  <dbates@rim.com>
2385
2386         Reviewed by Adam Barth.
2387
2388         https://bugs.webkit.org/show_bug.cgi?id=37748
2389
2390         Make Sheriffbot more inspirational.
2391
2392         * Scripts/webkitpy/common/net/bugzilla.py:
2393         * Scripts/webkitpy/common/net/bugzilla_unittest.py:
2394         * Scripts/webkitpy/tool/bot/irc_command.py:
2395         * Scripts/webkitpy/tool/bot/sheriffircbot_unittest.py:
2396         * Scripts/webkitpy/tool/mocktool.py:
2397
2398 2010-04-19  Kevin Ollivier  <kevino@theolliviers.com>
2399
2400         [wx] Build fix, add missing header.
2401
2402         * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
2403
2404 2010-04-19  Dirk Pranke  <dpranke@chromium.org>
2405  
2406          Reviewed by Adam Barth.
2407  
2408          new-run-webkit-tests - repurpose the "Passing" port as "Dryrun" port
2409          that can be used to test platforms other than the one you are running
2410          on. This can be useful for checking baselines and testing code
2411          coverage.
2412  
2413          Note that running the code on the "wrong" port requires each
2414          port-specific implementation to actually not require any
2415          platform-specific python code (e.g., the chromium-win port must
2416          test for the existence of windows functions before calling them).
2417  
2418          https://bugs.webkit.org/show_bug.cgi?id=37782
2419  
2420          * Scripts/webkitpy/layout_tests/port/chromium_win.py:
2421          * Scripts/webkitpy/layout_tests/port/dryrun.py: Renamed from WebKitTools/Scripts/webkitpy/layout_tests/port/passing.py.
2422          * Scripts/webkitpy/layout_tests/port/factory.py:
2423          * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py:
2424
2425 2010-04-19  Dirk Pranke  <dpranke@chromium.org>
2426
2427         Reviewed by Eric Seidel.
2428
2429         new-run-webkit-tests: add --build (default) and --no-build
2430         options to make that step optional. This flag modifies what happens
2431         in port.check_build().
2432
2433         https://bugs.webkit.org/show_bug.cgi?id=37786
2434
2435         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2436         * Scripts/webkitpy/layout_tests/port/chromium.py:
2437         * Scripts/webkitpy/layout_tests/port/webkit.py:
2438
2439 2010-04-19  Dirk Pranke  <dpranke@chromium.org>
2440
2441         Unreviewed, build fix.
2442
2443         new-run-webkit-tests - fix a typo in r57480 that caused us to stop
2444         logging the actual list of unexpected results.
2445
2446         https://bugs.webkit.org/show_bug.cgi?id=37831
2447
2448         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2449
2450 2010-04-19  Dirk Pranke <dpranke@chromium.org>
2451
2452         Reviewed by Adam Barth.
2453
2454         From a patch by Tor Arne Vestbo  <tor.arne.vestbo@nokia.com>
2455
2456         new-run-webkit-tests: make the retry step more explicit
2457         https://bugs.webkit.org/show_bug.cgi?id=37606
2458
2459         It might be confusing to see the test and percent counters
2460         reset without any notice of what's going on, so we make the
2461         message that a retry-run is started explicit.
2462
2463         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2464
2465 2010-04-19  Sam Weinig  <weinig@apple.com>
2466
2467         Reviewed by Anders Carlsson.
2468
2469         Add support for opening a new window (File->New Window) to
2470         Windows MiniBrowser. Accelerator doesn't work.
2471
2472         * MiniBrowser/win/BrowserView.cpp:
2473         (createNewPage): Use BrowserView::create.
2474         * MiniBrowser/win/BrowserWindow.cpp:
2475         (BrowserWindow::onCommand): Respond to ID_FILE_NEW_WINDOW
2476         by creating a new window.
2477         * MiniBrowser/win/BrowserWindow.h:
2478         (BrowserWindow::create): Added. Don't allow creating
2479         BrowserWindows on the stack by making constructor
2480         private and exposing the create function.
2481         * MiniBrowser/win/MiniBrowser.cpp:
2482         (MiniBrowser::createNewWindow): Move new window creation
2483         logic here.
2484         * MiniBrowser/win/MiniBrowser.h:
2485         * MiniBrowser/win/MiniBrowser.rc: 
2486         * MiniBrowser/win/main.cpp:
2487         (_tWinMain): Use the new MiniBrowser::createNewWindow().
2488
2489 2010-04-19  Chris Fleizach  <cfleizach@apple.com>
2490
2491         Reviewed by Beth Dakin.
2492
2493         AX: aria-haspopup needs to be exposed
2494         https://bugs.webkit.org/show_bug.cgi?id=37808
2495
2496         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
2497         (AccessibilityUIElement::hasPopup):
2498
2499 2010-04-19  Dirk Pranke  <dpranke@chromium.org>
2500
2501         Reviewed by Eric Seidel.
2502
2503         Submit a better workaround for r57806 than the one in r57831 - log
2504         an error and exit if you try to run new-run-webkit-tests with --use-drt
2505         on Windows.
2506
2507         https://bugs.webkit.org/show_bug.cgi?id=37822
2508
2509         * Scripts/webkitpy/layout_tests/port/chromium.py:
2510
2511 2010-04-19  Jesus Sanchez-Palencia  <jesus@webkit.org>
2512
2513         Unreviewed.
2514
2515         Just adding myself as a committer.
2516
2517         * Scripts/webkitpy/common/config/committers.py:
2518
2519 2010-04-19  Dirk Pranke  <dpranke@chromium.org>
2520
2521         Reviewed by Eric Seidel.
2522
2523         Add slightly better logging to the websocket python wrapper script,
2524         including a --verbose flag for debug output.
2525
2526         https://bugs.webkit.org/show_bug.cgi?id=37233
2527
2528         * Scripts/webkitpy/layout_tests/port/websocket_server.py:
2529         * Scripts/new-run-webkit-websocketserver:
2530
2531 2010-04-19  Dirk Pranke  <dpranke@chromium.org>
2532
2533         Reviewed by Eric Seidel.
2534
2535         new-run-webkit-tests: add a way (--print-unexpected-results) to
2536         (re-)print out the tests that produced unexpected results in the
2537         last run. Also add a way (--retry-unexpected-results) to
2538         automatically re-test them.
2539
2540         https://bugs.webkit.org/show_bug.cgi?id=37783
2541
2542         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2543
2544 2010-04-19  Dirk Pranke  <dpranke@chromium.org>
2545
2546         Reviewed by Eric Seidel.
2547
2548         Restructure the logging in new-run-webkit-tests so that many of log
2549         messages that were logged to the MeteredStream also get logged in
2550         --verbose mode.
2551
2552         https://bugs.webkit.org/show_bug.cgi?id=37780
2553
2554         * Scripts/webkitpy/layout_tests/layout_package/metered_stream.py:
2555         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2556
2557 2010-04-19  Dirk Pranke  <dpranke@chromium.org>
2558
2559         Reviewed by Eric Seidel.
2560
2561         new-run-webkit-tests: add 'summary' and 'unexpected-results' options
2562         to the --log flag. Also add a 'progress' flag to enable the regular
2563         progress bar (as opposed to 'detailed-progress', which enables the
2564         dots). Also add a 'nothing' flag to allow you to be explicit that
2565         you don't want any logging on the command line.
2566
2567         The default is
2568         '--log detailed-progress,summary,unexpected,unexpected-results'
2569
2570         (The default logging is unchanged by this patch, this just makes things
2571         properly configurable).
2572
2573         Note that 'nothing' doesn't work properly yet; I need a couple other
2574         patches to land to avoid rewriting things several different ways.
2575
2576         https://bugs.webkit.org/show_bug.cgi?id=37785
2577
2578         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2579
2580 2010-04-19  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2581
2582         Reviewed by Simon Hausmann.
2583
2584         Make the URL change on committed load.
2585
2586         * QtLauncher/mainwindow.cpp:
2587         (MainWindow::buildUI):
2588         (MainWindow::setAddressUrl):
2589         * QtLauncher/mainwindow.h:
2590
2591 2010-04-19  Dirk Pranke  <dpranke@chromium.org>
2592
2593         Reviewed by Eric Seidel.
2594
2595         Fix a typo in the rebaselining tool that causes us to use "debug"
2596         instead of "Debug" in a directory path, which fails on platforms with
2597         case-sensitive filesystems.
2598
2599         https://bugs.webkit.org/show_bug.cgi?id=37819
2600
2601         * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py:
2602
2603 2010-04-19  Dirk Pranke  <dpranke@chromium.org>
2604
2605         Unreviewed, build fix.
2606
2607         Fix breakage of chromium-win canary bots caused by r57806. That patch
2608         introduced the option of using Chrome's new port of DumpRenderTree,
2609         but unfortunately that port relies on the webkit.py class
2610         implementation which uses non-blocking I/O that isn't available on
2611         Windows. This patch turns off that option and doesn't import the
2612         class if we're running on Windows.
2613
2614         https://bugs.webkit.org/show_bug.cgi?id=37817
2615
2616         * Scripts/webkitpy/layout_tests/port/chromium.py:
2617
2618 2010-04-19  James Robinson  <jamesr@chromium.org>
2619
2620         Reviewed by abarth.
2621
2622         Fix a typo
2623
2624         * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py:
2625
2626 2010-04-19  Adam Roben  <aroben@apple.com>
2627
2628         Fix run-webkit-tests when there are spaces in the path
2629
2630         Fixes <http://webkit.org/b/37809>
2631
2632         Reviewed by Adam Barth.
2633
2634         * Scripts/run-webkit-tests: Use an "indirect object" to specify the
2635         path to the harness to exec(). According to perldoc, this usage will
2636         prohibit perl from parsing the arguments to exec() via the shell,
2637         which would incorrectly split paths with spaces in them, etc.
2638
2639 2010-04-19  Dimitri Glazkov  <dglazkov@chromium.org>
2640
2641         Reviewed by Adam Roben.
2642
2643         WinLauncher.h should use LF line-endings and use native line-endings style.
2644         https://bugs.webkit.org/show_bug.cgi?id=37807
2645
2646         * WinLauncher/WinLauncher.h: Added property svn:eol-style, converted to LF line-endings.
2647
2648 2010-04-19  Kent Tamura  <tkent@chromium.org>
2649
2650         Reviewed by Shinichiro Hamaji.
2651
2652         [DRT/Chromium] Fix a test initialization problem
2653         https://bugs.webkit.org/show_bug.cgi?id=37791
2654
2655         * DumpRenderTree/chromium/DumpRenderTree.cpp:
2656         (runTest): Call resetTestController() before runFileTest(). Some
2657           controllers initialize their fields in reset() and not in their
2658           constructors.
2659
2660 2010-04-19  Kent Tamura  <tkent@chromium.org>
2661
2662         Reviewed by Eric Seidel.
2663
2664         [Chromium] new-run-webkit-tests should use WebKitDriver for --use-drt
2665         https://bugs.webkit.org/show_bug.cgi?id=37793
2666
2667         We need to use WebKitDriver instead of ChromiumDriver for Chromium
2668         DRT because its interface is different from test_shell.
2669
2670         Chromium DRT has no UI.  So we can't use it to show test results.
2671
2672         * Scripts/webkitpy/layout_tests/port/chromium.py:
2673
2674 2010-04-18  Eric Seidel  <eric@webkit.org>
2675
2676         Reviewed by Adam Roben.
2677
2678         Make failure-reason more forgiving
2679         https://bugs.webkit.org/show_bug.cgi?id=37525
2680
2681         Removed search_limit, which wasn't very useful anyway.
2682         Added a log about the long load time loading from the builders.
2683         Prompt the user for what revision to start walking from (makes it easy to restart upon failure).
2684
2685         * Scripts/webkitpy/common/net/buildbot.py:
2686         * Scripts/webkitpy/tool/commands/queries.py:
2687
2688 2010-04-18  Chris Jerdonek  <cjerdonek@webkit.org>
2689
2690         Reviewed by Shinichiro Hamaji.
2691
2692         Created a class for check-webkit-style that encapsulates iterating
2693         over text files and reading them.
2694
2695         https://bugs.webkit.org/show_bug.cgi?id=37754
2696
2697         This revision is an intermediate step towards separating our
2698         style-checking code from the logic of iterating over files and
2699         reading them.
2700
2701         * Scripts/webkitpy/common/system/logtesting.py:
2702           - Added a logMessages() method to the LoggingTestCase class.
2703             This method provides unit tests with access to the raw list
2704             of log messages in case the tester needs to do something more
2705             than simply assert the list of existing messages.
2706
2707         * Scripts/webkitpy/style/checker.py:
2708           - Added a ProcessorBase class that processors of lists of lines
2709             should eventually inherit from.
2710           - Also added a FIXME to use the ProcessorBase class and the
2711             TextFileReader class added below.
2712
2713         * Scripts/webkitpy/style/filereader.py: Added.
2714           - Created a TextFileReader class that encapsulates reading
2715             and iterating over text files.
2716
2717         * Scripts/webkitpy/style/filereader_unittest.py: Added.
2718           - Added a TextFileReaderTest class to unit-test the
2719             new TextFileReader class.
2720
2721 2010-04-15  Tony Chang  <tony@chromium.org>
2722
2723         Reviewed by Adam Barth.
2724
2725         [chromium] new-run-webkit-tests should be able to use chromium DRT
2726         https://bugs.webkit.org/show_bug.cgi?id=37645
2727
2728         Make sure that the lack of a chromium checkout doesn't cause the script to
2729         fail.
2730
2731         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
2732         * Scripts/webkitpy/layout_tests/port/chromium.py:
2733         * Scripts/webkitpy/layout_tests/port/chromium_mac.py: Fix up a few paths
2734             to be relative to an upstream output dir.
2735         * Scripts/webkitpy/layout_tests/run_webkit_tests.py: Add --use-drt flag.
2736
2737 2010-04-18  Eric Seidel  <eric@webkit.org>
2738
2739         Unreviewed, fixing the Qt bot.
2740
2741         Add a layer of indirection when calling run-webkit-tests to allow testing new-run-webkit-tests on various platforms
2742         https://bugs.webkit.org/show_bug.cgi?id=37632
2743
2744         * Scripts/run-webkit-tests:
2745          - Exit non-zero of launching the harness fails.
2746
2747 2010-04-18  Eric Seidel  <eric@webkit.org>
2748
2749         Unreviewed, fixing the Qt bot.
2750
2751         Add a layer of indirection when calling run-webkit-tests to allow testing new-run-webkit-tests on various platforms
2752         https://bugs.webkit.org/show_bug.cgi?id=37632
2753
2754         * Scripts/run-webkit-tests:
2755          - Fix the wrapper to work for users who do not
2756            have WebKitTools/Scripts in their path.
2757
2758 2010-04-14  Eric Seidel  <eric@webkit.org>
2759
2760         Reviewed by Adam Barth.
2761
2762         Add a layer of indirection when calling run-webkit-tests to
2763         allow testing new-run-webkit-tests on various platforms.
2764         https://bugs.webkit.org/show_bug.cgi?id=37632
2765
2766         This will let us test and fix bugs in new-run-webkit-tests
2767         without needing to restart the buildbot master between tests.
2768
2769         Currently this change leaves run-webkit-tests as-is, but once
2770         its landed we will easily be able to turn on/off
2771         new-run-webkit-tests for various ports/configurations.
2772
2773         I will send a note out to webkit-dev about how we will
2774         be using this launcher script to test on the bots.
2775
2776         * Scripts/old-run-webkit-tests: Copied from WebKitTools/Scripts/run-webkit-tests.
2777         * Scripts/run-webkit-tests:
2778          - A new script which decides whether to run new- or old-
2779            run-webkit-tests based on the platform.
2780         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2781          - Add some dummy argument handling for arguments which
2782            old-run-webkit-tests supports but new-run-webkit-tests
2783            does not yet.
2784
2785 2010-04-18  Eric Seidel  <eric@webkit.org>
2786
2787         Reviewed by Adam Barth.
2788
2789         Add Gtk bots to the list of "core builders" (builders which stop the commit-queue when they turn red)
2790         https://bugs.webkit.org/show_bug.cgi?id=33295
2791
2792         The Gtk builders have been green every time I've looked
2793         at them in the last 5 days or so.  It would appear webkit
2794         is now keeping them green and we should update the core
2795         builder list to match reality.
2796
2797         * Scripts/webkitpy/common/net/buildbot.py:
2798         * Scripts/webkitpy/common/net/buildbot_unittest.py:
2799
2800 2010-04-18  Robert Hogan  <robert@webkit.org>
2801
2802         Reviewed by Simon Hausmann.
2803
2804         [Qt] Add support for LayoutTestController commands:
2805                    setSmartInsertDeleteEnabled
2806                    setSelectTrailingWhitespaceEnabled
2807                    execCommand
2808                    isCommandEnabled
2809
2810         https://bugs.webkit.org/show_bug.cgi?id=35844
2811
2812         * DumpRenderTree/qt/DumpRenderTreeQt.cpp:
2813         (WebCore::WebPage::resetSettings):
2814         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
2815         (LayoutTestController::setSmartInsertDeleteEnabled):
2816         (LayoutTestController::setSelectTrailingWhitespaceEnabled):
2817         (LayoutTestController::execCommand):
2818         (LayoutTestController::isCommandEnabled):
2819         * DumpRenderTree/qt/LayoutTestControllerQt.h:
2820
2821 2010-04-17  Adam Barth  <abarth@webkit.org>
2822
2823         Reviewed by Eric Seidel.
2824
2825         Remove steps_references and commands_references
2826         https://bugs.webkit.org/show_bug.cgi?id=37758
2827
2828         We tried using the mumble_references convention to manage our
2829         dependencies, but it doesn't seem to be providing much value for the
2830         steps and commands module because these modules are small pieces of the
2831         larger tool module.  In this patch, I've removed the references file
2832         for these modules.
2833  
2834         I've left the style_references file for the style module because that
2835         module seems better isolated from the rest of webkitpy and the
2836         style_references file appears to be providing some value.
2837
2838         * Scripts/webkitpy/tool/commands/commandtest.py:
2839         * Scripts/webkitpy/tool/commands/download_unittest.py:
2840         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
2841         * Scripts/webkitpy/tool/commands/queries_unittest.py:
2842         * Scripts/webkitpy/tool/commands/queues_unittest.py:
2843         * Scripts/webkitpy/tool/commands/queuestest.py:
2844         * Scripts/webkitpy/tool/commands/upload.py:
2845         * Scripts/webkitpy/tool/commands/upload_unittest.py:
2846         * Scripts/webkitpy/tool/commands_references.py: Removed.
2847         * Scripts/webkitpy/tool/steps/closebugforlanddiff_unittest.py:
2848         * Scripts/webkitpy/tool/steps/steps_unittest.py:
2849         * Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittest.py:
2850         * Scripts/webkitpy/tool/steps/validatereviewer_unittest.py:
2851         * Scripts/webkitpy/tool/steps_references.py: Removed.
2852
2853 2010-04-17  Eric Seidel  <eric@webkit.org>
2854
2855         Reviewed by Adam Barth.
2856
2857         WebKit needs a Chromium Mac EWS Builder
2858         https://bugs.webkit.org/show_bug.cgi?id=37742
2859
2860         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
2861
2862 2010-04-17  Adam Barth  <abarth@webkit.org>
2863
2864         Fix expected results for unit test broken by
2865         http://trac.webkit.org/changeset/57772
2866
2867         * Scripts/webkitpy/common/net/buildbot_unittest.py:
2868
2869 2010-04-17  Sam Weinig  <weinig@apple.com>
2870
2871         Reviewed by Adam Roben.
2872
2873         Teach windows MiniBrowser how to work with window.open()
2874         and targeted links.
2875
2876         * MiniBrowser/win/BrowserView.cpp:
2877         (createNewPage): Create a new BrowserWindow and return its page.
2878         (showPage): Show the page.
2879         (closePage): Empty implementation.
2880         (runJavaScriptAlert): Empty implementation.
2881         (BrowserView::create): Register a UIClient.
2882         * MiniBrowser/win/BrowserView.h:
2883         (BrowserView::webView): Added.
2884         Change create to take a BrowserWindow instead of an HWND.
2885
2886         * MiniBrowser/win/BrowserWindow.cpp:
2887         (BrowserWindow::wndProc): Respond to WM_NCDESTROY.
2888         (BrowserWindow::goToURL): Added. Forwards to BrowserView.
2889         (BrowserWindow::onCreate): Don't always go to the default
2890         url. Let the caller do this.
2891         (BrowserWindow::onNCDestroy): Delete the window.
2892         * MiniBrowser/win/BrowserWindow.h:
2893         (BrowserWindow::view): Added.
2894         (BrowserWindow::window): Added.
2895
2896         * MiniBrowser/win/main.cpp:
2897         (_tWinMain):
2898         Go to the default URL for the initial page. Allocate the initial
2899         window on the heap for correctness.
2900
2901 2010-04-16  Adam Roben  <aroben@apple.com>
2902
2903         Add the Windows Debug (Test) builder to the list of core builders
2904
2905         It's been green for a few days now, and all the known Windows
2906         flakiness is Release-only.
2907
2908         Rubber-stamped by Mark Rowe.
2909
2910         * Scripts/webkitpy/common/net/buildbot.py:
2911         (BuildBot.core_builder_name_regexps): Added a regular expression to
2912         match the "Windows Debug (Test)" builder.
2913
2914 2010-04-16  Sam Weinig  <sam@webkit.org>
2915
2916         Reviewed by Anders Carlsson.
2917
2918         Fix window.open() and targeted links.
2919
2920         * MiniBrowser/mac/BrowserWindowController.m:
2921         (_createNewPage): Use the correct initializer to and load the window.
2922
2923 2010-04-16  Adam Roben  <aroben@apple.com>
2924
2925         Fix links to layout test results from build status pages
2926
2927         Reviewed by Mark Rowe.
2928
2929         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2930         (ExtractTestResults.finished): Prepend "/" on the URL of the test
2931         results page so that it is treated as an absolute URL.
2932
2933 2010-04-16  Tony Chang  <tony@chromium.org>
2934
2935         Reviewed by Dimitri Glazkov.
2936
2937         [chromium] build DRT on Linux
2938         https://bugs.webkit.org/show_bug.cgi?id=37690
2939
2940         * Scripts/build-dumprendertree: Add support for win and linux
2941
2942 2010-04-16  Sam Weinig  <weinig@apple.com>
2943
2944         Reviewed by Adam Roben.
2945
2946         Use the threaded process model for MiniBrowser if holding down
2947         the shift key on startup.
2948
2949         * MiniBrowser/win/BrowserView.cpp:
2950         (BrowserView::create): 
2951
2952 2010-04-15  Tony Chang  <tony@chromium.org>
2953
2954         Reviewed by Dimitri Glazkov.
2955
2956         [chromium] Add TestShellGtk.cpp so we can link on Linux
2957         https://bugs.webkit.org/show_bug.cgi?id=37561
2958
2959         * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: Add new file and
2960             add platform file exceptions.
2961         * DumpRenderTree/chromium/TestShellGtk.cpp: Added.
2962         (AlarmHandler):
2963         (TestShell::waitTestFinished):
2964
2965 2010-04-15  Tony Chang  <tony@chromium.org>
2966
2967         Reviewed by Dimitri Glazkov.
2968
2969         build DRT on chromium mac
2970         https://bugs.webkit.org/show_bug.cgi?id=37639
2971
2972         * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
2973         * Scripts/build-dumprendertree: enable build-dumprendertree --chromium
2974
2975 2010-04-15  Kent Tamura  <tkent@chromium.org>
2976
2977         Reviewed by Dimitri Glazkov.
2978
2979         [DRT/Chromium] Add LayoutTestHelper for Mac
2980         https://bugs.webkit.org/show_bug.cgi?id=37668
2981
2982         LayouTestHelper.mm is based on webkit/tools/test_shell/mac/layout_test_helper.mm
2983         of Chromium.
2984
2985         * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
2986         * DumpRenderTree/chromium/LayoutTestHelper.mm: Added.
2987
2988 2010-04-15  Alexey Proskuryakov  <ap@apple.com>
2989
2990         Reviewed by Geoff Garen.
2991
2992         https://bugs.webkit.org/show_bug.cgi?id=37494
2993         <rdar://problem/7857060> REGRESSION (r57340): fast/events/mouse-drag-from-frame-to-other-frame.html
2994         fails on Windows
2995
2996         * DumpRenderTree/win/EventSender.cpp: (makeEventSender):
2997         * DumpRenderTree/win/EventSender.h:
2998         Tell EventSender if it's being created for a top frame.
2999         
3000         * DumpRenderTree/win/FrameLoadDelegate.cpp:
3001         (FrameLoadDelegate::didClearWindowObjectForFrameInStandardWorld): We only want to reset
3002         EventSender machinery when a new test is loaded, not when an iframe (or just its global
3003         object) is created.
3004
3005 2010-04-15  Adam Roben  <aroben@apple.com>
3006
3007         Fix Windows WebKit2 build.
3008
3009         * MiniBrowser/win/MiniBrowser.cpp:
3010
3011 2010-04-15  Ojan Vafai  <ojan@chromium.org>
3012
3013         Reviewed by Adam Barth.
3014
3015         Include codereview issue number in patch description
3016         https://bugs.webkit.org/show_bug.cgi?id=37677
3017
3018         This lets us know which rietveld issue this patch is tied to.
3019
3020         Also, make it so that --fancy-review overrides --no-review.
3021
3022         * Scripts/webkitpy/tool/steps/postcodereview.py:
3023         * Scripts/webkitpy/tool/steps/postdiff.py:
3024
3025 2010-04-15  Adam Roben  <aroben@apple.com>
3026
3027         Make --exit-after-n-failures work when all tests are timing out or crashing
3028
3029         Fixes <http://webkit.org/b/37679>.
3030
3031         Reviewed by Jon Honeycutt.
3032
3033         * Scripts/run-webkit-tests:
3034         (top level): When a test crashes or times out, break out of the main loop if
3035         stopRunningTestsEarlyIfNeeded returns true. Moved some code from the bottom of the main loop
3036         from here...
3037         (stopRunningTestsEarlyIfNeeded): ...to here.
3038
3039 2010-04-15  Sam Weinig  <sam@webkit.org>
3040
3041         Reviewed by Anders Carlsson.
3042
3043         Add WebHistoryClient support.
3044         https://bugs.webkit.org/show_bug.cgi?id=37671
3045
3046         Add HistoryClient logging.
3047
3048         * MiniBrowser/mac/BrowserWindowController.m:
3049         (_didNavigateWithNavigationData):
3050         (_didPerformClientRedirect):
3051         (_didPerformServerRedirect):
3052         (_didUpdateHistoryTitle):
3053         (-[BrowserWindowController awakeFromNib]):
3054
3055 2010-04-15  Anders Carlsson  <andersca@apple.com>
3056
3057         Reviewed by Sam Weinig.
3058
3059         Start the mini browser in threaded mode if shift is pressed during startup.
3060         https://bugs.webkit.org/show_bug.cgi?id=37670
3061
3062         * MiniBrowser/mac/AppDelegate.m:
3063         (-[BrowserAppDelegate init]):
3064
3065 2010-04-15  Chris Fleizach  <cfleizach@apple.com>
3066
3067         Reviewed by Beth Dakin.
3068
3069         AXHelp is being appended from ancestors incorrectly
3070         https://bugs.webkit.org/show_bug.cgi?id=37659
3071
3072         * DumpRenderTree/AccessibilityUIElement.cpp:
3073         (getHelpTextCallback):
3074         (AccessibilityUIElement::getJSClass):
3075         * DumpRenderTree/AccessibilityUIElement.h:
3076         * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:
3077         (AccessibilityUIElement::helpText):
3078         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
3079         (AccessibilityUIElement::helpText):
3080         * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
3081         (AccessibilityUIElement::helpText):
3082
3083 2010-04-15  Dirk Pranke  <dpranke@chromium.org>
3084
3085         Reviewed by Adam Barth.
3086
3087         Re-format run-webkit-tests to fit in 80-columns for PEP-8 compliance.
3088         (broken by r57463 and r57381, at least). I've also filed bug 37477
3089         to fix check-webkit-style to catch these things.
3090
3091         https://bugs.webkit.org/show_bug.cgi?id=38586
3092
3093         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3094
3095 2010-04-15  Dirk Pranke  <dpranke@chromium.org>
3096
3097         Reviewed by Dimitri Glazkov.
3098
3099         Add a way to override the user-visible name for the test binary since
3100         some ports don't call it DumpRenderTree (e.g., Chromium Win uses
3101         test_shell, Chromium Mac uses TestShell) by adding a driver_name()
3102         method to the Port interface.
3103
3104         https://bugs.webkit.org/show_bug.cgi?id=37631
3105
3106         * Scripts/webkitpy/layout_tests/port/base.py:
3107         * Scripts/webkitpy/layout_tests/port/chromium.py:
3108         * Scripts/webkitpy/layout_tests/port/chromium_mac.py:
3109         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3110
3111 2010-04-14  Anders Carlsson  <andersca@apple.com>
3112
3113         Reviewed by Adam Roben.
3114
3115         Add "Force Repaint" to debug menu.
3116         https://bugs.webkit.org/show_bug.cgi?id=37627
3117
3118         * MiniBrowser/mac/BrowserWindowController.h:
3119         * MiniBrowser/mac/BrowserWindowController.m:
3120         (-[BrowserWindowController forceRepaint:]):
3121         * MiniBrowser/mac/English.lproj/MainMenu.xib:
3122
3123 2010-04-15  Sam Weinig  <sam@webkit.org>
3124
3125         Reviewed by Adam Roben.
3126
3127         Add debug-minibrowser script.
3128
3129         * Scripts/debug-minibrowser: Copied from Scripts/run-minibrowser.
3130         * Scripts/webkitdirs.pm:
3131
3132 2010-04-15  Roland Steiner  <rolandsteiner@chromium.org>
3133  
3134         Reviewed by Dimitri Glazkov.
3135
3136         Bug 37636 - [DRT/Chromium] Implement DRT/Chromium for Windows
3137         https://bugs.webkit.org/show_bug.cgi?id=37636
3138  
3139         Second patch: add Windows-specific implementation parts
3140         of TestShell.
3141
3142         * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
3143         * DumpRenderTree/chromium/TestShell.h:
3144         (TestShell::finishedEvent):
3145         * DumpRenderTree/chromium/TestShellWin.cpp:
3146         (watchDogThread):
3147         (TestShell::waitTestFinished):
3148
3149 2010-04-15  Roland Steiner  <rolandsteiner@chromium.org>
3150
3151         Reviewed by Dimitri Glazkov.
3152
3153         Bug 37636 - [DRT/Chromium] Implement DRT/Chromium for Windows
3154         https://bugs.webkit.org/show_bug.cgi?id=37636
3155
3156         First patch: fix compiler errors.
3157
3158         * DumpRenderTree/chromium/EventSender.cpp:
3159         (EventSender::reset):
3160         (EventSender::dispatchMessage):
3161         * DumpRenderTree/chromium/LayoutTestController.cpp:
3162         (LayoutTestController::pathToLocalResource):
3163         * DumpRenderTree/chromium/TestWebWorker.h:
3164         * DumpRenderTree/chromium/TextInputController.cpp:
3165         * DumpRenderTree/chromium/WebViewHost.h:
3166         * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
3167
3168 2010-04-14  Luiz Agostini  <luiz.agostini@openbossa.org>
3169
3170         Reviewed by Simon Hausmann.
3171
3172         [Qt] Moving setViewMode from DumpRenderTreeSupportQt to qwebpage.cpp
3173         https://bugs.webkit.org/show_bug.cgi?id=37622
3174
3175         Method qt_wrt_setViewMode was removed from qwebpage.cpp by mistake in r57433
3176         (bug 35844). Moving it back.
3177
3178         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
3179         (LayoutTestController::setViewModeMediaFeature):
3180
3181 2010-04-15  Dirk Pranke  <dpranke@chromium.org>
3182
3183         Reviewed by Adam Barth.
3184
3185         Add some very minimal unit tests for new-run-webkit-tests. This should
3186         be enough to catch egregious brokenness like syntax errors and import
3187         declaration issues.
3188
3189         https://bugs.webkit.org/show_bug.cgi?id=37432
3190
3191         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3192         * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py: Added.
3193
3194 2010-04-14  Brian Weinstein  <bweinstein@apple.com>
3195
3196         Reviewed by Adam Roben.
3197
3198         Add a way for the buildbot to kill any old processes that are running. This
3199         is useful because the Windows bots can get in states where a process remains
3200         running (httpd.exe, DumpRenderTree.exe), which causes the bots to get in a red
3201         state, and the processes must be killed manually.
3202
3203         * BuildSlaveSupport/build.webkit.org-config/master.cfg: If we are on Windows, kill
3204             the old processes that might be running.
3205         * BuildSlaveSupport/win/kill-old-processes: Added.
3206
3207 2010-04-14  Sam Weinig  <sam@webkit.org>
3208
3209         Reviewed by Anders Carlsson.
3210
3211         Tear down WebKit more completely on window closing and application
3212         termination. We still don't block application termination for pending
3213         close, but this is a step in the right direction.
3214
3215         * MiniBrowser/mac/AppDelegate.m:
3216         (-[BrowserAppDelegate applicationWillTerminate:]):
3217         * MiniBrowser/mac/BrowserWindowController.h:
3218         * MiniBrowser/mac/BrowserWindowController.m:
3219         (-[BrowserWindowController dealloc]):
3220         (-[BrowserWindowController windowWillClose:]):
3221         (-[BrowserWindowController applicationTerminating]):
3222
3223 2010-04-14  Adam Barth  <abarth@webkit.org>
3224
3225         Reviewed by Eric Seidel.
3226
3227         Use pretty patch for confirming webkit-patch diffs
3228         https://bugs.webkit.org/show_bug.cgi?id=37489
3229
3230         * Scripts/webkitpy/common/prettypatch.py: Added.
3231         * Scripts/webkitpy/tool/commands/download_unittest.py:
3232         * Scripts/webkitpy/tool/commands/upload_unittest.py:
3233         * Scripts/webkitpy/tool/mocktool.py:
3234         * Scripts/webkitpy/tool/steps/confirmdiff.py:
3235
3236 2010-04-14  Eric Seidel  <eric@webkit.org>
3237
3238         Reviewed by Adam Barth.
3239
3240         Teach webkit-patch how to handle revisions missing ChangeLogs
3241         https://bugs.webkit.org/show_bug.cgi?id=37519
3242
3243         Make commit_info_for_revision return None when revision
3244         is missing a ChangeLog.  Previously we would throw an array index
3245         exception.
3246         Teach callers how to handle None.
3247
3248         * Scripts/webkitpy/common/checkout/api.py:
3249         * Scripts/webkitpy/common/checkout/api_unittest.py:
3250         * Scripts/webkitpy/tool/commands/download.py:
3251         * Scripts/webkitpy/tool/commands/queries.py:
3252         * Scripts/webkitpy/tool/commands/sheriffbot.py:
3253
3254 2010-04-13  Eric Seidel  <eric@webkit.org>
3255
3256         Reviewed by Adam Roben.
3257
3258         Add Qt Bot to the list of "core builders" (builders which block the commit-queue when red)
3259         https://bugs.webkit.org/show_bug.cgi?id=33297
3260
3261         This is an experiment.  The bots have been green for
3262         a while.  We'll see if adding them under sheriff-bot protection
3263         will keep them green.
3264
3265         * Scripts/webkitpy/common/net/buildbot.py:
3266         * Scripts/webkitpy/common/net/buildbot_unittest.py:
3267
3268 2010-04-13  Eric Seidel  <eric@webkit.org>
3269
3270         Unreviewed, just fixing a constant in the Rietveld unit test.
3271
3272         * Scripts/webkitpy/common/net/rietveld_unittest.py
3273
3274 2010-04-13  Eric Seidel  <eric@webkit.org>
3275
3276         Unreviewed, just adding missing Mock to fix python tests.
3277
3278         * Scripts/webkitpy/tool/mocktool.py:
3279
3280 2010-04-13  Ojan Vafai  <ojan@chromium.org>
3281
3282         Reviewed by David Levin.
3283
3284         Add experimental prototype Rietveld integration to webkit-patch upload
3285         https://bugs.webkit.org/show_bug.cgi?id=37418
3286
3287         This patch adds bare-bones integration with Rietveld for code reviews.
3288         The behavior is hidden behind the --fancy-review command line flag.
3289         Currently, there's no support for uploading more than one patch per
3290         issue (which is a nice feature of Rietveld).  The plan is to play with
3291         this for a bit and see if it's useful.
3292
3293         Modified from Adam's original patch to autoinstall the rietveld upload script.
3294
3295         * Scripts/webkitpy/common/config/__init__.py:
3296         * Scripts/webkitpy/common/net/rietveld.py: Added.
3297         * Scripts/webkitpy/common/net/rietveld_unitttest.py: Added.
3298         * Scripts/webkitpy/tool/commands/queues_unittest.py:
3299         * Scripts/webkitpy/tool/commands/upload.py:
3300         * Scripts/webkitpy/tool/commands/upload_unittest.py:
3301         * Scripts/webkitpy/tool/main.py:
3302         * Scripts/webkitpy/tool/mocktool.py:
3303         * Scripts/webkitpy/tool/steps/__init__.py:
3304         * Scripts/webkitpy/tool/steps/options.py:
3305         * Scripts/webkitpy/tool/steps/postcodereview.py: Added.
3306         * Scripts/webkitpy/tool/steps/postdiff.py:
3307
3308 2010-04-13  Sam Weinig  <sam@webkit.org>
3309
3310         Rubber-stamped by Mark Rowe.
3311
3312         Add Makefile to MiniBrowser.
3313
3314         * MiniBrowser/Makefile: Added.
3315
3316 2010-04-13  Eric Seidel  <eric@webkit.org>
3317
3318         Unreviewed, just adding a sanity check.
3319
3320         Add check to make sure commit-queue can never commit too short a message
3321         https://bugs.webkit.org/show_bug.cgi?id=37528
3322
3323         The commit-queue made bogus messages here:
3324         http://trac.webkit.org/changeset/57532
3325         http://trac.webkit.org/changeset/57534
3326
3327         This was a regression caused by adding unicode parsing for
3328         our ChangeLog files.  Popen does not seem to play nice with
3329         unicode strings.
3330
3331         I'm also adding an "assert" to make sure short ChangeLogs never happen again.
3332
3333         * Scripts/webkitpy/common/system/executive.py:
3334          - Cast input to strings before passing to POpen
3335         * Scripts/webkitpy/tool/steps/commit.py:
3336          - Validate that commit messages are not to short.
3337
3338 2010-04-13  Adam Roben  <aroben@apple.com>
3339
3340         Robustify new-run-webkit-tests against paths with spaces in them
3341
3342         Reviewed by Eric Seidel.
3343
3344         * Scripts/webkitpy/layout_tests/port/apache_http_server.py:
3345         (LayoutTestApacheHttpd.__init__): Quote all paths that we pass to
3346         Apache to ensure that paths with spaces in them are interpreted
3347         correctly.
3348
3349 2010-04-13  Csaba Osztrogonác  <ossy@webkit.org>
3350
3351         Unreviewed buildfix after r57537.
3352
3353         * DumpRenderTree/qt/LayoutTestControllerQt.h: Declaration of removeOriginAccessWhitelistEntry() added.
3354
3355 2010-04-13  Sam Weinig  <sam@webkit.org>
3356
3357         Reviewed by Maciej Stachowiak.
3358
3359         Make building new webkit API and MiniBrowser a little easier.
3360
3361         * Scripts/build-webkit: Make building with --webkit2 build the 
3362         MiniBrowser as well and tell you how to use it.
3363         * Scripts/run-minibrowser: Copied from Scripts/run-safari.
3364         * Scripts/webkitdirs.pm: Add runMiniBrowser function.
3365
3366 2010-04-12  Timothy Hatcher  <timothy@apple.com>
3367
3368         SecurityOrigin needs a way to remove individual OriginAccessEntries
3369         https://bugs.webkit.org/show_bug.cgi?id=37449
3370
3371         Reviewed by Dave Hyatt.
3372
3373         * DumpRenderTree/LayoutTestController.cpp:
3374         (removeOriginAccessWhitelistEntryCallback): Added. Call LayoutTestController::removeOriginAccessWhitelistEntry.
3375         (LayoutTestController::staticFunctions): Added removeOriginAccessWhitelistEntry.
3376         * DumpRenderTree/LayoutTestController.h:
3377         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
3378         (LayoutTestController::removeOriginAccessWhitelistEntry): Added. FIXME to implement.
3379         * DumpRenderTree/mac/LayoutTestControllerMac.mm:
3380         (LayoutTestController::removeOriginAccessWhitelistEntry): Added.
3381         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
3382         (LayoutTestController::removeOriginAccessWhitelistEntry): Added. FIXME to implement.
3383         * DumpRenderTree/win/LayoutTestControllerWin.cpp:
3384         (LayoutTestController::removeOriginAccessWhitelistEntry): Added.
3385         * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
3386         (LayoutTestController::whiteListAccessFromOrigin): FIXME to implement.
3387         (LayoutTestController::removeOriginAccessWhitelistEntry): Added. FIXME to implement.
3388
3389 2010-04-13  Timothy Hatcher  <timothy@apple.com>
3390
3391         Rename SecurityOrigin::whiteListAccessFromOrigin to addOriginAccessWhitelistEntry.
3392         And LayoutTestController.whiteListAccessFromOrigin to addOriginAccessWhitelistEntry.
3393         And SecurityOrigin::resetOriginAccessWhiteLists to resetOriginAccessWhitelists.
3394
3395         SecurityOrigin needs a way to remove individual OriginAccessEntries
3396         https://bugs.webkit.org/show_bug.cgi?id=37449
3397
3398         Reviewed by Dave Hyatt.
3399
3400         * DumpRenderTree/LayoutTestController.cpp:
3401         (addOriginAccessWhitelistEntryCallback):
3402         (LayoutTestController::staticFunctions):
3403         * DumpRenderTree/LayoutTestController.h:
3404         * DumpRenderTree/chromium/LayoutTestController.cpp:
3405         (LayoutTestController::LayoutTestController):
3406         (LayoutTestController::addOriginAccessWhitelistEntry):
3407         * DumpRenderTree/chromium/LayoutTestController.h:
3408         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
3409         (LayoutTestController::addOriginAccessWhitelistEntry):
3410         * DumpRenderTree/mac/DumpRenderTree.mm:
3411         (resetWebViewToConsistentStateBeforeTesting):
3412         * DumpRenderTree/mac/LayoutTestControllerMac.mm:
3413         (LayoutTestController::addOriginAccessWhitelistEntry):
3414         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
3415         (LayoutTestController::addOriginAccessWhitelistEntry):
3416         * DumpRenderTree/qt/LayoutTestControllerQt.h:
3417         * DumpRenderTree/win/DumpRenderTree.cpp:
3418         (resetWebViewToConsistentStateBeforeTesting):
3419         * DumpRenderTree/win/LayoutTestControllerWin.cpp:
3420         (LayoutTestController::addOriginAccessWhitelistEntry):
3421         * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
3422         (LayoutTestController::addOriginAccessWhitelistEntry):
3423
3424 2010-04-13  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3425
3426         Reviewed by Eric Seidel.
3427
3428         Remove duplicate function for new-run-webkit-tests
3429         https://bugs.webkit.org/show_bug.cgi?id=37517
3430
3431         The version() function was already implemented.
3432
3433         * Scripts/webkitpy/layout_tests/port/webkit.py:
3434
3435 2010-04-13  Eric Seidel  <eric@webkit.org>
3436
3437         Reviewed by David Levin.
3438
3439         the commit-queue hates Tor Arne Vestbø
3440         https://bugs.webkit.org/show_bug.cgi?id=37511
3441
3442         We were failing to read reviewers out of ChangeLogs
3443         when the reviewer has unicode characters in his/her name.
3444         I fixed this by explicitly decoding from utf8 every time we
3445         read in a ChangeLog file (they are always UTF8).
3446
3447         * Scripts/webkitpy/common/checkout/changelog.py:
3448         * Scripts/webkitpy/common/checkout/changelog_unittest.py:
3449
3450 2010-04-13  Adam Roben  <aroben@apple.com>
3451
3452         Fix run-webkit-tests on Windows with spaces in the path
3453
3454         Fixes <http://webkit.org/b/37509>.
3455
3456         Reviewed by Steve Falkenburg.
3457
3458         * Scripts/run-webkit-tests:
3459         (convertPathUsingCygpath): Remove spaces from the path before passing
3460         them to cygpath, then add them back in after conversion, as some
3461         versions of cygpath seem to convert spaces into newlines.
3462
3463 2010-04-13  Adam Barth  <abarth@webkit.org>
3464
3465         Unreviewed, but approved by Dumitru Daniliuc.  (This patch is intended
3466         to fix the downstream Chromium build bots.  Hopefully it will work!)
3467
3468         Add a driver script for the new websocket server
3469         https://bugs.webkit.org/show_bug.cgi?id=37495
3470
3471         websocket_server.py can't be run directly because its a module and not
3472         a standalone script.  This used to work by accident because it didn't
3473         depend on any other modules.
3474
3475         * Scripts/new-run-webkit-websocketserver: Added.
3476         * Scripts/webkitpy/layout_tests/port/websocket_server.py:
3477
3478 2010-04-12  Eric Seidel  <eric@webkit.org>
3479
3480         Reviewed by Adam Barth.
3481
3482         Make new-run-webkit-test PrettyPatch failure reporting more awesome
3483         https://bugs.webkit.org/show_bug.cgi?id=37487
3484
3485         I also fixed an Executive/executive typo.
3486
3487         * Scripts/webkitpy/layout_tests/port/base.py:
3488
3489 2010-04-12  Eric Seidel  <eric@webkit.org>
3490
3491         Reviewed by Adam Barth.
3492
3493         new-run-webkit-tests should only build java support files on Mac
3494         https://bugs.webkit.org/show_bug.cgi?id=37482
3495
3496         Only the mac needs java support files, so I pushed _build_java
3497         down into the Mac port using a new hook "_check_port_build".
3498         In the process I noticed a bunch of code which could be shared
3499         between all ports and thus got rid of _tests_for_disabled_features
3500         and version() copy/paste between all webkit ports.
3501         I also made check_build only bother to check for ImageDiff if we're
3502         using pixel tests.
3503
3504         * Scripts/webkitpy/layout_tests/port/gtk.py:
3505         * Scripts/webkitpy/layout_tests/port/mac.py:
3506         * Scripts/webkitpy/layout_tests/port/qt.py:
3507         * Scripts/webkitpy/layout_tests/port/webkit.py:
3508         * Scripts/webkitpy/layout_tests/port/win.py:
3509
3510 2010-04-12  Dumitru Daniliuc  <dumi@chromium.org>
3511
3512         Unreviewed, trying to make scripts work on machines without
3513         Ruby...
3514
3515         * Scripts/webkitpy/layout_tests/port/base.py:
3516
3517 2010-04-12  Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
3518
3519         Reviewed by Eric Seidel.
3520
3521         Add stub files for running new-run-webkit-tests for the Qt port
3522
3523         * Scripts/webkitpy/layout_tests/port/factory.py:
3524         * Scripts/webkitpy/layout_tests/port/qt.py: Added.
3525
3526 2010-04-12  Dirk Pranke  <dpranke@chromium.org>
3527
3528         Reviewed by Eric Seidel.
3529
3530         Modify run_webkit_tests.py to not call sys.exit() at the end of test
3531         run; doing so makes it more difficult to embed the routine for,
3532         among other things, unit tests. We push the exit calling up into
3533         new-run-webkit-tests.
3534
3535         https://bugs.webkit.org/show_bug.cgi?id=37464
3536
3537         * Scripts/new-run-webkit-tests:
3538         * Scripts/webkitpy/layout_tests/run_webkit_tests.py: