[GTK] [JHBuild] package libtool-bin is now required on Debian systems.
[WebKit-https.git] / Tools / ChangeLog
1 2015-12-14  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2
3         [GTK] [JHBuild] package libtool-bin is now required on Debian systems.
4         https://bugs.webkit.org/show_bug.cgi?id=152252
5
6         Reviewed by Sergio Villar Senin.
7
8         * gtk/install-dependencies: Add libtool-bin to the list of packages required
9         for building the JHBuild on Debian systems.
10
11 2015-12-11  Joseph Pecoraro  <pecoraro@apple.com>
12
13         check-for-inappropriate-objc-class-names should check all class names, not just externally visible ones
14         https://bugs.webkit.org/show_bug.cgi?id=152156
15
16         Reviewed by Dan Bernstein.
17
18         Our frameworks should appropriately prefix all ObjC classes,
19         not just external symbols.
20
21         * Scripts/check-for-inappropriate-objc-class-names:
22         Remove the -g switch to check all ObjC class names.
23
24 2015-12-10  Eric Carlson  <eric.carlson@apple.com>
25
26         [MediaStream] Expose media capture devices persistent permissions to WebCore
27         https://bugs.webkit.org/show_bug.cgi?id=152087
28
29         Add support for the new user media permission checker page UI client method.
30
31         Reviewed by Chris Dumez.
32
33         * WebKitTestRunner/TestController.cpp:
34         (WTR::decidePolicyForUserMediaPermissionRequest):
35         (WTR::checkUserMediaPermissionForOrigin):
36         (WTR::TestController::createOtherPage): Add checkUserMediaPermissionForOrigin.
37         (WTR::TestController::createWebViewWithOptions): Ditto.
38         (WTR::TestController::resetStateToConsistentValues): Clear m_userMediaOriginPermissions.
39         (WTR::originUserVisibleName): New, create a string for the origin.
40         (WTR::TestController::handleCheckOfUserMediaPermissionForOrigin): Set the WKUserMediaPermissionCheckRef
41           according to the state of the origin permission map.
42         (WTR::TestController::handleUserMediaPermissionRequest): Remember both the origin and the
43           request so we can update the origin permission map in decidePolicyForUserMediaPermissionRequestIfPossible.
44         (WTR::TestController::decidePolicyForUserMediaPermissionRequestIfPossible): Update the
45           origin permission map.
46         * WebKitTestRunner/TestController.h:
47
48 2015-12-10  Alex Christensen  <achristensen@webkit.org>
49
50         REGRESSION (r192796) WKBundlePageResourceLoadClient should be able to setHTTPBody in willSendRequestForFrame
51         https://bugs.webkit.org/show_bug.cgi?id=152022
52         rdar://problem/23763584
53
54         Reviewed by Darin Adler.
55
56         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
57         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
58         (WTR::InjectedBundlePage::willSendRequestForFrame):
59         * WebKitTestRunner/InjectedBundle/TestRunner.h:
60         (WTR::TestRunner::setWillSendRequestReturnsNull):
61         (WTR::TestRunner::willSendRequestReturnsNullOnRedirect):
62         (WTR::TestRunner::setWillSendRequestReturnsNullOnRedirect):
63         (WTR::TestRunner::setWillSendRequestAddsHTTPBody):
64         (WTR::TestRunner::willSendRequestHTTPBody):
65         Added setWillSendRequestAddsHTTPBody that uses new SPI for testing.
66
67 2015-12-10  Aakash Jain  <aakash_jain@apple.com>
68
69         Remove additional simulator checks before running layout-tests
70         https://bugs.webkit.org/show_bug.cgi?id=152146
71
72         Reviewed by Darin Adler.
73
74         * Scripts/webkitpy/port/ios.py:
75         (IOSSimulatorPort.check_sys_deps): Removed additional simulators verifications.
76         * Scripts/webkitpy/xcode/simulator.py:
77         (Simulator._boot_and_shutdown_simulator_device): Deleted.
78         (Simulator.check_simulator_device_and_erase_if_needed): Deleted.
79
80 2015-12-09  Aakash Jain  <aakash_jain@apple.com>
81
82         Run atleast one simulator even if max process limit is low
83         https://bugs.webkit.org/show_bug.cgi?id=152081
84         <rdar://problem/23819694>
85
86         Reviewed by Alexey Proskuryakov.
87
88 2015-12-09  Mario Sanchez Prada  <mario@endlessm.com>
89
90         [GTK] Crash in WebProcess when loading large content with custom URI schemes
91         https://bugs.webkit.org/show_bug.cgi?id=144262
92
93         Reviewed by Carlos Garcia Campos.
94
95         Added new unit test to check the additional scenarios we now
96         handle for custom URI schemes.
97
98         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp:
99         (generateHTMLContent): New helper function to generate big enough content.
100         (testWebContextURIScheme): New unit test.
101
102 2015-12-09  Ryuan Choi  <ryuan.choi@navercorp.com>
103
104         [EFL] Fix unhandled web process message when launching MiniBrowser
105         https://bugs.webkit.org/show_bug.cgi?id=152048
106
107         Reviewed by Gyuyoung Kim.
108
109         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewUserViewportToContents.cpp:
110         (TestWebKitAPI::TEST):
111
112 2015-12-09  Carlos Garcia Campos  <cgarcia@igalia.com>
113
114         [GTK] Add API to handle beforeunload events
115         https://bugs.webkit.org/show_bug.cgi?id=139090
116
117         Reviewed by Gustavo Noronha Silva.
118
119         * MiniBrowser/gtk/BrowserWindow.c:
120         (browserWindowConstructed):
121         (browserWindowDeleteEvent):
122         (browser_window_class_init):
123         Handle delete-event to prevent the window from being closed when
124         the page has beforeunload handlers. Use
125         webkit_web_view_try_close() when the window is requested to be
126         closed.
127         * TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
128         (testWebViewJavaScriptDialogs):
129         Add a test case for the WEBKIT_SCRIPT_DIALOG_BEFORE_UNLOAD_CONFIRM
130         script dialog type.
131
132 2015-12-09  Mario Sanchez Prada  <mario@endlessm.com>
133
134         Refactored initialization code in LoadTrackingTest.
135
136         Rubber-stamped by Carlos Garcia Campos.
137
138         Small refactoring to make sure that the state of a LoadTrackingTest
139         gets properly reset before loading new web content.
140
141         * TestWebKitAPI/gtk/WebKit2Gtk/LoadTrackingTest.h:
142         * TestWebKitAPI/gtk/WebKit2Gtk/LoadTrackingTest.cpp:
143         (LoadTrackingTest::reset): New, refactored code from *load*() and go*()
144         functions and reset the remaining local variables.
145         (LoadTrackingTest::loadURI): Call reset();
146         (LoadTrackingTest::loadHtml): Ditto.
147         (LoadTrackingTest::loadPlainText): Ditto.
148         (LoadTrackingTest::loadBytes): Ditto.
149         (LoadTrackingTest::loadRequest): Ditto.
150         (LoadTrackingTest::reload): Ditto.
151         (LoadTrackingTest::goBack): Ditto.
152         (LoadTrackingTest::goForward): Ditto.
153
154 2015-12-09  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
155
156         [EFL] REGRESSION(r193616): WKPreferences test has been failed since r193616
157         https://bugs.webkit.org/show_bug.cgi?id=151942
158
159         Reviewed by Darin Adler.
160
161         * MiniBrowser/efl/main.c:
162         (window_create): Enable offline web application cache feature on MiniBrowser.
163         (elm_main):
164
165 2015-12-08  Aakash Jain  <aakash_jain@apple.com>
166
167         https://bugs.webkit.org/show_bug.cgi?id=151243
168         <rdar://problem/22955197>
169
170         Reviewed by Alexey Proskuryakov.
171
172         * LayoutTestRelay/LayoutTestRelay/main.m:
173         (getTestingSimDevice): Use separate testing device for each worker.
174         * Scripts/webkitpy/layout_tests/controllers/manager.py:
175         (Manager.run): Perform cleanup even if setup fails.
176         * Scripts/webkitpy/port/ios.py:
177         (IOSSimulatorPort.default_child_processes): Calculate number of simulators to use.
178         (IOSSimulatorPort.child_processes): Gets the number of simulators from options variable.
179         (IOSSimulatorPort.setup_test_run): Handle mulitple simulators.
180         (IOSSimulatorPort._quit_ios_simulator): Same
181         (IOSSimulatorPort.clean_up_test_run): Same
182         (IOSSimulatorPort.check_sys_deps): Same
183         (IOSSimulatorPort.testing_device): Same
184         (IOSSimulatorPort.reset_preferences): Same
185         (IOSSimulatorPort.get_simulator_path): Return simulator path.
186         (IOSSimulatorPort._createSimulatorApp): Create the copy of simulator app.
187         * Scripts/webkitpy/xcode/simulator.py:
188         (Device.delete): Delete the simulator device.
189         (Simulator.delete_device): Same
190         (Simulator.wait_until_device_is_booted): Wait for device booting.
191
192 2015-12-08  Ryuan Choi  <ryuan.choi@navercorp.com>
193
194         [EFL] Add API to provide preferences before creating ewk_view
195         https://bugs.webkit.org/show_bug.cgi?id=151587
196
197         Reviewed by Gyuyoung Kim.
198
199         * MiniBrowser/efl/main.c:
200         (on_key_down):
201         (quit):
202         (window_create):
203         Moved settings related code to configuration() not to update settings
204         whenever ewk_view is created.
205         (configuration):
206         (elm_main):
207
208 2015-12-08  Carlos Garcia Campos  <cgarcia@igalia.com>
209
210         Unreviewed. Fix GTK+ API tests after r193639.
211
212         The new jhbuild version needs some more variables ot be present in
213         the builtin dict, even if they are set to None.
214
215         * jhbuild/jhbuildutils.py:
216         (enter_jhbuild_environment_if_available):
217
218 2015-12-07  Gustavo Noronha Silva  <gns@gnome.org>
219
220         [GTK] Notify WebCore when notification is clicked
221         https://bugs.webkit.org/show_bug.cgi?id=151951
222
223         Reviewed by Carlos Garcia Campos.
224
225         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
226         (testWebViewNotification): test the new API.
227
228 2015-12-07  Michael Catanzaro  <mcatanzaro@igalia.com>
229
230         'jhbuild build' should fail immediately when building any module fails
231         https://bugs.webkit.org/show_bug.cgi?id=145697
232
233         Reviewed by Carlos Garcia Campos.
234
235         * efl/jhbuildrc: Update jhbuildrc to account for the removal of the use_lib64 option.
236         * gtk/jhbuildrc: Update jhbuildrc to account for the removal of the use_lib64 option.
237         Everything is placed under lib instead of lib64 now.
238         * jhbuild/jhbuild-wrapper: Update jhbuild to the latest upstream commit, and pass
239         --exit-on-error when running 'jhbuild build'.
240         * jhbuild/jhbuildrc_common.py:
241         (init): Don't override PKG_CONFIG_PATH, CMAKE_PREFIX_PATH, or CMAKE_LIBRARY_PATH. Modern
242         jhbuild should be able to handle these for us without breaking things....
243
244 2015-12-07  Xabier Rodriguez Calvar  <calvaris@igalia.com>
245
246         Add support to import w3c tests from a repository with a different root that the main repo dir
247         https://bugs.webkit.org/show_bug.cgi?id=151751
248
249         Reviewed by Ryosuke Niwa and Youenn Fablet.
250
251         We should be able to import tests from repositories that are not pure test repositories and where tests are kept
252         in a different directory than the repository root.
253
254         This patch introduces a new parameter tests_directory that we will use as root directory to search for
255         tests. All paths will be flattened when copying tests to have a less complicated directory structure. This
256         requires having the copy_path lists including tuples of origin and destination directories.
257
258         * Scripts/webkitpy/w3c/test_downloader.py:
259         (TestDownloader._add_test_suite_paths): Adds the paths as a tuple of origin and destination directory.
260         (TestDownloader.copy_tests): Uses the origin and destination tuple for the paths to copy when copying files.
261         * Scripts/webkitpy/w3c/test_importer_unittest.py:
262         (TestImporterTest.test_tests_directory): Test.
263
264 2015-12-07  Xabier Rodriguez Calvar  <calvaris@igalia.com>
265
266         Mock TestRepositories in W3C importer tests
267         https://bugs.webkit.org/show_bug.cgi?id=151938
268
269         Reviewed by Youenn Fablet.
270
271         The test importer tests should use a fake repository instead of using the real one. The reason why this happened
272         is because the test repository method reading the file was using the filesystem directly instead of taking the
273         host one. This patch changes that.
274
275         * Scripts/webkitpy/w3c/test_downloader.py:
276         (TestDownloader.load_test_repositories): Take a filesystem and use it. If we get no filesystem, we use the
277         default one.
278         (TestDownloader.__init__): When loading the repositories, pass the host filesystem.
279         * Scripts/webkitpy/w3c/test_importer_unittest.py:
280         (TestImporterTest.test_harnesslinks_conversion):
281         (TestImporterTest.test_submodules_generation): Use a fake test repository file.
282
283 2015-12-07  David Kilzer  <ddkilzer@apple.com>
284
285         TestNetscapePlugIn: Address review comment on 193607
286         <http://webkit.org/b/151881>
287
288         * DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:
289         (testSetStatus): Initializing std::unique_ptr<char[]> with
290         nullptr is redundant.
291
292 2015-12-07  Carlos Garcia Campos  <cgarcia@igalia.com>
293
294         [GTK] Add webkit_uri_request_get_http_method
295         https://bugs.webkit.org/show_bug.cgi?id=151601
296
297         Reviewed by Martin Robinson.
298
299         Add test case to check HTTP method of WebKitURIRequest.
300
301         * TestWebKitAPI/Tests/WebKit2Gtk/TestLoaderClient.cpp:
302         (testURIRequestHTTPMethod):
303         (serverCallback):
304         (beforeAll):
305         * TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
306         (sendRequestCallback):
307
308 2015-12-07  Carlos Garcia Campos  <cgarcia@igalia.com>
309
310         [GTK] Add WebKitWebPage::console-message-sent signal to Web Extensions API
311         https://bugs.webkit.org/show_bug.cgi?id=79918
312
313         Reviewed by Gustavo Noronha Silva.
314
315         Add unit tests to check the different console messages.
316
317         * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
318         * TestWebKitAPI/Tests/WebKit2Gtk/TestConsoleMessage.cpp: Added.
319         (ConsoleMessageTest::ConsoleMessage::operator==):
320         (ConsoleMessageTest::consoleMessageReceivedCallback):
321         (ConsoleMessageTest::ConsoleMessageTest):
322         (ConsoleMessageTest::~ConsoleMessageTest):
323         (ConsoleMessageTest::waitUntilConsoleMessageReceived):
324         (testWebKitConsoleMessageConsoleAPI):
325         (testWebKitConsoleMessageJavaScriptException):
326         (testWebKitConsoleMessageNetworkError):
327         (testWebKitConsoleMessageSecurityError):
328         (beforeAll):
329         (afterAll):
330         * TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
331         (consoleMessageSentCallback):
332         (pageCreatedCallback):
333
334 2015-12-07  Ryuan Choi  <ryuan.choi@navercorp.com>
335
336         [EFL] MiniBrowser doesn't exit when called ewk_view_try_close()
337         https://bugs.webkit.org/show_bug.cgi?id=151934
338
339         Reviewed by Csaba Osztrogonác.
340
341         * MiniBrowser/efl/main.c:
342         (on_window_deletion): Revert the changes of r192767.
343
344 2015-12-07  Michael Catanzaro  <mcatanzaro@igalia.com>
345
346         [GTK] update-webkitgtk-libs cannot build mesa
347         https://bugs.webkit.org/show_bug.cgi?id=151535
348
349         Reviewed by Martin Robinson.
350
351         Upgrade to newer mesa in order to build successfully against LLVM 3.7. Add missing
352         dependency of mesa on LLVM, to ensure LLVM is built first. Build LLVM unconditionally, even
353         on architectures where FTL is not supported, to ensure mesa is always buildable, since LLVM
354         does not have a stable API and we cannot expect mesa to be buildable unless we control the
355         LLVM version. Build mesa with --disable-egl since --enable-egl conflicts with
356         --enable-xlib-glx. This fixes update-webkitgtk-libs on distros with LLVM 3.7.
357
358         * gtk/jhbuild.modules:
359
360 2015-12-07  Philippe Normand  <pnormand@igalia.com>
361
362         [GTK][Mac] libWebExtensionTest link error
363         https://bugs.webkit.org/show_bug.cgi?id=150802
364
365         Reviewed by Carlos Garcia Campos.
366
367         * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt: add dependencies to the webextension library.
368
369 2015-12-06  David Kilzer  <ddkilzer@apple.com>
370
371         TestNetscapePlugIn: Fix leaks found by static analyzer
372         <http://webkit.org/b/151881>
373
374         Reviewed by Darin Adler.
375
376         Fixes the following leaks found by the static analyzer:
377             DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:808:16: warning: Potential leak of memory pointed to by 'path'
378                     return false;
379                            ^~~~~
380             DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:808:16: warning: Potential leak of memory pointed to by 'target'
381                     return false;
382                            ^~~~~
383             DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:808:16: warning: Potential leak of memory pointed to by 'url'
384                     return false;
385                            ^~~~~
386
387         * DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:
388         (toCString): Switch to returning std::unique_ptr<char[]>.  Add
389         early return if allocation fails.
390         (testPostURLFile): Switch to using std::unique_ptr<char[]>.
391         Make sure to call fclose() on filehandle, even for an early
392         return.
393         (testSetStatus): Switch to using std::unique_ptr<char[]>.
394
395 2015-12-05  David Kilzer  <ddkilzer@apple.com>
396
397         prepare-ChangeLog: Fix some warning messages when using svn
398         <http://webkit.org/b/151914>
399
400         Reviewed by Daniel Bates.
401
402         * Scripts/prepare-ChangeLog:
403         (generateFunctionLists): Simplify logic so that we never call
404         normalizePath() with an undefined value.
405         (attributeCommand): Quote $subPath for the shell so that we
406         don't try to run "svn propget" on invalid paths.
407
408 2015-12-04  David Kilzer  <ddkilzer@apple.com>
409
410         TestNetscapePlugIn: Fix remaining static analyzer warnings
411         <http://webkit.org/b/151888>
412
413         Reviewed by Alexey Proskuryakov.
414
415         Fixes the following static analyzer warnings:
416             Tools/DumpRenderTree/TestNetscapePlugIn/main.cpp:101:9: warning: Called function pointer is null (null dereference)
417                     CRASH();
418                     ^~~~~~~
419             Tools/DumpRenderTree/TestNetscapePlugIn/main.cpp:46:5: note: expanded from macro 'CRASH'
420                 ((void(*)())0)(); /* More reliable, but doesn't say BBADBEEF */ \
421                 ^~~~~~~~~~~~~~~~
422             Tools/DumpRenderTree/TestNetscapePlugIn/main.cpp:375:12: warning: Access to field 'pluginTest' results in a dereference of a null pointer (loaded from variable 'obj')
423                 return obj->pluginTest->NPP_SetWindow(window);
424                        ^~~~~~~~~~~~~~~
425             2 warnings generated.
426
427         * DumpRenderTree/TestNetscapePlugIn/main.cpp:
428         (CRASH): Use __builtin_trap() for gcc/clang.
429         (NPP_SetWindow): Add early return if obj is nullptr.
430
431 2015-12-03  Carlos Garcia Campos  <cgarcia@igalia.com>
432
433         [GTK] Test /webkit2/WebKitWebResource/get-data is flaky
434         https://bugs.webkit.org/show_bug.cgi?id=151797
435
436         Reviewed by Martin Robinson.
437
438         Since we switched to use the network process to run the unit tests
439         the test /webkit2/WebKitWebResource/get-data sometimes fails and
440         sometimes passes. We are now also getting the notification for the
441         css image. Since we wait for 3 resources, sometimes the css image
442         is loaded before and then checkResourceData is called for it, but
443         not handled. When the css image is the last one loaded the test
444         passes. So, we just need to wait for the 4 resources.
445
446         * TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp:
447         (testWebResourceGetData):
448
449 2015-12-03  David Kilzer  <ddkilzer@apple.com>
450
451         DumpRenderTree: Use-after-free in createBitmapContext() in PixelDumpSupportMac.mm
452         <http://webkit.org/b/151845>
453
454         Reviewed by Simon Fraser.
455
456         Fixes the following static analyzer warning:
457             DumpRenderTree/mac/PixelDumpSupportMac.mm:67:9: warning: Use of memory after it is freed
458                     WTFLogAlways("DumpRenderTree: CGBitmapContextCreate(%p, %llu, %llu, 8, %llu, %p, 0x%x) failed\n", buffer, pixelsHigh, pixelsWide, rowBytes, colorSpace.get(), kCGImageAlphaPremultipliedFirst | kCGBitmapByteOrder32Host);
459                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
460
461         * DumpRenderTree/mac/PixelDumpSupportMac.mm:
462         (createBitmapContext): Free 'buffer' after using it in logging
463         to fix the use-after-free.  Assign a value of nullptr to buffer
464         so we don't return with it set to a freed address.
465
466 2015-12-03  Jer Noble  <jer.noble@apple.com>
467
468         Expose WebCore's InvisibleAutoplayNotPermitted setting to WebKit & WebKit2
469         https://bugs.webkit.org/show_bug.cgi?id=151830
470
471         Reviewed by Anders Carlsson.
472
473         Set invisibleAutoplayNotPermitted to NO by default both in WKTR and DRT.
474
475         * DumpRenderTree/mac/DumpRenderTree.mm:
476         (resetWebPreferencesToConsistentValues):
477         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
478         (WTR::initializeWebViewConfiguration):
479
480 2015-12-03  Anders Carlsson  <andersca@apple.com>
481
482         Remove Objective-C GC support
483         https://bugs.webkit.org/show_bug.cgi?id=151819
484         rdar://problem/23746991
485
486         Reviewed by Dan Bernstein.
487
488         * asan/asan.xcconfig:
489
490 2015-12-02  Yusuke Suzuki  <utatane.tea@gmail.com>
491
492         Allow nil for unspecified benchmark pathes
493         https://bugs.webkit.org/show_bug.cgi?id=151784
494
495         Reviewed by Filip Pizlo.
496
497         `Pathname.new(nil)` will raise an error.
498         Only generate Pathname if the benchmark path is specified.
499
500         * Scripts/run-jsc-benchmarks:
501
502 2015-12-02  Brent Fulgham  <bfulgham@apple.com>
503
504         [Win] Run non-http tests without Cygwin
505         https://bugs.webkit.org/show_bug.cgi?id=151721
506
507         Reviewed by Andy Estes.
508
509         Support native 32-bit and 64-bit Python (and Perl) builds
510         for running tests:
511
512         1. Use "startswith('win')", rather than "== 'win32'" to support
513         various Windows build types.
514         2. Supply full path for some native Windows utilities, since the
515         path environment does not always have the specified, and they are
516         guaranteed to exist in those specific locations.
517         3. Make sure native Windows Python test runs pass proper environment
518         variables to run programs.
519         4. Append 'exe' suffix when running Windows executables.
520         5. Use the _winreg Python module on Windows, since the Cygwin 'regtool'
521         command doesn't exist.
522         
523         * Scripts/update-webkit: Use Perl $^X command to refer to the path of
524         the current Perl executable, rather than requiring a new path search.
525         * Scripts/webkitpy/common/find_files_unittest.py:
526         (TestWinNormalize.test_win): Use startswith('win').
527         * Scripts/webkitpy/common/prettypatch_unittest.py:
528         (test_pretty_diff_encodings): Ditto.
529         * Scripts/webkitpy/common/system/executive.py:
530         (Executive._should_close_fds): Ditto.
531         (Executive.shell_command_for_script): Use startswith('win').
532         (Executive.kill_process): Use full path to killall executable.
533         (Executive.check_running_pid): Use startswith('win').
534         (Executive.running_pids): Ditto.
535         (Executive.kill_all): Ditto. Also use path to 'killall' executable when
536         running under native Windows Python.
537         (Executive._child_process_encoding): Use startswith('win').
538         (Executive._should_encode_child_process_arguments): Ditto.
539         (Executive.popen): Recognize proper script engine on Windows, since it
540         does not support the shebang syntax.
541         (Executive.run_in_parallel): Use startswith('win').
542         * Scripts/webkitpy/common/system/executive_unittest.py:
543         (never_ending_command): Ditto.
544         (ExecutiveTest.test_run_command_with_unicode): Ditto.
545         (ExecutiveTest.serial_test_kill_process): Ditto.
546         (ExecutiveTest.serial_test_kill_all): Ditto.
547         (ExecutiveTest.serial_test_check_running_pid): Ditto.
548         (ExecutiveTest.serial_test_run_in_parallel): Ditto.
549         (main): Ditto.
550         * Scripts/webkitpy/common/system/file_lock.py:
551         (FileLock._create_lock): Ditto.
552         (FileLock._remove_lock): Ditto.
553         * Scripts/webkitpy/common/system/filesystem_unittest.py:
554         (RealFileSystemTest.test_chdir): Ditto.
555         (RealFileSystemTest.test_chdir__notexists): Ditto.
556         (RealFileSystemTest.test_maybe_make_directory__failure): Ditto.
557         * Scripts/webkitpy/common/system/path_unittest.py:
558         (AbspathTest.test_abspath_to_uri_win): Ditto.
559         * Scripts/webkitpy/common/system/platforminfo.py:
560         (PlatformInfo._determine_os_name): Ditto.
561         * Scripts/webkitpy/common/system/user.py: Ditto.
562         * Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
563         (ManagerTest.integration_test_needs_servers): Ditto.
564         * Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
565         (LayoutTestApacheHttpd.__init__): Handle upper and lower-case
566         driver letters.
567         (LayoutTestApacheHttpd._get_apache_config_file_path): Ditto.
568         * Scripts/webkitpy/layout_tests/servers/apache_http_server_unittest.py:
569         (TestLayoutTestApacheHttpd.test_start_cmd): Ditto.
570         * Scripts/webkitpy/layout_tests/servers/http_server_base.py:
571         (HttpServerBase._check_that_all_ports_are_available): Ditto.
572         * Scripts/webkitpy/layout_tests/servers/http_server_unittest.py:
573         (TestHttpServer.test_start_cmd): Ditto.
574         * Scripts/webkitpy/port/base.py:
575         (Port.to.setup_environ_for_server): Include 'COMSPEC', 'SYSTEMDRIVE',
576         and 'SYSTEMROOT' in environment passed to test runners.
577         (Port._apache_config_file_name_for_platform): Use startswith('win').
578         (Port._build_path): Ditto.
579         (Port._path_to_driver): Include 'exe' suffix when running under native
580         Windows.
581         * Scripts/webkitpy/port/driver.py:
582         (Driver._setup_environ_for_driver): Explicitly make some environment
583         variables strings.
584         * Scripts/webkitpy/port/server_process.py:
585         (ServerProcess.__init__): Use startswith('win').
586         * Scripts/webkitpy/port/win.py:
587         (WinPort): Use the win32 registry utilities on Windows, and appropriate
588         registry key formats.
589         (WinPort._ntsd_location): Revise tool search paths for Windows 10.
590         (WinPort.read_registry_value): Revise to use _winreg library on Windows,
591         and regtool on Cygwin.
592         (WinPort.write_registry_value): Ditto.
593         (WinPort.setup_crash_log_saving): Ditto.
594         (WinPort.restore_crash_log_saving): Ditto.
595         (WinPort.prevent_error_dialogs): Ditto.
596         (WinPort.allow_error_dialogs): Ditto.
597         (WinPort.find_system_pid): Revise to use Windows management
598         infrastructure on native Windows, continue using 'ps' on Cygwin.
599         (WinPort.read_registry_string): Deleted.
600         (WinPort.write_registry_string): Deleted.
601         * Scripts/webkitpy/test/main.py:
602         (main): Use startswith('win').
603         (Tester._parse_args): Ditto.
604
605 2015-12-01  Yusuke Suzuki  <utatane.tea@gmail.com>
606
607         [ES6] Implement LLInt/Baseline Support for ES6 Generators and enable this feature
608         https://bugs.webkit.org/show_bug.cgi?id=150792
609
610         Reviewed by Saam Barati.
611
612         * Scripts/webkitperl/FeatureList.pm:
613
614 2015-12-01  Commit Queue  <commit-queue@webkit.org>
615
616         Unreviewed, rolling out r192914.
617         https://bugs.webkit.org/show_bug.cgi?id=151734
618
619         JSC tests for this change are failing on 32 and 64-bit bots
620         (Requested by ryanhaddad on #webkit).
621
622         Reverted changeset:
623
624         "[ES6] Implement LLInt/Baseline Support for ES6 Generators and
625         enable this feature"
626         https://bugs.webkit.org/show_bug.cgi?id=150792
627         http://trac.webkit.org/changeset/192914
628
629 2015-12-01  David Kilzer  <ddkilzer@apple.com>
630
631         EventSenderProxy::swipeGestureWithWheelAndMomentumPhases() leaks an EventSenderSyntheticEvent
632         <http://webkit.org/b/151726>
633
634         Reviewed by Simon Fraser.
635
636         * WebKitTestRunner/mac/EventSenderProxy.mm:
637         (WTR::EventSenderProxy::swipeGestureWithWheelAndMomentumPhases):
638         Deploy RetainPtr<EventSenderSyntheticEvent> to fix leak.
639
640 2015-12-01  Myles C. Maxfield  <mmaxfield@apple.com>
641
642         Give String and AtomicString an existingHash() function
643         https://bugs.webkit.org/show_bug.cgi?id=151717
644
645         Reviewed by Andreas Kling.
646
647         * TestWebKitAPI/Tests/WTF/AtomicString.cpp:
648         (TestWebKitAPI::TEST):
649         * TestWebKitAPI/Tests/WTF/WTFString.cpp:
650         (TestWebKitAPI::TEST):
651
652 2015-12-01  Yusuke Suzuki  <utatane.tea@gmail.com>
653
654         [ES6] Implement LLInt/Baseline Support for ES6 Generators and enable this feature
655         https://bugs.webkit.org/show_bug.cgi?id=150792
656
657         Reviewed by Saam Barati.
658
659         * Scripts/webkitperl/FeatureList.pm:
660
661 2015-12-01  Sam Weinig  <sam@webkit.org>
662
663         Need completionHandler-based WebKit C SPI for alert, confirm, and prompt
664         <rdar://problem/23320863>
665         https://bugs.webkit.org/show_bug.cgi?id=151708
666
667         Reviewed by Anders Carlsson.
668
669         * WebKitTestRunner/TestController.cpp:
670         (WTR::TestController::createOtherPage):
671         (WTR::TestController::createWebViewWithOptions):
672         Update for new WKPageUIClient.
673
674 2015-12-01  Anders Carlsson  <andersca@apple.com>
675
676         Remove WebKit2.framework
677         https://bugs.webkit.org/show_bug.cgi?id=151715
678
679         Reviewed by Dan Bernstein.
680
681         * TestWebKitAPI/Tests/WebKit2/StopLoadingDuringDidFailProvisionalLoad.cpp:
682         * TestWebKitAPI/Tests/WebKit2/StopLoadingDuringDidFailProvisionalLoad_bundle.cpp:
683         * TestWebKitAPI/Tests/WebKit2ObjC/CustomProtocolsInvalidScheme.mm:
684         * TestWebKitAPI/Tests/WebKit2ObjC/CustomProtocolsTest.mm:
685         * TestWebKitAPI/Tests/WebKit2ObjC/PreventImageLoadWithAutoResizing.mm:
686         * TestWebKitAPI/Tests/WebKit2ObjC/UserContentTest.mm:
687         * TestWebKitAPI/mac/TestBrowsingContextLoadDelegate.h:
688
689 2015-12-01  Joseph Pecoraro  <pecoraro@apple.com>
690
691         Unreviewed common typo fix "occurance" => "occurrence".
692
693         * Scripts/webkitpy/tool/commands/queries.py:
694         (FindFlakyTests._print_statistics):
695
696 2015-11-30  Alex Christensen  <achristensen@webkit.org>
697
698         Make ProcessModel always MultipleSecondaryProcesses
699         https://bugs.webkit.org/show_bug.cgi?id=151662
700
701         Reviewed by Antti Koivisto.
702
703         * TestWebKitAPI/Tests/WebKit2/Geolocation.cpp:
704         (TestWebKitAPI::TEST):
705         * WebKitTestRunner/TestController.cpp:
706         (WTR::TestController::generatePageConfiguration):
707
708 2015-11-30  Alex Christensen  <achristensen@webkit.org>
709
710         Make usesNetworkProcess always true
711         https://bugs.webkit.org/show_bug.cgi?id=151580
712
713         Reviewed by Darin Adler.
714
715         * TestWebKitAPI/Tests/WebKit2/Geolocation.cpp:
716         (TestWebKitAPI::TEST):
717         * TestWebKitAPI/Tests/WebKit2/mac/GetPIDAfterAbortedProcessLaunch.cpp:
718         (TestWebKitAPI::TEST):
719         * WebKitTestRunner/TestController.cpp:
720         (WTR::TestController::generatePageConfiguration):
721
722 2015-11-30  Carlos Garcia Campos  <cgarcia@igalia.com>
723
724         Unreviewed. Skip GTK+ test /webkit2/WebKitWebView/editable/editable in Debug.
725
726         Add a way to skip unit tests only for Debug or Release builds and
727         skipt the test /webkit2/WebKitWebView/editable/editable only for Debug.
728
729         * Scripts/run-gtk-tests:
730         (SkippedTest):
731         (SkippedTest.__init__):
732         (SkippedTest.__str__):
733         (SkippedTest.skip_entire_suite):
734         (SkippedTest.skip_for_build_type):
735         (TestRunner):
736         (TestRunner.__init__):
737
738 2015-11-30  Carlos Garcia Campos  <cgarcia@igalia.com>
739
740         Unreviewed. Fix a crash in GTK+ test /webkit2/WebKitWebView/custom-charset.
741
742         It's an assert hit because we are reloading a view loaded with
743         HTML data which is not supported. Use loadURI instead.
744
745         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
746         (testWebViewCustomCharset):
747
748 2015-11-30  Carlos Garcia Campos  <cgarcia@igalia.com>
749
750         [GLIB] Remove GMainLoopSource and GThreadSafeMainLoopSource
751         https://bugs.webkit.org/show_bug.cgi?id=151633
752
753         Reviewed by Csaba Osztrogonác.
754
755         * TestWebKitAPI/PlatformGTK.cmake:
756         * TestWebKitAPI/Tests/WTF/glib/GMainLoopSource.cpp: Removed.
757
758 2015-11-27  Carlos Garcia Campos  <cgarcia@igalia.com>
759
760         [GTK] Remove the remaining uses of GMainLoopSource
761         https://bugs.webkit.org/show_bug.cgi?id=151632
762
763         Reviewed by Žan Doberšek.
764
765         * TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp:
766         (testWebViewSyncRequestOnMaxConns):
767         * TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp:
768         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
769         (WTR::TestRunner::TestRunner):
770         * WebKitTestRunner/InjectedBundle/TestRunner.h:
771         * WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:
772         (WTR::TestRunner::invalidateWaitToDumpWatchdogTimer):
773         (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
774         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
775         (WTR::timeoutSource):
776         (WTR::TestController::notifyDone):
777         (WTR::TestController::platformRunUntil):
778
779 2015-11-27  Csaba Osztrogonác  <ossy@webkit.org>
780
781         [cmake] Add testb3 to the build system
782         https://bugs.webkit.org/show_bug.cgi?id=151619
783
784         Reviewed by Gyuyoung Kim.
785
786         * Scripts/build-jsc:
787
788 2015-11-27  Csaba Osztrogonác  <ossy@webkit.org>
789
790         [jhbuild] Fix pixman build with clang
791         https://bugs.webkit.org/show_bug.cgi?id=151441
792
793         Reviewed by Carlos Garcia Campos.
794
795         * efl/jhbuild.modules:
796         * gtk/jhbuild.modules:
797
798 2015-11-26  David Kilzer  <ddkilzer@apple.com>
799
800         Extract prependToEnvironmentVariableList
801         <http://webkit.org/b/151536>
802
803         Reviewed by Daniel Bates.
804
805         Tests: webkitdirs_unittest/appendToEnvironmentVariableList.pl
806                webkitdirs_unittest/prependToEnvironmentVariableList.pl
807
808         * Scripts/webkitdirs.pm: Export appendToEnvironmentVariableList
809         and prependToEnvironmentVariableList.
810         (appendToEnvironmentVariableList): Simplify variable name.
811         Switch to use $Config{path_sep}.
812         (prependToEnvironmentVariableList): Add new method.
813         (setupMacWebKitEnvironment): Switch to use
814         prependToEnvironmentVariableList().
815         (setupIOSWebKitEnvironment): Ditto.
816
817         * Scripts/webkitperl/webkitdirs_unittest/appendToEnvironmentVariableList.pl: Added.
818         * Scripts/webkitperl/webkitdirs_unittest/prependToEnvironmentVariableList.pl: Added.
819
820 2015-11-24  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
821
822         REGRESSION(r192053): MiniBrowser doesn't exit when clicking on the close-window button
823         https://bugs.webkit.org/show_bug.cgi?id=151567
824
825         Reviewed by Darin Adler.
826
827         * MiniBrowser/efl/main.c: Call window_close() instead of ewk_view_try_close().
828         (on_window_deletion):
829
830 2015-11-23  Carlos Garcia Campos  <cgarcia@igalia.com>
831
832         [GTK] Use the network process unconditionally
833         https://bugs.webkit.org/show_bug.cgi?id=151541
834
835         Reviewed by Alex Christensen.
836
837         Fix TestInspectorServer test. Do not assume we already have the
838         title we want when the page has been loaded, since the title is
839         changed afterwards. So, check if the title has already been set,
840         and if not wait for it.
841
842         * TestWebKitAPI/Tests/WebKit2Gtk/TestInspectorServer.cpp:
843         (openRemoteDebuggingSession):
844
845 2015-11-23  Alex Christensen  <achristensen@webkit.org>
846
847         Fix crash in ~WebProcessPool when using Geolocation with useNetworkProcess=true
848         https://bugs.webkit.org/show_bug.cgi?id=151532
849
850         Reviewed by Benjamin Poulain.
851
852         * TestWebKitAPI/Tests/WebKit2/Geolocation.cpp:
853         (TestWebKitAPI::GeolocationTransitionToHighAccuracyStateTracker::eventsChanged):
854         (TestWebKitAPI::TEST):
855         (TestWebKitAPI::GeolocationTransitionToLowAccuracyStateTracker::eventsChanged):
856         (TestWebKitAPI::GeolocationTransitionToHighAccuracyStateTracker::GeolocationTransitionToHighAccuracyStateTracker): Deleted.
857         (TestWebKitAPI::GeolocationTransitionToLowAccuracyStateTracker::GeolocationTransitionToLowAccuracyStateTracker): Deleted.
858         Properly load about:blank in all WebViews to clean up.  Without this change, we had a 
859         Geolocation provider stopping after its state tracker was destroyed with its stack frame,
860         so it was calling a function on a test object that had gone out of scope.
861         Also, call WKContextSetUsesNetworkProcess(context, true) to show what crash this fixed,
862         but that will become the default soon and that call will be removed.
863
864 2015-11-22  David Kilzer  <ddkilzer@apple.com>
865
866         run-webkit-tests: http server for imported W3C tests doesn't work with --layout-tests-directory switch
867         <http://webkit.org/b/151542>
868
869         Reviewed by Daniel Bates.
870
871         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
872         (base_url): Use the Port object (already passed in) to give us
873         the path to the LayoutTests directory, which already checks for a
874         --layout-tests-directory command-line switch.
875         (WebPlatformTestServer.__init__): Remove layout_test_results_dir
876         argument since we can get this from the Port object already
877         passed in via Port.results_directory().  Also switch to use
878         Port.layout_tests_dir() to get the LayoutTests directory.
879
880         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server_unittest.py:
881         (TestWebPlatformTestServer.test_custom_layout_tests_directory):
882         Add test case for custom LayoutTests directory.
883         (TestWebPlatformTestServer.test_previously_spawned_instance):
884         Update Port object to set mock results directory as if it was
885         set on the command-line.  Remove unneeded argument from
886         WebPlatformTestServer constructor.
887         (TestWebPlatformTestServer.test_corrupted_subserver_files): Ditto.
888
889         * Scripts/webkitpy/port/base.py:
890         (Port.to.start_web_platform_test_server): Remove unneeded
891         argument from WebPlatformTestServer constuctor.
892
893 2015-11-22  Carlos Garcia Campos  <cgarcia@igalia.com>
894
895         [GTK] Some unit tests fail when using the network process
896         https://bugs.webkit.org/show_bug.cgi?id=151490
897
898         Reviewed by Martin Robinson.
899
900         Run the soup server in a separate thread in TestResources test to
901         avoid deadlocks.
902
903         This fixes /webkit2/WebKitWebView/sync-request-on-max-conns and
904         /webkit2/WebKitWebResource/get-data when using the network process.
905
906         * TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp:
907         (beforeAll): Create the WebKitTestServer with ServerRunInThread flag.
908         * TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestServer.cpp:
909         (WebKitTestServer::WebKitTestServer): When ServerRunInThread is
910         present, create a WorkQueue to run the server.
911         (WebKitTestServer::run): Run the server in the work queue if it
912         has been created.
913         * TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestServer.h: Convert server
914         type into server options as flags.
915
916 2015-11-22  Carlos Garcia Campos  <cgarcia@igalia.com>
917
918         [GTK] ImageDiff should normalize the diff image
919         https://bugs.webkit.org/show_bug.cgi?id=151261
920
921         Reviewed by Sergio Villar Senin.
922
923         * ImageDiff/gtk/ImageDiff.cpp:
924         (readPixbufFromStdin): Fix memory leak.
925         (differenceImageFromDifferenceBuffer): Normalize diff buffer.
926         (calculateDifference): Pass max distance to differenceImageFromDifferenceBuffer.
927
928 == Rolled over to ChangeLog-2015-11-21 ==