5a4818f3572315d20174049543f5d38206fcb379
[WebKit.git] / Tools / ChangeLog
1 2020-06-29  Carlos Garcia Campos  <cgarcia@igalia.com>
2
3         [GTK][WPE] Add webkit_authentication_request_get_security_origin
4         https://bugs.webkit.org/show_bug.cgi?id=213596
5
6         Reviewed by Michael Catanzaro.
7
8         Update the unit tests to check the new API.
9
10         * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp:
11         (testWebViewAuthenticationRequest):
12         (testWebViewAuthenticationProxy):
13         (testWebViewAuthenticationProxyHTTPS):
14
15 2020-06-28  Geoffrey Garen  <ggaren@apple.com>
16
17         Rename initializeThreading to initialize
18         https://bugs.webkit.org/show_bug.cgi?id=213674
19
20         Reviewed by Mark Lam.
21
22         * TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp:
23         (ApplicationManifestParserTest::SetUp):
24         * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
25         (TestWebKitAPI::ComplexTextControllerTest::SetUp):
26         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
27         (TestWebKitAPI::ContentExtensionTest::SetUp):
28         * TestWebKitAPI/Tests/WebCore/StringUtilities.mm:
29         (TestWebKitAPI::TEST):
30         * TestWebKitAPI/Tests/WebCore/cocoa/WebCoreNSURLSession.mm:
31         (TestWebKitAPI::WebCoreNSURLSessionTest::SetUp):
32         * TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.cpp:
33         (WebKitTestServer::WebKitTestServer):
34         * WebKitTestRunner/TestController.cpp:
35         (WTR::TestController::initialize):
36
37 2020-06-27  Daniel Bates  <dabates@apple.com>
38
39         Revert r262654 because it caused <rdar://problem/64664156>.
40         Moreover it is no longer necessary as the embedding client
41         changes selection through a different SPI after focusing.
42
43         * TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
44         (TestWebKitAPI::TEST):
45
46 2020-06-27  Keith Miller  <keith_miller@apple.com>
47
48         compare-results should be able to parse multiple JSONs at once by merging them
49         https://bugs.webkit.org/show_bug.cgi?id=213685
50
51         Reviewed by Saam Barati.
52
53         This patch improves the compare-results script to enable it to
54         merge JSON output files. This is handy when running scripts by
55         hand where you'll get many a and b JSONs.  To do the merging this
56         patch moves the logic of merge-result-jsons into a shared library.
57
58         compare-results can take multiple files sequentally or by passing
59         the '-a'/'-b' flags multiple times. e.g. `/compare-results -a
60         OG-1.json -a OG-2.json -a OG-3.json -a OG-4.json -b MC-1.json
61         MC-2.json MC-3.json MC-4.json` will behave as you'd expect;
62         combining all the OG JSONs and the MC JSONs before computing the
63         result.
64
65         Lastly, the benchmark_results script now can handle duplicates of
66         an aggregator in the aggregator list. This is useful because
67         otherwise the logic of merging JSONs is significantly more
68         complicated.
69
70         * Scripts/compare-results:
71         (getOptions):
72         (main):
73         * Scripts/merge-result-jsons:
74         (readJSONFile):
75         (deepAppend): Deleted.
76         (mergeJSONs): Deleted.
77         * Scripts/webkitpy/benchmark_runner/benchmark_json_merge.py: Copied from Tools/Scripts/merge-result-jsons.
78         (deepAppend):
79         (mergeJSONs):
80         * Scripts/webkitpy/benchmark_runner/benchmark_results.py:
81         (BenchmarkResults._aggregate_results_for_test):
82         (BenchmarkResults._lint_subtest_results):
83         * Scripts/webkitpy/benchmark_runner/benchmark_results_unittest.py:
84
85 2020-06-27  Jer Noble  <jer.noble@apple.com>
86
87         iOS Safari incorrectly reports "AppleCoreMedia" as UA string
88         https://bugs.webkit.org/show_bug.cgi?id=213245
89         <rdar://problem/64471582>
90
91         Reviewed by Youenn Fablet.
92
93         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
94         * TestWebKitAPI/Tests/WebKitCocoa/MediaLoading.mm: Added.
95         (TestWebKitAPI::parseUserAgent):
96         (TestWebKitAPI::TEST):
97
98 2020-06-27  Philippe Normand  <pnormand@igalia.com>
99
100         Migrate run-minibrowser to webkitpy
101         https://bugs.webkit.org/show_bug.cgi?id=213431
102
103         Reviewed by Jonathan Bedard.
104
105         The perl version was renamed to old-run-minibrowser and remains used by the Mac ports.
106         run-minibrowser is now a Python script hooking into webkitpy and the Port infrastructure.
107         Both WPE and GTK ports will now use the pure python implementation.
108
109         * Scripts/old-run-minibrowser: Copied from Tools/Scripts/run-minibrowser.
110         * Scripts/run-minibrowser:
111         * Scripts/webkitpy/minibrowser/run_minibrowser.py: Added.
112         (main):
113         (parse_args):
114         * Scripts/webkitpy/port/base.py:
115         (Port.run_minibrowser_arguments):
116         (Port):
117         (Port.run_minibrowser):
118         * Scripts/webkitpy/port/darwin.py:
119         (DarwinPort.environment_for_api_tests):
120         (DarwinPort):
121         (DarwinPort.run_minibrowser_arguments):
122         * Scripts/webkitpy/port/gtk.py:
123         (GtkPort.show_results_html_file):
124         (GtkPort.configuration_for_upload):
125         (GtkPort):
126         (GtkPort.run_minibrowser):
127         * Scripts/webkitpy/port/wpe.py:
128         (WPEPort.show_results_html_file):
129         (WPEPort.configuration_for_upload):
130         (WPEPort):
131         (WPEPort.run_minibrowser):
132
133 2020-06-27  Stephan Szabo  <stephan.szabo@sony.com>
134
135         [PlayStation] Update test runner for changes to Options and signing
136         https://bugs.webkit.org/show_bug.cgi?id=213650
137
138         Reviewed by Don Olmstead.
139
140         * Scripts/webkitdirs.pm: Update extension for PlayStation binary
141
142 2020-06-26  Jonathan Bedard  <jbedard@apple.com>
143
144         [webkitpy] Allow callers to override the reported model (Part 1)
145         https://bugs.webkit.org/show_bug.cgi?id=213677
146         <rdar://problem/64834043>
147
148         Reviewed by Dewei Zhu.
149
150         * Scripts/webkitpy/port/base.py:
151         (Port.configuration_for_upload): Set the model based on --model.
152         * Scripts/webkitpy/port/factory.py:
153         (configuration_options): Add --model option, drive-by fix for --architecture.
154         * Scripts/webkitpy/port/mac.py:
155         (MacPort.configuration_for_upload): --model overrides detected model.
156
157 2020-06-26  Jonathan Bedard  <jbedard@apple.com>
158
159         [webkitpy] Automatically detect hw architecture for supporting Apple Silicon
160         https://bugs.webkit.org/show_bug.cgi?id=213653
161         <rdar://problem/64817656>
162
163         Rubber-stamped by Aakash Jain.
164
165         * Scripts/webkitpy/common/config/ews.json: iOS has the correct defaults, no need to override them.
166         * Scripts/webkitpy/common/system/platforminfo.py:
167         (PlatformInfo):
168         (PlatformInfo.architecture): Retrieve the current system's architecture.
169         * Scripts/webkitpy/common/system/platforminfo_mock.py:
170         (MockPlatformInfo.__init__):
171         (MockPlatformInfo.architecture):
172         * Scripts/webkitpy/port/base.py:
173         (Port.__init__): Remove 'did_override_architecture', should be implied by architecture compared with DEFAULT_ARCHITECTURE.
174         (Port.architecture): Return the architecture specified by the user, if it exists.
175         (Port.set_architecture): Remove 'did_override_architecture'.
176         * Scripts/webkitpy/port/factory.py:
177         (configuration_options): Add --arm and --architecture flags.
178         * Scripts/webkitpy/port/mac.py:
179         (MacPort): Add arm64 to supported architectures.
180         (MacPort.architecture): Convert arm64e to arm64, check the host's architecture.
181         (MacPort._build_driver_flags): Always specify the build architecture since it may be x86_64 or arm64.
182         * Scripts/webkitpy/port/mac_unittest.py:
183         (MacTest.test_64bit):
184         (MacTest):
185         (MacTest.test_arm):
186         (MacTest.test_default):
187         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
188         (AbstractEarlyWarningSystem.run_command): Remove did_override_architecture.
189
190 2020-06-26  Jonathan Bedard  <jbedard@apple.com>
191
192         [Big Sur] Handle baseline search path (Follow-up fix)
193         https://bugs.webkit.org/show_bug.cgi?id=213639
194         <rdar://problem/64789480>
195
196         Unreviewed follow-up fix.
197
198         * Scripts/webkitpy/port/mac.py:
199         (MacPort.default_baseline_search_path): Copy reference version by value, not by reference.
200
201 2020-06-26  Geoffrey Garen  <ggaren@apple.com>
202
203         Initializing the main thread should initialize the main run loop
204         https://bugs.webkit.org/show_bug.cgi?id=213637
205
206         Reviewed by Anders Carlsson.
207
208         Updated TestWebKitAPI to stop using RunLoop::initializeMain directly.
209
210         * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
211         (TestWebKitAPI::TEST):
212         * TestWebKitAPI/Tests/WTF/RunLoop.cpp:
213         (TestWebKitAPI::TEST):
214         * TestWebKitAPI/Tests/WebCore/AbortableTaskQueue.cpp:
215         (TestWebKitAPI::TEST):
216         * TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp:
217         (ApplicationManifestParserTest::SetUp):
218         * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
219         (TestWebKitAPI::ComplexTextControllerTest::SetUp):
220         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
221         (TestWebKitAPI::ContentExtensionTest::SetUp):
222         * TestWebKitAPI/Tests/WebCore/DNS.cpp:
223         (TestWebKitAPI::TEST):
224         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
225         (TestWebKitAPI::TEST_F):
226         * TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm:
227         (initializeInAppBrowserPrivacyTestSettings):
228         * TestWebKitAPI/TestsController.cpp:
229         (TestWebKitAPI::TestsController::TestsController):
230         * WebKitTestRunner/TestController.cpp:
231         (TestController::initialize):
232
233 2020-06-26  Jonathan Bedard  <jbedard@apple.com>
234
235         run-javascriptcore-tests: Support Apple Silicon running x86 processes
236         https://bugs.webkit.org/show_bug.cgi?id=213487
237         <rdar://problem/64606667>
238
239         Reviewed by Saam Barati.
240
241         * Scripts/run-javascriptcore-tests:
242         (configurationForUpload): Add --architecture flag.
243         (runTest): Run test suite with specific architecture.
244         (runJSCStressTests): Pass architecture to run-jsc-stress-tests.
245         * Scripts/run-jsc-stress-tests: Add --force-architecture flag.
246         * Scripts/webkitdirs.pm:
247         (determineNativeArchitecture): Add function to determine machine's native architecture.
248         (determineArchitecture): Leverage the nativeArchitecture instead of hard-coding simulator
249         architectures.
250         (architecturesForProducts): Determine the architectures supported by a given build.
251         (nativeArchitecture): Return nativeArchitecture.
252
253 2020-06-26  Sihui Liu  <sihui_liu@apple.com>
254
255         Text manipulation should observe adjacent elements with new renderer together
256         https://bugs.webkit.org/show_bug.cgi?id=213333
257
258         Reviewed by Geoffrey Garen.
259
260         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
261         (TestWebKitAPI::TEST):
262
263 2020-06-26  Jonathan Bedard  <jbedard@apple.com>
264
265         [Big Sur] Handle baseline search path
266         https://bugs.webkit.org/show_bug.cgi?id=213639
267         <rdar://problem/64789480>
268
269         Rubber-stamped by Aakash Jain.
270
271         * Scripts/webkitpy/port/mac.py:
272         (MacPort):
273         (MacPort.default_baseline_search_path): Break infinite loop for major version bump.
274         * Scripts/webkitpy/port/mac_unittest.py:
275         (MacTest.test_big_sur_baseline_search_path): Test Big Sur baseline search path.
276
277 2020-06-26  Carlos Alberto Lopez Perez  <clopez@igalia.com>
278
279         generate-jsc-bundle should fail if passed an invalid remote-config-file parameter
280         https://bugs.webkit.org/show_bug.cgi?id=213615
281
282         Reviewed by Žan Doberšek.
283
284         Raise an exception if the parameter passed as remote-config-file is not a file.
285
286         * Scripts/generate-jsc-bundle:
287         (main):
288
289 2020-06-26  Takashi Komori  <takashi.komori@sony.com>
290
291         Add myself to contributors.json
292
293         Unreviewed.
294
295         * Scripts/webkitpy/common/config/contributors.json:
296
297 2020-06-25  Ryan Haddad  <ryanhaddad@apple.com>
298
299         [Big Sur] Regression tests fail to run due to failed assert: self._os_version.major == 10
300         https://bugs.webkit.org/show_bug.cgi?id=213639
301
302         Reviewed by Jonathan Bedard.
303
304         * Scripts/webkitpy/port/mac.py:
305         (MacPort.__init__): Remove the assert since it is no longer valid.
306
307 2020-06-25  Commit Queue  <commit-queue@webkit.org>
308
309         Unreviewed, reverting r263537.
310         https://bugs.webkit.org/show_bug.cgi?id=213640
311
312         Broke watchOS and tvOS builds
313
314         Reverted changeset:
315
316         "iOS Safari incorrectly reports "AppleCoreMedia" as UA string"
317         https://bugs.webkit.org/show_bug.cgi?id=213245
318         https://trac.webkit.org/changeset/263537
319
320 2020-06-25  Alex Christensen  <achristensen@webkit.org>
321
322         REGRESSION(r256166, r260596) WKNavigationAction.request.allHTTPHeaderFields needs to contain User-Agent and Accept
323         https://bugs.webkit.org/show_bug.cgi?id=213626
324         <rdar://problem/62374208>
325
326         Reviewed by Darin Adler.
327
328         * TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
329         (TEST):
330
331 2020-06-25  Jer Noble  <jer.noble@apple.com>
332
333         iOS Safari incorrectly reports "AppleCoreMedia" as UA string
334         https://bugs.webkit.org/show_bug.cgi?id=213245
335         <rdar://problem/64471582>
336
337         Reviewed by Youenn Fablet.
338
339         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
340         * TestWebKitAPI/Tests/WebKitCocoa/MediaLoading.mm: Added.
341         (TestWebKitAPI::parseUserAgent):
342         (TestWebKitAPI::TEST):
343
344 2020-06-25  Daniel Bates  <dabates@apple.com>
345
346         [iOS] -_requestTextInputContextsInRect cannot find empty Quip spreadsheet title
347         https://bugs.webkit.org/show_bug.cgi?id=213564
348         <rdar://problem/59355847>
349
350         Reviewed by Simon Fraser.
351
352         Add some tests.
353
354         * TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
355         (TestWebKitAPI::TEST):
356
357 2020-06-25  Sam Weinig  <weinig@apple.com>
358
359         Add a new templated string type to help write more idiomatic parsing code
360         https://bugs.webkit.org/show_bug.cgi?id=213588
361
362         Reviewed by Darin Adler.
363
364         * TestWebKitAPI/CMakeLists.txt:
365         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
366         * TestWebKitAPI/Tests/WTF/StringParsingBuffer.cpp: Added.
367         (TestWebKitAPI::TEST):
368         Added new tests for new class.
369
370 2020-06-25  Wenson Hsieh  <wenson_hsieh@apple.com>
371
372         Text manipulation should exclude text rendered using icon-only fonts
373         https://bugs.webkit.org/show_bug.cgi?id=213446
374         <rdar://problem/63734298>
375
376         Reviewed by Myles Maxfield.
377
378         Add a new API test.
379
380         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
381         * TestWebKitAPI/Tests/WebKitCocoa/Ahem.ttf: Added.
382         * TestWebKitAPI/Tests/WebKitCocoa/SpaceOnly.otf: Added.
383         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
384         (TestWebKitAPI::TEST):
385
386 2020-06-25  Aakash Jain  <aakash_jain@apple.com>
387
388         [ews] Share more bots between EWS builder and testers
389         https://bugs.webkit.org/show_bug.cgi?id=213521
390
391         Reviewed by Jonathan Bedard.
392
393         * BuildSlaveSupport/ews-build/config.json:
394
395 2020-06-25  Aakash Jain  <aakash_jain@apple.com>
396
397         [ews] Improve handling of invalid changelog
398         https://bugs.webkit.org/show_bug.cgi?id=213609
399
400         Reviewed by Jonathan Bedard.
401
402         * Scripts/webkitpy/tool/steps/validatereviewer.py:
403         (ValidateReviewer.run):
404
405 2020-06-24  Alexey Proskuryakov  <ap@apple.com>
406
407         macOS Big Sur build fix.
408
409         Remove long obsolete checks for Mac OS X 10.6 that didn't respect the major version.
410
411         * MiniBrowser/Makefile:
412         * TestWebKitAPI/Makefile:
413         * WebKitTestRunner/Makefile:
414
415 2020-06-24  Alex Christensen  <achristensen@webkit.org>
416
417         REGRESSION(r262341) Use UTF-8 to decode CFURLRefs from IPC
418         https://bugs.webkit.org/show_bug.cgi?id=213565
419         <rdar://problem/64408924>
420
421         Reviewed by Darin Adler.
422
423         * TestWebKitAPI/Tests/WebKitCocoa/LoadInvalidURLRequest.mm:
424         (TestWebKitAPI::TEST):
425
426 2020-06-24  Umar Iqbal  <uiqbal@apple.com>
427
428         We should resurrect the older patch that collects some statistics of web API calls
429         https://bugs.webkit.org/show_bug.cgi?id=213319
430
431         Reviewed by Brent Fulgham.
432         
433         + Enabled ENABLE_WEB_API_STATISTICS flag.
434         
435         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
436
437 2020-06-24  Andy Estes  <aestes@apple.com>
438
439         [iOS] Open element actions sometimes result in a hover instead of a click
440         https://bugs.webkit.org/show_bug.cgi?id=213530
441         <rdar://problem/64176707>
442
443         Reviewed by Darin Adler.
444
445         Added an API test.
446
447         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
448         * TestWebKitAPI/Tests/ios/ElementActionTests.mm: Added.
449         * TestWebKitAPI/Tests/ios/link-with-hover-menu.html: Added.
450
451 2020-06-24  Caitlin Potter  <caitp@igalia.com>
452
453         [JSC] add microbenchmark for op_get_private_name
454         https://bugs.webkit.org/show_bug.cgi?id=213544
455
456         Reviewed by Yusuke Suzuki.
457
458         Add machinery to add --usePrivateClassFields flag in a family of
459         microbenchmarks.
460  
461         * Scripts/run-jsc-benchmarks:
462
463 2020-06-24  Carlos Garcia Campos  <cgarcia@igalia.com>
464
465         [GTK][WPE] Add API to allow applications to handle the HTTP authentication credential storage
466         https://bugs.webkit.org/show_bug.cgi?id=213177
467
468         Reviewed by Michael Catanzaro.
469
470         Update the authentication tests to check the new API.
471
472         * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp:
473         (testWebViewAuthenticationCancel):
474         (testWebViewAuthenticationLoadCancelled):
475         (testWebViewAuthenticationFailure):
476         (testWebViewAuthenticationNoCredential):
477         (testWebViewAuthenticationEphemeral):
478         (testWebViewAuthenticationStorage):
479         (testWebViewAuthenticationSuccess):
480         (testWebViewAuthenticationEmptyRealm):
481         (serverCallback):
482         (beforeAll):
483
484 2020-06-23  Alex Christensen  <achristensen@webkit.org>
485
486         Make HTTP/3 experimental feature work on iOS and only create storage directory if enabled
487         https://bugs.webkit.org/show_bug.cgi?id=213527
488
489         Reviewed by Geoffrey Garen.
490
491         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
492         (TEST):
493
494 2020-06-23  Jonathan Bedard  <jbedard@apple.com>
495
496         [Big Sur] Add 11.0 version to scripts
497         https://bugs.webkit.org/show_bug.cgi?id=213532
498         <rdar://problem/64663032>
499
500         Reviewed by Tim Horton.
501
502         * Scripts/run-javascriptcore-tests:
503         (configurationForUpload): Make version checks more explicit, add Big Sur.
504         * Scripts/webkitpy/common/version_name_map.py:
505         (VersionNameMap.__init__): Add Big Sur.
506         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
507         (TestExpectationParser): Ditto.
508
509 2020-06-23  Wenson Hsieh  <wenson_hsieh@apple.com>
510
511         REGRESSION (r244633): Mail flashes when copying text in an email
512         https://bugs.webkit.org/show_bug.cgi?id=213529
513         <rdar://problem/55025522>
514
515         Reviewed by Tim Horton.
516
517         Add an API test to verify that temporarily changing the height of the document before restoring it to the
518         original value does not cause intrinsic content size to be invalidated.
519
520         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
521         (-[AutoLayoutWKWebView invalidateIntrinsicContentSize]):
522         (-[AutoLayoutWKWebView setInvalidatedIntrinsicContentSizeBlock:]):
523         (-[AutoLayoutWKWebView invalidatedIntrinsicContentSizeBlock]):
524
525 2020-06-23  Diego Pino Garcia  <dpino@igalia.com>
526
527         [ews] Allow archiving 'jsc' product
528         https://bugs.webkit.org/show_bug.cgi?id=213518
529
530         Reviewed by Aakash Jain.
531
532         * BuildSlaveSupport/built-product-archive:
533         (archiveBuiltProduct):
534
535 2020-06-23  Alex Christensen  <achristensen@webkit.org>
536
537         Expose already-available WKNavigationAction.request.HTTPBody through the API
538         https://bugs.webkit.org/show_bug.cgi?id=179077
539
540         Reviewed by Brady Eidson.
541
542         * TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
543         (TEST):
544
545 2020-06-23  Alicia Boya García  <aboya@igalia.com>
546
547         [GStreamer] Add GStreamer patch to fix EWS glupload racy crash
548         https://bugs.webkit.org/show_bug.cgi?id=210498
549
550         Reviewed by Philippe Normand.
551
552         This WebKit patch backports a patch from GStreamer 1.17 that prevents
553         the crashes in the attached bug to our flatpak build.
554
555         * buildstream/elements/sdk/gst-plugins-base.bst:
556         * buildstream/patches/gst-plugins-base-0003-glbasefilter-add-support-for-changing-the-display.patch: Added.
557
558 2020-06-23  Alicia Boya García  <aboya@igalia.com>
559
560         [flatpak] Ensure en_US.UTF-8 locale
561         https://bugs.webkit.org/show_bug.cgi?id=212459
562
563         Reviewed by Philippe Normand.
564
565         When developing WebKit we want as few system differences as possible
566         to make tests reproducible.
567
568         en_US.UTF-8 is indeed the only locale installed in our development
569         flatpak, but our scripts were not correctly clearing most locale
570         environment variables, which resulted in warnings when running some
571         tools (notably perl) when the user OS has a different locale.
572
573         This patch ensures all locale environment variables are cleared and
574         LANG is set to en_US.UTF-8. It also removes now redundant code from
575         flatpakutils.py.
576
577         * flatpak/flatpakutils.py:
578         (WebkitFlatpak.run_in_sandbox):
579         * flatpak/webkit-bwrap:
580
581 2020-06-23  Simon Fraser  <simon.fraser@apple.com>
582
583         [ Catalina Debug WK2 ] fast/events/platform-wheelevent-in-scrolling-div.html is a flaky failure
584         https://bugs.webkit.org/show_bug.cgi?id=213351
585         <rdar://problem/64502429>
586
587         Reviewed by Tim Horton.
588
589         The variadic CGEventCreateScrollWheelEvent() seems to have an issue that causes the resulting event
590         to rarely put the x value into the deltaY. Change to the non-variadic CGEventCreateScrollWheelEvent2()
591         to avoid this.
592
593         * DumpRenderTree/mac/EventSendingController.mm:
594         (-[EventSendingController mouseScrollByX:andY:continuously:]):
595         (-[EventSendingController mouseScrollByX:andY:withWheel:andMomentumPhases:]):
596         * WebKitTestRunner/mac/EventSenderProxy.mm:
597         (WTR::EventSenderProxy::mouseScrollBy):
598         (WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases):
599
600 2020-06-23  Diego Pino Garcia  <dpino@igalia.com>
601
602         [ews] Rename 'JSCTestsFactory' to 'JSCBuildAndTestsFactory'
603         https://bugs.webkit.org/show_bug.cgi?id=213503
604
605         Reviewed by Aakash Jain.
606
607         * BuildSlaveSupport/ews-build/config.json:
608         * BuildSlaveSupport/ews-build/factories.py:
609         (JSCBuildAndTestsFactory):
610         (JSCTestsFactory): Deleted.
611         (JSCTestsFactory.__init__): Deleted.
612         * BuildSlaveSupport/ews-build/loadConfig.py:
613
614 2020-06-23  Aakash Jain  <aakash_jain@apple.com>
615
616         [ews] Add JSC-Only builders for MIPS and ARMv7 architectures (follow-up fix)
617         https://bugs.webkit.org/show_bug.cgi?id=213366
618
619         Unreviewed follow-up fix.
620
621         Remove unused runTests parameter.
622         * BuildSlaveSupport/ews-build/factories.py:
623
624 2020-06-23  Philippe Normand  <pnormand@igalia.com>
625
626         [Flatpak SDK] relax restriction on build-webkit script name
627         https://bugs.webkit.org/show_bug.cgi?id=213432
628
629         Reviewed by Žan Doberšek.
630
631         * flatpak/flatpakutils.py:
632         (WebkitFlatpak.run_in_sandbox): Match the build-webkit string in the whole command-line
633         argument and thus allow alternative implementations of build-webkit. Also let the
634         MAX_CPU_LOAD env var in the sandbox.
635
636 2020-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
637
638         [GTK] MiniBrowser: set a base directory for website data and cache
639         https://bugs.webkit.org/show_bug.cgi?id=213368
640
641         Reviewed by Michael Catanzaro.
642
643         Stop using the default ones.
644
645         * MiniBrowser/gtk/main.c:
646         (activate):
647
648 2020-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
649
650         [GTK][WPE] Add API to configure and handle DOM cache to WebKitWebsiteDataManager
651         https://bugs.webkit.org/show_bug.cgi?id=213337
652
653         Reviewed by Adrian Perez de Castro.
654
655         Handle new website data in MiniBrowser and add a unit test.
656
657         * MiniBrowser/gtk/main.c:
658         (gotWebsiteDataCallback):
659         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
660         (testWebsiteDataConfiguration):
661         (testWebsiteDataDOMCache):
662         (beforeAll):
663         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
664         (Test::Test):
665
666 2020-06-22  Diego Pino Garcia  <dpino@igalia.com>
667
668         [ews] Add JSC-Only builders for MIPS and ARMv7 architectures
669         https://bugs.webkit.org/show_bug.cgi?id=213366
670
671         Reviewed by Aakash Jain.
672
673         In a follow-up patch the built product of these bots will be consumed
674         by the EWS JSC-Only testing bots.
675
676         * BuildSlaveSupport/ews-build/config.json:
677         * BuildSlaveSupport/ews-build/factories.py:
678         (JSCBuildFactory):
679         (JSCBuildFactory.__init__):
680         * BuildSlaveSupport/ews-build/factories_unittest.py:
681         (TestBuildFactory):
682         (TestBuildFactory.test_jsc_mipsel_factory):
683         (TestBuildFactory.test_jsc_armv7_factory):
684         * BuildSlaveSupport/ews-build/loadConfig.py:
685
686 2020-06-22  Fujii Hironori  <Hironori.Fujii@sony.com>
687
688         [Win] fast/dom/Window/alert-with-unmatched-utf16-surrogate-should-not-crash.html is failing
689         https://bugs.webkit.org/show_bug.cgi?id=213452
690
691         Reviewed by Yusuke Suzuki.
692
693         If window.alert() was given an invalid UTF-16 sequence, Windows
694         DumpRenderTree output it without any conversions. It should output
695         "(null)" to match with WebKitTestRunner behavior.
696
697         * DumpRenderTree/win/UIDelegate.cpp:
698         (toMessage): Added
699         (UIDelegate::runJavaScriptAlertPanelWithMessage):
700         (UIDelegate::runJavaScriptConfirmPanelWithMessage):
701         (UIDelegate::runJavaScriptTextInputPanelWithPrompt):
702         (UIDelegate::runBeforeUnloadConfirmPanelWithMessage):
703         (UIDelegate::setStatusText):
704
705 2020-06-22  Jer Noble  <jer.noble@apple.com>
706
707         [ macOS iOS ] (r263321): TestWebKitAPI.SleepDisabler.Load & TestWebKitAPI.SleepDisabler.Reload are constant failures
708         https://bugs.webkit.org/show_bug.cgi?id=213475
709         <rdar://problem/64603555>
710
711         Reviewed by Eric Carlson.
712
713         Looks like the SleepDisabler can come and go while the TestWebKitAPI process is spinning, so make the
714         Reload and Load tests more deterministic by only checking SleepDisabler after getting a "playing" message
715         from the WebContent process.
716
717         * TestWebKitAPI/Tests/WebKit/SleepDisabler.mm:
718         (SleepDisabler::runAndWaitUntilPlaying):
719         (SleepDisabler::loadPlayingPage):
720         (TEST_F):
721
722 2020-06-22  Jonathan Bedard  <jbedard@apple.com>
723
724         resultsdbpy: Make architecture differences explicit
725         https://bugs.webkit.org/show_bug.cgi?id=213473
726         <rdar://problem/64602736>
727
728         Rubber-stamped by Aakash Jain.
729
730         * resultsdbpy/resultsdbpy/view/static/js/configuration.js:
731         (Configuration.prototype.toString):
732
733 2020-06-22  Tim Horton  <timothy_horton@apple.com>
734
735         Update macOS version macros
736         https://bugs.webkit.org/show_bug.cgi?id=213484
737
738         Reviewed by Alexey Proskuryakov.
739
740         * ContentExtensionTester/Configurations/Base.xcconfig:
741         * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
742         * DumpRenderTree/mac/Configurations/Base.xcconfig:
743         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
744         * ImageDiff/cg/Configurations/Base.xcconfig:
745         * ImageDiff/cg/Configurations/DebugRelease.xcconfig:
746         * MiniBrowser/Configurations/Base.xcconfig:
747         * MiniBrowser/Configurations/DebugRelease.xcconfig:
748         * TestWebKitAPI/Configurations/Base.xcconfig:
749         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
750         * WebEditingTester/Configurations/Base.xcconfig:
751         * WebEditingTester/Configurations/DebugRelease.xcconfig:
752         * WebKitTestRunner/Configurations/Base.xcconfig:
753         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
754         * lldb/lldbWebKitTester/Configurations/Base.xcconfig:
755         * lldb/lldbWebKitTester/Configurations/DebugRelease.xcconfig:
756
757 2020-06-22  Tim Horton  <timothy_horton@apple.com>
758
759         API Test WeakLinking.WeakImport fails on arm64
760         https://bugs.webkit.org/show_bug.cgi?id=213477
761
762         Reviewed by Alexey Proskuryakov.
763
764         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-iOS-v2.tbd:
765         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-iOS.tbd:
766         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-macOS-v2.tbd:
767         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-macOS.tbd:
768         Add this architecture to the TBD files.
769
770 2020-06-22  Jonathan Bedard  <jbedard@apple.com>
771
772         Bring up watchOS/tvOS on build.webkit.org (Follow-up fix x3)
773         https://bugs.webkit.org/show_bug.cgi?id=213402
774         <rdar://problem/64542588>
775
776         Reviewed by Alexey Proskuryakov.
777
778         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
779         (WebKitBuildbot): 64 bit is more correct for watchOS embedded builds.
780
781 2020-06-22  Aakash Jain  <aakash_jain@apple.com>
782
783         [ews] Switch contributors.json url from trac to svn server
784         https://bugs.webkit.org/show_bug.cgi?id=213457
785
786         Reviewed by Jonathan Bedard.
787
788         * BuildSlaveSupport/ews-build/steps.py:
789         (ValidateCommiterAndReviewer):
790         (ValidateCommiterAndReviewer.load_contributors_from_trac):
791
792 2020-06-22  Philippe Normand  <pnormand@igalia.com>
793
794         [Flatpak SDK] Persist sccache auth token across flatpak updates
795         https://bugs.webkit.org/show_bug.cgi?id=213427
796
797         Reviewed by Žan Doberšek.
798
799         After a successful flatpak update check if an sccache auth token exists and reuse it when
800         updating the sccache config file.
801
802         * flatpak/flatpakutils.py:
803         (WebkitFlatpak.save_config):
804
805 2020-06-21  Yusuke Suzuki  <ysuzuki@apple.com>
806
807         [WTF] URL should support dataLog
808         https://bugs.webkit.org/show_bug.cgi?id=213450
809
810         Reviewed by Mark Lam.
811
812         Add test for URL::dump.
813
814         * TestWebKitAPI/Tests/WTF/URL.cpp:
815         (TestWebKitAPI::TEST_F):
816
817 2020-06-21  Philippe Normand  <pnormand@igalia.com>
818
819         [Flatpak] Nightly runner fails to extract zip files
820         https://bugs.webkit.org/show_bug.cgi?id=213445
821
822         Reviewed by Darin Adler.
823
824         * Scripts/webkit-flatpak-run-nightly: Ensure the buffered zip data is written to disk before
825         extraction.
826
827 2020-06-21  Jer Noble  <jer.noble@apple.com>
828
829         WebKit fails to leave audio routing arbitration during navigation, closing.
830         https://bugs.webkit.org/show_bug.cgi?id=213426
831         <rdar://problem/64395051>
832
833         Reviewed by Eric Carlson.
834
835         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
836         * TestWebKitAPI/Tests/WebKitCocoa/AudioRoutingArbitration.mm: Added.
837         (AudioRoutingArbitration::statusShouldBecomeEqualTo):
838         (TEST_F):
839
840 2020-06-20  Jer Noble  <jer.noble@apple.com>
841
842         REGRESSION(r259219): Sleep assertion remains active if WKWebView is closed or WebContent process crashes
843         https://bugs.webkit.org/show_bug.cgi?id=213434
844         <rdar://problem/57541662>
845
846         Reviewed by Eric Carlson.
847
848         * TestWebKitAPI/Tests/WebKit/SleepDisabler.mm:
849         (SleepDisabler::loadPlayingPage):
850         (SleepDisabler::hasSleepDisablerShouldBecomeEqualTo):
851         (TEST_F):
852
853 2020-06-20  Jonathan Bedard  <jbedard@apple.com>
854
855         Bring up watchOS/tvOS on build.webkit.org (Follow-up fix x2)
856         https://bugs.webkit.org/show_bug.cgi?id=213402
857         <rdar://problem/64542588>
858
859         Unreviewed test fix.
860
861         * Scripts/webkitperl/webkitdirs_unittest/extractNonMacOSHostConfiguration.pl: Native Macs never
862         use 32 bit tool binaries.
863
864 2020-06-19  Jonathan Bedard  <jbedard@apple.com>
865
866         Bring up watchOS/tvOS on build.webkit.org (Follow-up fix)
867         https://bugs.webkit.org/show_bug.cgi?id=213402
868         <rdar://problem/64542588>
869
870         Unreviewed build-fix.
871
872         * BuildSlaveSupport/build.webkit.org-config/config.json: Use arm64_32 to build watchOS device.
873         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
874         (WebKitBuildbot): watchOS device should be considered 32 bit.
875         * Scripts/configure-xcode-for-embedded-development: Force-copy MediaAccessibility.framework.
876         * Scripts/webkitdirs.pm:
877         (extractNonMacOSHostConfiguration): Native Macs never use 32 bit tool binaries.
878
879 2020-06-19  Aakash Jain  <aakash_jain@apple.com>
880
881         Delete dead code for old ews api tests
882         https://bugs.webkit.org/show_bug.cgi?id=213421
883
884         Rubber-stamped by Alexey Proskuryakov.
885
886         * Scripts/webkitpy/common/config/ports.py:
887         (DeprecatedPort.run_api_tests_command): Deleted.
888         * Scripts/webkitpy/common/net/apitestresults.py: Removed.
889         * Scripts/webkitpy/common/net/apitestresults_unittest.py: Removed.
890         * Scripts/webkitpy/port/base.py:
891         (Port.bindings_results_directory):
892         (Port.api_results_directory): Deleted.
893         * Scripts/webkitpy/tool/bot/apitestresultsreader.py: Removed.
894         * Scripts/webkitpy/tool/steps/runtests.py:
895         (RunTests._run_api_tests): Deleted.
896         * Scripts/webkitpy/tool/steps/steps_unittest.py:
897         (test_runtests_api_debug): Deleted.
898
899 2020-06-19  Jonathan Bedard  <jbedard@apple.com>
900
901         Bring up watchOS/tvOS on build.webkit.org
902         https://bugs.webkit.org/show_bug.cgi?id=213402
903         <rdar://problem/64542588>
904
905         Unreviewed infrastructure fix.
906
907         * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
908         (_should_file_trigger_build): Add tvOS and watchOS.
909         * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
910         (ShouldBuildTest):
911         (ShouldBuildTest.test_should_build):
912
913 2020-06-19  Jiewen Tan  <jiewen_tan@apple.com>
914
915         [WebAuthn] Provide a _WKWebAuthenticationPanelUpdatePINInvalid update to UI clients if the returned PIN from the client is not valid
916         https://bugs.webkit.org/show_bug.cgi?id=213404
917         <rdar://problem/64543894>
918
919         Reviewed by Brent Fulgham.
920
921         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
922         * TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
923         (TestWebKitAPI::TEST):
924         * TestWebKitAPI/Tests/WebKitCocoa/web-authentication-make-credential-hid-pin-get-pin-token-fake-pin-invalid-error-retry.html: Added.
925
926 2020-06-19  Jonathan Bedard  <jbedard@apple.com>
927
928         Bring up watchOS/tvOS on build.webkit.org
929         https://bugs.webkit.org/show_bug.cgi?id=213402
930         <rdar://problem/64542588>
931
932         Reviewed by Aakash Jain.
933
934         * BuildSlaveSupport/build.webkit.org-config/config.json: Add AppleTV and watchOS builders.
935         * BuildSlaveSupport/build.webkit.org-config/factories.py:
936         (BuildFactory.__init__): Support AppleTV and watchOS.
937         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/TvOS13.png: Added.
938         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/TvOS13@2x.png: Added.
939         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/TvOS13Simulator.png: Added.
940         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/TvOS13Simulator@2x.png: Added.
941         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WatchOS6.png: Added.
942         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WatchOS6@2x.png: Added.
943         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WatchOSSimulator6.png: Added.
944         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WatchOSSimulator6@2x.png: Added.
945         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
946         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
947         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
948         * BuildSlaveSupport/build.webkit.org-config/steps.py:
949         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
950
951 2020-06-19  Saam Barati  <sbarati@apple.com>
952
953         Have a memory monitor thread in jsc shell when running tests using --memory-limited
954         https://bugs.webkit.org/show_bug.cgi?id=213389
955
956         Reviewed by Mark Lam.
957
958         * Scripts/run-jsc-stress-tests:
959         * Scripts/webkitruby/jsc-stress-test-writer-default.rb:
960         * Scripts/webkitruby/jsc-stress-test-writer-ruby.rb:
961
962 2020-06-19  Chris Fleizach  <cfleizach@apple.com>
963
964         AX: Make isolated tree enablement status dependent on client preference
965         https://bugs.webkit.org/show_bug.cgi?id=213355
966         <rdar://problem/64506577>
967
968         Reviewed by Zalan Bujtas.
969
970         * MiniBrowser/mac/AppDelegate.m:
971         (-[BrowserAppDelegate defaultConfiguration]):
972
973 2020-06-19  Aakash Jain  <aakash_jain@apple.com>
974
975         Improve handling of trac downtime by commit-queue
976         https://bugs.webkit.org/show_bug.cgi?id=213377
977
978         Reviewed by Jonathan Bedard.
979
980         * BuildSlaveSupport/ews-build/steps.py: Load contributors.json from disk when loading from trac fails.
981         (ValidateCommiterAndReviewer.load_contributors_from_disk):
982         (ValidateCommiterAndReviewer.load_contributors_from_trac):
983         (ValidateCommiterAndReviewer.load_contributors):
984         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-test
985
986 2020-06-19  Lauro Moura  <lmoura@igalia.com>
987
988         [WPE] Warn potential issues when creating WindowViewBackend
989         https://bugs.webkit.org/show_bug.cgi?id=213326
990
991         Reviewed by Philippe Normand.
992
993         Make it easier to debug eventual GL issues when starting up MiniBrowser in
994         windowed mode.
995
996         * wpe/backends/WindowViewBackend.cpp:
997         (WPEToolingBackends::WaylandEGLConnection::singleton):
998         (WPEToolingBackends::WindowViewBackend::WindowViewBackend):
999
1000 2020-06-19  Lauro Moura  <lmoura@igalia.com>
1001
1002         [webkitpy][WPE] Default to headless if _display_server is xfvb
1003         https://bugs.webkit.org/show_bug.cgi?id=213327
1004
1005         Reviewed by Philippe Normand.
1006
1007         Xvfb is used as the default display server for some scripts, and the
1008         equivalent for WPE is the headless one.
1009
1010         WTR and the API tests already create only HeadlessViewBackends, but the
1011         WebDriver tests create them through MiniBrowser, which requires the
1012         '--headless' parameter.
1013
1014         * Scripts/run-webdriver-tests: Do not override _display_server
1015         * Scripts/webkitpy/port/base.py:
1016         (Port.__init__): Define _display_server for all ports to avoid
1017         eventually needing to override it.
1018         * Scripts/webkitpy/port/wpe.py:
1019         (WPEPort.__init__): Default to 'headless' if _display_server is 'xvfb'
1020         * Scripts/webkitpy/w3c/wpt_runner.py:
1021         (main): Dot not override _display_server
1022
1023 2020-06-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1024
1025         Add support for fetching registrable domains with resource load statistics
1026         https://bugs.webkit.org/show_bug.cgi?id=213291
1027
1028         Reviewed by Adrian Perez de Castro.
1029
1030         Update GLib ITP unit test to check also fetch and remove.
1031
1032         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
1033         (testWebsiteDataITP):
1034
1035 2020-06-19  Tomoki Imai  <Tomoki.Imai@sony.com>
1036
1037         Change my (Tomoki Imai's) status to committer
1038
1039         Unreviewed, just updating contributors.json for myself.
1040
1041         * Scripts/webkitpy/common/config/contributors.json:
1042
1043 2020-06-18  Jonathan Bedard  <jbedard@apple.com>
1044
1045         Add SPI to preconnect to a server (Follow-up fix)
1046         https://bugs.webkit.org/show_bug.cgi?id=213109
1047         <rdar://problem/64184412>
1048
1049         Unreviewed build-fix.
1050
1051         * TestWebKitAPI/Tests/WebKitCocoa/Preconnect.mm: HTTPServer does not exist if HAVE(NETWORK_FRAMEWORK) is false.
1052
1053 2020-06-18  Jonathan Bedard  <jbedard@apple.com>
1054
1055         [iOS] Two KeyboardInputTests are failing on recent iOS SDK versions (build-fix)
1056         https://bugs.webkit.org/show_bug.cgi?id=213183
1057         <rdar://problem/64273483>
1058
1059         Unreviewed build fix.
1060
1061         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
1062         (webViewWithAutofocusedInput): bool may not be the same type as BOOL.
1063
1064 2020-06-18  Saam Barati  <sbarati@apple.com>
1065
1066         call skip when skipping JetStream2 wasm test
1067         https://bugs.webkit.org/show_bug.cgi?id=213354
1068
1069         Reviewed by Yusuke Suzuki.
1070
1071         So we can see the logging that we're skipping.
1072
1073         * Scripts/run-jsc-stress-tests:
1074
1075 2020-06-18  Joonghun Park  <jh718.park@samsung.com>
1076
1077     Unreviewed. Remove the build warning below since r262971.
1078     warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
1079
1080         * WebKitTestRunner/TestController.cpp:
1081         (WTR::getAllStorageAccessEntriesCallback):
1082
1083 2020-06-18  Ross Kirsling  <ross.kirsling@sony.com>
1084
1085         [Intl] Enable RelativeTimeFormat and Locale by default
1086         https://bugs.webkit.org/show_bug.cgi?id=213324
1087
1088         Reviewed by Yusuke Suzuki.
1089
1090         * Scripts/run-jsc-stress-tests:
1091         Remove feature flags.
1092
1093 2020-06-18  Andy Estes  <aestes@apple.com>
1094
1095         Unreviewed build fix after r263194
1096
1097         * WebKitTestRunner/ios/TestControllerIOS.mm:
1098         (WTR::TestController::platformResetStateToConsistentValues): Guarded code that mentions
1099         UIContextMenuInteraction with USE(UICONTEXTMENU).
1100
1101 2020-06-18  Ryan Haddad  <ryanhaddad@apple.com>
1102
1103         Unreviewed infrastructure fix, temporarily remove ews116 due to hardware failure tracked with rdar://64424245
1104
1105         * BuildSlaveSupport/ews-build/config.json:
1106
1107 2020-06-18  Carlos Garcia Campos  <cgarcia@igalia.com>
1108
1109         [GTK][WPE] Add API to configure and handle service worker registrations to WebKitWebsiteDataManager
1110         https://bugs.webkit.org/show_bug.cgi?id=213290
1111
1112         Reviewed by Michael Catanzaro.
1113
1114         Handle new website data in MiniBrowser and add a unit test.
1115
1116         * MiniBrowser/gtk/main.c:
1117         (gotWebsiteDataCallback):
1118         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
1119         (serverCallback):
1120         (testWebsiteDataConfiguration):
1121         (testWebsiteDataEphemeral):
1122         (testWebsiteDataITP):
1123         (testWebsiteDataServiceWorkerRegistrations):
1124         (beforeAll):
1125         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
1126         (Test::Test):
1127
1128 2020-06-17  Fujii Hironori  <Hironori.Fujii@sony.com>
1129
1130         RebaselineServer: "Rebaseline queue" button is placed behind the footer
1131         https://bugs.webkit.org/show_bug.cgi?id=213258
1132
1133         Reviewed by Zalan Bujtas.
1134
1135         * Scripts/webkitpy/tool/servers/data/rebaselineserver/index.html: Moved 'log' and 'queue' elements after 'footer' element.
1136         * Scripts/webkitpy/tool/servers/data/rebaselineserver/main.css:
1137         (#queue): Changed 'bottom' property from 3em to 4em.
1138
1139 2020-06-17  Wenson Hsieh  <wenson_hsieh@apple.com>
1140
1141         [macOS] Shift-tab in a bullet list in Mail Compose jumps back to Subject field
1142         https://bugs.webkit.org/show_bug.cgi?id=213320
1143         <rdar://problem/63831962>
1144
1145         Reviewed by Tim Horton.
1146
1147         Add a new API test to verify that preventing the "keypress" event for shift+tab in an SPI-editable web view
1148         causes us to avoid relinquishing focus.
1149
1150         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
1151
1152 2020-06-17  Andy Estes  <aestes@apple.com>
1153
1154         REGRESSION (r258092): fast/forms/ios/file-upload-panel.html fails when HAVE(UICONTEXTMENU_LOCATION)
1155         https://bugs.webkit.org/show_bug.cgi?id=213314
1156         <rdar://problem/60339129>
1157
1158         Reviewed by Maciej Stachowiak.
1159
1160         fast/forms/ios/file-upload-panel.html sets the shouldHandleRunOpenPanel and
1161         shouldPresentPopovers test options to false so that WKTR will (a) not register a
1162         runOpenPanel UI delegate callback, causing WebKit to create a WKFileUploadPanel instead, and
1163         (b) swizzle two UIKit view controller presentation methods to prevent the document picker
1164         menu from being presented. The test merely wants the WKFileUploadPanel instance to exist in
1165         order to query its available actions, not for it to show UI.
1166
1167         In r258092, WKFileUploadPanel now sometimes uses a UIContextMenuInteraction instance to
1168         present the document picker menu, but -[UIContextMenuInteraction _presentMenuAtLocation:]
1169         fails due to WKTR's above-mentioned swizzling. When this failure occurs,
1170         UIContextMenuInteraction calls -contextMenuInteraction:willEndForConfiguration:animator: on
1171         its delegate (the WKFileUploadPanel), which dismisses the open panel before the test has had
1172         a chance to query the available actions.
1173
1174         Fixed this by swizzling -[UIContextMenuInteraction _presentMenuAtLocation:] when the
1175         shouldPresentPopovers test option is false.
1176
1177         * WebKitTestRunner/ios/TestControllerIOS.mm:
1178         (overridePresentMenuOrPopoverOrViewController): Renamed from
1179         overridePresentViewControllerOrPopover.
1180         (WTR::TestController::platformResetStateToConsistentValues): Swizzled
1181         -[UIContextMenuInteraction _presentMenuAtLocation:] with
1182         overridePresentMenuOrPopoverOrViewController when the shouldPresentPopovers test option is
1183         false.
1184         (overridePresentViewControllerOrPopover): Renamed to
1185         overridePresentMenuOrPopoverOrViewController.
1186
1187 2020-06-17  Sihui Liu  <sihui_liu@apple.com>
1188
1189         REGRESSION (r263044): [macOS] TestWebKitAPI.TextManipulation.InsertingContentIntoAlreadyManipulatedContentCreatesTextManipulationItem is a flaky failure
1190         https://bugs.webkit.org/show_bug.cgi?id=213311
1191         <rdar://problem/64456413>
1192
1193         Reviewed by Wenson Hsieh.
1194
1195         TextManipulation.InsertingContentIntoAlreadyManipulatedContentCreatesTextManipulationItem does not wait long 
1196         enough to make sure TextManipulationController gets notified about the insertion and starts observing.
1197
1198         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
1199         (TestWebKitAPI::TEST):
1200
1201 2020-06-17  Aakash Jain  <aakash_jain@apple.com>
1202
1203         Delete code for old ews bindings queue
1204         https://bugs.webkit.org/show_bug.cgi?id=213315
1205
1206         Rubber-stamped by Alexey Proskuryakov.
1207
1208         * Scripts/webkitpy/common/config/ews.json:
1209         * Scripts/webkitpy/common/config/ports.py:
1210         (DeprecatedPort.run_bindings_tests_command): Deleted.
1211         (WinPort.run_bindings_tests_command): Deleted.
1212         * Scripts/webkitpy/common/config/ports_mock.py:
1213         (MockPort.run_bindings_tests_command): Deleted.
1214         * Scripts/webkitpy/common/net/generictestresults.py: Removed.
1215         * Scripts/webkitpy/common/net/generictestresults_unittest.py: Removed.
1216         * Scripts/webkitpy/tool/bot/bindingstestresultsreader.py: Removed.
1217         * Scripts/webkitpy/tool/bot/patchanalysistask.py:
1218         (PatchAnalysisTask._retry_bindings_tests): Deleted.
1219         * Scripts/webkitpy/tool/bot/retrylogic_unittest.py:
1220         (MockBindingsEarlyWarningSystem): Deleted.
1221         (MockBindingsEarlyWarningSystem.__init__): Deleted.
1222         (MockBindingsEarlyWarningSystem.test_results): Deleted.
1223         (BindingsEarlyWarningSystemTest): Deleted.
1224         (BindingsEarlyWarningSystemTest._results_indicate_all_passed): Deleted.
1225         (BindingsEarlyWarningSystemTest._create_task): Deleted.
1226         (BindingsEarlyWarningSystemTest.test_success_case): Deleted.
1227         (BindingsEarlyWarningSystemTest.test_test_failure): Deleted.
1228         (BindingsEarlyWarningSystemTest.test_fix): Deleted.
1229         (BindingsEarlyWarningSystemTest.test_ineffective_patch): Deleted.
1230         (BindingsEarlyWarningSystemTest.test_partially_effective_patch): Deleted.
1231         (BindingsEarlyWarningSystemTest.test_different_test_failures_in_patch_and_tree): Deleted.
1232         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
1233         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
1234         (TestBindingsEWS): Deleted.
1235         (AbstractEarlyWarningSystemTest.test_failing_bindings_tests_message): Deleted.
1236         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
1237         * Scripts/webkitpy/tool/steps/runtests.py:
1238         (RunTests._run_bindings_tests): Deleted.
1239         * Scripts/webkitpy/tool/steps/steps_unittest.py:
1240         (test_patch_relevant_bindings): Deleted.
1241         (test_runtests_api): Deleted.
1242
1243 2020-06-17  Aakash Jain  <aakash_jain@apple.com>
1244
1245         Delete code for old ews style queue
1246         https://bugs.webkit.org/show_bug.cgi?id=213297
1247
1248         Rubber-stamped by Alexey Proskuryakov.
1249
1250         * Scripts/webkitpy/tool/bot/stylequeuetask.py: Removed.
1251         * Scripts/webkitpy/tool/commands/queues.py:
1252         (StyleQueue): Deleted.
1253         (StyleQueue.__init__): Deleted.
1254         (StyleQueue.review_patch): Deleted.
1255         (StyleQueue.run_command): Deleted.
1256         (StyleQueue.expected_failures): Deleted.
1257         (StyleQueue.refetch_patch): Deleted.
1258         * Scripts/webkitpy/tool/commands/queues_unittest.py:
1259         (TestReviewQueue): Deleted.
1260
1261 2020-06-17  Aakash Jain  <aakash_jain@apple.com>
1262
1263         Delete code for old ews webkitpy queue
1264         https://bugs.webkit.org/show_bug.cgi?id=213299
1265
1266         Reviewed by Jonathan Bedard.
1267
1268         * Scripts/webkitpy/common/config/ews.json:
1269         * Scripts/webkitpy/common/net/generictestresults.py:
1270         (WebkitpyTestResults): Deleted.
1271         * Scripts/webkitpy/tool/bot/patchanalysistask.py:
1272         * Scripts/webkitpy/tool/bot/webkitpytestresultsreader.py: Removed.
1273         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
1274         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
1275         (TestWebkitpyEWS): Deleted.
1276         (AbstractEarlyWarningSystemTest.test_failing_webkitpy_tests_message): Deleted.
1277         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
1278         * Scripts/webkitpy/tool/steps/runtests.py:
1279         (RunTests._run_webkitpy_tests): Deleted.
1280         * Scripts/webkitpy/tool/steps/steps_unittest.py:
1281         (test_runtests_webkitpy): Deleted.
1282         (test_patch_not_relevant_bindings): Deleted.
1283         (test_runtests_api_debug): Deleted.
1284
1285 2020-06-17  Keith Miller  <keith_miller@apple.com>
1286
1287         WebKitTestRunner should not crash on alert with invalid utf16 strings
1288         https://bugs.webkit.org/show_bug.cgi?id=213269
1289
1290         Reviewed by Simon Fraser.
1291
1292         * WebKitTestRunner/StringFunctions.h:
1293         (WTR::toWTFString):
1294
1295 2020-06-17  Aakash Jain  <aakash_jain@apple.com>
1296
1297         Delete old ews client side code - part 2
1298         https://bugs.webkit.org/show_bug.cgi?id=213262
1299
1300         Reviewed by Alexey Proskuryakov.
1301
1302         * Scripts/webkitpy/common/net/bugzilla/attachment.py:
1303         * Scripts/webkitpy/tool/bot/patchanalysistask.py:
1304         (PatchAnalysisTaskDelegate.command_passed): Deleted.
1305         (PatchAnalysisTaskDelegate.command_failed): Deleted.
1306         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
1307         (AbstractEarlyWarningSystem.command_passed): Deleted.
1308         (AbstractEarlyWarningSystem.command_failed): Deleted.
1309         * Scripts/webkitpy/tool/commands/perfalizer.py:
1310         (PerfalizerTask.command_passed): Deleted.
1311         (PerfalizerTask.command_failed): Deleted.
1312         * Scripts/webkitpy/tool/commands/perfalizer_unittest.py:
1313         * Scripts/webkitpy/tool/commands/queues.py:
1314         (AbstractPatchQueue._next_patch): Deleted.
1315         (AbstractPatchQueue._did_error): Deleted.
1316         (AbstractPatchQueue._did_skip): Deleted.
1317         (AbstractPatchQueue._unlock_patch): Deleted.
1318         (StyleQueue.command_passed): Deleted.
1319         (StyleQueue.command_failed): Deleted.
1320
1321 2020-06-17  Paulo Matos  <pmatos@igalia.com>
1322
1323         Add new Igalia EWS workers for ARM/MIPS
1324         https://bugs.webkit.org/show_bug.cgi?id=212803
1325
1326         Reviewed by Aakash Jain.
1327
1328         * BuildSlaveSupport/ews-build/config.json:
1329
1330 2020-06-16  Mark Lam  <mark.lam@apple.com>
1331
1332         TestWebKitAPI.WebCore.WildcardStringMatching needs to initialize Options before accessing them.
1333         https://bugs.webkit.org/show_bug.cgi?id=213270
1334         <rdar://problem/64427499>
1335
1336         Reviewed by Yusuke Suzuki.
1337
1338         * TestWebKitAPI/Tests/WebCore/StringUtilities.mm:
1339         (TestWebKitAPI::TEST):
1340
1341 2020-06-16  Wenson Hsieh  <wenson_hsieh@apple.com>
1342
1343         Text manipulation should not re-extract elements whose children have been manipulated
1344         https://bugs.webkit.org/show_bug.cgi?id=213276
1345         <rdar://problem/64193446>
1346
1347         Reviewed by Tim Horton.
1348
1349         Add a new API test where we start and complete text manipulation, and then hide and show the manipulated
1350         element. This test verifies that the new item callbacks are *not* called after element is shown again.
1351
1352         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
1353         (TestWebKitAPI::TEST):
1354
1355 2020-06-16  Saam Barati  <sbarati@apple.com>
1356
1357         Fix two typos "signifcant" and "signficance". Should be "significant" and "significance"
1358
1359         * Scripts/compare-results:
1360         (displayStr):
1361         (computeMultipleHypothesesSignificance):
1362         (dumpBreakdowns):
1363         (writeCSV):
1364         (computeMultipleHypothesesSignficance): Deleted.
1365
1366 2020-06-16  Andres Gonzalez  <andresg_22@apple.com>
1367
1368         Fix for accessibility/textarea-selected-text-range.html in isolated tree mode.
1369         https://bugs.webkit.org/show_bug.cgi?id=213257
1370
1371         Reviewed by Chris Fleizach.
1372
1373         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
1374         (WTR::setAttributeValue):
1375         (WTR::AccessibilityUIElement::selectedTextRange): Dispatch call into
1376         WebAccessibilityWrapper onto AX secondary thread to simulate isolated
1377         tree mode.
1378
1379 2020-06-16  Saam Barati  <sbarati@apple.com>
1380
1381         Multiple hypothesis testing should use False Discovery Rate instead of Bonferroni
1382         https://bugs.webkit.org/show_bug.cgi?id=213219
1383
1384         Reviewed by Mark Lam.
1385
1386         My previous patch here used Bonferroni to do multiple hypotheses correction.
1387         Bonferroni does a good job at reducing false positive rate (type I error,
1388         saying something is significant when it's not, e.g, rejecting the null
1389         hypothesis when we shouldn't), but at the expense of also having a high
1390         false negative rate (type II error, saying something is not significant when
1391         it is, e.g, not rejecting the null hypothesis when we should).
1392         
1393         After doing a bit more reading, it seems like using a technique called False
1394         Discovery Rate (FDR) is better. It still does a good job at controlling type
1395         I error rate, but without sacrificing a high type II error rate. FDR is based
1396         on a technique for "estimating the proportion of wrongly rejected null hypotheses" [2].
1397         
1398         This patch uses Benjamini and Hochberg estimation of FDR, which relies
1399         on hypotheses being independent. We know subtests in a benchmark aren't
1400         fully independent variables, but it's a good enough approximation.
1401         
1402         You can read more about FDR:
1403         1. https://www.stat.berkeley.edu/~mgoldman/Section0402.pdf
1404         2. https://besjournals.onlinelibrary.wiley.com/doi/10.1111/j.2041-210X.2010.00061.x
1405         3. https://en.wikipedia.org/wiki/False_discovery_rate
1406
1407         * Scripts/compare-results:
1408         (displayStr):
1409         (computeMultipleHypothesesSignficance):
1410         (dumpBreakdowns):
1411         (writeCSV):
1412
1413 2020-06-16  David Kilzer  <ddkilzer@apple.com>
1414
1415         REGRESSION (r262994): Web Inspector is killed when context-clicking anywhere
1416         <https://webkit.org/b/213224>
1417         <rdar://problem/64383320>
1418
1419         Reviewed by Darin Adler.
1420
1421         * TestWebKitAPI/CMakeLists.txt:
1422         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1423         - Add ContextMenuAction.cpp to build systems.
1424         * TestWebKitAPI/Tests/WebCore/ContextMenuAction.cpp: Add.
1425         (TestWebKitAPI::TEST):
1426         - Add TestWebKitAPI.WebCore.ContextMenuAction_IsValidEnum.
1427
1428 2020-06-16  Fujii Hironori  <Hironori.Fujii@sony.com>
1429
1430         [Win] Mouse dragging tests are failing because WebKitTestRunner dispatches WM_MOUSELEAVE to the hidden WebView
1431         https://bugs.webkit.org/show_bug.cgi?id=213239
1432
1433         Reviewed by Don Olmstead.
1434
1435         There are two problems:
1436         1. Windows EventSenderProxy::mouseMoveTo doesn't set WPARAM of WM_MOUSEMOVE
1437         2. Unexpected WM_MOUSELEAVE discontinues the mouse dragging events
1438
1439         WPARAM of WM_MOUSEMOVE should represent pressed mouse buttons while dragging.
1440
1441         WM_MOUSELEAVE is unexpectedly dispatched because the mouse cursor
1442         is always out of the hidden WebView. The unexpected WM_MOUSELEAVE
1443         discontinues dragging events. WM_MOUSELEAVE shouldn't be
1444         dispatched in WebKitTestRunner. Ignore it.
1445
1446         * WebKitTestRunner/win/EventSenderProxyWin.cpp:
1447         (WTR::EventSenderProxy::mouseDown):
1448         (WTR::EventSenderProxy::mouseUp):
1449         (WTR::EventSenderProxy::mouseMoveTo): Set MK_LBUTTON to WPARAM of
1450         WM_MOUSEMOVE while dragging.
1451         * WebKitTestRunner/win/TestControllerWin.cpp:
1452         (WTR::runRunLoopUntil): Ignore WM_MOUSELEAVE.
1453
1454 2020-06-16  Wenson Hsieh  <wenson_hsieh@apple.com>
1455
1456         Text manipulation should handle nested item boundary elements
1457         https://bugs.webkit.org/show_bug.cgi?id=213251
1458         <rdar://problem/63371514>
1459
1460         Reviewed by Sihui Liu.
1461
1462         Add a new API test to exercise this scenario.
1463
1464         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
1465
1466 2020-06-16  Charlie Turner  <cturner@igalia.com>
1467
1468         [GTK] Disable video autoplay
1469         https://bugs.webkit.org/show_bug.cgi?id=184845
1470
1471         Reviewed by Carlos Garcia Campos.
1472
1473         Update the various callsites for constructing a view to take into
1474         account the default policies. I chose the default as autoplay
1475         allow without sound, which is in keeping with WebCore's choice.
1476
1477         * MiniBrowser/gtk/BrowserWindow.c:
1478         (webViewDecidePolicy):
1479         (newTabCallback):
1480         (openPrivateWindow):
1481         (browser_window_get_or_create_web_view_for_automation):
1482         (browser_window_create_web_view_in_new_tab_for_automation):
1483         * MiniBrowser/gtk/main.c:
1484         (createBrowserTab):
1485         (main):
1486         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitPolicyClient.cpp: Add
1487         autoplay policy tests, and use modern class initializers.
1488         (testAutoplayPolicy):
1489         (beforeAll):
1490
1491 2020-06-16  Philippe Normand  <pnormand@igalia.com>
1492
1493         [Flatpak SDK] Subversion perl bindings unusable
1494         https://bugs.webkit.org/show_bug.cgi?id=213241
1495
1496         Reviewed by Sergio Villar Senin.
1497
1498         * buildstream/elements/sdk/subversion.bst: The svn swig perl library wasn't correctly
1499         installed, leading to undefined symbols when importing it from the bindings. A new
1500         integration command now tests this.
1501
1502 2020-06-16  Philippe Normand  <pnormand@igalia.com>
1503
1504         [Flatpak SDK] Update to Qt 5.15
1505         https://bugs.webkit.org/show_bug.cgi?id=213192
1506
1507         Reviewed by Sergio Villar Senin.
1508
1509         The new patch comes from the upstream KDE SDK: https://github.com/KDE/flatpak-kde-runtime/tree/qt5.15lts/patch
1510         
1511         * buildstream/elements/qt5/qtbase.bst:
1512         * buildstream/elements/qt5/qtdeclarative.bst:
1513         * buildstream/elements/qt5/qtquickcontrols.bst:
1514         * buildstream/elements/qt5/qtquickcontrols2.bst:
1515         * buildstream/elements/qt5/qtwayland.bst:
1516         * buildstream/elements/qt5/qtx11extras.bst:
1517         * buildstream/patches/qtbase-make-sure-to-correctly-construct-base-platform-theme.patch: Added.
1518         * buildstream/patches/qtwayland-use-gnome-platform-theme-on-gnome-based-desktops.patch: Removed.
1519         * buildstream/project.conf:
1520
1521 2020-06-16  Carlos Garcia Campos  <cgarcia@igalia.com>
1522
1523         [GTK][WPE] Add API to configure and enable resource load statistics
1524         https://bugs.webkit.org/show_bug.cgi?id=177943
1525
1526         Reviewed by Michael Catanzaro.
1527
1528         Add --enable-itp command line version to MiniBrowser and unit tests to check the new API.
1529
1530         * MiniBrowser/gtk/main.c:
1531         (gotWebsiteDataCallback):
1532         (activate):
1533         * MiniBrowser/wpe/main.cpp:
1534         (main):
1535         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
1536         (serverCallback):
1537         (testWebsiteDataConfiguration):
1538         (testWebsiteDataEphemeral):
1539         (testWebsiteDataITP):
1540         (beforeAll):
1541         * TestWebKitAPI/glib/TestExpectations.json:
1542         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
1543         (Test::Test):
1544         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
1545         (directoryChangedCallback):
1546         (WebViewTest::waitUntilFileChanged):
1547         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
1548
1549 2020-06-16  Philippe Normand  <pnormand@igalia.com>
1550
1551         REGRESSION(r263029): [Flatpak SDK] Broke initial SDK installation
1552
1553         Rubber-stamped by Žan Doberšek.
1554
1555         * flatpak/flatpakutils.py:
1556         (FlatpakObject.version): Gracefully return an empty version when the flatpak info command
1557         fails. This usually means the app has not been installed yet.
1558
1559 2020-06-15  Megan Gardner  <megan_gardner@apple.com>
1560
1561         Text form controls can scroll by 1px when value is the same length as size. No scrolling should happen.
1562         https://bugs.webkit.org/show_bug.cgi?id=212856
1563         <rdar://problem/63541707>
1564
1565         Reviewed by Zalan Bujtas.
1566
1567         Rebased to reflect new sizes.
1568
1569         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
1570         (TEST):
1571         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
1572         (TestWebKitAPI::TEST):
1573
1574 2020-06-15  Jonathan Bedard  <jbedard@apple.com>
1575
1576         Follow-up fix: Make API tests tolerant of our relatively new use of WebPageProxy::preconnectTo
1577         https://bugs.webkit.org/show_bug.cgi?id=213144
1578         <rdar://problem/64316743>
1579
1580         Unreviewed build fix.
1581
1582         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm: Guard didFinishNavigation declaration with HAVE(NETWORK_FRAMEWORK).
1583
1584 2020-06-15  Alex Christensen  <achristensen@webkit.org>
1585
1586         Provide alternatively-named SPI for user style sheets and scripts
1587         https://bugs.webkit.org/show_bug.cgi?id=213206
1588
1589         Reviewed by Brady Eidson.
1590
1591         * DumpRenderTree/mac/DumpRenderTree.mm:
1592         (fontAllowList):
1593         (createWebViewAndOffscreenWindow):
1594         (resetWebViewToConsistentStateBeforeTesting):
1595         (fontWhitelist): Deleted.
1596         * DumpRenderTree/mac/TestRunnerMac.mm:
1597         (TestRunner::addOriginAccessWhitelistEntry):
1598         (TestRunner::removeOriginAccessWhitelistEntry):
1599         (TestRunner::addUserScript):
1600         (TestRunner::addUserStyleSheet):
1601         * TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm:
1602         (TEST):
1603         * TestWebKitAPI/Tests/WebKitCocoa/UserContentWorld.mm:
1604         (TEST):
1605         * WebKitTestRunner/mac/TestControllerMac.mm:
1606         (WTR::generateFontAllowList):
1607         (WTR::TestController::platformInitializeContext):
1608         (WTR::generateWhitelist): Deleted.
1609
1610 2020-06-15  Alex Christensen  <achristensen@webkit.org>
1611
1612         Add SPI to preconnect to a server
1613         https://bugs.webkit.org/show_bug.cgi?id=213109
1614         <rdar://problem/64184412>
1615
1616         Reviewed by Geoff Garen.
1617
1618         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1619
1620 2020-06-15  Keith Miller  <keith_miller@apple.com>
1621
1622         Signal handlers should have a two phase installation.
1623         https://bugs.webkit.org/show_bug.cgi?id=213160
1624
1625         Reviewed by Mark Lam.
1626
1627         * TestWebKitAPI/Tests/WTF/Signals.cpp:
1628         (TEST):
1629
1630 2020-06-15  Sihui Liu  <sihui_liu@apple.com>
1631
1632         Text manipulation does not observe newly displayed element inside previously observed content
1633         https://bugs.webkit.org/show_bug.cgi?id=213156
1634
1635         Reviewed by Darin Adler.
1636
1637         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
1638         (TestWebKitAPI::TEST):
1639
1640 2020-06-15  Philippe Normand  <pnormand@igalia.com>
1641
1642         [Flatpak SDK] Bump Subversion and enable Perl bindings
1643         https://bugs.webkit.org/show_bug.cgi?id=213189
1644
1645         Reviewed by Žan Doberšek.
1646
1647         * buildstream/elements/sdk-build-depends/swig.bst: Added.
1648         * buildstream/elements/sdk/subversion.bst: Enable Perl bindings so that git svn can be used within the sandbox.
1649
1650 2020-06-15  Philippe Normand  <pnormand@igalia.com>
1651
1652         [Flatpak SDK] flatpak update still not displayed
1653         https://bugs.webkit.org/show_bug.cgi?id=213180
1654
1655         Reviewed by Žan Doberšek.
1656
1657         Added a new --version option to the script. We no longer gather the flatpak update command
1658         output to know if something was updated or not. Instead we get the version of the SDK prior
1659         to the update operation and compare that with the version after the update.
1660
1661         * flatpak/flatpakutils.py:
1662         (FlatpakObject.version):
1663         (WebkitFlatpak.load_from_args):
1664         (WebkitFlatpak.main):
1665
1666 2020-06-15  Carlos Garcia Campos  <cgarcia@igalia.com>
1667
1668         [GTK][WPE] Add API to expose UIClient::requestStorageAccessConfirm
1669         https://bugs.webkit.org/show_bug.cgi?id=210422
1670
1671         Reviewed by Michael Catanzaro.
1672
1673         Handle WebKitWebsiteDataAccessPermissionRequest in MiniBrowser.
1674
1675         * MiniBrowser/gtk/BrowserTab.c:
1676         (decidePermissionRequest):
1677
1678 2020-06-15  Philippe Normand  <pnormand@igalia.com>
1679
1680         [Flatpak SDK] Add libavif
1681         https://bugs.webkit.org/show_bug.cgi?id=212964
1682         <rdar://problem/64291035>
1683
1684         Reviewed by Žan Doberšek.
1685
1686         Because of the ABI bump of dav1d, which ffmpeg depends on, ffmpeg needs to be rebuilt. So
1687         this is a good opportunity to include it in the SDK and not rely on the ffmpeg-full
1688         extension anymore, because it doesn't provide debug symbols.
1689
1690         * buildstream/elements/flatpak/platform.bst:
1691         * buildstream/elements/flatpak/sdk.bst:
1692         * buildstream/elements/freedesktop-sdk.bst:
1693         * buildstream/elements/sdk-platform.bst:
1694         * buildstream/elements/sdk/ffmpeg.bst: Added.
1695         * buildstream/elements/sdk/gst-libav.bst:
1696         * buildstream/elements/sdk/libavif.bst: Added.
1697         * buildstream/elements/sdk/ruby-highline.bst: Remove the spec source, un-needed.
1698         * buildstream/patches/fdo/0001-dav1d-Bump-to-0.7.0.patch: Added.
1699         * buildstream/patches/fdo/0001-ffmpeg-Add-MS-MPEG-DivX-variants.patch: Removed.
1700         * buildstream/patches/fdo/0002-ffmpeg-Add-VP6-and-Sorenson-Spark-video-codecs.patch: Removed.
1701         * buildstream/patches/fdo/0003-ffmpeg-Add-Intel-Indeo-and-Cinepak-video-support.patch: Removed.
1702         * buildstream/patches/fdo/0004-ffmpeg-Add-MPEG-2-video-decoder.patch: Removed.
1703         * buildstream/patches/fdo/0005-ffmpeg-Add-msmpeg4v3-support.patch: Removed.
1704         * buildstream/project.conf:
1705         * flatpak/flatpakutils.py:
1706         (WebkitFlatpak._get_packages):
1707
1708 2020-06-15  Philippe Normand  <pnormand@igalia.com>
1709
1710         [Flatpak SDK] Remove webkit-build-directory dependency from flatpakutils
1711         https://bugs.webkit.org/show_bug.cgi?id=213179
1712
1713         Reviewed by Žan Doberšek.
1714
1715         This makes webkit-flatpak usable without installing additional perl modules (version) on the host OS.
1716
1717         * flatpak/flatpakutils.py:
1718         (WebkitFlatpak.load_from_args): Make --release and --debug mutually exclusive, and default to Release builds.
1719         (WebkitFlatpak.__init__):
1720         (WebkitFlatpak.clean_args): No need to pull in webkitpy which pulls webkitdirs.pm only to
1721         determine the default configuration. Assume we use Release by default.
1722
1723 2020-06-15  Paulo Matos  <pmatos@igalia.com>
1724
1725         Properly propagate TZ to the remote test devices
1726         https://bugs.webkit.org/show_bug.cgi?id=212816
1727
1728         Reviewed by Philippe Normand.
1729
1730         * Scripts/run-jsc-stress-tests:
1731
1732 2020-06-14  Wenson Hsieh  <wenson_hsieh@apple.com>
1733
1734         [iOS] Two KeyboardInputTests are failing on recent iOS SDK versions
1735         https://bugs.webkit.org/show_bug.cgi?id=213183
1736         <rdar://problem/64273483>
1737
1738         Reviewed by Tim Horton.
1739
1740         On recent versions of the iOS SDK, iOS simulators that are not shown on-screen are treated as if the hardware
1741         keyboard is not available (that is, `+[UIIKeyboard isInHardwareKeyboardMode]` returns `NO`). When running API
1742         tests while `Simulator.app` is already launched, an iOS simulator is presented on-screen, whereas the simulator
1743         is not visible when running API tests without launching `Simulator.app` beforehand.
1744
1745         This discrepancy causes two iOS API tests to fail (i.e. `CaretSelectionRectAfterRestoringFirstResponder` and
1746         `RangedSelectionRectAfterRestoringFirstResponder`), due to the fact that `-[WKWebView becomeFirstResponder]` no
1747         longer causes an input session to begin.
1748
1749         Interestingly, these tests already attempt to circumvent this by using `webViewWithAutofocusedInput()`, which
1750         creates and loads a `WKWebView` with a single autofocusing input element, with a `_WKInputDelegate` that
1751         unconditionally allows input sessions to begin. However, this doesn't work as intended in these tests, because
1752         nothing keeps the delegate (a `TestInputDelegate`) alive past the scope of the call to
1753         `webViewWithAutofocusedInput()`. Since `[WKWebView _inputDelegate]` is a weak property, the input delegate
1754         simply disappears after we finish waiting for the load to finish (and the autofocused input element begins its
1755         input session). This causes us to erroneously fall back to default behavior (i.e.
1756         `_WKFocusStartsInputSessionPolicyAuto`) for subsequent calls to show the keyboard for the focused element, as is
1757         the case when these two API tests call `-becomeFirstResponder`. The end result is that the keyboard doesn't
1758         appear and text selection views are not created and laid out, but only when API tests are run without having
1759         launched the Simulator app beforehand.
1760
1761         To fix this, refactor `webViewWithAutofocusedInput()` into `webViewAndInputDelegateWithAutofocusedInput()`,
1762         which returns both the new `WKWebView` as well as the `TestInputDelegate` of the web view. The call site is then
1763         responsible for keeping the input delegate around for as long as it needs.
1764
1765         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
1766         (webViewWithAutofocusedInput):
1767
1768         Drive-by fix: fix a potential stack smasher by using an Objective-C block when setting the input delegate's
1769         policy handler, and by using `__block` for the `doneWaiting` boolean flag. This is now a problem becuase this
1770         block may be invoked multiple times.
1771
1772         (webViewAndInputDelegateWithAutofocusedInput):
1773
1774 2020-06-13  Saam Barati  <sbarati@apple.com>
1775
1776         compare-results should have an option to print a breakdown and to save the breakdown as csv file
1777         https://bugs.webkit.org/show_bug.cgi?id=213140
1778
1779         Reviewed by Filip Pizlo.
1780
1781         In this patch, compare-results has a new --breakdown feature which will
1782         break down the results for -a and -b per subtest. It will also show you
1783         p values with a significance threshold determined using the Bonferroni
1784         correction for testing multiple hypotheses:
1785         https://en.wikipedia.org/wiki/Bonferroni_correction
1786         
1787         And there is also now a --csv option to generate a csv file containing
1788         the same per subtest breakdown.
1789         
1790         --breakdown will print out results like:
1791         
1792         ------------------------------------------------------------------------------------------------------------
1793         |               subtest                |     ms       |     ms       |  b / a   | pValue, alpha = 0.003125 |
1794         ------------------------------------------------------------------------------------------------------------
1795         | Elm-TodoMVC                          |616.625000    |583.625000    |0.946483  | 0.065002                 |
1796         | VueJS-TodoMVC                        |89.425000     |83.225000     |0.930668  | 0.039102                 |
1797         | EmberJS-TodoMVC                      |695.875000    |664.000000    |0.954194  | 0.088901                 |
1798         | Flight-TodoMVC                       |263.600000    |257.600000    |0.977238  | 0.249259                 |
1799         | BackboneJS-TodoMVC                   |213.025000    |201.550000    |0.946133  | 0.000636 (significant)   |
1800         | Preact-TodoMVC                       |48.800000     |47.550000     |0.974385  | 0.502768                 |
1801         | AngularJS-TodoMVC                    |745.300000    |704.275000    |0.944955  | 0.011779                 |
1802         | Inferno-TodoMVC                      |607.900000    |354.800000    |0.583649  | 0.000000 (significant)   |
1803         | Vanilla-ES2015-TodoMVC               |214.950000    |200.575000    |0.933124  | 0.005018                 |
1804         | Angular2-TypeScript-TodoMVC          |191.575000    |187.025000    |0.976250  | 0.542229                 |
1805         | VanillaJS-TodoMVC                    |162.075000    |160.375000    |0.989511  | 0.747186                 |
1806         | jQuery-TodoMVC                       |855.275000    |833.825000    |0.974920  | 0.103439                 |
1807         | EmberJS-Debug-TodoMVC                |2056.250000   |1952.050000   |0.949325  | 0.000003 (significant)   |
1808         | React-TodoMVC                        |475.225000    |428.950000    |0.902625  | 0.007566                 |
1809         | React-Redux-TodoMVC                  |791.100000    |736.675000    |0.931203  | 0.066091                 |
1810         | Vanilla-ES2015-Babel-Webpack-TodoMVC |208.050000    |202.000000    |0.970920  | 0.152470                 |
1811         ------------------------------------------------------------------------------------------------------------
1812
1813         * Scripts/compare-results:
1814         (readJSONFile):
1815         (speedometer2Breakdown):
1816         (jetStream2Breakdown):
1817         (motionMarkBreakdown):
1818         (plt5Breakdown):
1819         (displayStr):
1820         (dumpBreakdowns):
1821         (writeCSV):
1822         (detectMotionMark1_1):
1823         (detectMotionMark1_1_1):
1824         (motionMarkResults):
1825         (detectBenchmark):
1826         (getOptions):
1827         (main):
1828         (motionMark1_1Results): Deleted.
1829
1830 2020-06-13  Sam Weinig  <weinig@apple.com>
1831
1832         Extended Color: Experiment with strongly typed ColorComponents
1833         https://bugs.webkit.org/show_bug.cgi?id=212396
1834
1835         Reviewed by Darin Adler.
1836
1837         * TestWebKitAPI/Tests/WebCore/ColorTests.cpp:
1838         (TestWebKitAPI::TEST):
1839         * TestWebKitAPI/Tests/WebCore/ExtendedColorTests.cpp:
1840         (TestWebKitAPI::TEST):
1841         Update for changed names (e.g. toSRGBAComponentsLossy() -> toSRGBALossy())
1842         and use of explicit types.
1843
1844 2020-06-13  Diego Pino Garcia  <dpino@igalia.com>
1845
1846         Unreviewed, fix configuration setting of WPE Debug (Tests JS) bot
1847         https://bugs.webkit.org/show_bug.cgi?id=213164
1848
1849         The bot was meant to run as Debug.
1850
1851         * BuildSlaveSupport/build.webkit.org-config/config.json:
1852
1853 2020-06-12  Keith Miller  <keith_miller@apple.com>
1854
1855         Tests expecting a crash should use a signal handler in the JSC CLI process
1856         https://bugs.webkit.org/show_bug.cgi?id=212479
1857
1858         Reviewed by Yusuke Suzuki.
1859
1860         Crashing tests should now exit with status zero.
1861
1862         * Scripts/run-jsc-stress-tests:
1863         * Scripts/webkitruby/jsc-stress-test-writer-default.rb:
1864         * Scripts/webkitruby/jsc-stress-test-writer-playstation.rb:
1865         * Scripts/webkitruby/jsc-stress-test-writer-ruby.rb:
1866
1867 2020-06-12  Alex Christensen  <achristensen@webkit.org>
1868
1869         Make API tests tolerant of our relatively new use of WebPageProxy::preconnectTo
1870         https://bugs.webkit.org/show_bug.cgi?id=213144
1871
1872         Reviewed by Geofferey Garen.
1873
1874         Most changes are straightforward moving to HTTPServer, which is more tolerant of different numbers of connections except these two:
1875
1876         The ResourceLoadDelegate.Challenge API test was checking the output of _WKResourceLoadDelegate.didReceiveChallenge
1877         by using a server trust challenge.  Now that preconnecting happens, the server trust evaluation would happen with a
1878         PreconnectTask, not the main resource load.  The WKNavigationDelegate still gets the challenge and there is no problem
1879         here, but in order to continue to test _WKResourceLoadDelegate.didReceiveChallenge I use a basic authentication challenge
1880         instead of a server trust evaluation.
1881
1882         The WebKit.FastServerTrust API test now has two failed attempts (one from the preconnect attempt, one from the main resource load attempt),
1883         but only when _strictTrustEvaluate is not available.
1884
1885         * TestWebKitAPI/TCPServer.cpp:
1886         (TestWebKitAPI::TCPServer::TCPServer):
1887         * TestWebKitAPI/TCPServer.h:
1888         * TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
1889         (TEST):
1890         (TestWebKitAPI::TEST):
1891         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm:
1892         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
1893         * TestWebKitAPI/cocoa/HTTPServer.h:
1894         * TestWebKitAPI/cocoa/HTTPServer.mm:
1895         (TestWebKitAPI::HTTPServer::respondWithChallengeThenOK):
1896
1897 2020-06-12  Diego Pino Garcia  <dpino@igalia.com>
1898
1899         [buildbot] [GTK][WPE] Move WebDriver test to own bot
1900         https://bugs.webkit.org/show_bug.cgi?id=212527
1901
1902         Reviewed by Carlos Alberto Lopez Perez.
1903
1904         Move 'webdriver-test' step from GTK Release and GTK Debug test bots
1905         to separated bots.
1906
1907         For bots that require a Wayland display (WPE and GTK Wayland),
1908         'webdriver-test' step is run on the corresponding general test bot,
1909         since it's not possible at the moment to run tests that require a 
1910         Wayland display in a bot set as a container.
1911
1912         * BuildSlaveSupport/build.webkit.org-config/config.json:
1913         * BuildSlaveSupport/build.webkit.org-config/factories.py:
1914         (TestFactory.__init__):
1915         (TestWebDriverFactory):
1916         (TestWebDriverFactory.__init__):
1917         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
1918
1919 2020-06-12  Takashi Komori  <Takashi.Komori@sony.com>
1920
1921         [Curl] Implement functions to use ResourceLoadStatistics.
1922         https://bugs.webkit.org/show_bug.cgi?id=207692
1923
1924         Reviewed by Don Olmstead.
1925
1926         Implement functions which are required to implement ResourceLoadStatistics for Curl port.
1927
1928         Tests: http/tests/resourceLoadStatistics/
1929
1930         * WebKitTestRunner/TestController.cpp:
1931         (WTR::GetAllStorageAccessEntriesCallbackContext::GetAllStorageAccessEntriesCallbackContext):
1932         (WTR::getAllStorageAccessEntriesCallback):
1933         (WTR::TestController::getAllStorageAccessEntries):
1934
1935 2020-06-12  Jonathan Bedard  <jbedard@apple.com>
1936
1937         Support building test runners for watchOS and tvOS
1938         https://bugs.webkit.org/show_bug.cgi?id=213128
1939         <rdar://problem/64298006>
1940
1941         Reviewed by Tim Horton.
1942
1943         * DumpRenderTree/mac/Configurations/Base.xcconfig: Link against framework stubs.
1944         * DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig: Apply iOS rules to all embedded sdks.
1945         * WebKitTestRunner/Configurations/Base.xcconfig: Link against framework stubs.
1946         * WebKitTestRunner/Configurations/WebKitTestRunner.xcconfig: Apply iOS rules to all embedded sdks.
1947         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig: Use watchOS entitlements for tvOS.
1948
1949 2020-06-12  Jonathan Bedard  <jbedard@apple.com>
1950
1951         TestWebKitAPI: Build for watchOS and tvOS
1952         https://bugs.webkit.org/show_bug.cgi?id=213127
1953         <rdar://problem/64297979>
1954
1955         Reviewed by Tim Horton.
1956
1957         * TestWebKitAPI/Configurations/Base.xcconfig: Link against framework stubs.
1958         * TestWebKitAPI/Configurations/InjectedBundle.xcconfig: Apply iOS rules to all embedded sdks.
1959         * TestWebKitAPI/Configurations/TestWTF.xcconfig: Ditto.
1960         * TestWebKitAPI/Configurations/TestWebKitAPI.xcconfig: Link against framework stubs.
1961         * TestWebKitAPI/Configurations/WebProcessPlugIn.xcconfig: Apply iOS rules to all embedded sdks.
1962         * TestWebKitAPI/config.h: WatchOS uses SSL.
1963
1964 2020-06-12  Commit Queue  <commit-queue@webkit.org>
1965
1966         Unreviewed, reverting r262942.
1967         https://bugs.webkit.org/show_bug.cgi?id=213132
1968
1969         Broke gst-libav due to dav1d ABI bump
1970
1971         Reverted changeset:
1972
1973         "[Flatpak SDK] Add libavif"
1974         https://bugs.webkit.org/show_bug.cgi?id=212964
1975         https://trac.webkit.org/changeset/262942
1976
1977 2020-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
1978
1979         Unreviewed. Fix GTK WebDriver tests after r262938
1980
1981         Ensure a valid title for backforward items in MiniBrowser, using the URL when the title is empty.
1982
1983         * MiniBrowser/gtk/BrowserWindow.c:
1984         (browserWindowCreateBackForwardMenu):
1985
1986 2020-06-12  Philippe Normand  <pnormand@igalia.com>
1987
1988         [Flatpak SDK] Update GTK4 to 3.98.5
1989
1990         Rubber-stamped by Carlos Alberto Lopez Perez.
1991
1992         * buildstream/elements/sdk/gtk.bst:
1993
1994 2020-06-12  Philippe Normand  <pnormand@igalia.com>
1995
1996         [Flatpak SDK] Add libavif
1997         https://bugs.webkit.org/show_bug.cgi?id=212964
1998
1999         Reviewed by Carlos Alberto Lopez Perez.
2000
2001         * buildstream/elements/freedesktop-sdk.bst:
2002         * buildstream/elements/sdk-platform.bst:
2003         * buildstream/elements/sdk/libavif.bst: Added.
2004         * buildstream/patches/fdo/0001-dav1d-Bump-to-0.7.0.patch: Added.
2005
2006 2020-06-12  Philippe Normand  <pnormand@igalia.com>
2007
2008         [Flatpak SDK] Add libkate
2009         https://bugs.webkit.org/show_bug.cgi?id=212865
2010
2011         Reviewed by Carlos Alberto Lopez Perez.
2012
2013         The GStreamer kate decoder is required for some media/track tests being re-enabled in bug
2014         120665.
2015
2016         * buildstream/elements/sdk-platform.bst:
2017         * buildstream/elements/sdk/gst-plugins-bad.bst:
2018         * buildstream/elements/sdk/libkate.bst: Added.
2019
2020 2020-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2021
2022         [GTK4] Get MiniBrowser ready for GTK4
2023         https://bugs.webkit.org/show_bug.cgi?id=210276
2024
2025         Reviewed by Adrian Perez de Castro.
2026
2027         Port MiniBrowser to GTK4. BrowserSearchBar has been renamed as BrowserSearchBox, because in GTK GtkSearchBar is
2028         final class, so we derive from GtkBox and to be used as contents of a GtkSearchBar.
2029
2030         * MiniBrowser/gtk/BrowserCellRendererVariant.c:
2031         (browserCellRendererVariantCellRendererSnapshot):
2032         (browser_cell_renderer_variant_class_init):
2033         * MiniBrowser/gtk/BrowserCellRendererVariant.h:
2034         * MiniBrowser/gtk/BrowserSearchBar.c: Removed.
2035         * MiniBrowser/gtk/BrowserSearchBox.c: Added.
2036         (setFailedStyleForEntry):
2037         (doSearch):
2038         (searchNext):
2039         (searchPrevious):
2040         (searchEntryMenuIconPressedCallback):
2041         (searchEntryClearIconReleasedCallback):
2042         (searchEntryChangedCallback):
2043         (searchEntryActivatedCallback):
2044         (searchPreviousButtonCallback):
2045         (searchNextButtonCallback):
2046         (searchMenuCheckButtonToggledCallback):
2047         (findControllerFailedToFindTextCallback):
2048         (findControllerFoundTextCallback):
2049         (browserSearchBoxFinalize):
2050         (browserSearchBoxDispose):
2051         (browserSearchBoxSizeAllocate):
2052         (browser_search_box_class_init):
2053         (browser_search_box_new):
2054         (browser_search_box_get_entry):
2055         * MiniBrowser/gtk/BrowserSearchBox.h: Renamed from Tools/MiniBrowser/gtk/BrowserSearchBar.h.
2056         * MiniBrowser/gtk/BrowserSettingsDialog.c:
2057         (browser_settings_dialog_init):
2058         (browser_settings_dialog_new):
2059         * MiniBrowser/gtk/BrowserSettingsDialog.h:
2060         * MiniBrowser/gtk/BrowserTab.c:
2061         (loadChanged):
2062         (createInfoBarQuestionMessage):
2063         (tlsErrorsDialogResponse):
2064         (loadFailedWithTLSerrors):
2065         (permissionRequestDialogResponse):
2066         (decidePermissionRequest):
2067         (colorChooserRequestFinished):
2068         (runColorChooserCallback):
2069         (tabCloseClicked):
2070         (browserTabConstructed):
2071         (browserTabIsSearchBarOpen):
2072         (browser_tab_start_search):
2073         (browser_tab_stop_search):
2074         (browser_tab_enter_fullscreen):
2075         (browser_tab_leave_fullscreen):
2076         * MiniBrowser/gtk/BrowserWindow.c:
2077         (settingsCallback):
2078         (resetEntryProgress):
2079         (webViewLoadProgressChanged):
2080         (browserWindowCreateBackForwardMenu):
2081         (browserWindowUpdateNavigationMenu):
2082         (navigationButtonPressed):
2083         (navigationButtonPressCallback):
2084         (scrollEventCallback):
2085         (webViewIsLoadingChanged):
2086         (searchCallback):
2087         (insertImageDialogResponse):
2088         (insertImageCommandCallback):
2089         (insertLinkDialogResponse):
2090         (insertLinkCommandCallback):
2091         (typingAttributesChanged):
2092         (browserWindowSaveSession):
2093         (browserWindowFinalize):
2094         (browserWindowDispose):
2095         (addToolbarButton):
2096         (browserWindowSwitchTab):
2097         (browserWindowTabAddedOrRemoved):
2098         (browserWindowBuildPopoverMenu):
2099         (browserWindowCloseRequest):
2100         (browserWindowDeleteEvent):
2101         (browser_window_class_init):
2102         (browser_window_append_view):
2103         (browser_window_set_background_color):
2104         * MiniBrowser/gtk/CMakeLists.txt:
2105
2106 2020-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2107
2108         [GTK] MiniBrowser: stop using GtkToolbar
2109         https://bugs.webkit.org/show_bug.cgi?id=212898
2110
2111         Reviewed by Adrian Perez de Castro.
2112
2113         GtkToolbar iss no longer available in GTK4, use a GtkBox with buttons instead. Also use symbolic icons and move
2114         some of the actions to a gear menu.
2115
2116         * MiniBrowser/gtk/BrowserWindow.c:
2117         (browserWindowHistoryItemActivated):
2118         (browserWindowCreateBackForwardMenu):
2119         (browserWindowUpdateNavigationMenu):
2120         (navigationButtonPressCallback):
2121         (browserWindowCanZoomDefault):
2122         (browserWindowUpdateZoomActions):
2123         (webViewIsLoadingChanged):
2124         (addToolbarButton):
2125         (browserWindowBuildPopoverMenu):
2126         (resetStatusText): Deleted.
2127         (browserWindowHistoryItemSelected): Deleted.
2128         (browserWindowSetupEditorToolbarItem): Deleted.
2129
2130 2020-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2131
2132         [GTK] MiniBrowser: stop using GtkToolbar for the search bar
2133         https://bugs.webkit.org/show_bug.cgi?id=212817
2134
2135         Reviewed by Adrian Perez de Castro.
2136
2137         Use a GtkSearchBar instead, because GtkToolbar is no longer available in GTK4. Also use a GtkPopover for the
2138         options menu instead of the GtkMenu.
2139
2140         * MiniBrowser/gtk/BrowserSearchBar.c:
2141         (setFailedStyleForEntry):
2142         (doSearch):
2143         (searchEntryMenuIconPressedCallback):
2144         (searchEntryChangedCallback):
2145         (searchMenuCheckButtonToggledCallback):
2146         (browserSearchBarFinalize):
2147         (browser_search_bar_new):
2148         (browser_search_bar_open):
2149         (browser_search_bar_close):
2150         (browser_search_bar_is_open):
2151         (searchCloseButtonClickedCallback): Deleted.
2152         (searchEntryClearIconReleasedCallback): Deleted.
2153         * MiniBrowser/gtk/BrowserSearchBar.h:
2154         * MiniBrowser/gtk/BrowserTab.c:
2155         (browser_tab_start_search):
2156         (browser_tab_stop_search):
2157
2158 2020-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2159
2160         [GTK4] Make WebDriver work
2161         https://bugs.webkit.org/show_bug.cgi?id=212316
2162
2163         Reviewed by Adrian Perez de Castro.
2164
2165         Stop connecting to WebKitWebView::close signal twice for newaly created windows.
2166
2167         * MiniBrowser/gtk/BrowserWindow.c:
2168         (webViewCreate):
2169
2170 2020-06-11  Saam Barati  <sbarati@apple.com>
2171
2172         Skip wasm-js2 test on memory limited devices
2173         https://bugs.webkit.org/show_bug.cgi?id=213099
2174
2175         Reviewed by Yusuke Suzuki.
2176
2177         * Scripts/run-jsc-stress-tests:
2178
2179 2020-06-11  Alex Christensen  <achristensen@webkit.org>
2180
2181         Re-enable download resume tests
2182         https://bugs.webkit.org/show_bug.cgi?id=213098
2183         <rdar://problem/63512518>
2184
2185         Reviewed by Geoffrey Garen.
2186
2187         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
2188
2189 2020-06-11  Commit Queue  <commit-queue@webkit.org>
2190
2191         Unreviewed, reverting r262696.
2192         https://bugs.webkit.org/show_bug.cgi?id=213097
2193
2194         It broke running JSC tests on watchOS
2195
2196         Reverted changeset:
2197
2198         "Allow run-jsc-stress-tests still run if some of the remote
2199         hosts are not available"
2200         https://bugs.webkit.org/show_bug.cgi?id=201426
2201         https://trac.webkit.org/changeset/262696
2202
2203 2020-06-11  Sihui Liu  <sihui_liu@apple.com>
2204
2205         REGRESSION (r262879): 3 TestWebKitAPI.TextManipulation tests are failing
2206         https://bugs.webkit.org/show_bug.cgi?id=213079
2207         <rdar://problem/64256870>
2208
2209         Reviewed by Wenson Hsieh.
2210
2211         Update a few tests after behavior change in r262879. From r262879, we no longer use visible positions of element
2212         to calculate range to observe. Instead, we use the first and end position in the element to decide the range. In
2213         previous implementation, the range can be extended to outside of the element, like some visible positon before 
2214         or after the element.
2215
2216         TextManipulation.StartTextManipulationFindNewlyDisplayedParagraph: Different elements would make separate ranges 
2217         because we create range with the boundaries of element. We can consider merging adjacent ranges later.
2218         TextManipulation.StartTextManipulationFindSameParagraphWithNewContent: The newly observing range only includes
2219         the newly inserted element now.
2220         TextManipulation.InsertingContentIntoAlreadyManipulatedContentDoesNotCreateTextManipulationItem: The p element
2221         is not manipulated as it is the common ancestor of manipulated elements. And we want to make sure the newly
2222         inserted element is child of a manipulated element.
2223
2224         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
2225         (TestWebKitAPI::TEST):
2226
2227 2020-06-11  Andy Estes  <aestes@apple.com>
2228
2229         [iOS] nullptr deref in FileInputType::iconLoaded when the input's type attribute is modified by a change event listener
2230         https://bugs.webkit.org/show_bug.cgi?id=208244
2231         <rdar://problem/41855350>
2232
2233         Reviewed by Wenson Hsieh.
2234
2235         * DumpRenderTree/TestRunner.cpp:
2236         (SetOpenPanelFilesMediaIconCallback):
2237         (TestRunner::staticFunctions):
2238         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2239         (WTR::TestRunner::setOpenPanelFilesMediaIcon):
2240
2241 2020-06-11  Sergio Villar Senin  <svillar@igalia.com>
2242
2243         Unreviewed, updated libsoup dependency in jhbuild.
2244
2245         * wpe/jhbuild.modules:
2246
2247 2020-06-10  Said Abou-Hallawa  <sabouhallawa@apple.com>
2248
2249         [macOS]: The File Picker of the <input> file element should show the selection filter
2250         https://bugs.webkit.org/show_bug.cgi?id=212485
2251
2252         Reviewed by Darin Adler.
2253
2254         Create a view with an NSPopupButton for the file extensions filter. Set
2255         this view as the AccessoryView of the OpenPanel. Create a customized target
2256         for the NSPopupButton to respond to changing its selection.
2257
2258         * MiniBrowser/mac/WK2BrowserWindowController.m:
2259         (-[FileExtensionsPopupTarget initWithOpenPanel:allowedFileExtensions:]):
2260         (-[FileExtensionsPopupTarget popupAction:]):
2261         (-[FileExtensionsPopupTarget dealloc]):
2262         (-[WK2BrowserWindowController dealloc]):
2263         (-[WK2BrowserWindowController createFilterView:popupTarget:]):
2264         (-[WK2BrowserWindowController webView:runOpenPanelWithParameters:initiatedByFrame:completionHandler:webView:runOpenPanelWithParameters:initiatedByFrame:completionHandler:]):
2265
2266 2020-06-10  Jonathan Bedard  <jbedard@apple.com>
2267
2268         Generalize configure-xcode-for-ios-development (Part 2)
2269         https://bugs.webkit.org/show_bug.cgi?id=207043
2270         <rdar://problem/63946933>
2271
2272         Reviewed by Darin Adler.
2273
2274         * EWSTools/start-queue-mac.sh: Use configure-xcode-for-embedded-development over configure-xcode-for-ios-development.
2275         * Scripts/configure-xcode-for-ios-development: Removed.
2276
2277 2020-06-10  Sihui Liu  <sihui_liu@apple.com>
2278
2279         Text manipulation does not observe inserted elements that are invisible
2280         https://bugs.webkit.org/show_bug.cgi?id=213057
2281         <rdar://problem/63768253>
2282
2283         Reviewed by Wenson Hsieh.
2284
2285         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
2286         (TestWebKitAPI::TEST):
2287
2288 2020-06-10  Geoffrey Garen  <ggaren@apple.com>
2289
2290         Some style improvements to main thread code
2291         https://bugs.webkit.org/show_bug.cgi?id=213051
2292
2293         Reviewed by Darin Adler.
2294
2295         Updated for rename.
2296         
2297         * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
2298         (TestWebKitAPI::TEST):
2299         * TestWebKitAPI/Tests/WTF/RunLoop.cpp:
2300         (TestWebKitAPI::TEST):
2301         * TestWebKitAPI/Tests/WebCore/AbortableTaskQueue.cpp:
2302         (TestWebKitAPI::TEST):
2303         * TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp:
2304         (ApplicationManifestParserTest::SetUp):
2305         * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
2306         (TestWebKitAPI::ComplexTextControllerTest::SetUp):
2307         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
2308         (TestWebKitAPI::ContentExtensionTest::SetUp):
2309         * TestWebKitAPI/Tests/WebCore/DNS.cpp:
2310         (TestWebKitAPI::TEST):
2311         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
2312         (TestWebKitAPI::TEST_F):
2313         * TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm:
2314         (initializeInAppBrowserPrivacyTestSettings):
2315         * WebKitTestRunner/TestController.cpp:
2316         (WTR::TestController::initialize):
2317
2318 2020-06-10  Jonathan Bedard  <jbedard@apple.com>
2319
2320         results.webkit.org: Health check should access redis and Cassandra
2321         https://bugs.webkit.org/show_bug.cgi?id=212899
2322         <rdar://problem/64118077>
2323
2324         Reviewed by Stephanie Lewis.
2325
2326         * resultsdbpy/resultsdbpy/example/main.py:
2327         (health): Check the health status of the model.
2328         * resultsdbpy/resultsdbpy/model/model.py:
2329         (Model.HealthTable):
2330         (Model.__init__): Construct a Cassandra table used to check the health of our Cassandra connection.
2331         (Model.healthy): Make both a read and write connection to our two database dependencies so that if
2332         our connection to those databases fails, an instance will be forced to restart.
2333         * resultsdbpy/resultsdbpy/model/model_unittest.py: Added.
2334         (ModelTest):
2335         (ModelTest.init_database):
2336         (ModelTest.test_health):
2337
2338 2020-06-10  Keith Miller  <keith_miller@apple.com>
2339
2340         run-jsc-stress-tests should skip tests marked as slow in quick mode.
2341         https://bugs.webkit.org/show_bug.cgi?id=213042
2342
2343         Reviewed by Yusuke Suzuki.
2344
2345         * Scripts/run-jsc-stress-tests:
2346
2347 2020-06-10  Antoine Quint  <graouts@webkit.org>
2348
2349         Subframes should not autosize independently
2350         https://bugs.webkit.org/show_bug.cgi?id=212984
2351         <rdar://problem/64175493>
2352
2353         Reviewed by Simon Fraser.
2354
2355         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
2356         (TEST): Added test for <object>.
2357
2358 2020-06-09  Ryan Haddad  <ryanhaddad@apple.com>
2359
2360         [Mojave] Flaky API Test: TestWebKitAPI.WebKitLegacy.CrossPartitionFileSchemeAccess
2361         https://bugs.webkit.org/show_bug.cgi?id=206956
2362
2363         Unreviewed test gardening.
2364
2365         * TestWebKitAPI/Tests/mac/CrossPartitionFileSchemeAccess.mm: Disable this test for Mojave.
2366
2367 2020-06-10  Alex Christensen  <achristensen@webkit.org>
2368
2369         Revert r259770
2370         https://bugs.webkit.org/show_bug.cgi?id=210097
2371         <rdar://problem/64175992>
2372
2373         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
2374         (TEST):
2375
2376 2020-06-10  Commit Queue  <commit-queue@webkit.org>
2377
2378         Unreviewed, reverting r262807.
2379         https://bugs.webkit.org/show_bug.cgi?id=213019
2380
2381         It is breaking JSC queues (Requested by caiolima on #webkit).
2382
2383         Reverted changeset:
2384
2385         "Add a timeout monitor for JSC stress test"
2386         https://bugs.webkit.org/show_bug.cgi?id=211978
2387         https://trac.webkit.org/changeset/262807
2388
2389 2020-06-09  Fujii Hironori  <Hironori.Fujii@sony.com>
2390
2391         Unreviewed, reverting r262791.
2392
2393         WinCairo WebKit1 is crashing.
2394
2395         Reverted changeset:
2396
2397         "[Curl] Implement functions to use ResourceLoadStatistics."
2398         https://bugs.webkit.org/show_bug.cgi?id=207692
2399         https://trac.webkit.org/changeset/262791
2400
2401 2020-06-09  Zhifei Fang  <zhifei_fang@apple.com>
2402
2403         Add a timeout monitor for JSC stress test
2404         https://bugs.webkit.org/show_bug.cgi?id=211978
2405
2406         Reviewed by Jonathan Bedard.
2407
2408         * Scripts/webkitruby/jsc-stress-test-writer-default.rb: Add timeout monitor inside the jsc stress test runner, it will kill the process in case of jsc timeout handler not working
2409
2410 2020-06-09  Tim Horton  <timothy_horton@apple.com>
2411
2412         WebKit.ShrinkToFit is failing on some bots
2413         https://bugs.webkit.org/show_bug.cgi?id=212932
2414         <rdar://problem/60972407>
2415
2416         Reviewed by Simon Fraser.
2417
2418         TestWebKitAPI was failing to stabilize the overlay scrollbar preference,
2419         because the only stabilization attempt was in the injected bundle 
2420         initialization code, and most tests (including ShrinkToFit) do not have
2421         an injected bundle.
2422
2423         Because this preference is manually propagated to the Web Content process,
2424         we can set the default in the volatile domain in the UI process at startup.
2425
2426         We can't move other preferences yet, because they are not manually propagated,
2427         and WebKit's NSUserDefault synchronization mechanism ignores defaults in the
2428         volatile domain (and the initial preference load reads from disk, not
2429         from the UI process, so it wouldn't find them anyway).
2430
2431         * TestWebKitAPI/Tests/WebKitCocoa/ShrinkToFit.mm:
2432         (TEST):
2433         Explain why the final value of the test is different than the starting value.
2434
2435         * TestWebKitAPI/mac/InjectedBundleControllerMac.mm:
2436         (TestWebKitAPI::InjectedBundleController::platformInitialize):
2437         Leave a FIXME for future generations.
2438
2439         * TestWebKitAPI/mac/mainMac.mm:
2440         (main):
2441         Override overlay scrollbar preferences in the UI process, so it affects all tests.
2442
2443         * TestWebKitAPI/Tests/WebKit/ResizeReversePaginatedWebView.cpp:
2444         This test is also affected by using non-overlay scrollbars; we now have less space, so take up more pages.
2445
2446 2020-06-09  Youenn Fablet  <youenn@apple.com>
2447
2448         BaseAudioSharedUnit should unmute its clients in case of suspension even if not having any audio unit
2449         https://bugs.webkit.org/show_bug.cgi?id=212970
2450
2451         Reviewed by Eric Carlson.
2452
2453         Add an option to capture in UI process so that the same test can run on both MacOS and iOS.
2454         This eases the testing infra to be able to get audio capture unit state in WebProcess as is the case in iOS.
2455
2456         * WebKitTestRunner/TestController.cpp:
2457         (WTR::TestController::resetPreferencesToConsistentValues):
2458         (WTR::updateTestOptionsFromTestHeader):
2459         * WebKitTestRunner/TestOptions.h:
2460         (WTR::TestOptions::hasSameInitializationOptions const):
2461
2462 2020-06-09  Takashi Komori  <Takashi.Komori@sony.com>
2463
2464         [Curl] Implement functions to use ResourceLoadStatistics.
2465         https://bugs.webkit.org/show_bug.cgi?id=207692
2466
2467         Implement functions which are required to implement ResourceLoadStatistics for Curl port.
2468
2469         Tests: http/tests/resourceLoadStatistics/
2470
2471         Reviewed by Don Olmstead.
2472
2473         * WebKitTestRunner/TestController.cpp:
2474         (WTR::GetAllStorageAccessEntriesCallbackContext::GetAllStorageAccessEntriesCallbackContext):
2475         (WTR::getAllStorageAccessEntriesCallback):
2476         (WTR::TestController::getAllStorageAccessEntries):
2477
2478 2020-06-09  Víctor Manuel Jáquez Leal  <vjaquez@igalia.com>
2479
2480         [Flatpak][GStreamer] enhance GST_ environment variable passing
2481         https://bugs.webkit.org/show_bug.cgi?id=212905
2482
2483         Reviewed by Philippe Normand.
2484
2485         Handle the passing of several GST environment variables,
2486         particularly GST_DEBUG, which, when using * symbol, python adds
2487         quotes, but they break the parsing in GStreamer.
2488
2489         Also the variables are handled by gst-env.py when using
2490         GST_BUILD_PATH, so they are filtered out when it's exported,
2491         avoiding duplication. But it GST_BUILD_PATH is not defined, the
2492         variables are passed to flatpak.
2493
2494         * flatpak/flatpakutils.py:
2495         (WebkitFlatpak.setup_gstbuild):
2496         (WebkitFlatpak.run_in_sandbox):
2497
2498 2020-06-09  Sihui Liu  <sihui_liu@apple.com>
2499
2500         TextManipulationController range of paragraph may be wrong after r262601
2501         https://bugs.webkit.org/show_bug.cgi?id=212874
2502
2503         Reviewed by Wenson Hsieh.
2504
2505         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
2506         (TestWebKitAPI::TEST):
2507
2508 2020-06-08  Sihui Liu  <sihui_liu@apple.com>
2509
2510         TextManipulation should only convert text from Node's text content to tokens
2511         https://bugs.webkit.org/show_bug.cgi?id=212928
2512
2513         Reviewed by Wenson Hsieh.
2514
2515         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
2516         (TestWebKitAPI::TEST):
2517
2518 2020-06-08  Diego Pino Garcia  <dpino@igalia.com>
2519
2520         [webkitpy] Check 'bug-search' returns a non null result before parsing
2521         https://bugs.webkit.org/show_bug.cgi?id=212906
2522
2523         Reviewed by Jonathan Bedard.
2524
2525         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
2526         (BugzillaQueries._parse_result_count): Check quick-search query
2527         response is non-null and a non-empty text.
2528
2529 2020-06-08  Sam Weinig  <weinig@apple.com>
2530
2531         Extended Color: Rename Color::lighten() and Color::darken() to Color::lightened() and Color::darkened()
2532         https://bugs.webkit.org/show_bug.cgi?id=212917
2533
2534         Reviewed by Darin Adler.
2535
2536         Addresses feedback from Darin.
2537
2538         * TestWebKitAPI/Tests/WebCore/ColorTests.cpp:
2539         (TestWebKitAPI::TEST):
2540
2541 2020-06-08  Sam Weinig  <weinig@apple.com>
2542
2543         Fix test results after r262733.
2544
2545         * TestWebKitAPI/Tests/WebCore/ColorTests.cpp:
2546         (TestWebKitAPI::TEST):
2547
2548 2020-06-08  David Kilzer  <ddkilzer@apple.com>
2549
2550         [IPC] Adopt enum class for DragOperation
2551         <https://webkit.org/b/212870>
2552         <rdar://problem/64069940>
2553
2554         Reviewed by Darin Adler.
2555
2556         * Scripts/do-webcore-rename:
2557         - Do DragOperation renames.
2558
2559 2020-06-08  Commit Queue  <commit-queue@webkit.org>
2560
2561         Unreviewed, reverting r262685.
2562         https://bugs.webkit.org/show_bug.cgi?id=212914
2563
2564         caused flakey crashes in an iOS test
2565
2566         Reverted changeset:
2567
2568         "Clear WebPageProxy event state between tests"
2569         https://bugs.webkit.org/show_bug.cgi?id=212864
2570         https://trac.webkit.org/changeset/262685
2571
2572 2020-06-08  Sam Weinig  <weinig@apple.com>
2573
2574         Extended Color: Unify rounding / clamping conversions between 0-1 float components and 0-255 byte components
2575         https://bugs.webkit.org/show_bug.cgi?id=212871
2576
2577         Reviewed by Simon Fraser.
2578
2579         * TestWebKitAPI/Tests/WebCore/ColorTests.cpp:
2580         (TestWebKitAPI::TEST):
2581         Switch to using makeSimpleColor(hslToSRGB(...)) directly.
2582
2583 2020-06-08  Sam Weinig  <weinig@apple.com>
2584
2585         Extended Color: Replace uses of differenceSquared() with luminance based computations
2586         https://bugs.webkit.org/show_bug.cgi?id=212872
2587
2588         Reviewed by Darin Adler.
2589
2590         * TestWebKitAPI/Tests/WebCore/ColorTests.cpp:
2591         (TestWebKitAPI::TEST):
2592         Add basic tests for Color::luminance(), ensuring white == 1, black == 0, and 
2593         darken() and lighten() creat colors with less than / greater than luminance.
2594
2595 2020-06-08  Per Arne Vollan  <pvollan@apple.com>
2596
2597         [Cocoa] CFPrefs synchronization does not always work for global preference changes
2598         https://bugs.webkit.org/show_bug.cgi?id=212783
2599
2600         Reviewed by Tim Horton.
2601
2602         Add API test, and add some synchronization to avoid flakiness.
2603
2604         * TestWebKitAPI/Tests/WebKit/PreferenceChanges.mm:
2605         (-[WKTestPreferenceObserver preferenceDidChange:key:encodedValue:]):
2606         (TEST):
2607         (sharedInstanceMethodOverride):
2608
2609 2020-06-08  Wenson Hsieh  <wenson_hsieh@apple.com>
2610
2611         [iOS] Hit-testing on icloud.com is offset after closing a tab
2612         https://bugs.webkit.org/show_bug.cgi?id=212890
2613         <rdar://problem/58775297>
2614
2615         Reviewed by Simon Fraser.
2616
2617         Add a new API test to verify that the scroll position doesn't get stuck at -30px after shifting both the top
2618         content inset and top obscured inset by 30px. See WebKit ChangeLog for more details.
2619
2620         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2621         * TestWebKitAPI/Tests/WebKitCocoa/overflow-hidden.html: Added.
2622         * TestWebKitAPI/Tests/ios/ScrollViewInsetTests.mm:
2623         (-[ScrollViewDelegate scrollViewDidScroll:]):
2624         (TestWebKitAPI::TEST):
2625         * TestWebKitAPI/ios/UIKitSPI.h:
2626
2627 2020-06-08  Philippe Normand  <pnormand@igalia.com>
2628
2629         [Flatpak SDK] Add flatpak-run-nightly
2630         https://bugs.webkit.org/show_bug.cgi?id=212882
2631
2632         Reviewed by Carlos Alberto Lopez Perez.
2633
2634         This new script is able to download WPE and GTK builds from the Igalia servers and run the
2635         corresponding binaries (like MiniBrowser, jsc) within the Flatpak SDK.
2636
2637         Unzipped builds will be saved in /tmp and can be reused in further runs (by providing the
2638         path with the -p argument).
2639
2640         Example:
2641         $ webkit-flatpak-run-nightly --wpe MiniBrowser https://webkit.org
2642         <SDK installs to ~/.cache/wk-nightly>
2643         Downloading build release_r262699_b33885.zip from https://wpewebkit-release.igalia.com/built-products/
2644         Extracting build to /tmp/wpewebkit-release-b33885
2645         <MiniBrowser starts>
2646
2647         $ webkit-flatpak-run-nightly --wpe -p /tmp/wpewebkit-release-b33885 jsc
2648         Looking for updates…
2649         Nothing to do.
2650         >>> 2+2
2651         4
2652
2653         * Scripts/webkit-flatpak-run-nightly: Added.
2654
2655 2020-06-08  Diego Pino Garcia  <dpino@igalia.com>
2656
2657         [webkitpy] Make 'webkit-path rebaseline' to not update expectations file by default
2658         https://bugs.webkit.org/show_bug.cgi?id=212835
2659
2660         Reviewed by Carlos Alberto Lopez Perez.
2661
2662         `webkit-patch rebaseline` let us add or update a test baseline
2663         from a test bot. By default, the command also updates the
2664         corresponding expectations file. This update is actually a brand-new
2665         generation of an expectations file based on the results of the bot,
2666         which in most cases messes up the current contents of the file.
2667
2668         This patch makes the default to not update the expectations file and
2669         adds a new option '--update-expectations' to explicitly request an
2670         update.
2671
2672         * Scripts/webkitpy/tool/commands/rebaseline.py:
2673         (AbstractRebaseliningCommand):
2674         (RebaselineTest.__init__):
2675         (RebaselineTest._rebaseline_tests):
2676         (RebaselineTest.execute):
2677         (AbstractParallelRebaselineCommand._rebaseline_commands):
2678         (RebaselineExpectations.__init__):
2679         (RebaselineExpectations.execute):
2680         (Rebaseline.__init__):
2681         (RebaselineTest._rebaseline_test_and_update_expectations): Deleted.
2682         * Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
2683         (TestRebaselineTest.setUp):
2684
2685 2020-06-08  Youenn Fablet  <youenn@apple.com>
2686
2687         File URLs with hostnames are misleading
2688         https://bugs.webkit.org/show_bug.cgi?id=212739
2689         <rdar://problem/63754917>
2690
2691         Reviewed by Alex Christensen.
2692
2693         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2694         * TestWebKitAPI/Tests/WebKit/open-window-with-file-url-with-host.html: Added.
2695         * TestWebKitAPI/Tests/WebKitCocoa/OpenAndCloseWindow.mm:
2696         (TEST):
2697
2698 2020-06-07  Caio Lima  <ticaiolima@gmail.com>
2699
2700         Allow run-jsc-stress-tests still run if some of the remote hosts are not available
2701         https://bugs.webkit.org/show_bug.cgi?id=201426
2702
2703         Reviewed by Saam Barati.
2704
2705         This patch allows run-jsc-stress-tests to keep on running if some of
2706         the remote hosts are not available. To do this, we created a new
2707         function `checkAndPrepareRemoteHosts` that is responsible to check the
2708         connection and read/write permissions of given remote hosts list. It
2709         filters out every unavailable remote host.
2710         These checks and filter happen in the beginning of the script and is
2711         excuted only once, in the beggining of the script. It means that if
2712         some remote device becomes unavailable after the check and preparation
2713         is done, the script execution will be interupted.
2714
2715         * Scripts/run-jsc-stress-tests:
2716
2717 2020-06-07  Philippe Normand  <pnormand@igalia.com>
2718
2719         Remove ENABLE_VIDEO_TRACK ifdef guards
2720         https://bugs.webkit.org/show_bug.cgi?id=212568
2721
2722         Reviewed by Youenn Fablet.
2723
2724         * Scripts/webkitperl/FeatureList.pm:
2725         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2726
2727 2020-06-06  Simon Fraser  <simon.fraser@apple.com>
2728
2729         Clear WebPageProxy event state between tests
2730         https://bugs.webkit.org/show_bug.cgi?id=212864
2731
2732         Reviewed by Anders Carlsson.
2733
2734         Make sure that event state doesn't leak between tests via events queued in WebPageProxy.
2735
2736         * WebKitTestRunner/TestController.cpp:
2737         (WTR::TestController::resetStateToConsistentValues):
2738
2739 2020-06-06  Peng Liu  <peng.liu6@apple.com>
2740
2741         REGRESSION (r262456): [iOS Debug] TestWebKitAPI.WKWebViewCloseAllMediaPresentations.PictureInPicture is frequently timing out
2742         https://bugs.webkit.org/show_bug.cgi?id=212777
2743
2744         Unreviewed test gardening.
2745
2746         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewCloseAllMediaPresentations.mm:
2747         Disable the PictureInPicture test for old iOS devices.
2748
2749 2020-06-05  Ryan Haddad  <ryanhaddad@apple.com>
2750
2751         [iOS] TestWebKitAPI.WKWebsiteDataStore.RemoveAndFetchData is failing
2752         https://bugs.webkit.org/show_bug.cgi?id=208451
2753
2754         Unreviewed test gardening.
2755
2756         * TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm: Disable this test again because it is still failing on certain bots.
2757
2758 2020-06-05  Daniel Bates  <dabates@apple.com>
2759
2760         -_focusTextInputContext should reposition the caret if called for an already focused text input context
2761         https://bugs.webkit.org/show_bug.cgi?id=212830
2762         <rdar://problem/64032956>
2763
2764         Reviewed by Wenson Hsieh.
2765
2766         Re-purpose some existing tests to check for the new behavior.
2767
2768         In TextInteraction_FocusingAssistedElementShouldScrollToReveal, keep in mind that the caret position is
2769         changing: on iOS, calling input.focus() places the caret at the end of the field's content.
2770
2771         * TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
2772         (TestWebKitAPI::TEST):
2773
2774 2020-06-05  Jonathan Bedard  <jbedard@apple.com>
2775
2776         Generalize configure-xcode-for-ios-development (Part 1)
2777         https://bugs.webkit.org/show_bug.cgi?id=207043
2778
2779         Rubber-stamped by David Kilzer.
2780
2781         Patch by Keith Rollin and Jonathan Bedard.
2782
2783         Replace configure-xcode-for-ios-development with a Python script that works for iOS,
2784         watchOS and tvOS.
2785
2786         * Scripts/configure-xcode-for-embedded-development: Added.
2787
2788 2020-06-05  Wenson Hsieh  <wenson_hsieh@apple.com>
2789
2790         Text manipulation should exclude characters outside of the unicode private use area
2791         https://bugs.webkit.org/show_bug.cgi?id=212800
2792         <rdar://problem/63736417>
2793
2794         Reviewed by Sihui Liu.
2795
2796         Add a new API test to verify the new behavior when extracting PUA characters.
2797
2798         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
2799         (TestWebKitAPI::TEST):
2800
2801 2020-06-05  Dean Jackson  <dino@apple.com>
2802
2803         REGRESSION (r262366): [ Mac wk1 ] webgl/webgl-backing-store-size-update.html is failing
2804         https://bugs.webkit.org/show_bug.cgi?id=212647
2805         <rdar://problem/63882960>
2806
2807         Reviewed by Eric Carlson.
2808
2809         Drive-by comment from Simon. Remove some useless braces.
2810
2811         * TestWebKitAPI/Tests/WebKitLegacy/ios/WebGLPrepareDisplayOnWebThread.mm:
2812
2813 2020-06-05  Saam Barati  <sbarati@apple.com>
2814
2815         Try to reduce jetsams further on iOS devices running jsc stress tests
2816         https://bugs.webkit.org/show_bug.cgi?id=212786
2817
2818         Reviewed by Mark Lam.
2819
2820         * Scripts/run-jsc-stress-tests:
2821
2822 2020-06-05  Peng Liu  <peng.liu6@apple.com>
2823
2824         REGRESSION (r262456?): [macOS] media/picture-in-picture/picture-in-picture-api tests are flaky timeouts
2825         https://bugs.webkit.org/show_bug.cgi?id=212762
2826
2827         Reviewed by Eric Carlson.
2828
2829         Skip the Picture-in-Picture test if Picture-in-Picture is not supported and add playsinline attribute
2830         to the video element.
2831
2832         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewCloseAllMediaPresentations.mm:
2833         (TEST):
2834
2835 2020-06-05  Andy Estes  <aestes@apple.com>
2836
2837         [Apple Pay] Remove conditionals for ENABLE_APPLE_PAY_SESSION_V(3|4)
2838         https://bugs.webkit.org/show_bug.cgi?id=212541
2839         <rdar://problem/63781452>
2840
2841         Reviewed by Darin Adler.
2842
2843         APPLE_PAY_SESSION_V(3|4) is now enabled whenever APPLE_PAY itself is enabled.
2844
2845         * Scripts/webkitperl/FeatureList.pm:
2846         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2847
2848 2020-06-05  Carlos Garcia Campos  <cgarcia@igalia.com>
2849
2850         [GTK] MiniBrowser: use GAction API for actions and shortcuts in preparation for GTK4
2851         https://bugs.webkit.org/show_bug.cgi?id=212740
2852
2853         Reviewed by Adrian Perez de Castro.
2854
2855         Make MiniBrowser a GtkApplication and BrowserWindow a GtkApplicationWindow to easily install actions and shortcuts.
2856
2857         * MiniBrowser/gtk/BrowserMain.c: Removed.
2858         * MiniBrowser/gtk/BrowserMain.h: Removed.
2859         * MiniBrowser/gtk/BrowserSearchBar.c:
2860         (searchPreviousButtonCallback):
2861         (searchNextButtonCallback):
2862         * MiniBrowser/gtk/BrowserSearchBar.h:
2863         * MiniBrowser/gtk/BrowserTab.c:
2864         * MiniBrowser/gtk/BrowserTab.h:
2865         * MiniBrowser/gtk/BrowserWindow.c:
2866         (reloadOrStopCallback):
2867         (goBackCallback):
2868         (goForwardCallback):
2869         (settingsCallback):
2870         (browserWindowUpdateNavigationMenu):
2871         (browserWindowTryCloseCurrentWebView):
2872         (browserWindowTryClose):
2873         (webViewCreate):
2874         (browserWindowUpdateZoomActions):
2875         (webViewZoomLevelChanged):
2876         (zoomInCallback):
2877         (zoomOutCallback):
2878         (defaultZoomCallback):
2879         (searchCallback):
2880         (newTabCallback):
2881         (toggleWebInspector):
2882         (openPrivateWindow):
2883         (focusLocationBar):
2884         (reloadPage):
2885         (reloadPageIgnoringCache):
2886         (stopPageLoad):
2887         (loadHomePage):
2888         (toggleFullScreen):
2889         (printPage):
2890         (editingActionCallback):
2891         (typingAttributesChanged):
2892         (browserWindowFinalize):
2893         (browserWindowSetupEditorToolbarItem):
2894         (browserWindowSetupToolbarItem):
2895         (browserWindowDeleteEvent):
2896         (browser_window_new):
2897         (browser_window_append_view):
2898         (browser_window_get_or_create_web_view_for_automation):
2899         (browser_window_create_web_view_in_new_tab_for_automation):
2900         * MiniBrowser/gtk/BrowserWindow.h:
2901         * MiniBrowser/gtk/CMakeLists.txt:
2902         * MiniBrowser/gtk/main.c:
2903         (createWebViewForAutomationInWindowCallback):
2904         (createWebViewForAutomationInTabCallback):
2905         (automationStartedCallback):
2906         (startup):
2907         (activate):
2908         (main):
2909
2910 2020-06-04  Sihui Liu  <sihui_liu@apple.com>
2911
2912         Text manipulation: first and last unit in a paragraph should not contain only excluded tokens
2913         https://bugs.webkit.org/show_bug.cgi?id=212759
2914
2915         Reviewed by Wenson Hsieh.
2916
2917         Modify existing test for changed behavior that leading and trailing excluded units are not included in paragraph
2918         now.
2919
2920         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
2921         (TestWebKitAPI::TEST):
2922
2923 2020-06-04  Chris Dumez  <cdumez@apple.com>
2924
2925         UIProcess may crash after its prewarmed WebProcess gets terminated
2926         https://bugs.webkit.org/show_bug.cgi?id=212790
2927         <rdar://problem/63696191>
2928
2929         Reviewed by Geoffrey Garen.
2930
2931         Add API test coverage.
2932
2933         * TestWebKitAPI/Tests/WebKitCocoa/ProcessPreWarming.mm:
2934         (TEST):
2935
2936 2020-06-04  Sihui Liu  <sihui_liu@apple.com>
2937
2938         REGRESSION: (r262398) Text manipulation crashes when content is added
2939         https://bugs.webkit.org/show_bug.cgi?id=212785
2940
2941         Reviewed by Ryosuke Niwa.
2942
2943         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
2944         (TestWebKitAPI::TEST):
2945
2946 2020-06-04  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2947
2948         Improve watchlist logic for comments on patches touching imported WPT tests.
2949         https://bugs.webkit.org/show_bug.cgi?id=212597
2950
2951         Reviewed by Youenn Fablet.
2952
2953         On r262295 I added a watchlist comment for patches touching the imported WPT tests.
2954         However, this is commenting on patches that are importing WPT tests.
2955
2956         To avoid this situations, this patch adds a new rule to detect if the changes modify
2957         any of the w3c-import.log files, and then changes the logic to make the comment only
2958         for patches that modify the WPT imported tests but not the w3c-import.log files.
2959
2960         In order to support this new logic, watchlist rule parsing is improved to support
2961         the "and" and "not" operators. Previously it only supported the "or" operator.
2962
2963         * Scripts/webkitpy/common/config/watchlist:
2964         * Scripts/webkitpy/common/watchlist/watchlistparser.py:
2965         (WatchListParser._rule_definitions_as_set):
2966         * Scripts/webkitpy/common/watchlist/watchlistparser_unittest.py:
2967         (WatchListParserTest.test_cc_rule_with_undefined_defintion_with_suggestion):
2968         (WatchListParserTest):
2969         (WatchListParserTest.test_cc_rule_with_complex_logic):
2970         * Scripts/webkitpy/common/watchlist/watchlistrule.py:
2971         (WatchListRule.__init__):
2972         (WatchListRule._match_test_definitions):
2973         (WatchListRule.match):
2974         * Scripts/webkitpy/common/watchlist/watchlistrule_unittest.py:
2975         (WatchListRuleTest.test_complex_definition_or):
2976         (WatchListRuleTest):
2977         (WatchListRuleTest.test_complex_definition_and):
2978         (WatchListRuleTest.test_complex_definition_not):
2979         (WatchListRuleTest.test_complex_definition_combined):
2980
2981 2020-06-04  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2982
2983         svn-apply command is too slow with big patches
2984         https://bugs.webkit.org/show_bug.cgi?id=212766
2985
2986         Reviewed by Darin Adler.
2987
2988         The script svn-apply was calling a "git add" or "svn add" command
2989         after adding each new file. This caused the git or svn command to
2990         re-check the internal SCM database each time they were called, and
2991         this was really slow when lot of new files are added.
2992         Instead of doing this, we queue the list of new files in memory,
2993         and at the end we call "git add" or "svn add" once (or a few times).
2994
2995         On top of that, another optimization is added for the case of git,
2996         to avoid calling scmKnowsOfFile() inside addDirectoriesIfNeeded(),
2997         which is a slow operation and gets called a lot (once per file).
2998         Doing that for git is totally unneeded, as the only thing we have
2999         to take care about, is of ensuring that the directory is created.
3000         See: https://wkb.ug/86973
3001
3002         This reduces the time spent in the large test patch that caused
3003         this issue (see bug):
3004          - Git: 8 hours (before) -> 8 minutes (now).
3005          - SVN: 25 minutes (before) -> 5 minutes (now).
3006
3007         * Scripts/svn-apply:
3008         (addDirectoriesIfNeeded):
3009         (handleBinaryChange):
3010         (handleGitBinaryChange):
3011         (patch):
3012         (scmRemove):
3013         (scmAddQueued):
3014         (scmCommitQueueAdded):
3015         (scmToggleExecutableBitQueued):
3016         (scmCommitQueueToggledExecutableBit):
3017
3018 2020-06-04  Jonathan Bedard  <jbedard@apple.com>
3019
3020         Add watchOS and tvOS to build-webkit
3021         https://bugs.webkit.org/show_bug.cgi?id=212719
3022         <rdar://problem/63951600>
3023
3024         Reviewed by Tim Horton.
3025
3026         * Scripts/build-webkit: Add tvOS and watchOS flags, generalize embedded if statements.
3027         * Scripts/webkitdirs.pm:
3028         (determineArchitecture): Add tvOS and watchOS architectures.
3029         (argumentsForConfiguration): Add tvOS and watchOS flags.
3030         (extractNonMacOSHostConfiguration): Ditto.
3031
3032 2020-06-04  Tim Horton  <timothy_horton@apple.com>
3033
3034         Work around broken system version macro
3035         https://bugs.webkit.org/show_bug.cgi?id=212726
3036
3037         Reviewed by Dan Bernstein.
3038
3039         * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
3040         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
3041         * ImageDiff/cg/Configurations/DebugRelease.xcconfig:
3042         * MiniBrowser/Configurations/DebugRelease.xcconfig:
3043         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
3044         * WebEditingTester/Configurations/DebugRelease.xcconfig:
3045         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
3046         * lldb/lldbWebKitTester/Configurations/DebugRelease.xcconfig:
3047
3048 2020-06-04  Andy Estes  <aestes@apple.com>
3049
3050         [watchOS] Re-enable content filtering in the simulator build
3051         https://bugs.webkit.org/show_bug.cgi?id=212711
3052         <rdar://problem/63938350>
3053
3054         Reviewed by Wenson Hsieh.
3055
3056         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3057
3058 2020-06-04  Philippe Normand  <pnormand@igalia.com>
3059
3060         [Flatpak SDK] Update definitions
3061         https://bugs.webkit.org/show_bug.cgi?id=212698
3062
3063         Reviewed by Žan Doberšek.
3064
3065         * buildstream/elements/freedesktop-sdk.bst: Update to FDO 19.08.11
3066         * buildstream/elements/sdk/gtk.bst: Update GTK4
3067         * buildstream/patches/fdo/0001-Pango-Bump-to-1.45-master.patch: Added. Needed for GTK4
3068         * buildstream/patches/fdo/0001-Add-Jack.patch: Removed. This will be used when we update to the 20.08 FDO SDK.
3069         * buildstream/patches/fdo/0001-components-xdg-desktop-portal.bst-Update-to-1.6.0.patch: Removed. Ditto.
3070         * buildstream/patches/fdo/0002-Update-PipeWire-to-0.3.1.patch: Removed. Ditto.
3071
3072 2020-06-03  Tadeu Zagallo  <tzagallo@apple.com>
3073
3074         Disable B3 hoistLoopInvariantValues by default
3075         https://bugs.webkit.org/show_bug.cgi?id=212511
3076         <rdar://problem/63813245>
3077
3078         Reviewed by Mark Lam.
3079
3080         Enable the B3 hoistLoopInvariantValues pass in one of our existing configurations to
3081         avoid bit rot since we'd like to re-enable it eventually.
3082
3083         * Scripts/run-jsc-stress-tests:
3084
3085 2020-06-03  Wenson Hsieh  <wenson_hsieh@apple.com>
3086
3087         [Text manipulation] Extract the value attribute in inputs of type "text" and "search"
3088         https://bugs.webkit.org/show_bug.cgi?id=212706
3089         <rdar://problem/63876969>
3090
3091         Reviewed by Tim Horton.
3092
3093         Add a new test case (similar to the existing test `StartTextManipulationExtractsValuesFromButtonInputs`) to
3094         verify that we extract text from the `value` of inputs of type "text" and "search".
3095
3096         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
3097         (TestWebKitAPI::TEST):
3098
3099 2020-06-03  Michael Saboff  <msaboff@apple.com>
3100
3101         [iOS] TestWTF.WTF_Lock.ContendedShortSection is consistently timing out on debug simulator builds
3102         https://bugs.webkit.org/show_bug.cgi?id=211650
3103
3104         Reviewed by Saam Barati.
3105
3106         The prior change to disable this test for Debug actually enabled it
3107         only for Debug IOS builds of any type, simulator or real HW.
3108
3109         This test has intermittently failed or timed out on Debug simulator
3110         builds for for almost a year.  We want to test Release builds as well as
3111         hardware builds. Therefore we should disable Debug simulator builds,
3112         and test all other variants.
3113
3114         * TestWebKitAPI/Tests/WTF/Lock.cpp:
3115
3116 2020-06-03  Wenson Hsieh  <wenson_hsieh@apple.com>
3117
3118         dataTransfer.types is empty when handling the "dragstart" event
3119         https://bugs.webkit.org/show_bug.cgi?id=212685
3120         <rdar://problem/61368402>
3121
3122         Reviewed by Andy Estes.
3123
3124         Adds new API tests and test infrastructure to verify that DataTransfer types and data are accessible during
3125         the "dragstart" event. See below for more details.
3126
3127         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3128         * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
3129         (-[TestWKWebView selectElementWithID:]):
3130         (-[DragAndDropSimulator dragFromElementWithID:to:]):
3131
3132         Add a few (very specialized) helper methods to assist with simulating drags over the various elements in the new
3133         drag and drop test harness page below (dragstart-data.html).
3134
3135         (runDragStartDataTestCase):
3136
3137         Test the following scenarios (split between three API tests) by dumping the resulting DataTransfer types and
3138         their data strings, and observing the results:
3139
3140         - Dragging a normal text selection.
3141         - Dragging a normal text selection, and then adding a URL string.
3142         - Dragging a normal text selection, and then adding a custom pasteboard type.
3143         - Dragging a normal text selection, but then replacing the data with just a URL string.
3144         - Dragging a normal text selection, but then replacing the data with just a custom data type.
3145         - Dragging an image element.
3146         - Dragging an image element, and then overriding the plain text data.
3147         - Dragging a link (anchor element).
3148         - Dragging a link, and then adding a custom type.
3149
3150         * TestWebKitAPI/Tests/WebKitCocoa/dragstart-data.html: Added.
3151
3152         Add a new test harness to help test DataTransfer types when starting a drag. This test page can also be used as
3153         a manual test harness, by simply opening the test page, starting drags on the various elements and observing the
3154         output in the textarea.
3155
3156         * TestWebKitAPI/Tests/WebKitCocoa/dump-datatransfer-types.html:
3157
3158         Tweak this test page to replace the DataTransfer with custom data (rather than simply append it) by calling
3159         `DataTransfer.clearData()` prior to writing the custom types.
3160
3161         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
3162         * TestWebKitAPI/cocoa/TestWKWebView.h:
3163         * TestWebKitAPI/cocoa/TestWKWebView.mm:
3164         (-[TestWKWebViewHostWindow initWithWebView:contentRect:styleMask:backing:defer:]):
3165
3166         Add a `__weak` reference on TestWKWebViewHostWindow back to the TestWKWebView, so that we can consult
3167         `-eventTimestamp` when synthesizing mouse events on macOS during API tests.
3168
3169         (-[TestWKWebViewHostWindow _mouseDownAtPoint:simulatePressure:clickCount:]):
3170         (-[TestWKWebViewHostWindow _mouseUpAtPoint:clickCount:]):
3171         (-[TestWKWebViewHostWindow initWithWebView:frame:]):
3172         (-[TestWKWebView _setUpTestWindow:]):
3173         (-[TestWKWebView setEventTimestampOffset:]):
3174         (-[TestWKWebView eventTimestamp]):
3175
3176         Add a mechanism to offset synthetic event timestamps by a given time interval (i.e. the event timestamp offset).
3177
3178         (-[TestWKWebView mouseMoveToPoint:withFlags:]):
3179         (-[TestWKWebView _mouseEventWithType:atLocation:]):
3180         (-[TestWKWebView typeCharacter:]):
3181         * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
3182         (-[DragAndDropSimulator runFrom:to:]):
3183
3184         While simulating drag and drop on macOS, use `-setEventTimestampOffset:` to "leap forward" in time, so that the
3185         150 millisecond delay when dragging a text selection doesn't prevent drags from beginning.
3186
3187 2020-06-03  Sihui Liu  <sihui_liu@apple.com>
3188
3189         Text manipulation sometimes fails to replace text in attributes
3190         https://bugs.webkit.org/show_bug.cgi?id=212701
3191
3192         Reviewed by Wenson Hsieh.
3193
3194         Modify TextManipulation.CompleteTextManipulationShouldReplaceTextContentWithMultipleTokens to cover text 
3195         manipulation for attributes.
3196
3197         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
3198         (TestWebKitAPI::TEST):
3199
3200 2020-06-03  Diego Pino Garcia  <dpino@igalia.com>
3201
3202         [WPE] lint-test-expectations doesn't work when platform is WPE
3203         https://bugs.webkit.org/show_bug.cgi?id=212700
3204
3205         Reviewed by Carlos Alberto Lopez Perez.
3206
3207         When passing arguments '--wpe' or '--platform=wpe*',
3208         lint-test-expectations does nothing for WPE, despite currently 
3209         there are many lint errors in WPE's TestExpectations file.
3210
3211         As a side-effect of this patch, now `Tools/Scripts/webkit-path
3212         rebaseline` lists the WPE Release and Debug bots.
3213
3214         * Scripts/webkitpy/port/builders.py: Add WPE to the list of
3215         exact_matches and fuzzy_matches.
3216         * Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
3217
3218 2020-06-03  Jonathan Bedard  <jbedard@apple.com>
3219
3220         Allow using web processes for service workers even though they loaded about URLs (Follow-up fix)
3221         https://bugs.webkit.org/show_bug.cgi?id=212464
3222
3223         Unreviewed build fix.
3224
3225         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm: didFinishNavigation is now used unconditionally.
3226
3227 2020-06-02  Keith Rollin  <krollin@apple.com>
3228
3229         Revert FEATURES_DEFINES related changes
3230         https://bugs.webkit.org/show_bug.cgi?id=212664
3231         <rdar://problem/63893033>
3232
3233         Reviewed by Andy Estes.
3234
3235         Bug 262310, Bug 262311, Bug 262318, and Bug 262331 involve changes to
3236         FEATURE_DEFINES and how the values there relate to those found in the
3237         Platform*.h files. Those changes break XCBuild (by removing the
3238         .xcfilelist related to UnifiedSources and the process for generating
3239         them), and so are being reverted.
3240
3241         * Scripts/webkitperl/FeatureList.pm:
3242         * Scripts/webkitpy/generate_xcfilelists_lib/generators.py:
3243         (WebCoreGenerator):
3244         (WebCoreGenerator._get_generate_unified_sources_script):
3245         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3246
3247 2020-06-02  Peng Liu  <peng.liu6@apple.com>
3248
3249         Stressing webkitSetPresentationMode leads to wrong inline video dimensions
3250         https://bugs.webkit.org/show_bug.cgi?id=202425
3251
3252         Reviewed by Eric Carlson.
3253
3254         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewCloseAllMediaPresentations.mm:
3255         (TEST):
3256
3257 2020-06-02  Youenn Fablet  <youenn@apple.com>
3258
3259         Allow using web processes for service workers even though they loaded about URLs
3260         https://bugs.webkit.org/show_bug.cgi?id=212464
3261
3262         Reviewed by Chris Dumez.
3263
3264         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
3265
3266 2020-06-02  Diego Pino Garcia  <dpino@igalia.com>
3267
3268         [buildbot] [GTK][WPE] Move JavaScript related tests to own bot
3269         https://bugs.webkit.org/show_bug.cgi?id=212481
3270
3271         Reviewed by Carlos Alberto Lopez Perez.
3272
3273         Currently GTK and WPE tests bots run too many tests. This makes
3274         the total running time for each build very long.
3275
3276         This patch moves JavaScript related tests (jscore-test and
3277         test262-test) to a separated bot which will be triggered by the
3278         corresponding build bot of each platform.
3279
3280         * BuildSlaveSupport/build.webkit.org-config/config.json:
3281         * BuildSlaveSupport/build.webkit.org-config/factories.py:
3282         (TestFactory.__init__):
3283         (TestJSFactory):
3284         (TestJSFactory.__init__):
3285         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
3286
3287 2020-06-02  Carlos Garcia Campos  <cgarcia@igalia.com>
3288
3289         [GTK4] Make popup menus work
3290         https://bugs.webkit.org/show_bug.cgi?id=211178
3291
3292         Reviewed by Adrian Perez de Castro.
3293
3294         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
3295         (WTR::PlatformWebView::dismissAllPopupMenus):
3296
3297 2020-06-02  Carlos Garcia Campos  <cgarcia@igalia.com>
3298
3299         [GTK4] Make it possible to run layout tests
3300         https://bugs.webkit.org/show_bug.cgi?id=212328
3301
3302         Reviewed by Carlos Alberto Lopez Perez.
3303
3304         Build WTR with GTK4.
3305
3306         * PlatformGTK.cmake:
3307         * Scripts/webkitdirs.pm:
3308         (builtDylibPathForName): Try with both 4 and 5 API versions.
3309         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
3310         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
3311         (WTR::PlatformWebView::PlatformWebView):
3312         (WTR::PlatformWebView::~PlatformWebView):
3313         (WTR::PlatformWebView::setWindowIsKey):
3314         (WTR::PlatformWebView::windowFrame):
3315         (WTR::PlatformWebView::setWindowFrame):
3316         (WTR::PlatformWebView::addToWindow):
3317         (WTR::PlatformWebView::removeFromWindow):
3318         (WTR::PlatformWebView::windowSnapshotImage):
3319         (WTR::PlatformWebView::dismissAllPopupMenus):
3320         * WebKitTestRunner/gtk/UIScriptControllerGtk.cpp:
3321         (WTR::UIScriptControllerGtk::copyText):
3322
3323 2020-06-01  Noam Rosenthal  <noam@webkit.org>
3324
3325         Make unicode-bidi:isolate the default for an element with a dir attribute (instead of unicode-bidi:embed)
3326         https://bugs.webkit.org/show_bug.cgi?id=134630
3327
3328         Reviewed by Simon Fraser.
3329
3330         * TestWebKitAPI/Tests/WebKitCocoa/AttrStyle.mm:
3331         (TEST):
3332                 Test was expecting unicode-bidi:embed, changed expectation.
3333
3334 2020-06-01  Sihui Liu  <sihui_liu@apple.com>
3335
3336         TextManipulationController should put one Node in only one paragraph
3337         https://bugs.webkit.org/show_bug.cgi?id=212548
3338
3339         Reviewed by Wenson Hsieh.
3340
3341         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
3342         (TestWebKitAPI::TEST):
3343
3344 2020-06-01  Alex Christensen  <achristensen@webkit.org>
3345
3346         Make CustomDisplayName and DefaultDisplayName API tests fail instead of timing out when something changes
3347         https://bugs.webkit.org/show_bug.cgi?id=212480
3348
3349         This saves time when debugging and running all the tests.
3350
3351         * TestWebKitAPI/Tests/WebKitCocoa/DisplayName.mm:
3352         (TestWebKitAPI::checkUntilDisplayNameIs):
3353
3354 2020-06-01  Philippe Normand  <pnormand@igalia.com>
3355
3356         [Flatpak SDK] Install and update don't provide any terminal output
3357         https://bugs.webkit.org/show_bug.cgi?id=212579
3358
3359         Reviewed by Žan Doberšek.
3360
3361         The `show_output` option was removed from the process execution routines. We now assume the
3362         output will be displayed, unless the call-site asks `gather_output`. This change makes
3363         webkit-flatpak more chatty, which is nice during install/update operations.
3364
3365         * flatpak/flatpakutils.py:
3366         (run_sanitized):
3367         (FlatpakObject.flatpak):
3368         (FlatpakPackage.install):
3369         (FlatpakPackage.update):
3370         (WebkitFlatpak.setup_builddir):
3371         (WebkitFlatpak.run_in_sandbox):
3372
3373 2020-06-01  Chris Dumez  <cdumez@apple.com>
3374
3375         ASSERTION FAILURE (r220931): !m_function in ~CompletionHandler() after switch tabs
3376         https://bugs.webkit.org/show_bug.cgi?id=212537
3377         <rdar://problem/63766838>
3378
3379         Reviewed by Alex Christensen.
3380
3381         Add API test coverage.
3382
3383         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3384         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSuspension.mm: Added.
3385         (TEST):
3386
3387 2020-06-01  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3388
3389         [EWS] Add a special case for running the layout test step without aborting in case of many failures for WPT tests
3390         https://bugs.webkit.org/show_bug.cgi?id=212381
3391
3392         Reviewed by Jonathan Bedard.
3393
3394         Add a special case for patches uploaded by the bugzilla user that would be used
3395         for prototyping a bot that helps automating the import of WPT tests. For patches
3396         uploaded by this user don't pass the parameters that make the step abort early in
3397         case of many errors, and only run the layout tests inside the WPT import directory.
3398
3399         * BuildSlaveSupport/ews-build/steps.py:
3400         (RunWebKitTests):
3401         (RunWebKitTests.start):
3402         * BuildSlaveSupport/ews-build/steps_unittest.py:
3403         (test_success):
3404         (test_warnings):
3405         (test_parse_results_json_regression):
3406         (test_parse_results_json_flakes):
3407         (test_parse_results_json_flakes_and_regressions):
3408         (test_parse_results_json_with_newlines):
3409         (test_unexpected_error):
3410         (test_failure):
3411         (test_success_wpt_import_bot):
3412         (TestRunWebKitTestsWithoutPatch.test_success):
3413         (TestRunWebKitTestsWithoutPatch.test_failure):
3414         (TestRunWebKit1Tests.test_success):
3415         (TestRunWebKit1Tests.test_failure):
3416
3417 2020-06-01  Sam Weinig  <weinig@apple.com>
3418
3419         Extended Color: Replace Color constructors taking numeric values with type specific factory functions
3420         https://bugs.webkit.org/show_bug.cgi?id=212576
3421
3422         Reviewed by Tim Horton.
3423
3424         Replaces all remaining implicit and explicit uses of the Color constructors taking numeric
3425         values with explicit calls to makeSimpleColor/makeSimpleColorFromFloats/makeExtendedColor,
3426         giving us a consistent way to create colors. Also addes use constexpr SimpleColors where possible.
3427
3428         * TestWebKitAPI/Tests/WebCore/ColorTests.cpp:
3429         (TestWebKitAPI::TEST):
3430         * TestWebKitAPI/Tests/WebCore/ExtendedColorTests.cpp:
3431         (TestWebKitAPI::TEST):
3432         (TestWebKitAPI::makeColor):
3433         * TestWebKitAPI/Tests/WebKitCocoa/PDFSnapshot.mm:
3434         (TestWebKitAPI::TEST):
3435         * TestWebKitAPI/cocoa/TestPDFDocument.mm:
3436         (TestWebKitAPI::TestPDFPage::colorAtPoint const):
3437
3438 2020-05-31  Dean Jackson  <dino@apple.com>
3439
3440         AutoTrader crashed while browsing search results
3441         https://bugs.webkit.org/show_bug.cgi?id=212461
3442         rdar://60733185
3443
3444         Reviewed by Sam Weinig.
3445
3446         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3447         * TestWebKitAPI/Tests/WebKitLegacy/ios/WebGLPrepareDisplayOnWebThread.mm: Added.
3448         (-[WebGLPrepareDisplayOnWebThreadDelegate webViewDidFinishLoad:]):
3449         (-[WebGLPrepareDisplayOnWebThreadDelegate webView:shouldStartLoadWithRequest:navigationType:]):
3450         (TestWebKitAPI::TEST):
3451         * TestWebKitAPI/Tests/WebKitLegacy/ios/webgl.html: Added.
3452
3453 2020-05-31  Carlos Garcia Campos  <cgarcia@igalia.com>
3454
3455         Unreviewed. Fix GTK4 build with current GTK
3456
3457         * MiniBrowser/gtk/BrowserTab.c:
3458         (audioMutedChanged):
3459
3460 2020-05-30  Sam Weinig  <weinig@apple.com>
3461
3462         Extended Color: Additional color cleanups
3463         https://bugs.webkit.org/show_bug.cgi?id=212567
3464
3465         Reviewed by Simon Fraser.
3466
3467         * TestWebKitAPI/Tests/WebCore/ExtendedColorTests.cpp:
3468         (TestWebKitAPI::TEST):
3469         Update for rename from ExtendedColor::channels() to ExtendedColor::components()
3470
3471 2020-05-30  Carlos Garcia Campos  <cgarcia@igalia.com>
3472
3473         [GTK] WebDriver: stop using GdkEvent API in preparation for GTK4
3474         https://bugs.webkit.org/show_bug.cgi?id=212465
3475
3476         Reviewed by Adrian Perez de Castro.
3477
3478         Update to the new webkitWebViewBaseSynthesizeKeyEvent() API.
3479
3480         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
3481         (WTR::EventSenderProxy::keyDown):
3482
3483 2020-05-29  Alex Christensen  <achristensen@webkit.org>
3484
3485         Use correct encoding when converting a WTF::URL to CFURLRef
3486         https://bugs.webkit.org/show_bug.cgi?id=212486
3487
3488         Reviewed by Darin Adler.
3489
3490         * TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm:
3491         (TestWebKitAPI::TEST):
3492
3493 2020-05-29  Andy Estes  <aestes@apple.com>
3494
3495         [Apple Pay] Remove conditionals for ENABLE_APPLE_PAY_SESSION_V(3|4)
3496         https://bugs.webkit.org/show_bug.cgi?id=212541
3497
3498         Reviewed by Darin Adler.
3499
3500         APPLE_PAY_SESSION_V(3|4) is now enabled whenever APPLE_PAY itself is enabled.
3501
3502         * Scripts/webkitperl/FeatureList.pm:
3503         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3504
3505 2020-05-29  Jan-Michael Brummer  <jan.brummer@tabos.org>
3506
3507         [GTK][WPE] API for WebView audio mute support
3508         https://bugs.webkit.org/show_bug.cgi?id=176119
3509
3510         Reviewed by Michael Catanzaro.
3511
3512         * MiniBrowser/gtk/BrowserTab.c:
3513         (audioClicked):
3514         (audioMutedChanged):
3515         (browserTabConstructed):
3516         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
3517         (testWebViewIsAudioMuted):
3518         (beforeAll):
3519
3520 2020-05-29  Darin Adler  <darin@apple.com>
3521
3522         Remove things from FeatureDefines.xcconfig that are covered by PlatformEnableCocoa.h
3523         https://bugs.webkit.org/show_bug.cgi?id=212418
3524
3525         Rubber-stamped by Simon Fraser.
3526
3527         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig: Add back ENABLE_CSS_CONIC_GRADIENTS,
3528         removed by accident.
3529
3530 2020-05-29  Pavel  <pavel.feldman@gmail.com>
3531
3532         [Win] Allow compiling with the TOUCH_EVENTS enabled
3533         https://bugs.webkit.org/show_bug.cgi?id=212528
3534
3535         Reviewed by Fujii Hironori.
3536
3537         Aligning Win with GTK, adding missing EventSenderProxy stubs.
3538         This allows compiling Win with TOUCH_EVENTS and unlocks event
3539         injection / processing by the automation drivers
3540
3541         * WebKitTestRunner/win/EventSenderProxyWin.cpp:
3542         (WTR::EventSenderProxy::addTouchPoint):
3543         (WTR::EventSenderProxy::updateTouchPoint):
3544         (WTR::EventSenderProxy::setTouchModifier):
3545         (WTR::EventSenderProxy::setTouchPointRadius):
3546         (WTR::EventSenderProxy::touchStart):
3547         (WTR::EventSenderProxy::touchMove):
3548         (WTR::EventSenderProxy::touchEnd):
3549         (WTR::EventSenderProxy::touchCancel):
3550         (WTR::EventSenderProxy::clearTouchPoints):
3551         (WTR::EventSenderProxy::releaseTouchPoint):
3552         (WTR::EventSenderProxy::cancelTouchPoint):
3553
3554 2020-05-27  Darin Adler  <darin@apple.com>
3555
3556         Remove things from FeatureDefines.xcconfig that are covered by PlatformEnableCocoa.h
3557         https://bugs.webkit.org/show_bug.cgi?id=212418
3558
3559         Reviewed by Andy Estes.
3560
3561         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig: Removed 83 of the 119 things
3562         defined in this file. There are 36 more that are slightly more complex that we can
3563         remove carefully later.
3564
3565 2020-05-29  Darin Adler  <darin@apple.com>
3566
3567         Make generate-unified-sources.sh not depend on features being listed in FEATURE_DEFINES environment variable
3568         https://bugs.webkit.org/show_bug.cgi?id=212420
3569
3570         Reviewed by Andy Estes.
3571
3572         * Scripts/webkitpy/generate_xcfilelists_lib/generators.py:
3573         (WebCoreGenerator._get_generate_derived_sources_script): Removed the code
3574         to generate UnifiedSources-output.xcfilelist.
3575
3576 2020-05-29  Keith Rollin  <krollin@apple.com>
3577
3578         Revert switch to XCBuild
3579         https://bugs.webkit.org/show_bug.cgi?id=212530
3580         <rdar://problem/63764632>
3581
3582         Unreviewed build fix.
3583
3584         Bug 209890 enabled the use of XCBuild by default. Since then, some
3585         build issues have shown up. While addressing them, temporarily turn
3586         off the use of XCBuild by default.
3587
3588         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
3589         * Scripts/build-webkit:
3590         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3591
3592 2020-05-29  Philippe Normand  <pnormand@igalia.com>
3593
3594         [Flatpak][GStreamer] all commands, except webkit-build, fails if GST_BUILD_PATH is set
3595         https://bugs.webkit.org/show_bug.cgi?id=212408
3596
3597         Reviewed by Žan Doberšek.
3598
3599         Don't run gst-env.py in the sandbox because that can lead to command-line options clashing
3600         with build-webkit and other WebKit scripts. So instead we now parse the output of the
3601         environment variables gst-build requires and we forward those to the sandbox.
3602
3603         * flatpak/flatpakutils.py:
3604         (run_sanitized):
3605         (check_flatpak):
3606         (FlatpakObject.flatpak):
3607         (WebkitFlatpak.execute_command):
3608         (WebkitFlatpak.setup_gstbuild):
3609         (WebkitFlatpak.run_in_sandbox):
3610         (flatpak_run_sanitized): Deleted.
3611
3612 2020-05-29  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3613
3614         Add watchlist comment for patches touching imported WPT tests.
3615         https://bugs.webkit.org/show_bug.cgi?id=212362
3616
3617         Reviewed by Youenn Fablet.
3618
3619         Add a watchlist trigger to comment on patches touching imported WPT tests
3620         with a link to documentation about the export process.
3621
3622         * Scripts/webkitpy/common/config/watchlist:
3623
3624 2020-05-29  Lauro Moura  <lmoura@igalia.com>
3625
3626         [Flatpak] Fix os.system return code for better signal handling.
3627
3628         Rubber-stamped by Philippe Normand.
3629
3630         The previous fix in r262270 correctly fixed the return code issue
3631         but made signal handling pass through python. For example, when you
3632         ctlr+C running MiniBrowser, you'd get a python stacktrace deep inside
3633         subprocess.call.
3634
3635         So, revert back to os.system but fixing the return code.
3636
3637         * flatpak/webkit-bwrap:
3638
3639 2020-05-29  Philippe Normand  <pnormand@igalia.com>
3640
3641         [Flatpak SDK] Update OpenXR
3642         https://bugs.webkit.org/show_bug.cgi?id=212518
3643
3644         Reviewed by Žan Doberšek.
3645
3646         Upstream now builds fine with GCC 9.3.0. Removing downstream patch.
3647         
3648         * buildstream/elements/sdk/openxr.bst:
3649         * buildstream/patches/openxr-0001-cmake-Check-for-C-17-and-conditionally-enable-it.patch: Removed.
3650
3651 2020-05-29  Wenson Hsieh  <wenson_hsieh@apple.com>
3652
3653         REGRESSION (r261812): editing/async-clipboard/clipboard-item-get-type-basic.html is flaky
3654         https://bugs.webkit.org/show_bug.cgi?id=212281
3655         <rdar://problem/63554912>
3656
3657         Reviewed by Tim Horton.
3658
3659         On some shipping versions of iOS, returning `NO` from `-supportsImagePaste` still results in UIKit keyboard
3660         code pinning temporary items to the general pasteboard, which increments the change count of the pasteboard.
3661         If this happens in the middle of an attempt to read from the pasteboard, we end up falsely denying access to the
3662         contents of the pasteboard, since we believe that the contents of the pasteboard have changed.
3663
3664         This has the potential to affect any test that attempts to read from the pasteboard on iOS, though the titular
3665         layout test seems to trigger the bug more frequently than other tests.
3666
3667         This item pinning was added in support of being able to insert Memojis from the software keyboard, and works by
3668         pretending to copy a temporary PNG image, asking the delegate whether it `-canPerformAction:withSender:`, and
3669         then restoring the items previously on the pasteboard. To work around this in the test runner, we can simply
3670         swizzle out `-[UIKeyboardImpl delegateSupportsImagePaste]` to always return `NO`, which has the same effect as
3671         disabling the Memoji keyboard.
3672
3673         * WebKitTestRunner/TestController.h:
3674         * WebKitTestRunner/ios/TestControllerIOS.mm:
3675         (overrideKeyboardDelegateSupportsImagePaste):
3676         (WTR::TestController::platformResetStateToConsistentValues):
3677
3678 2020-05-28  Myles C. Maxfield  <mmaxfield@apple.com>
3679
3680         Make fast/text/user-installed-fonts/extended-character.html more robust
3681         https://bugs.webkit.org/show_bug.cgi?id=212487
3682         <rdar://problem/63235370>
3683
3684         Unreviewed.
3685
3686         Update the font to use the new character.
3687
3688         * WebKitTestRunner/fonts/FakeHelvetica-SingleExtendedCharacter.ttf:
3689
3690 2020-05-28  Lauro Moura  <lmoura@igalia.com>
3691
3692         [Flatpak] Use subprocess.call instead of os.system to forward the return code correctly.
3693
3694         os.system reports error codes from the child process like wait(),
3695         which seems to not be playing well with flatpak/bwrap.
3696
3697         This was causing flatpak to return 0 to some failed commands (like
3698         build-webkit), making failures show as successes in the bots.
3699
3700         Unreviewed build fix.
3701
3702         * flatpak/webkit-bwrap:
3703
3704 2020-05-28  Tim Horton  <timothy_horton@apple.com>
3705
3706         makeValueRefForValue should be robust against the type encoding of a NSNumber backed by a boolean
3707         https://bugs.webkit.org/show_bug.cgi?id=212456
3708
3709         Reviewed by Anders Carlsson.
3710
3711         * WebKitTestRunner/InjectedBundle/mac/AccessibilityCommonMac.mm:
3712         (WTR::makeValueRefForValue):
3713         Apply the fix from r260515 to this second copy of the code too.
3714
3715 2020-05-27  Saam Barati  <sbarati@apple.com>
3716
3717         revert logging for detecting failures in run-jsc-stress-tests
3718         https://bugs.webkit.org/show_bug.cgi?id=212447
3719
3720         Reviewed by Alexey Proskuryakov.
3721
3722         * Scripts/run-jsc-stress-tests:
3723
3724 2020-05-27  Tim Horton  <timothy_horton@apple.com>
3725
3726         REGRESSION (PSON): Resizing WKWebView during cross-site navigation results in the page laying out at the wrong size
3727         https://bugs.webkit.org/show_bug.cgi?id=212434
3728         <rdar://problem/51621621>
3729
3730         Reviewed by Chris Dumez.
3731
3732         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3733         Add a test ensuring that we correctly update the view size if it changes
3734         during the provisional phase of the navigation.
3735
3736 2020-05-27  Lauro Moura  <lmoura@igalia.com>
3737
3738         Unreviewed. A couple transformations missing from r262214.
3739
3740         Was making fast/events/touch/tap-highlight-color.html to fail.
3741
3742         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
3743         (WTR::EventSenderProxy::keyDown):
3744         (WTR::EventSenderProxy::addTouchPoint):
3745
3746 2020-05-27  Kenneth Russell  <kbr@chromium.org>
3747
3748         Update MobileMiniBrowser project settings to current Xcode
3749         https://bugs.webkit.org/show_bug.cgi?id=212428
3750
3751         Reviewed by Dean Jackson.
3752
3753         Apply suggestions from Dean to automatically switch between the
3754         internal and public SDKs.
3755
3756         * MobileMiniBrowser/Configurations/Base.xcconfig:
3757
3758 2020-05-27  Lauro Moura  <lmoura@igalia.com>
3759
3760         [WPE] Avoid possible WTR event timing going back in time and fix conversion from s to ms
3761         https://bugs.webkit.org/show_bug.cgi?id=212338
3762
3763         Reviewed by Michael Catanzaro.
3764
3765         Make sure we cast the double m_time timestamp from seconds to uint32_t
3766         milliseconds expected by WPE input events.
3767
3768         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
3769         (WTR::secToMsTimestamp):
3770         (WTR::EventSenderProxy::EventSenderProxy): Use monotonic time instead
3771         of zero as the time origin. This is used only in a relative manner,
3772         and we need monotonic behavior so conversion to DOM event timestamps
3773         makes sense.
3774         (WTR::EventSenderProxy::mouseDown):
3775         (WTR::EventSenderProxy::mouseUp):
3776         (WTR::EventSenderProxy::mouseMoveTo):
3777         (WTR::EventSenderProxy::mouseScrollBy):
3778         (WTR::EventSenderProxy::updateTouchPoint):
3779         (WTR::EventSenderProxy::prepareAndDispatchTouchEvent):
3780         (WTR::EventSenderProxy::releaseTouchPoint):
3781
3782 2020-05-27  Kate Cheney  <katherine_cheney@apple.com>
3783
3784         Make sure bundle identifier testing override is set in the network process
3785         https://bugs.webkit.org/show_bug.cgi?id=212288
3786         <rdar://problem/63539061>
3787
3788         Reviewed by Chris Dumez.
3789
3790         Set the bundle identifier in the network process if a layout test
3791         updates it. This value usually only gets updated when a new network
3792         process is initialized, which does not happen for every test. So it
3793         should be set/cleared as needed.
3794
3795         * WebKitTestRunner/TestController.cpp:
3796         (WTR::TestController::createWebViewWithOptions):
3797         (WTR::TestController::updateBundleIdentifierInNetworkProcess):
3798         * WebKitTestRunner/TestController.h:
3799
3800 2020-05-27  Wenson Hsieh  <wenson_hsieh@apple.com>
3801
3802         [Clipboard API] Support reading "image/png" on ClipboardItem
3803         https://bugs.webkit.org/show_bug.cgi?id=212339
3804         <rdar://problem/63588957>
3805
3806         Reviewed by Tim Horton.
3807
3808         Add a new API test to verify that TIFF images on the system pasteboard on macOS are automatically converted to
3809         PNG data, and is accessible through `ClipboardItem` through the "image/png" type.
3810
3811         * TestWebKitAPI/Tests/WebKitCocoa/ClipboardTests.mm:
3812
3813 2020-05-27  Per Arne Vollan  <pvollan@apple.com>
3814
3815         Unreviewed, reverting r260840.
3816
3817         This patch is no longer needed after preferences root cause
3818         has been fixed.
3819
3820         Reverted changeset:
3821
3822         "[Cocoa] Global preferences are not accessible in the
3823         WebContent process when CFPrefs direct mode is enabled"
3824         https://bugs.webkit.org/show_bug.cgi?id=211075
3825         https://trac.webkit.org/changeset/260840
3826
3827 2020-05-27  Devin Rousso  <drousso@apple.com>
3828
3829         Web Inspector: replace `featureGuard` and `availability` with a combined `condition` that accepts any macro
3830         https://bugs.webkit.org/show_bug.cgi?id=210014
3831
3832         Reviewed by Brian Burg.
3833
3834         Previously, the generated InspectorBackendCommands.js would include code for things that the
3835         backend doesn't actually support. By using actual macros and preprocessing that file, we can
3836         ensure that the frontend doesn't incorrectly think that something is supported by the page
3837         being inspected:
3838          - the `Canvas` commands and events related to shader programs/pipelines should only exist
3839            when the corresponding context type exists, namely `ENABLE(WEBGL)` and `ENABLE(WEBGPU)`.
3840          - iOS doesn't support showing rulers, so create a variant of `DOM.setInspectModeEnabled`
3841            that only exists for `PLATFORM(IOS_FAMILY)` that doesn't have the `showRulers` optional
3842            parameter, as well as removing `Page.setShowRulers` entirely.
3843          - setting the forced appearance should only be possible if dark mode is supported.
3844          - web archives only exist if CF is used.
3845
3846         * Configurations/FeatureDefines.xcconfig:
3847         Add `ENABLE_WEB_ARCHIVE` since it's always enabled in wtf/PlatformEnableCocoa.h.
3848
3849         * Scripts/webkitpy/inspector/main.py:
3850         (InspectorGeneratorTests.generate_from_json):
3851         (InspectorGeneratorTests.run_tests):
3852         (InspectorGeneratorTests.main):
3853
3854 2020-05-27  Philippe Normand  <pnormand@igalia.com>
3855
3856         [Flatpak SDK] Update openxr recipe
3857         https://bugs.webkit.org/show_bug.cgi?id=212403
3858
3859         Reviewed by Sergio Villar Senin.
3860
3861         * buildstream/elements/sdk/openxr.bst: Explicitely list dependencies and bump to latest git master.
3862
3863 2020-05-27  Carlos Garcia Campos  <cgarcia@igalia.com>
3864
3865         [GTK][WTR] EventSender: stop using GdkEvent API in preparation for GTK4
3866         https://bugs.webkit.org/show_bug.cgi?id=212298
3867
3868         Reviewed by Adrian Perez de Castro.
3869
3870         Use WebKitWebViewBase internal API to synthesize events instead of GdkEvents. The touch events support has been
3871         removed because we are no longer testing touch events, since they need an actual touchscreen.
3872
3873         * WebKitTestRunner/EventSenderProxy.h:
3874         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
3875         (WTR::getGDKKeySymForKeyRef):
3876         (WTR::toWebKitGLibAPI):
3877         (WTR::EventSenderProxy::keyDown):
3878         (WTR::EventSenderProxy::mouseDown):
3879         (WTR::EventSenderProxy::mouseUp):
3880         (WTR::EventSenderProxy::mouseMoveTo):
3881         (WTR::EventSenderProxy::mouseScrollBy):
3882         (WTR::EventSenderProxy::continuousMouseScrollBy):
3883         (WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases):
3884         (WTR::EventSenderProxy::leapForward):
3885         (WTR::EventSenderProxy::addTouchPoint):
3886         (WTR::EventSenderProxy::updateTouchPoint):
3887         (WTR::EventSenderProxy::touchStart):
3888         (WTR::EventSenderProxy::touchMove):
3889         (WTR::EventSenderProxy::touchEnd):
3890         (WTR::EventSenderProxy::touchCancel):
3891         (WTR::EventSenderProxy::clearTouchPoints):
3892         (WTR::EventSenderProxy::releaseTouchPoint):
3893         (WTR::EventSenderProxy::cancelTouchPoint):
3894         (WTR::EventSenderProxy::setTouchPointRadius):
3895         (WTR::EventSenderProxy::setTouchModifier):
3896
3897 2020-05-26  Alex Christensen  <achristensen@webkit.org>
3898
3899         UTF-8 encode strings of invalid URLs when converting WTF::URL to NSURL instead of truncating the UTF-16 encoding
3900         https://bugs.webkit.org/show_bug.cgi?id=212393
3901         <rdar://problem/63095503>
3902
3903         Reviewed by Tim Horton.
3904
3905         * TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm:
3906         (TestWebKitAPI::TEST):
3907
3908 2020-05-26  Mark Lam  <mark.lam@apple.com>
3909
3910         Enhance Bitmap::setEachNthBit() to also take an end index.
3911         https://bugs.webkit.org/show_bug.cgi?id=212386
3912         <rdar://problem/63643324>
3913
3914         Reviewed by Robin Morisset.
3915
3916         * TestWebKitAPI/Tests/WTF/Bitmap.cpp:
3917         (TestWebKitAPI::testBitmapSetEachNthBitImpl):
3918
3919 2020-05-26  Fujii Hironori  <Hironori.Fujii@sony.com>
3920
3921         [WinCairo][WK2] Use GraphicsLayerTextureMapper for Accelerated Compositing mode
3922         https://bugs.webkit.org/show_bug.cgi?id=211883
3923
3924         Reviewed by Don Olmstead.
3925
3926         * MiniBrowser/win/WebKitBrowserWindow.cpp:
3927         (WebKitBrowserWindow::setPreference): Call WKPreferencesSet* for
3928         menu items IDM_ACC_COMPOSITING, IDM_COMPOSITING_BORDERS and
3929         IDM_DEBUG_INFO_LAYER.
3930
3931 2020-05-26  Sam Weinig  <weinig@apple.com>
3932
3933         Extended Color Cleanup: Remove red()/green()/blue() accessors from ExtendedColor in preperation for supporting non-RGB based ColorSpaces
3934         https://bugs.webkit.org/show_bug.cgi?id=212366
3935
3936         Reviewed by Simon Fraser.
3937
3938         * TestWebKitAPI/Tests/WebCore/ExtendedColorTests.cpp:
3939         (TestWebKitAPI::TEST):
3940         Update tests to pull values from the channels rather than from the red()/green()/blue() accessors.
3941
3942 2020-05-26  Peng Liu  <peng.liu6@apple.com>
3943
3944         ASSERTION FAILED: m_clientCounts.contains(contextId) - WebKit::VideoFullscreenManagerProxy::removeClientForContext()
3945         https://bugs.webkit.org/show_bug.cgi?id=212308
3946
3947         Disable TestWebKitAPI.PictureInPicture.ExitPiPOnSuspendVideoElement for old iOS versions
3948         due to an issue of AVKit.
3949
3950         In addition, don't run the test if Picture-in-Picture is not supported.
3951
3952         Reviewed by Jer Noble.
3953
3954         * TestWebKitAPI/Tests/WebKitCocoa/ExitPiPOnSuspendVideoElement.mm:
3955         (TestWebKitAPI::TEST):
3956
3957 2020-05-26  Keith Rollin  <krollin@apple.com>
3958
3959         Enable the use of XCBuild by default in Apple builds
3960         https://bugs.webkit.org/show_bug.cgi?id=209890
3961         <rdar://problem/44182078>
3962
3963         Reviewed by Darin Adler.
3964
3965         Switch from the "legacy" Xcode build system to the "new" build system
3966         (also known as "XCBuild"). Switching to the new system speeds up
3967         builds by a small percentage, better validates projects for
3968         build-related issues (such as dependency cycles), lets WebKit benefit
3969         from future improvements in XCBuild such as those coming from the
3970         underlying llbuild open source project, and prepares us for any other
3971         tools built for this new ecosystem.
3972
3973         Specific changes:
3974
3975         - Remove Xcode project and workspace settings that selected the Build
3976           system, allowing the default to take hold (which is currently the
3977           New build system).
3978         - Updated webkitdirs.pm with a terser check for Xcode version.
3979         - Update build-webkit and Makefile.shared to be explicit when using
3980           the old build system (no longer treat it as a default or fall-back
3981           configuration).
3982         - Update various xcconfig files similarly to treat the default as
3983           using the new build system.
3984         - Update various post-processing build steps to check for Xcode 11.4
3985           and to no longer treat the default as using the old build system.
3986
3987         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
3988         * Scripts/build-webkit:
3989         * Scripts/webkitdirs.pm:
3990         (canUseXCBuild):
3991         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3992
3993 2020-05-26  Jonathan Bedard  <jbedard@apple.com>
3994
3995         webkitpy: simctl list may have stderr logging
3996         https://bugs.webkit.org/show_bug.cgi?id=212376
3997         <rdar://problem/63517635>
3998
3999         Unreviewed infrastructure fix.
4000
4001         * Scripts/webkitpy/xcode/simulated_device.py:
4002         (SimulatedDeviceManager.populate_available_devices): Only parse stdout, log error when
4003         json decoding fails.
4004         (SimulatedDevice.is_usable): Only parse stdout.
4005         (SimulatedDevice.launch_app): Ditto.
4006
4007 2020-05-25  Wenson Hsieh  <wenson_hsieh@apple.com>
4008
4009         [iOS] ActionSheetTests.DataDetectorsLinkIsNotPresentedAsALink is failing consistently
4010         https://bugs.webkit.org/show_bug.cgi?id=212363
4011         <rdar://problem/63508866>
4012
4013         Reviewed by Tim Horton.
4014
4015         This test began to consistently throw an exception after <https://trac.webkit.org/r261157>, due to how
4016         UserInterfaceSwizzler always instantiates the shared UIApplication. This apparently causes -[WKContentView
4017         resizableSnapshotViewFromRect:afterScreenUpdates:withCapInsets:] to return `nil` instead of a replica view. As a
4018         result, we crash under `createFallbackTargetedPreview` as we're attempting to assemble a targeted preview for
4019         the context menu interaction.
4020
4021         Since this seems to only affect this particular API test, work around it by swizzling out
4022         `-resizableSnapshotViewFromRect:afterScreenUpdates:withCapInsets:` in this API test to return a non-null UIView.
4023
4024         * TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
4025         (TestWebKitAPI::swizzledResizableSnapshotViewFromRect):
4026         (TestWebKitAPI::TEST):
4027
4028 2020-05-24  Sam Weinig  <weinig@apple.com>
4029
4030         Extended Color Cleanup: Use the name SimpleColor consistently
4031         https://bugs.webkit.org/show_bug.cgi?id=212337
4032
4033         Reviewed by Anders Carlsson.
4034
4035         * TestWebKitAPI/Tests/WebCore/ColorTests.cpp:
4036         (TestWebKitAPI::TEST):
4037         Update test for rename of makeRGBAFromHSLA to makeSimpleColorFromHSLA.
4038
4039 2020-05-25  Víctor Manuel Jáquez Leal  <vjaquez@igalia.com>
4040
4041         [Flatpak][GStreamer] compilation fails when GST_BUILD_PATH is defined
4042         https://bugs.webkit.org/show_bug.cgi?id=212343
4043
4044         Reviewed by Philippe Normand.
4045
4046         Flatpak's command has to be expressed before gst-env declaration.
4047
4048         * flatpak/flatpakutils.py:
4049         (WebkitFlatpak.run_in_sandbox):
4050
4051 2020-05-25  Adrian Perez de Castro  <aperez@igalia.com>
4052
4053         [WPE][WKTR] Fix typo in EventSenderProxyWPE
4054         https://bugs.webkit.org/show_bug.cgi?id=212340
4055
4056         Reviewed by Carlos Garcia Campos.
4057
4058         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
4059         (WTR::wpeKeySymForKeyRef): Fix typo rightArror -> rightArrow.
4060
4061 2020-05-25  Philippe Normand  <pnormand@igalia.com>
4062
4063         REGRESSION(r262057): [Flatpak SDK] sccache-dist server no longer starting
4064         https://bugs.webkit.org/show_bug.cgi?id=212326
4065
4066         Reviewed by Žan Doberšek.
4067
4068         A few mount points were missing in the sandbox created by
4069         `flatpak run` preventing the sccache-dist server to start and keep running.
4070
4071         * flatpak/flatpakutils.py:
4072         (WebkitFlatpak.run_in_sandbox):
4073         * flatpak/webkit-bwrap:
4074
4075 2020-05-25  Philippe Normand  <pnormand@igalia.com>
4076
4077         [Flatpak SDK] Fixup icecc support
4078         https://bugs.webkit.org/show_bug.cgi?id=212301
4079
4080         Reviewed by Žan Doberšek.
4081
4082         * flatpak/flatpakutils.py:
4083         (WebkitFlatpak.run_in_sandbox): Allow homedir access from the
4084         sandbox, this is needed because the icecc toolchains paths refer
4085         to the host environment, not the sandbox.
4086         (WebkitFlatpak.pack_toolchain): Fix byte-string formatting issue, happening in Python3.
4087
4088 2020-05-25  Philippe Normand  <pnormand@igalia.com>
4089
4090         [GTK4] SDK contains too old GTK4
4091         https://bugs.webkit.org/show_bug.cgi?id=212334
4092
4093         Reviewed by Adrian Perez de Castro.
4094
4095         * buildstream/elements/sdk/gtk.bst: Update GTK4 to 3.98.4.
4096
4097 2020-05-24  Sam Weinig  <weinig@apple.com>
4098
4099         Extended Color Cleanup: Stop allowing direct access to the underlying SimpleColor (it is almost always incorrect with respect to extended colors)
4100         https://bugs.webkit.org/show_bug.cgi?id=212184
4101
4102         Reviewed by Dean Jackson.
4103
4104         * TestWebKitAPI/Tests/WebCore/ColorTests.cpp:
4105         (TestWebKitAPI::TEST):
4106         Use toSRGBASimpleColorLossy() to get access to color components.
4107
4108 2020-05-22  Alex Christensen  <achristensen@webkit.org>
4109
4110         Make download resume workaround forgiving of changes in CFNetwork
4111         https://bugs.webkit.org/show_bug.cgi?id=212273
4112
4113         Reviewed by Geoffrey Garen.
4114
4115         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
4116
4117 2020-05-22  Paulo Matos  <pmatos@igalia.com>
4118
4119         Add support for [no-]use-ccache option in build-jsc
4120         https://bugs.webkit.org/show_bug.cgi?id=212259
4121
4122         Reviewed by Mark Lam.
4123
4124         * Scripts/build-jsc:
4125
4126 2020-05-22  Alex Christensen  <achristensen@webkit.org>
4127
4128         Add SPI to unblock third party cookies from WKWebViews with ResourceLoadStatistics turned on
4129         https://bugs.webkit.org/show_bug.cgi?id=212058
4130         <rdar://problem/60595539>
4131
4132         Reviewed by John Wilander.
4133
4134         I also add _test_waitForAlert to make tests less verbose.
4135
4136         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
4137         (TEST):
4138         * TestWebKitAPI/Tests/WebKitCocoa/NetworkProcess.mm:
4139         (TEST):
4140         * TestWebKitAPI/Tests/WebKitCocoa/Proxy.mm:
4141         (TestWebKitAPI::TEST):
4142         * TestWebKitAPI/cocoa/HTTPServer.h:
4143         (TestWebKitAPI::Connection::Connection):
4144         * TestWebKitAPI/cocoa/HTTPServer.mm:
4145         (TestWebKitAPI::HTTPServer::HTTPServer):
4146         (TestWebKitAPI::dataFromString):
4147         (TestWebKitAPI::nullTerminatedRequest):
4148         (TestWebKitAPI::HTTPServer::request const):
4149         (TestWebKitAPI::Connection::receive const):
4150         (TestWebKitAPI::Connection::send const):
4151         * TestWebKitAPI/cocoa/TestUIDelegate.h:
4152         * TestWebKitAPI/cocoa/TestUIDelegate.mm:
4153         (-[WKWebView _test_waitForAlert]):
4154
4155 2020-05-22  Chris Dumez  <cdumez@apple.com>
4156
4157         [WKTR] Make TestController::resetStateToConsistentValues() more robust against failures to navigate to about:blank
4158         https://bugs.webkit.org/show_bug.cgi?id=212268
4159         <rdar://problem/63493074>
4160
4161         Reviewed by Geoffrey Garen.
4162
4163         Make TestController::resetStateToConsistentValues() more robust against failures to navigate to about:blank.
4164
4165         In <rdar://problem/63493074>, we have evidence that TestController::resetStateToConsistentValues() sometimes
4166         fails to load about:blank, likely due to an unresponsive WebProcess. When this happens, WebKitTestRunner
4167         reports the test as timing out and logs this on stderr:
4168         """
4169         <unknown> - TestController::run - Failed to reset state to consistent values
4170         #PROCESS UNRESPONSIVE - com.apple.WebKit.WebContent.Development (pid 57421)
4171         """
4172
4173         This is unfortunate because this does not indicate that anything is particularly wrong with the test in
4174         question. Rather, it indicates that the WebProcess is unresponsive (likely due to a hang caused by a
4175         previous test), which prevents WebKitTestRunner to reset the state in order to run the test.
4176
4177         I propose that if we fail to load about:blank once, we log an error message to stderr but then terminate
4178         the WebProcess and try once again, to make WebKitTestRunner more robust.
4179         I have verified the change locally, by injecting a script in resetStateToConsistentValues() that causes
4180         a WebProcess hang. Before my change, the test would time out and the same logging as in
4181         <rdar://problem/63493074> would show. After my change though, the test would pass successfully despite the
4182         WebProcess hang.
4183
4184         * WebKitTestRunner/TestController.cpp:
4185         (WTR::TestController::resetStateToConsistentValues):
4186
4187 2020-05-22  ChangSeok Oh  <changseok@webkit.org>
4188
4189         [GTK] jhbuild is broken with GCC 10.0
4190         https://bugs.webkit.org/show_bug.cgi?id=212256
4191
4192         Reviewed by Carlos Alberto Lopez Perez.
4193
4194         GCC 10.0 enables -fno-common as default, so many 'multiple definitions' failures occur
4195         in building dependencies via jhbuild. This patch addresses them by back-porting patches
4196         from corresponding source repositories.
4197
4198         * gstreamer/jhbuild.modules:
4199         * gstreamer/patches/libsrtp-Fix-building-with-gcc-10.patch: Added.
4200         * gstreamer/patches/orc-satisfy-fno-common-under-gcc10.patch: Added.
4201         * gtk/jhbuild.modules:
4202         * gtk/patches/at-spi2-atk-tests-Replace-common-variable-with-usual-external.patch: Added.
4203         * gtk/patches/at-spi2-atk-tests-fix-child_pid-reference.patch: Added.
4204         * gtk/patches/mesa-gallium-build-fix-to-make-gcc-10-happy.patch: Added.
4205         * gtk/patches/xserver-Fix-building-with-fno-common.patch: Added.
4206
4207 2020-05-22  Philippe Normand  <pnormand@igalia.com>
4208
4209         [Flatpak SDK] Add bubblewrap ... wrapper
4210         https://bugs.webkit.org/show_bug.cgi?id=212077
4211
4212         Reviewed by Carlos Alberto Lopez Perez.
4213
4214         The bind-mounts are now handled through webkit-bwrap.
4215
4216         * flatpak/flatpakutils.py:
4217         (WebkitFlatpak.execute_command):
4218         (WebkitFlatpak.run_in_sandbox):
4219         * flatpak/webkit-bwrap: Added.
4220
4221 2020-05-22  Javier Fernandez  <jfernandez@igalia.com>
4222
4223         [Flatpak SDK] CCACHE_ env vars are not forwarded to the sandbox environment
4224         https://bugs.webkit.org/show_bug.cgi?id=212257
4225
4226         Reviewed by Philippe Normand.
4227
4228         Added the "CCACHE" prefix to the ones the SDK should keep from the
4229         user's environment, and forwarded to the Flatpak sandbox.
4230
4231         * flatpak/flatpakutils.py:
4232         (WebkitFlatpak.run_in_sandbox):
4233
4234 2020-05-22  Tim Horton  <timothy_horton@apple.com>
4235
4236         iOS: Pressing tab in the Mail subject field moves focus to the body, but pressing shift tab doesn't move it back
4237         https://bugs.webkit.org/show_bug.cgi?id=212243
4238         <rdar://problem/59127764>
4239
4240         Reviewed by Wenson Hsieh.
4241
4242         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
4243         (-[FocusDelegate _webView:takeFocus:]):
4244         (-[FocusDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
4245         (TEST):
4246
4247 2020-05-21  Wenson Hsieh  <wenson_hsieh@apple.com>
4248
4249         DataTransfer.files contains multiple files when pasting a single image with multiple representations
4250         https://bugs.webkit.org/show_bug.cgi?id=212245
4251         <rdar://problem/60240436>
4252
4253         Reviewed by Tim Horton.
4254
4255         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
4256         (-[LocalPasteboard _clearContentsWithoutUpdatingChangeCount]):
4257         (-[LocalPasteboard _addTypesWithoutUpdatingChangeCount:owner:]):
4258         (-[LocalPasteboard writeObjects:]):
4259         (-[LocalPasteboard pasteboardItems]):
4260
4261         Adjust DumpRenderTree's LocalPasteboard so that it lazily populates the pasteboard when constructing
4262         NSPasteboardItems. To do this, we need to make a few adjustments:
4263
4264         1.      When reifying NSPasteboardItems from LocalPasteboard, ask the owner (WebHTMLView) to provide pasteboard
4265                 data for each pasteboard type that was promised by WebKit, but was not eagerly written to the pasteboard.
4266
4267         2.      Cache pasteboard items that were created, so that we don't repeatedly ask WebHTMLView to provide
4268                 pasteboard data. WebHTMLView doesn't currently support this, and suffers from a bug where TIFF data may
4269                 only be provided once. This was fixed for WebKit2, but not for WebKit1.
4270
4271         3.      Maintain a separate hash list of original pasteboard types (which may not be UTIs) that were handed to
4272                 LocalPasteboard by WebKit. We use these original types in step (1).
4273
4274         * TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
4275
4276         Add a new API test to verify that one file is exposed via the DataTranfer when the pasteboard contains a single
4277         image with two image representations, but two files are exposed when the pasteboard contains two images, each
4278         with a single representation.
4279
4280         (writeImageDataToPasteboard):
4281
4282         Overload this helper method with two additional variants: one that takes a dictionary of pasteboard types to
4283         data, and another that takes an array of dictionaries, each representing a single item's types and data.
4284
4285 2020-05-21  Robin Morisset  <rmorisset@apple.com>
4286
4287         Various compile-time boolean flags could/should be marked constexpr
4288         https://bugs.webkit.org/show_bug.cgi?id=212244
4289
4290         Reviewed by Mark Lam.
4291
4292         * TestWebKitAPI/Tests/WTF/Condition.cpp:
4293
4294 2020-05-21  Mark Lam  <mark.lam@apple.com>
4295
4296         Rename some variables in Bitmap API test for consistency and better readability.
4297         https://bugs.webkit.org/show_bug.cgi?id=212235
4298
4299         Reviewed by Saam Barati.
4300
4301         This patch renames the following:
4302             bitmap0 => bitmapZeroes
4303             bitmapFilled => bitmapOnes
4304             bitmap3 => bitmap2Clone
4305             bitmapSmallZeroed => smallBitmapZeroes
4306             bitmapSmallFilled => smallBitmapOnes
4307             bitmapSmall1 => smallBitmap1
4308             bitmapSmall2 => smallBitmap2
4309
4310         Apart from these renamings, there are no other code changes.
4311
4312         * TestWebKitAPI/Tests/WTF/Bitmap.cpp:
4313         (TestWebKitAPI::testBitmapSize):
4314         (TestWebKitAPI::testBitmapConstructedEmpty):
4315         (TestWebKitAPI::testBitmapSetGet):
4316         (TestWebKitAPI::testBitmapTestAndSet):
4317         (TestWebKitAPI::testBitmapTestAndClear):
4318         (TestWebKitAPI::testBitmapConcurrentTestAndSet):
4319         (TestWebKitAPI::testBitmapConcurrentTestAndClear):
4320         (TestWebKitAPI::testBitmapClear):
4321         (TestWebKitAPI::testBitmapClearAll):
4322         (TestWebKitAPI::testBitmapInvert):
4323         (TestWebKitAPI::testBitmapFindRunOfZeros):
4324         (TestWebKitAPI::testBitmapCount):
4325         (TestWebKitAPI::testBitmapIsEmpty):
4326         (TestWebKitAPI::testBitmapIsFull):
4327         (TestWebKitAPI::testBitmapMerge):
4328         (TestWebKitAPI::testBitmapFilter):
4329         (TestWebKitAPI::testBitmapExclude):
4330         (TestWebKitAPI::testBitmapConcurrentFilter):
4331         (TestWebKitAPI::testBitmapSubsumes):
4332         (TestWebKitAPI::testBitmapForEachSetBit):
4333         (TestWebKitAPI::testBitmapFindBit):
4334         (TestWebKitAPI::testBitmapIteration):
4335         (TestWebKitAPI::testBitmapMergeAndClear):
4336         (TestWebKitAPI::testBitmapSetAndClear):
4337         (TestWebKitAPI::testBitmapSetEachNthBit):
4338         (TestWebKitAPI::testBitmapOperatorEqual):
4339         (TestWebKitAPI::testBitmapOperatorNotEqual):
4340         (TestWebKitAPI::testBitmapOperatorAssignment):
4341         (TestWebKitAPI::testBitmapOperatorBitOrAssignment):
4342         (TestWebKitAPI::testBitmapOperatorBitAndAssignment):
4343         (TestWebKitAPI::testBitmapOperatorBitXorAssignment):
4344         (TestWebKitAPI::testBitmapHash):
4345
4346 2020-05-20  Mark Lam  <mark.lam@apple.com>
4347
4348         Add more Bitmap methods.
4349         https://bugs.webkit.org/show_bug.cgi?id=212190
4350         <rdar://problem/63481333>
4351
4352         Reviewed by Robin Morisset.
4353
4354         Added test coverage for the new WTF::Bitmap methods.
4355
4356         * TestWebKitAPI/Tests/WTF/Bitmap.cpp:
4357         (TestWebKitAPI::testBitmapSetEachNthBit):
4358         (TestWebKitAPI::testBitmapOperatorAssignment):
4359         (TestWebKitAPI::testBitmapOperatorBitOrAssignment):
4360         (TestWebKitAPI::testBitmapOperatorBitAndAssignment):
4361         (TestWebKitAPI::testBitmapOperatorBitXorAssignment):
4362         (TestWebKitAPI::TEST):
4363
4364 2020-05-21  Yoshiaki Jitsukawa  <yoshiaki.jitsukawa@sony.com>
4365
4366         [PlayStation] Add minimal WKView API to enable TestWebKitAPI
4367         https://bugs.webkit.org/show_bug.cgi?id=211868
4368
4369         Reviewed by Alex Christensen.
4370
4371         Enable TestWebKitAPI
4372
4373         * TestWebKitAPI/PlatformPlayStation.cmake:
4374         * TestWebKitAPI/PlatformWebView.h:
4375         * TestWebKitAPI/playstation/PlatformUtilitiesPlayStation.cpp:
4376         (TestWebKitAPI::Util::createInjectedBundlePath):
4377         (TestWebKitAPI::Util::createURLForResource):
4378         * TestWebKitAPI/playstation/PlatformWebViewPlayStation.cpp:
4379         (TestWebKitAPI::PlatformWebView::PlatformWebView):
4380         (TestWebKitAPI::PlatformWebView::~PlatformWebView):
4381         (TestWebKitAPI::PlatformWebView::initialize):
4382         (TestWebKitAPI::PlatformWebView::resizeTo):
4383         (TestWebKitAPI::PlatformWebView::page const):
4384         (TestWebKitAPI::PlatformWebView::simulateSpacebarKeyPress):
4385         (TestWebKitAPI::PlatformWebView::simulateMouseMove):
4386         (TestWebKitAPI::PlatformWebView::simulateRightClick):
4387         (TestWebKitAPI::PlatformWebView::simulateButtonClick):
4388         * TestWebKitAPI/playstation/main.cpp:
4389         (loadLibraryOrExit):
4390         (main):
4391         Add PlayStation Platform support.
4392
4393         * TestWebKitAPI/Tests/WebKit/WKPreferences.cpp:
4394         (TestWebKitAPI::TEST):
4395         Use the same expected default font preferences as GTK's.
4396
4397 2020-05-21  Alex Christensen  <achristensen@webkit.org>
4398
4399         [macOS] TestWebKitAPI.WebKit.HTTPReferer is a flaky failure
4400         https://bugs.webkit.org/show_bug.cgi?id=212180
4401
4402         Reviewed by Darin Adler.
4403
4404         Sometimes an HTTP request takes more than one call to nw_connection_receive to receive entirely.
4405         Add a new abstraction Connection that wraps an nw_connection_t and knows how to read an entire request.
4406         Use strnstr instead of null terminating and using strstr.
4407
4408         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
4409         (TEST):
4410         * TestWebKitAPI/Tests/WebKitCocoa/NetworkProcess.mm:
4411         (TEST):
4412 &nbs