[iOS] Conditionally rename DatabaseProcess to StorageProcess when building for iOS...
[WebKit-https.git] / Tools / ChangeLog
1 2017-10-19  Andy Estes  <aestes@apple.com>
2
3         [iOS] Conditionally rename DatabaseProcess to StorageProcess when building for iOS devices
4         https://bugs.webkit.org/show_bug.cgi?id=178181
5         <rdar://problem/33660282>
6
7         Reviewed by Dan Bernstein.
8
9         * WebKitTestRunner/TestController.cpp:
10         (WTR::TestController::databaseProcessName):
11
12 2017-10-19  Saam Barati  <sbarati@apple.com>
13
14         Turn poly proto back on by default and remove the option
15         https://bugs.webkit.org/show_bug.cgi?id=178525
16
17         Reviewed by Mark Lam.
18
19         * Scripts/run-jsc-stress-tests:
20
21 2017-10-18  Ryosuke Niwa  <rniwa@webkit.org>
22
23         Don't expose raw HTML in pasteboard to the web content
24         https://bugs.webkit.org/show_bug.cgi?id=178422
25
26         Reviewed by Wenson Hsieh.
27
28         Added a test case for sanitizing web archive in the system pasteboard to strip privacy sensitive information
29         such as local file paths and potentially harmful scripts like event handlers serialized by WebKit prior to r223462.
30
31         * TestWebKitAPI/Tests/WebKitCocoa/PasteWebArchive.mm:
32         (PasteWebArchive.SanitizesHTML):
33
34 2017-10-18  Youenn Fablet  <youenn@apple.com>
35
36         TestController should clear all fetch caches when resetting its state
37         https://bugs.webkit.org/show_bug.cgi?id=178486
38
39         Reviewed by Chris Dumez.
40
41         Adding clearDOMCaches test runner method.
42         Using that method when resetting state.
43
44         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
45         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
46         (WTR::TestRunner::clearDOMCaches):
47         * WebKitTestRunner/InjectedBundle/TestRunner.h:
48         * WebKitTestRunner/TestInvocation.cpp:
49         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
50
51 2017-10-18  Chelsea Pugh  <cpugh@apple.com>
52
53         [iOS] Use new class name from UIKit when checking UITextSuggestion type
54         https://bugs.webkit.org/show_bug.cgi?id=178416
55
56         Reviewed by Tim Horton.
57
58         This updates our test using/mocking out UITextAutofillSuggestion instead of UIKeyboardLoginCredentialsSuggestion.
59
60         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
61         (-[UITextAutofillSuggestion initWithUsername:password:]): Copied from UIKit's implementation. This will serve as
62         a mock of this method for builds not containingit.
63         (+[UITextAutofillSuggestion autofillSuggestionWithUsername:password:]): Ditto.
64         (TestWebKitAPI::TEST): Use +[UITextAutofillSuggestion autofillSuggestionWithUsername:password:] inline instead of
65         helper function for creating a new suggestion.
66         (newUIKeyboardLoginCredentialsSuggestion): Deleted.
67
68         * TestWebKitAPI/ios/UIKitSPI.h:
69
70 2017-10-18  Fujii Hironori  <Hironori.Fujii@sony.com>
71
72         update-webkit-auxiliary-libs can't download WebKitAuxiliaryLibrary.zip due to 403 Forbidden
73         https://bugs.webkit.org/show_bug.cgi?id=178381
74
75         Reviewed by Alexey Proskuryakov.
76
77         The web server developer.apple.com seems to reject HTTP requests
78         without Accept header field.
79
80         * Scripts/update-webkit-dependency: Add 'Accept' header field to requests.
81
82 2017-10-18  Aakash Jain  <aakash_jain@apple.com>
83
84         webkitpy tests should have --json-output option
85         https://bugs.webkit.org/show_bug.cgi?id=178481
86
87         Reviewed by Alexey Proskuryakov.
88
89         * Scripts/webkitpy/test/main.py:
90         (Tester._parse_args): Added json-output argument.
91         (Tester._run_tests): Write output to json file.
92
93 2017-10-18  Wenson Hsieh  <wenson_hsieh@apple.com>
94
95         Unreviewed, rolling out r223291.
96
97         See WebCore ChangeLog for more detail.
98
99         Reverted changeset:
100
101         "Remove Editor::simplifyMarkup"
102         https://bugs.webkit.org/show_bug.cgi?id=178271
103         https://trac.webkit.org/changeset/223291
104
105 2017-10-18  Chris Dumez  <cdumez@apple.com>
106
107         Add an efficient data structure for WebCore to query if there is a Service Worker registered for a given origin
108         https://bugs.webkit.org/show_bug.cgi?id=177876
109         <rdar://problem/34813129>
110
111         Reviewed by Ryosuke Niwa.
112
113         Clear service worker registrations between test runs to avoid flakiness.
114
115         * WebKitTestRunner/TestController.cpp:
116         (WTR::TestController::resetStateToConsistentValues):
117
118 2017-10-18  Zan Dobersek  <zdobersek@igalia.com>
119
120         Remove remnants of OpenWebRTC
121         https://bugs.webkit.org/show_bug.cgi?id=178437
122
123         Reviewed by Alejandro G. Castro.
124
125         Drop OpenWebRTC packages from the GTK's Jhbuild modules file. Relevant
126         patches are also removed.
127
128         * gtk/jhbuild.modules:
129         * gtk/patches/libnice-0001-TURN-allow-REALM-to-be-empty.patch: Removed.
130         * gtk/patches/libnice-0001-nicesrc-spin-the-agent-mainloop-in-a-separate-thread.patch: Removed.
131         * gtk/patches/rtspsrc-timeout-on-udpsrc-is-in-nanoseconds.patch: Removed.
132         * gtk/patches/udpsrc-improve-timeouts.patch: Removed.
133
134 2017-10-17  Jonathan Bedard  <jbedard@apple.com>
135
136         webkitpy: Hang when workers write to the same stack trace file
137         https://bugs.webkit.org/show_bug.cgi?id=178402
138         <rdar://problem/35033432>
139
140         Reviewed by Aakash Jain.
141
142         Workers can hang if they all write to the same stack trace file when receiving
143         a SIGTERM. Attach the pid to the stack trace file name so that each worker
144         writes to a different file.
145
146         * Scripts/webkitpy/common/interupt_debugging.py:
147         (log_stack_trace_on_term.handler): Name stack trace file path/<pid>-filename.
148         (log_stack_trace_on_cntrl_c.handler): Ditto.
149
150 2017-10-17  John Wilander  <wilander@apple.com>
151
152         Add and remove cookie partition accordingly in intermediary redirect requests
153         https://bugs.webkit.org/show_bug.cgi?id=178369
154         <rdar://problem/34467603>
155
156         Reviewed by Brent Fulgham.
157
158         Adds the function statisticsNotifyObserver().
159
160         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
161         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
162         (WTR::InjectedBundle::statisticsNotifyObserver):
163         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
164         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
165         (WTR::TestRunner::statisticsNotifyObserver):
166         * WebKitTestRunner/InjectedBundle/TestRunner.h:
167
168 2017-10-17  Youenn Fablet  <youenn@apple.com>
169
170         Cache API implementation should be able to compute storage size for WebKit client applications.
171         https://bugs.webkit.org/show_bug.cgi?id=178350
172
173         Reviewed by Chris Dumez.
174
175         Adding support for a domCacheSize getter.
176
177         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
178         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
179         (WTR::TestRunner::domCacheSize):
180         * WebKitTestRunner/InjectedBundle/TestRunner.h:
181         * WebKitTestRunner/TestController.cpp:
182         (WTR::FetchCacheSizeForOriginCallbackContext::FetchCacheSizeForOriginCallbackContext):
183         (WTR::fetchCacheSizeForOriginCallback):
184         (WTR::TestController::domCacheSize):
185         * WebKitTestRunner/TestController.h:
186         * WebKitTestRunner/TestInvocation.cpp:
187         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
188
189 2017-10-17  Nael Ouedraogo  <nael.ouedraogo@crf.canon.fr>
190
191         [GStreamer][GTK][WPE] update-webkit-libs-jhbuild fails to detect changes in included moduleset files
192         https://bugs.webkit.org/show_bug.cgi?id=178206
193
194         Reviewed by Michael Catanzaro.
195
196         The update-webkit-libs-jhbuild scripts computes MD5 sum of GTK/WPE jhbuild configuration files to check if it
197         needs to rebuild the dependencies libraries. This patch fixes a bug when main GTK/WPE jhbuild modules
198         configuration file includes additional files (for example GStreamer module). It parses jhbuild.modules file to
199         check if additional files are included. If any, it computes MD5 sum for each of these included files.
200
201         * Scripts/update-webkit-libs-jhbuild:
202         (getJhbuildIncludedFilePaths): New function that returns included files in jhbuild.modules
203         (jhbuildConfigurationCheckFile): New function to check if MD5 sum file changes.
204         (jhbuildConfigurationChanged): Add MD5 sum check for included files.
205         (saveMd5File): New function to save MD5 sum of a file.
206         (saveJhbuildMd5): Add saving included files MD5 sum.
207         (deleteJhbuildMd5): Delete included files MD5 sum
208         * gtk/install-dependencies: Add perl-libXML lib that is used to parse jhbuild file.
209         * wpe/install-dependencies: Ditto.
210
211 2017-10-17  Tomas Popela  <tpopela@redhat.com>
212
213         Undefined WK_API_ENABLED warning when compiling COCOA content on WebKitGTK+
214         https://bugs.webkit.org/show_bug.cgi?id=178208
215
216         Check whether we are on COCOA platform before checking for
217         WK_API_ENABLED.
218
219         Reviewed by Ryosuke Niwa.
220
221         * WebKitTestRunner/TestController.cpp:
222         (WTR::TestController::clearDOMCache):
223
224 2017-10-17  Keith Miller  <keith_miller@apple.com>
225
226         Change WebCore sources to work with unified source builds
227         https://bugs.webkit.org/show_bug.cgi?id=178229
228
229         Rubber stamped by Tim Horton.
230
231         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
232
233 2017-10-16  Christopher Reid  <chris.reid@sony.com>
234
235         [Win] Webkit should still be able to build when unable to check if libraries are up to date
236         https://bugs.webkit.org/show_bug.cgi?id=178367
237
238         Adding a option to skip the check to see if windows libraries are up to date.
239         This option is useful when testing modified libraries. This option also allows
240         building webkit when GitHub blocks requests to verify the latest library version.
241
242
243         Reviewed by Per Arne Vollan.
244
245         * Scripts/build-webkit:
246
247 2017-10-12  Matt Rajca  <mrajca@apple.com>
248
249         Add API support for quirk that lets an arbitrary click allow auto-play.
250         https://bugs.webkit.org/show_bug.cgi?id=178227
251
252         Reviewed by Alex Christensen.
253
254         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
255         (TEST): Added API test.
256
257 2017-10-16  Maureen Daum  <mdaum@apple.com>
258
259         If an origin doesn't have databases in the Databases table we should still remove its information from disk in DatabaseTracker::deleteOrigin()
260         https://bugs.webkit.org/show_bug.cgi?id=178281
261         <rdar://problem/34576132>
262
263         Reviewed by Brent Fulgham.
264
265         Verify that if there is an entry in the Origins table but no entries in the Databases
266         table that we still remove the directory for the origin, and that we remove the
267         entry from the Origins table.
268
269         * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
270         (TestWebKitAPI::TEST):
271
272 2017-10-15  Ryosuke Niwa  <rniwa@webkit.org>
273
274         Cannot access images included in the content pasted from Microsoft Word
275         https://bugs.webkit.org/show_bug.cgi?id=124391
276         <rdar://problem/26862741>
277
278         Reviewed by Antti Koivisto.
279
280         Added tests for sanitizing HTML contents for copy & paste and drag & drop.
281
282         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
283         * TestWebKitAPI/Tests/WebKitCocoa/CopyHTML.mm: Added.
284         (readHTMLFromPasteboard): Added.
285         (createWebViewWithCustomPasteboardDataEnabled): Added.
286         (CopyHTML.Sanitizes): Added.
287
288         * TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm:
289         (createWebViewWithCustomPasteboardDataEnabled): Added to enable more tests on bots.
290
291         * TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm:
292         (writeRTFToPasteboard): Added.
293         (createWebViewWithCustomPasteboardDataEnabled): Added.
294         (createHelloWorldString): Added.
295         (PasteRTF.ExposesHTMLTypeInDataTransfer): Added.
296         (PasteRTFD.ExposesHTMLTypeInDataTransfer): Added.
297         (PasteRTFD.ImageElementUsesBlobURLInHTML): Added.
298
299         * TestWebKitAPI/Tests/WebKitCocoa/copy-html.html: Added.
300         * TestWebKitAPI/Tests/WebKitCocoa/paste-rtfd.html: Store the clipboardData contents for
301         PasteRTF.ExposesHTMLTypeInDataTransfer and PasteRTFD.ExposesHTMLTypeInDataTransfer.
302
303         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
304         (DataInteractionTests.DataTransferSanitizeHTML):
305
306 2017-10-16  Youenn Fablet  <youenn@apple.com>
307
308         Activate Cache API by default
309         https://bugs.webkit.org/show_bug.cgi?id=178186
310
311         Reviewed by Chris Dumez.
312
313         Removing explicit activation of cache api.
314
315         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
316         (WTR::InjectedBundle::beginTesting):
317         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
318         (WTR::TestRunner::setCacheAPIEnabled): Deleted.
319         * WebKitTestRunner/InjectedBundle/TestRunner.h:
320
321 2017-10-16  Ross Kirsling  <ross.kirsling@sony.com>
322
323         run-webkit-tests help text should mention arguments too
324         https://bugs.webkit.org/show_bug.cgi?id=178352
325
326         Reviewed by Tim Horton.
327
328         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
329         (parse_args):
330
331 2017-10-16  Maureen Daum  <mdaum@apple.com>
332
333         If we fail to delete any database file, don't remove its information from the tracker database
334         <rdar://problem/34576132> and https://bugs.webkit.org/show_bug.cgi?id=178251
335
336         Reviewed by Brady Eidson.
337
338         Add tests that verify we correctly delete databases and remove their information from
339         the tracker database, even if the database doesn't exist. Verify that if we fail to
340         delete a database, we don't remove its information from the tracker database.
341
342         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
343         Move DatabaseTrackerTest.cpp to DatabaseTrackerTest.mm so that we can use the cocoa
344         method for creating a temporary directory in the tests.
345         * TestWebKitAPI/Tests/WebCore/DatabaseTrackerTest.cpp: Removed.
346         The existing test was copied to DatabaseTrackerTest.mm.
347         * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm: Added.
348         (TestWebKitAPI::TEST):
349         (TestWebKitAPI::addToDatabasesTable):
350         (TestWebKitAPI::removeDirectoryAndAllContents):
351         (TestWebKitAPI::createFileAtPath):
352
353 2017-10-16  Ryan Haddad  <ryanhaddad@apple.com>
354
355         Unreviewed, rolling out r223422.
356
357         These tests are for a change that was rolled out in r223420
358
359         Reverted changeset:
360
361         "If we fail to delete any database file, don't remove its
362         information from the tracker database"
363         https://bugs.webkit.org/show_bug.cgi?id=178251
364         https://trac.webkit.org/changeset/223422
365
366 2017-10-16  Maureen Daum  <mdaum@apple.com>
367
368         If we fail to delete any database file, don't remove its information from the tracker database
369         <rdar://problem/34576132> and https://bugs.webkit.org/show_bug.cgi?id=178251
370
371         Reviewed by Brady Eidson.
372
373         Add tests that verify we correctly delete databases and remove their information from
374         the tracker database, even if the database doesn't exist. Verify that if we fail to
375         delete a database, we don't remove its information from the tracker database.
376
377         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
378         Move DatabaseTrackerTest.cpp to DatabaseTrackerTest.mm so that we can use the cocoa
379         method for creating a temporary directory in the tests.
380         * TestWebKitAPI/Tests/WebCore/DatabaseTrackerTest.cpp: Removed.
381         The existing test was copied to DatabaseTrackerTest.mm.
382         * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm: Added.
383         (TestWebKitAPI::TEST):
384         (TestWebKitAPI::addToDatabasesTable):
385         (TestWebKitAPI::removeDirectoryAndAllContents):
386         (TestWebKitAPI::createFileAtPath):
387
388 2017-10-16  David Kilzer  <ddkilzer@apple.com>
389
390         Add RELEASE_ASSERT_WITH_SECURITY_IMPLICATION() macro
391         <https://webkit.org/b/178269>
392
393         Reviewed by Alex Christensen.
394
395         * Scripts/webkitpy/style/checkers/cpp.py:
396         (check_language): Add checker to warn about using
397         ASSERT_WITH_SECURITY_IMPLICATION().
398         (CppChecker.categories): Add 'security/assertion' to list of
399         enabled checkers.
400         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
401         (CppStyleTest.test_debug_security_assertion): Add tests for
402         new checker.
403
404 2017-10-16  Chris Dumez  <cdumez@apple.com>
405
406         Clicks on Link with download attribute causes all (other) links to trigger download when clicked
407         https://bugs.webkit.org/show_bug.cgi?id=178267
408         <rdar://problem/34985016>
409
410         Reviewed by Darin Adler.
411
412         Use PassThrough policy in WKTR's InjectedBundle's decidePolicyForNewWindowAction so that the
413         request is sent to the UIProcess. This gets WKTR's closer to Safari behavior and helps
414         reproduce the bug. Without this change, I would not be able to write a regression test for
415         this bug that is very easily reproducible in Safari.
416
417         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
418         (WTR::InjectedBundlePage::decidePolicyForNewWindowAction):
419
420 2017-10-16  Emilio Cobos Álvarez  <emilio@crisal.io>
421
422         Add Emilio Cobos Álvarez to the contributors list.
423         https://bugs.webkit.org/show_bug.cgi?id=178334
424
425         Reviewed by Antti Koivisto.
426
427         * Scripts/webkitpy/common/config/contributors.json:
428
429 2017-10-07  Maciej Stachowiak  <mjs@apple.com>
430
431         Improve --help documentation and add --list-plans to show available benchmarks.
432         https://bugs.webkit.org/show_bug.cgi?id=178059
433
434         Reviewed by Ryosuke Niwa.
435
436         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
437         (BenchmarkRunner.available_plans): New function that returns the list of available plans.
438         (BenchmarkRunner.plan_directory): New method to centralize knowledge of where the plan files live.
439         (BenchmarkRunner._find_plan_file): Updated to use BenchmarkRunner.plan_directory
440
441         * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
442         
443         (parse_args): Help cleanup: Reordered options to put more common
444         ones at the top. Fixed wording. Added help for each
445         option. Explained default for each option that has one.
446
447         New option: --list-plans which tells you the available benchmarks.
448         
449         Code cleanup: Removed use of dest where redundant, made variable
450         names conforming to Python coding style.
451         
452         (run_benchmark_plan): Adapted for new variable names.
453         (list_benchmark_plans): New helper for --list-plans option.
454         (start): Account for --list-plans. Also use
455         BechmarkRunner.available_plans and use
456         BenchmarkRunner.plan_directory instead of duplicating
457         code/knowledge here.
458
459 2017-10-16  Wenson Hsieh  <wenson_hsieh@apple.com>
460
461         On ToT, event.dataTransfer.getData("text/uri-list") returns an empty string when dragging an image
462         https://bugs.webkit.org/show_bug.cgi?id=178301
463         <rdar://problem/34990050>
464
465         Reviewed by Darin Adler.
466
467         Fixes issues in DumpRenderTree's LocalPasteboard to ensure that drag-drop-href-as-url.html exposes files, and
468         also adds a new iOS drag and drop API test.
469
470         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
471         (-[LocalPasteboard addTypes:owner:]):
472         (-[LocalPasteboard setData:forType:]):
473
474         Fixes LocalPasteboard's implementation of changeCount to incremement when the pasteboard owner changes, rather
475         than every time data is changed. This is consistent with NSPasteboard behavior.
476
477         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
478         (TestWebKitAPI::TEST):
479
480         Adds a new API test to verify that an image and HTTP URL written by the platform is correctly web exposed.
481
482 2017-10-15  Darin Adler  <darin@apple.com>
483
484         UTF-8 decoding produces one replacement character per byte; Encoding standard requires one replacement character per illegal sequence instead
485         https://bugs.webkit.org/show_bug.cgi?id=178207
486
487         Reviewed by Sam Weinig.
488
489         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Added test.
490         * TestWebKitAPI/Tests/WebCore/TextCodec.cpp: Added.
491         (TestWebKitAPI::decodeHexTestBytes): Decodes a string so we can write readable tests.
492         (TestWebKitAPI::escapeNonPrintableASCIICharacters): Encodes a string so we can write readable tests.
493         (TestWebKitAPI::TEST): Added some UTF-8 tests and UTF-8 invalid sequences tests.
494         Would be smart to add more tests for other cases, exercising the fast ASCII loop for example, and
495         other encodings.
496
497 2017-10-14  Adrian Perez de Castro  <aperez@igalia.com>
498
499         [WPE] JHBuild build directory DependenciesWPE/Build is not removed by update-webkit-libs-jhbuild
500         https://bugs.webkit.org/show_bug.cgi?id=178212
501
502         Reviewed by Michael Catanzaro.
503
504         * Scripts/update-webkit-libs-jhbuild:
505         (cleanJhbuild): The WPE JHBuild also uses a separate "Build" subdirectory, so do not skip
506         cleaning it when "--wpe" is passed to the script.
507
508 2017-10-13  Adrian Perez de Castro  <aperez@igalia.com>
509
510         [WPE] Fontconfig fails build in JHBuild with “error: conflicting types for ‘FcObjectTypeHash’”
511         https://bugs.webkit.org/show_bug.cgi?id=178283
512
513         Reviewed by Žan Doberšek.
514
515         * wpe/jhbuild.modules: Flag Fontconfig to be built inside the source directory, otherwise
516         compilation fails. While at it, pass "--disable-docs" to cut a bit on build time.
517
518 2017-10-13  Youenn Fablet  <youenn@apple.com>
519
520         Implement listing origins for which CacheStorage is storing data
521         https://bugs.webkit.org/show_bug.cgi?id=178236
522
523         Reviewed by Chris Dumez.
524
525         Adding hasDOMCache API for checking whether origin is storing data through Cache API.
526
527         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
528         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
529         (WTR::TestRunner::hasDOMCache):
530         * WebKitTestRunner/InjectedBundle/TestRunner.h:
531         * WebKitTestRunner/TestController.cpp:
532         (WTR::FetchCacheOriginsCallbackContext::FetchCacheOriginsCallbackContext):
533         (WTR::fetchCacheOriginsCallback):
534         (WTR::TestController::hasDOMCache):
535         * WebKitTestRunner/TestController.h:
536         * WebKitTestRunner/TestInvocation.cpp:
537         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
538
539 2017-10-13  Alex Christensen  <achristensen@webkit.org>
540
541         Remove Editor::simplifyMarkup
542         https://bugs.webkit.org/show_bug.cgi?id=178271
543
544         Reviewed by Wenson Hsieh.
545
546         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
547         * TestWebKitAPI/Tests/mac/SimplifyMarkup.mm: Removed.
548
549 2017-10-11  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
550
551         [GLib] WebKitNavigationAction should tell whether it is a redirect
552         https://bugs.webkit.org/show_bug.cgi?id=178178
553
554         Test that WebKitNavigationAction properly reports being a redirect.
555
556         Reviewed by Carlos Garcia Campos.
557
558         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitPolicyClient.cpp:
559         (testNavigationPolicy): test that loading /redirect leads to a redirect WebKitNavigationAction.
560         (serverCallback): add a /redirect path to the server, which causes a redirect.
561
562 2017-10-13  Chris Dumez  <cdumez@apple.com>
563
564         Unreviewed, fix webkitpy failure after r223273
565
566         * Scripts/webkitpy/w3c/test_importer_unittest.py:
567         (TestImporterTest.test_harnesslinks_conversion):
568
569 2017-10-12  Chris Dumez  <cdumez@apple.com>
570
571         import-w3c-tests modifies test sources and sometimes causes them to fail
572         https://bugs.webkit.org/show_bug.cgi?id=178234
573
574         Reviewed by Ryosuke Niwa.
575
576         Update import-w3c-tests to stop rewriting tests as this is causing some tests
577         to fail unexpectedly.
578
579         * Scripts/webkitpy/w3c/test_importer.py:
580         (TestImporter.import_tests):
581
582 2017-10-12  Youenn Fablet  <youenn@apple.com>
583
584         Layout Test http/tests/cache-storage/cache-clearing.https.html is failing
585         https://bugs.webkit.org/show_bug.cgi?id=178200
586
587         Reviewed by Chris Dumez.
588
589         Making clearDOMCache wait for removal completion to exit.
590         This removes the risk to interact with the cache while deleting it which will end up be racy in tests.
591
592         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
593         (WTR::TestRunner::clearDOMCache):
594         * WebKitTestRunner/TestController.cpp:
595         (WTR::ClearDOMCacheCallbackContext::ClearDOMCacheCallbackContext):
596         (WTR::clearDOMCacheCallback):
597         (WTR::TestController::clearDOMCache):
598         * WebKitTestRunner/TestInvocation.cpp:
599         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
600         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
601
602 2017-10-12  John Wilander  <wilander@apple.com>
603
604         ResourceLoadObserver::logFrameNavigation() should use redirectResponse.url()
605         https://bugs.webkit.org/show_bug.cgi?id=175257
606         <rdar://problem/33359866>
607
608         Reviewed by Brent Fulgham.
609
610         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
611         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
612         (WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
613         (WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
614         * WebKitTestRunner/InjectedBundle/TestRunner.h:
615         * WebKitTestRunner/TestController.cpp:
616         (WTR::TestController::isStatisticsRegisteredAsSubFrameUnder):
617             Not implemented.
618         (WTR::TestController::isStatisticsRegisteredAsRedirectingTo):
619             Not implemented.
620         * WebKitTestRunner/TestController.h:
621         * WebKitTestRunner/TestInvocation.cpp:
622         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
623         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
624         (WTR::TestController::isStatisticsRegisteredAsSubFrameUnder):
625             Implemented platform-specific.
626         (WTR::TestController::isStatisticsRegisteredAsRedirectingTo):
627             Implemented platform-specific.
628
629 2017-10-12  Andy Estes  <aestes@apple.com>
630
631         [iOS] Conditionally rename DatabaseProcess to StorageProcess when building for iOS devices
632         https://bugs.webkit.org/show_bug.cgi?id=178181
633         <rdar://problem/33660282>
634
635         Reviewed by Dan Bernstein.
636
637         * WebKitTestRunner/TestController.cpp:
638         (WTR::TestController::databaseProcessName):
639
640 2017-10-12  Myles C. Maxfield  <mmaxfield@apple.com>
641
642         Emit SPIR-V from WSL compiler (Part 1)
643         https://bugs.webkit.org/show_bug.cgi?id=177998
644
645         Reviewed by Filip Pizlo.
646
647         This patch implements the first half of a SPIR-V codegen phase for WSL.
648         This includes all the operations which aren't actually emitting the contents
649         of functions themselves. For example, this includes things like representing
650         WSL types with SPIR-V types, and declaring shaders' inputs and outputs. A
651         future patch will actually emit the contents of functions.
652
653         There are two helper visitors here: SPIRVTypeAnalyzer which generates SPIR-V
654         types from WSL types, and SPIRVPrimitiveVariableAnalyzer which identifies
655         input and output variables from a shader (and assigns location values to
656         each one).
657
658         This patch is currently pursuing the "logical mode" detailed in
659         https://bugs.webkit.org/show_bug.cgi?id=176967. In this mode, each pointer and
660         array reference operation can be statically traced to the variable or array it
661         is operating on.
662
663         This has the interesting property where accessing a pointer inside an array is
664         forbidden, because the array index may be computed at runtime, so the compiler
665         can't know at compile time which variable the pointer operation will be
666         accessing. However, this isn't true for structs; the program must statically
667         state which struct member it is accessing. Therefore, pointers or array
668         references must not transitively appear within an array, but they may appear
669         within a struct. The same logic applies to array references; those get lowered
670         to just two indexes in SPIR-V (a lower bound and an upper bound).
671
672         So, outside of an array, SPIR-V types don't need to include any pointers because
673         any operation with the pointer doesn't need access to the runtime value of the
674         pointer. Inside of an array, pointers are forbidden. Therefore, SPIR-V types
675         will never include any pointers.
676
677         This means that, for example, WSL can represent a linked list in logical mode.
678         However, a WSL program cannot iterate across the list, because that would require
679         assigning to a pointer. So instead, a program using a linked list could only say
680         something like "list.ptr->ptr->ptr->value".
681
682         * WebGPUShadingLanguageRI/LateChecker.js:
683         (LateChecker.prototype._checkShaderType):
684         * WebGPUShadingLanguageRI/SPIR-V.js:
685         (SPIRV.OperandChecker.prototype._isStar):
686         (SPIRV.OperandChecker.prototype.nextComparisonType):
687         (SPIRV.OperandChecker.prototype.finalize):
688         (SPIRV.OperandChecker):
689         * WebGPUShadingLanguageRI/SPIRV.html:
690         * WebGPUShadingLanguageRI/SPIRVCodegen.js: Added.
691         (findEntryPoints):
692         (emitTypes.doEmitTypes):
693         (emitTypes):
694         (ConstantFinder.prototype.visitGenericLiteralType):
695         (ConstantFinder):
696         (generateSPIRV):
697         * WebGPUShadingLanguageRI/SPIRVTypeAnalyzer.js: Added.
698         (SPIRVTypeAnalyzer):
699         (SPIRVTypeAnalyzer.prototype.get program):
700         (SPIRVTypeAnalyzer.prototype.get typeMap):
701         (SPIRVTypeAnalyzer.prototype.get currentId):
702         (SPIRVTypeAnalyzer.prototype.get stack):
703         (SPIRVTypeAnalyzer.prototype.visitTypeRef):
704         (SPIRVTypeAnalyzer.prototype._encounterType):
705         (SPIRVTypeAnalyzer.prototype.visitNullType):
706         (SPIRVTypeAnalyzer.prototype.visitGenericLiteralType):
707         (SPIRVTypeAnalyzer.prototype.visitNativeType):
708         (SPIRVTypeAnalyzer.prototype.visitEnumType):
709         (SPIRVTypeAnalyzer.prototype.visitPtrType):
710         (SPIRVTypeAnalyzer.prototype.visitArrayRefType):
711         (SPIRVTypeAnalyzer.prototype.visitArrayType):
712         (SPIRVTypeAnalyzer.prototype.visitStructType):
713         * WebGPUShadingLanguageRI/SPIRVVariableAnalyzer.js: Added.
714         (SPIRVPrimitiveVariableAnalyzer):
715         (SPIRVPrimitiveVariableAnalyzer.prototype.get program):
716         (SPIRVPrimitiveVariableAnalyzer.prototype.get typeMap):
717         (SPIRVPrimitiveVariableAnalyzer.prototype.get currentId):
718         (SPIRVPrimitiveVariableAnalyzer.prototype.get currentLocation):
719         (SPIRVPrimitiveVariableAnalyzer.prototype.get nameComponents):
720         (SPIRVPrimitiveVariableAnalyzer.prototype.get result):
721         (SPIRVPrimitiveVariableAnalyzer.prototype.visitTypeRef):
722         (SPIRVPrimitiveVariableAnalyzer.prototype.visitNullType):
723         (SPIRVPrimitiveVariableAnalyzer.prototype.visitGenericLiteralType):
724         (SPIRVPrimitiveVariableAnalyzer.prototype.visitNativeType):
725         (SPIRVPrimitiveVariableAnalyzer.prototype.visitEnumType):
726         (SPIRVPrimitiveVariableAnalyzer.prototype.visitPtrType):
727         (SPIRVPrimitiveVariableAnalyzer.prototype.visitArrayRefType):
728         (SPIRVPrimitiveVariableAnalyzer.prototype.visitArrayType):
729         (SPIRVPrimitiveVariableAnalyzer.prototype.visitStructType):
730         * WebGPUShadingLanguageRI/WSL.md:
731         * WebGPUShadingLanguageRI/index.html:
732
733 2017-09-29  Filip Pizlo  <fpizlo@apple.com>
734
735         Enable gigacage on iOS
736         https://bugs.webkit.org/show_bug.cgi?id=177586
737
738         Reviewed by JF Bastien.
739         
740         Add a mode to test disabling Gigacage.
741
742         * Scripts/run-jsc-stress-tests:
743         * Scripts/webkitruby/jsc-stress-test-writer-default.rb:
744
745 2017-10-11  Sam Weinig  <sam@webkit.org>
746
747         Remove out-parameter variants of copyToVector
748         https://bugs.webkit.org/show_bug.cgi?id=178155
749
750         Reviewed by Tim Horton.
751
752         * DumpRenderTree/JavaScriptThreading.cpp:
753         (stopJavaScriptThreads):
754
755 2017-10-12  Sam Weinig  <sam@webkit.org>
756
757         It should be possible to iterate just the values (and not the counts) of a HashCountedSet
758         https://bugs.webkit.org/show_bug.cgi?id=178169
759
760         Reviewed by Daniel Bates.
761
762         * TestWebKitAPI/Tests/WTF/HashCountedSet.cpp:
763         (TestWebKitAPI::TEST):
764         Add test for HashCountedSet's new values() range.
765
766 2017-10-11  Frederic Wang  <fwang@igalia.com>
767
768         run-safari --ios-simulator is no longer working with Xcode 9
769         https://bugs.webkit.org/show_bug.cgi?id=177595
770
771         Reviewed by Daniel Bates.
772
773         In Xcode 9, the path of the simulator application is now in a new CoreSimulator subdirectory
774         of the iphoneOS SDK platform. This patch updates webkitdirs.pm to use the new path in
775         Xcode 9 or higher so that it is possible to run Safari on the iOS simulator again. It also
776         does some minor code refactoring to improve code reuse.
777
778         * Scripts/configure-xcode-for-ios-development: Move sdkDirectory() and sdkPlatformDirectory()
779         into webkitdirs.
780         (sdkDirectory): Deleted.
781         (sdkPlatformDirectory): Deleted.
782         * Scripts/webkitdirs.pm: Expose new sdkDirectory() and sdkPlatformDirectory().
783         (sdkDirectory): Moved from configure-xcode-for-ios-development.
784         (sdkPlatformDirectory): Ditto.
785         (XcodeSDKPath): Rely on sdkDirectory() to implement this function.
786         (iosSimulatorApplicationsPath): In Xcode 9 or higher use the new path. It is calculated
787         by relying on sdkPlatformDirectory().
788
789 2017-10-11  Dewei Zhu  <dewei_zhu@apple.com>
790
791         run-benchmark script should set '__XPC_DYLD_FRAMEWORK_PATH' while launching local-built Safari on Mac.
792         https://bugs.webkit.org/show_bug.cgi?id=178199
793
794         Reviewed by Saam Barati.
795
796         '__XPC_DYLD_FRAMEWORK_PATH' should be set while launching Safari on run-benchmark script.
797         'force_remove' function should support both file and directory.
798
799         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
800         (OSXSafariDriver.launch_url):
801         * Scripts/webkitpy/benchmark_runner/utils.py:
802         (force_remove):
803
804 2017-10-11  Saam Barati  <sbarati@apple.com>
805
806         Runtime disable poly proto because it may be a 3-4% Speedometer regression
807         https://bugs.webkit.org/show_bug.cgi?id=178192
808
809         Reviewed by JF Bastien.
810
811         * Scripts/run-jsc-stress-tests:
812
813 2017-10-11  Youenn Fablet  <youenn@apple.com>
814
815         Add API to clean CacheStorage data
816         https://bugs.webkit.org/show_bug.cgi?id=178034
817
818         Reviewed by Chris Dumez.
819
820         Adding internals API to trigger deleting all or origin-persistent cache storage persistent data. 
821
822         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
823         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
824         (WTR::TestRunner::clearDOMCache):
825         * WebKitTestRunner/InjectedBundle/TestRunner.h:
826         * WebKitTestRunner/TestController.cpp:
827         (WTR::TestController::clearDOMCache):
828         * WebKitTestRunner/TestController.h:
829         * WebKitTestRunner/TestInvocation.cpp:
830         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
831
832 2017-10-11  Chris Dumez  <cdumez@apple.com>
833
834         [Geolocation] Expose Coordinates.floorLevel
835         https://bugs.webkit.org/show_bug.cgi?id=178173
836         <rdar://problem/34918936>
837
838         Reviewed by Ryosuke Niwa.
839
840         Add test infrastructure for testing Coordinates.floorLevel.
841
842         * DumpRenderTree/TestRunner.cpp:
843         (setMockGeolocationPositionCallback):
844         * DumpRenderTree/TestRunner.h:
845         * DumpRenderTree/mac/TestRunnerMac.mm:
846         (TestRunner::setMockGeolocationPosition):
847         * DumpRenderTree/win/TestRunnerWin.cpp:
848         (TestRunner::setMockGeolocationPosition):
849         * WebKitTestRunner/GeolocationProviderMock.cpp:
850         (WTR::GeolocationProviderMock::setPosition):
851         * WebKitTestRunner/GeolocationProviderMock.h:
852         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
853         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
854         (WTR::InjectedBundle::setMockGeolocationPosition):
855         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
856         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
857         (WTR::TestRunner::setMockGeolocationPosition):
858         * WebKitTestRunner/InjectedBundle/TestRunner.h:
859         * WebKitTestRunner/TestController.cpp:
860         (WTR::TestController::setMockGeolocationPosition):
861         * WebKitTestRunner/TestController.h:
862         * WebKitTestRunner/TestInvocation.cpp:
863         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
864
865 2017-10-11  Youenn Fablet  <youenn@apple.com>
866
867         Bump default cache storage quota to 20MB
868         https://bugs.webkit.org/show_bug.cgi?id=178132
869
870         Reviewed by Alex Christensen.
871
872         * WebKitTestRunner/TestController.cpp:
873         (WTR::TestController::generateContextConfiguration const):
874         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
875         (WTR::initializeWebViewConfiguration): Setting quota to 400kb
876
877 2017-10-11  Commit Queue  <commit-queue@webkit.org>
878
879         Unreviewed, rolling out r223113 and r223121.
880         https://bugs.webkit.org/show_bug.cgi?id=178182
881
882         Reintroduced 20% regression on Kraken (Requested by rniwa on
883         #webkit).
884
885         Reverted changesets:
886
887         "Enable gigacage on iOS"
888         https://bugs.webkit.org/show_bug.cgi?id=177586
889         https://trac.webkit.org/changeset/223113
890
891         "Use one virtual allocation for all gigacages and their
892         runways"
893         https://bugs.webkit.org/show_bug.cgi?id=178050
894         https://trac.webkit.org/changeset/223121
895
896 2017-10-11  Ryosuke Niwa  <rniwa@webkit.org>
897
898         Sanitize URL in pasteboard for other applications and cross origin content
899         https://bugs.webkit.org/show_bug.cgi?id=178060
900         <rdar://problem/34874518>
901
902         Reviewed by Wenson Hsieh.
903
904         Added API tests for sanitizing URLs copied from web content, and that the original URL is exposed to the web content.
905
906         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
907         * TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm: Added.
908         (readURLFromPasteboard): A helper function.
909         * TestWebKitAPI/Tests/WebKitCocoa/copy-url.html: Added.
910         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
911         (DataInteractionTests.DataTransferGetDataWhenDroppingCustomData): Rebaselined. https://www.apple.com is no longer
912         normalized to https://www.apple.com/ by NSURL / UIPasteboard as expected.
913         (DataInteractionTests.DataTransferSetDataValidURL): Added.
914         (DataInteractionTests.DataTransferSetDataUnescapedURL): Added.
915         (DataInteractionTests.qDataTransferSetDataInvalidURL): Added.
916
917 2017-10-11  Chris Dumez  <cdumez@apple.com>
918
919         Modernize Geolocation code
920         https://bugs.webkit.org/show_bug.cgi?id=178148
921
922         Reviewed by Ryosuke Niwa.
923
924         * DumpRenderTree/mac/TestRunnerMac.mm:
925         (TestRunner::setMockGeolocationPosition):
926
927 2017-10-11  Nael Ouedraogo  <nael.ouedraogo@crf.canon.fr>
928
929         [GStreamer] Many media source tests crashing with GStreamer-CRITICAL **: _gst_util_uint64_scale: assertion 'denom != 0' failed in gst_qtdemux_configure_stream()
930         https://bugs.webkit.org/show_bug.cgi?id=176804
931
932         Reviewed by Michael Catanzaro.
933
934         Add patch to fix assert in qtdemux.
935
936         * gstreamer/jhbuild.modules:
937         * gstreamer/patches/gst-plugins-good-0009-qtdemux-fix-assert-when-moof-contains-one-sample.patch: Added.
938
939 2017-10-11  Tomas Popela  <tpopela@redhat.com>
940
941         Use https for trac changeset and browser links
942         https://bugs.webkit.org/show_bug.cgi?id=178167
943
944         Reviewed by Alexey Proskuryakov.
945
946         Switch the http://trac.webkit.org/changeset and
947         http://trac.webkit.org/browser links that are printed by webkitpy to
948         https. Also update the test expectations.
949
950         * Scripts/webkitpy/common/checkout/checkout_unittest.py:
951         * Scripts/webkitpy/common/config/committervalidator_unittest.py:
952         (CommitterValidatorTest.test_flag_permission_rejection_message):
953         * Scripts/webkitpy/common/config/urls.py:
954         (view_source_url):
955         (view_revision_url):
956         * Scripts/webkitpy/common/net/bugzilla/bug_unittest.py:
957         (BugTest.test_commit_revision):
958         * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
959         * Scripts/webkitpy/common/net/buildbot/buildbot_unittest.py:
960         * Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:
961         (MainTest):
962         (MainTest.test_run_with_upload_json_should_generate_perf_webkit_json):
963         * Scripts/webkitpy/style/checkers/changelog_unittest.py:
964         (ChangeLogCheckerTest.test_missing_bug_number):
965         * Scripts/webkitpy/tool/bot/feeders_unittest.py:
966         * Scripts/webkitpy/tool/bot/flakytestreporter_unittest.py:
967         * Scripts/webkitpy/tool/bot/ircbot_unittest.py:
968         (IRCBotTest.test_rollout):
969         (IRCBotTest.test_revert):
970         (IRCBotTest.test_multi_rollout):
971         (IRCBotTest.test_rollout_with_r_in_svn_revision):
972         (IRCBotTest.test_multi_rollout_with_r_in_svn_revision):
973         (IRCBotTest.test_rollout_invalidate_reason):
974         (test_multi_rollout_invalidate_reason):
975         * Scripts/webkitpy/tool/bot/sheriff_unittest.py:
976         * Scripts/webkitpy/tool/commands/download_unittest.py:
977         * Scripts/webkitpy/tool/commands/newcommitbot_unittest.py:
978         * Scripts/webkitpy/tool/commands/queues_unittest.py:
979         * Scripts/webkitpy/tool/commands/suggestnominations.py:
980         (SuggestNominations._count_commit):
981         * Scripts/webkitpy/tool/commands/upload_unittest.py:
982         * Scripts/webkitpy/tool/servers/data/rebaselineserver/util.js:
983         (getTracUrl):
984         (getSortedKeys):
985         * Scripts/webkitpy/tool/steps/closebugforlanddiff_unittest.py:
986         (CloseBugForLandDiffTest.test_empty_state):
987         * Scripts/webkitpy/tool/steps/commit_unittest.py:
988         (CommitTest._test_check_test_expectations):
989         * Scripts/webkitpy/tool/steps/preparechangelogforrevert_unittest.py:
990         (UpdateChangeLogsForRevertTest):
991
992 2017-10-10  Ryosuke Niwa  <rniwa@webkit.org>
993
994         Enable custom pasteboard data in DumpRenderTree and WebKitTestRunner
995         https://bugs.webkit.org/show_bug.cgi?id=178154
996
997         Reviewed by Wenson Hsieh.
998
999         Fixed the bug that LocalPasteboard would fail to load the promise type if data is set after declaring types
1000         by delaying the call to provideDataForType until when dataForType is called.
1001
1002         Without this fix, fast/events/dropzone-002.html would start failing after enabling custom pasteboard data.
1003         With this fix, fast/events/dropzone-005.html also starts passing.
1004
1005         * DumpRenderTree/mac/DumpRenderTree.mm:
1006         (resetWebPreferencesToConsistentValues):
1007         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
1008         (-[LocalPasteboard addTypes:owner:]):
1009         (-[LocalPasteboard dataForType:]):
1010         * WebKitTestRunner/TestController.cpp:
1011         (WTR::TestController::resetPreferencesToConsistentValues):
1012
1013 2017-10-10  Joanmarie Diggs  <jdiggs@igalia.com>
1014
1015         AX: [ATK] ARIA form role should be mapped to ATK_ROLE_LANDMARK; not ATK_ROLE_FORM
1016         https://bugs.webkit.org/show_bug.cgi?id=178137
1017
1018         Reviewed by Chris Fleizach.
1019
1020         Add handling for ATK_ROLE_LANDMARK resulting from the ARIA form role.
1021
1022         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1023
1024 2017-10-10  Jonathan Bedard  <jbedard@apple.com>
1025
1026         run-webkit-tests: upload test results to multiple servers
1027         https://bugs.webkit.org/show_bug.cgi?id=178012
1028         <rdar://problem/34856501>
1029
1030         Reviewed by Lucas Forschler.
1031
1032         Allowing uploading of results to multiple servers makes developing new results
1033         databases much easier, and does not complicate uploading logic.
1034
1035         * Scripts/webkitpy/layout_tests/controllers/manager.py:
1036         (Manager.upload_results): Iterate through the list of results server hosts and
1037         send results to each one.
1038         * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
1039         (JSONLayoutResultsGenerator.__init__): Accept a list of test results servers.
1040         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
1041         (JSONResultsGenerator.__init__): Accept a list of test results servers.
1042         (JSONResultsGenerator.get_json): Pick which server to download from by index.
1043         (JSONResultsGenerator.upload_json_files): Upload the JSON to each results server.
1044         (JSONResultsGenerator._get_archived_json_results): Pick which server to download from.
1045         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1046         (parse_args): Allow multiple test-results-servers and results-server-hosts to be
1047         passed to run-webkit-tests. 
1048
1049 2017-10-09  Youenn Fablet  <youenn@apple.com>
1050
1051         Vector should be able to easily create from a list of movable only items
1052         https://bugs.webkit.org/show_bug.cgi?id=176432
1053
1054         Reviewed by Darin Adler.
1055
1056         * TestWebKitAPI/Tests/WTF/Vector.cpp:
1057         (TestWebKitAPI::TEST):
1058
1059 2017-09-29  Filip Pizlo  <fpizlo@apple.com>
1060
1061         Enable gigacage on iOS
1062         https://bugs.webkit.org/show_bug.cgi?id=177586
1063
1064         Reviewed by JF Bastien.
1065         
1066         Add a mode to test disabling Gigacage.
1067
1068         * Scripts/run-jsc-stress-tests:
1069         * Scripts/webkitruby/jsc-stress-test-writer-default.rb:
1070
1071 2017-10-09  Commit Queue  <commit-queue@webkit.org>
1072
1073         Unreviewed, rolling out r223015 and r223025.
1074         https://bugs.webkit.org/show_bug.cgi?id=178093
1075
1076         Regressed Kraken on iOS by 20% (Requested by keith_mi_ on
1077         #webkit).
1078
1079         Reverted changesets:
1080
1081         "Enable gigacage on iOS"
1082         https://bugs.webkit.org/show_bug.cgi?id=177586
1083         http://trac.webkit.org/changeset/223015
1084
1085         "Unreviewed, disable Gigacage on ARM64 Linux"
1086         https://bugs.webkit.org/show_bug.cgi?id=177586
1087         http://trac.webkit.org/changeset/223025
1088
1089 2017-10-09  Sam Weinig  <sam@webkit.org>
1090
1091         Make HashMap::keys() and HashMap::values() work with WTF::map/WTF::copyToVector
1092         https://bugs.webkit.org/show_bug.cgi?id=178072
1093
1094         Reviewed by Darin Adler.
1095
1096         * TestWebKitAPI/Tests/WTF/Vector.cpp:
1097         (TestWebKitAPI::TEST):
1098         
1099             Add tests for HashMap::keys() and HashMap::values() working with copyToVector.
1100
1101 2017-10-05  Frederic Wang  <fwang@igalia.com>
1102
1103         Remove WOFF2 from Source/ThirdParty.
1104         https://bugs.webkit.org/show_bug.cgi?id=177862
1105
1106         Reviewed by Michael Catanzaro.
1107
1108         * Scripts/webkitpy/style/checker.py: Remove woff2.
1109         * gtk/jhbuild.modules: Add new jhbuild module for woff2.
1110
1111 2017-10-08  Sam Weinig  <sam@webkit.org>
1112
1113         It should be possible to create a ListHashSet with a std::initializer_list.
1114         https://bugs.webkit.org/show_bug.cgi?id=178070
1115
1116         Reviewed by Darin Adler.
1117
1118         * TestWebKitAPI/Tests/WTF/ListHashSet.cpp:
1119         (TestWebKitAPI::TEST):
1120         Add a test for using std::initializer_list with ListHashSet.
1121
1122 2017-10-08  Sam Weinig  <sam@webkit.org>
1123
1124         There should be a version of copyToVector that returns a Vector, rather than using an out parameter
1125         https://bugs.webkit.org/show_bug.cgi?id=177732
1126
1127         Reviewed by Saam Barati.
1128
1129         * TestWebKitAPI/Tests/WTF/Vector.cpp:
1130         (TestWebKitAPI::TEST):
1131         Add tests for the new copyToVector and copyToVectorOf functions.
1132
1133 2017-10-08  Darin Adler  <darin@apple.com>
1134
1135         Fix bugs related to setting reflected floating point DOM attributes
1136         https://bugs.webkit.org/show_bug.cgi?id=178061
1137
1138         Reviewed by Sam Weinig.
1139
1140         * TestWebKitAPI/Tests/WTF/AtomicString.cpp: Added a test of the
1141         AtomicString::number function, based on the test cases we already
1142         had for String::numberToStringECMAScript, and with some additional
1143         cases with powers of 10 that check handling of trailng zeroes.
1144
1145         * TestWebKitAPI/Tests/WTF/WTFString.cpp: Added test cases to the
1146         existing tests of the String::numberToStringECMAScript function
1147         as above. Also added tests for String::number and for
1148         String::numberToStringFixedWidth. Also changed the tests to all use
1149         EXPECT instead of ASSERT macros since these are all non-fatal.
1150
1151         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1152         (WTR::dumpFrameScrollPosition): Use StringBuilder::appendECMAScriptNumber
1153         instead of String::number.
1154
1155 2017-10-08  Dean Jackson  <dino@apple.com>
1156
1157         Make sort-Xcode-project file handle UnifiedSources
1158         https://bugs.webkit.org/show_bug.cgi?id=178042
1159
1160         Reviewed by Sam Weinig.
1161
1162         Sort the UnifiedSource(\d+) files by number rather
1163         than alphabetically.
1164
1165         * Scripts/sort-Xcode-project-file:
1166         (sortChildrenByFileName):
1167         (sortFilesByFileName):
1168
1169 2017-09-29  Filip Pizlo  <fpizlo@apple.com>
1170
1171         Enable gigacage on iOS
1172         https://bugs.webkit.org/show_bug.cgi?id=177586
1173
1174         Reviewed by JF Bastien.
1175         
1176         Add a mode to test disabling Gigacage.
1177
1178         * Scripts/run-jsc-stress-tests:
1179         * Scripts/webkitruby/jsc-stress-test-writer-default.rb:
1180
1181 2017-10-06  Aishwarya Nirmal  <anirmal@apple.com>
1182
1183         [iOS] Respect the "caret-color" CSS property when editing
1184         https://bugs.webkit.org/show_bug.cgi?id=177489
1185         <rdar://problem/34600419>
1186
1187         Reviewed by Tim Horton.
1188
1189         Adds test for iOS caret color support.
1190
1191         * TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm:
1192         (TestWebKitAPI::TEST):
1193         * TestWebKitAPI/ios/UIKitSPI.h:
1194
1195 2017-10-06  Alex Christensen  <achristensen@webkit.org>
1196
1197         Add more infrastructure to apply custom header fields to same-origin requests
1198         https://bugs.webkit.org/show_bug.cgi?id=177629
1199
1200         Reviewed by Ryosuke Niwa.
1201
1202         * TestWebKitAPI/Tests/WebCore/HTTPHeaderField.cpp:
1203         (canonicalizeHTTPHeader):
1204         (shouldRemainUnchanged):
1205         (shouldBeInvalid):
1206         (shouldBecome):
1207         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
1208         (TEST):
1209         (expectHeaders):
1210         (-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
1211         (-[CustomHeaderFieldsDelegate webView:startURLSchemeTask:]):
1212         (-[CustomHeaderFieldsDelegate webView:stopURLSchemeTask:]):
1213
1214         Test main resource requests, subresource requests, and cross-origin requests.
1215
1216 2017-10-06  Wenson Hsieh  <wenson_hsieh@apple.com>
1217
1218         [iOS] Tweak support for classifying form controls (followup to r222487)
1219         https://bugs.webkit.org/show_bug.cgi?id=177917
1220         <rdar://problem/34820122>
1221
1222         Reviewed by Dean Jackson.
1223
1224         Minor cleanup around autofill API tests added in r222487. Additionally, augments some of these API tests to
1225         verify that after blurring the focused element, the content view no longer accepts autofill credentials (see
1226         WebKit ChangeLog for more details). Also augments tests to verify that the URL in the autofill context matches
1227         the document URL.
1228
1229         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
1230
1231         Remove the USE(APPLE_INTERNAL_SDK) guard for these API tests.
1232
1233         (newUIKeyboardLoginCredentialsSuggestion):
1234
1235         Add a stub implementation of UIKeyboardLoginCredentialsSuggestion. This allows
1236         [UIKeyboardLoginCredentialsSuggestion new] to return a nonnull object, which allows these API tests to verify
1237         that the credential filling codepath works as intended without any additional UIKit changes. Currently, tests
1238         for the value of username and password fields are passing even though the fields are not being populated because
1239         the expected string values are null, and the observed value is an empty string. We instead check the literal
1240         string values here instead of credentialSuggestion's properties, so that tests verifying the behavior of
1241         -insertTextSuggestion: will require username and password inputs to be populated.
1242
1243         (-[TestInputDelegate _webView:focusShouldStartInputSession:]):
1244         (-[AutofillTestView initWithFrame:]):
1245         (-[AutofillTestView _autofillInputView]):
1246         (-[AutofillTestView textInputHasAutofillContext]):
1247         (TestWebKitAPI::TEST):
1248
1249         Add an additional API test to verify that programmatic focus without user interaction (and also without testing
1250         overrides) does not activate autofill.
1251
1252         (createUIKeyboardLoginCredentialsSuggestion): Deleted.
1253         (-[WKWebView _privateTextInput]): Deleted.
1254         * TestWebKitAPI/ios/UIKitSPI.h:
1255
1256         Minor gardening to remove iOS version >= 11 guards that are now unnecessary. Additionally, add some more private
1257         header imports (with corresponding interface definitions for building and running with the public SDK).
1258
1259 2017-10-06  Antti Koivisto  <antti@apple.com>
1260
1261         Minor WeakPtr improvements
1262         https://bugs.webkit.org/show_bug.cgi?id=177958
1263
1264         Reviewed by Sam Weinig.
1265
1266         * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
1267         (TestWebKitAPI::TEST):
1268         (TestWebKitAPI::Base::createWeakPtr): Deleted.
1269
1270 2017-10-06  Carlos Garcia Campos  <cgarcia@igalia.com>
1271
1272         Unreviewed. Fix parsing of GTK unit tests output in bot configuration.
1273
1274         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1275         (RunGtkAPITests.commandComplete): Remove trailing ':' from the regular expression.
1276
1277 2017-10-06  Charles Turner  <cturner@igalia.com>
1278
1279         Disable bmalloc when running Valgrind
1280         https://bugs.webkit.org/show_bug.cgi?id=177923
1281
1282         Reviewed by Carlos Alberto Lopez Perez.
1283
1284         * Scripts/webkitpy/port/gtk.py:
1285         (GtkPort.setup_environ_for_server):
1286
1287 2017-10-06  Zan Dobersek  <zdobersek@igalia.com>
1288
1289         Implement TestController::platformContext() for WPE, returning the
1290         m_context pointer as the GTK+ port does. This fixes the crashes on
1291         the WPE testers.
1292
1293         Rubber-stamped by Carlos Garcia Campos.
1294
1295         * WebKitTestRunner/wpe/TestControllerWPE.cpp:
1296         (WTR::TestController::platformContext):
1297
1298 2017-10-05  Carlos Garcia Campos  <cgarcia@igalia.com>
1299
1300         [GTK][WPE] Add API to configure and enable resource load statistics
1301         https://bugs.webkit.org/show_bug.cgi?id=177943
1302
1303         Reviewed by Michael Catanzaro.
1304
1305         Add a command line option to enable intelligent tracking prevention to MiniBrowser and tests cases to check the
1306         new API.
1307
1308         * MiniBrowser/gtk/main.c:
1309         (main):
1310         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
1311         (serverCallback):
1312         (testWebsiteDataConfiguration):
1313         (testWebsiteDataEphemeral):
1314         (testWebsiteDataResourceLoadStats):
1315         (beforeAll):
1316         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
1317         (Test::Test):
1318         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
1319         (directoryChangedCallback):
1320         (WebViewTest::waitUntilFileExists):
1321         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
1322
1323 2017-10-05  Carlos Garcia Campos  <cgarcia@igalia.com>
1324
1325         [GTK][WPE] All resource load statistics tests added in r212183 crash in GTK bots, timeout in GTK and WPE bots since r219049
1326         https://bugs.webkit.org/show_bug.cgi?id=168171
1327
1328         Reviewed by Chris Dumez.
1329
1330         Implement all resource load statistics functions in TestController using the C API. Also enable the FileMonitor
1331         unit test. This test requires a platform implementation of Util::run(), so I've added UtilitiesGLib.cpp with an
1332         iplementation common to glib based ports using WTF RunLoop abstraction.
1333
1334         * TestWebKitAPI/PlatformGTK.cmake:
1335         * TestWebKitAPI/PlatformWPE.cmake:
1336         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
1337         * TestWebKitAPI/glib/UtilitiesGLib.cpp: Copied from Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.h.
1338         (TestWebKitAPI::Util::run):
1339         (TestWebKitAPI::Util::spinRunLoop):
1340         (TestWebKitAPI::Util::sleep):
1341         * TestWebKitAPI/gtk/PlatformUtilitiesGtk.cpp:
1342         * TestWebKitAPI/wpe/PlatformUtilitiesWPE.cpp:
1343         * WebKitTestRunner/TestController.cpp:
1344         (WTR::TestController::platformAdjustContext):
1345         (WTR::TestController::setStatisticsLastSeen):
1346         (WTR::TestController::setStatisticsPrevalentResource):
1347         (WTR::ResourceStatisticsCallbackContext::ResourceStatisticsCallbackContext):
1348         (WTR::resourceStatisticsCallback):
1349         (WTR::TestController::isStatisticsPrevalentResource):
1350         (WTR::TestController::setStatisticsHasHadUserInteraction):
1351         (WTR::TestController::isStatisticsHasHadUserInteraction):
1352         (WTR::TestController::setStatisticsGrandfathered):
1353         (WTR::TestController::isStatisticsGrandfathered):
1354         (WTR::TestController::setStatisticsSubframeUnderTopFrameOrigin):
1355         (WTR::TestController::setStatisticsSubresourceUnderTopFrameOrigin):
1356         (WTR::TestController::setStatisticsSubresourceUniqueRedirectTo):
1357         (WTR::TestController::setStatisticsTimeToLiveUserInteraction):
1358         (WTR::TestController::setStatisticsTimeToLiveCookiePartitionFree):
1359         (WTR::TestController::statisticsProcessStatisticsAndDataRecords):
1360         (WTR::TestController::statisticsUpdateCookiePartitioning):
1361         (WTR::TestController::statisticsSetShouldPartitionCookiesForHost):
1362         (WTR::TestController::statisticsSubmitTelemetry):
1363         (WTR::TestController::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
1364         (WTR::TestController::setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval):
1365         (WTR::TestController::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
1366         (WTR::TestController::setStatisticsMinimumTimeBetweenDataRecordsRemoval):
1367         (WTR::TestController::setStatisticsGrandfatheringTime):
1368         (WTR::TestController::setStatisticsMaxStatisticsEntries):
1369         (WTR::TestController::setStatisticsPruneEntriesDownTo):
1370         (WTR::TestController::statisticsClearInMemoryAndPersistentStore):
1371         (WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
1372         (WTR::TestController::statisticsClearThroughWebsiteDataRemovalCallback):
1373         (WTR::TestController::statisticsClearThroughWebsiteDataRemoval):
1374         (WTR::TestController::statisticsResetToConsistentState):
1375         * WebKitTestRunner/TestController.h:
1376
1377 2017-10-05  Jer Noble  <jer.noble@apple.com>
1378
1379         [Cocoa] Enable ENABLE_ENCRYPTED_MEDIA build-time setting
1380         https://bugs.webkit.org/show_bug.cgi?id=177261
1381
1382         Reviewed by Eric Carlson.
1383
1384         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1385
1386 2017-10-05  Alex Christensen  <achristensen@webkit.org>
1387
1388         Add ObjC equivalent of WKPageNavigationClient.didChangeBackForwardList
1389         https://bugs.webkit.org/show_bug.cgi?id=177966
1390         <rdar://problem/22387135>
1391
1392         Reviewed by Tim Horton.
1393
1394         * TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
1395         (-[ListItemDelegate _webView:backForwardListItemAdded:removed:]):
1396         (-[ListItemDelegate webView:didFinishNavigation:]):
1397         (TEST):
1398
1399 2017-10-04  Megan Gardner  <megan_gardner@apple.com>
1400
1401         check-webkit-style erroneously requires a space between the carrot and brace in obj-c blocks.
1402         https://bugs.webkit.org/show_bug.cgi?id=177897
1403
1404         Reviewed by Dan Bernstein and Jonathan Bedard.
1405
1406         Remove the check for a space between ^ and {, 
1407         as this is valid and expected Obj-C. Now check to make sure there is
1408         no space at all between ^ and {, and also that there is a space between
1409         the end of an argument list and the {.
1410
1411         * Scripts/webkitpy/style/checkers/cpp.py:
1412         (regex_for_lambdas_and_blocks):
1413
1414 2017-10-05  Carlos Garcia Campos  <cgarcia@igalia.com>
1415
1416         Unreviewed. Run WebKit2 C API tests in GTK+ bots again after the last WebKit2 -> WebKit rename.
1417
1418         * Scripts/run-gtk-tests:
1419         (TestRunner):
1420         (TestRunner._run_test):
1421
1422 2017-10-05  Darin Adler  <darin@apple.com>
1423
1424         Remove additional WebKitSystemInterface remnants
1425         https://bugs.webkit.org/show_bug.cgi?id=177948
1426
1427         Reviewed by Andy Estes.
1428
1429         * DumpRenderTree/PlatformMac.cmake: Removed code to link the
1430         WebKitSystemInterface library. Left in code that points to
1431         the WebKitLibraries directory, but maybe that can be removed by
1432         someone who is more certain it's no longer needed.
1433
1434         * Scripts/copy-webkitlibraries-to-product-directory: Removed code
1435         to copy and delete WebKitSystemInterface libraries and headers.
1436
1437         * WebKitTestRunner/PlatformMac.cmake: Removed code to link the
1438         WebKitSystemInterface library. Left in code that points to
1439         the WebKitLibraries directory, but maybe that can be removed by
1440         someone who is more certain it's no longer needed.
1441
1442 2017-10-05  Saam Barati  <sbarati@apple.com>
1443
1444         Unreviewed. Try to make debug type profiler tests stop timing out.
1445
1446         * Scripts/run-jsc-stress-tests:
1447
1448 2017-10-03  Frederic Wang  <fwang@igalia.com>
1449
1450         Remove Brotli from Source/ThirdParty
1451         https://bugs.webkit.org/show_bug.cgi?id=177804
1452
1453         Reviewed by Michael Catanzaro.
1454
1455         * gtk/jhbuild.modules: Build brotli 1.0.1 from the official github repository.
1456         * Scripts/webkitpy/style/checker.py: Remove brotli.
1457
1458 2017-10-04  Alex Christensen  <achristensen@webkit.org>
1459
1460         Stop linking with WebKitSystemInterface
1461         https://bugs.webkit.org/show_bug.cgi?id=177915
1462
1463         Reviewed by Antti Koivisto.
1464
1465         * DumpRenderTree/mac/Configurations/Base.xcconfig:
1466         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
1467         * DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig:
1468         * DumpRenderTree/mac/Configurations/DumpRenderTreeApp.xcconfig:
1469         * WebKitTestRunner/Configurations/Base.xcconfig:
1470         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
1471         * WebKitTestRunner/Configurations/InjectedBundle.xcconfig:
1472         * WebKitTestRunner/Configurations/WebKitTestRunner.xcconfig:
1473         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
1474
1475 2017-10-04  Alex Christensen  <achristensen@webkit.org>
1476
1477         Remove unnecessary includes of WebKitSystemInterface on Cocoa platforms
1478         https://bugs.webkit.org/show_bug.cgi?id=177912
1479
1480         Reviewed by Saam Barati.
1481
1482         * DumpRenderTree/mac/DumpRenderTree.mm:
1483
1484 2017-10-04  Megan Gardner  <megan_gardner@apple.com>
1485
1486         Break out new touch debugging code into seperate file
1487         https://bugs.webkit.org/show_bug.cgi?id=177796
1488
1489         Reviewed by Simon Fraser.
1490
1491         Encapsulate the new debug touch code into it's own file.
1492         This allows for cleaner code and a better way to show the touches
1493         in a completely separate window, which should also be in screen
1494         coordinates, and not subject to any transforms that get put on the
1495         WebViews.
1496
1497         * TestRunnerShared/spi/UIKitTestSPI.h:
1498         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
1499         * WebKitTestRunner/ios/HIDDebugTouchWindow.h: Added.
1500         * WebKitTestRunner/ios/HIDDebugTouchWindow.mm: Added.
1501         (+[HIDDebugTouchWindow sharedHIDDebugTouchWindow]):
1502         (-[HIDDebugTouchWindow init]):
1503         (-[HIDDebugTouchWindow dealloc]):
1504         (-[HIDDebugTouchWindow updateDebugIndicatorForTouch:withPointInWindowCoordinates:isTouching:]):
1505         (-[HIDDebugTouchWindow initDebugViewsIfNeeded]):
1506         * WebKitTestRunner/ios/HIDEventGenerator.h:
1507         * WebKitTestRunner/ios/HIDEventGenerator.mm:
1508         (-[HIDEventGenerator init]):
1509         (-[HIDEventGenerator _createIOHIDEventWithInfo:]):
1510         (-[HIDEventGenerator _createIOHIDEventType:]):
1511         (-[HIDEventGenerator _updateTouchPoints:count:]):
1512         (-[HIDEventGenerator touchDownAtPoints:touchCount:]):
1513         (-[HIDEventGenerator touchDown:touchCount:]):
1514         (-[HIDEventGenerator liftUpAtPoints:touchCount:]):
1515         (-[HIDEventGenerator liftUp:touchCount:]):
1516         (-[HIDEventGenerator moveToPoints:touchCount:duration:]):
1517         (-[HIDEventGenerator initDebugViewsIfNeeded]): Deleted.
1518         (-[HIDEventGenerator updateDebugIndicatorForTouch:withPoint:isTouching:]): Deleted.
1519         * WebKitTestRunner/ios/TestControllerIOS.mm:
1520         (WTR::TestController::updatePlatformSpecificTestOptionsForTest const):
1521
1522 2017-10-04  JF Bastien  <jfbastien@apple.com>
1523
1524         WTF: Update std::expected to match current proposal
1525         https://bugs.webkit.org/show_bug.cgi?id=177881
1526
1527         Reviewed by Mark Lam.
1528
1529         The proposal is likely to be in C++20 and I've been asked to help co-champion
1530         it. I'm therefore updating our implementation to more closely match the current
1531         proposal, and to make sure it'll work for us if standardized.
1532
1533          - Rename UnexpectedType to Unexpected to match the proposal.
1534          - Remove relational operators, only equality / inequality remains.
1535          - Fix minor type signatures.
1536          - Add UnexpectedType typedef.
1537          - Uncomment rebind implementation.
1538          - Add in-place construction tag, as well as explicit error construction tag.
1539          - Add template unexpected constructor.
1540          - Note that make_unexpected isn't in the proposal anymore, but we keep it because we don't have C++17 deduction guides.
1541          - Remove hashing, which isn't in the proposal anymore.
1542
1543         * TestWebKitAPI/Tests/WTF/Expected.cpp:
1544         (WTF::operator<<):
1545         (TestWebKitAPI::TEST):
1546
1547 2017-10-04  Lucas Forschler  <lforschler@apple.com>
1548
1549         https://bugs.webkit.org/show_bug.cgi?id=177888
1550         WebKitArchiveSupport - add API Gateway to source control
1551         This is a swagger configuration export via AWS API Gateway console.
1552
1553         Rubber-stamped by Alexey Proskuryakov.
1554
1555         * WebKitArchiveSupport/AWS-APIGateway: Added.
1556         * WebKitArchiveSupport/AWS-APIGateway/stage-v2.json: Added.
1557
1558 2017-10-04  Mark Lam  <mark.lam@apple.com>
1559
1560         Add support for using Probe DFG OSR Exit behind a runtime flag.
1561         https://bugs.webkit.org/show_bug.cgi?id=177844
1562         <rdar://problem/34801425>
1563
1564         Reviewed by Saam Barati.
1565
1566         Enable --useProbeOSrExit=true for dfg-eager and ftl-no-cjit-validate-sampling-profiler
1567         test configurations.
1568
1569         * Scripts/run-jsc-stress-tests:
1570
1571 2017-10-04  Jonathan Bedard  <jbedard@apple.com>
1572
1573         webkitpy.tool.steps.steps_unittest.StepsTest.test_runtests_api is flakey
1574         https://bugs.webkit.org/show_bug.cgi?id=177751
1575         <rdar://problem/34769470>
1576
1577         Reviewed by Daniel Bates.
1578
1579         Port._build_path() calls Tools/Scripts/webkit-build-directory and caches this
1580         result. When capturing output from the MockExecutive, the first invocation of
1581         Port._build_path() will log the running of Tools/Scripts/webkit-build-directory
1582         but subsequent invocations will not.
1583
1584         * Scripts/webkitpy/tool/steps/steps_unittest.py:
1585         (StepsTest):
1586         (StepsTest.setUp): Cache the build path before running tests.
1587
1588 2017-10-04  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1589
1590         [JHBuild][GTK][WKE] Circular dependency between harfbuzz and freetype6
1591         https://bugs.webkit.org/show_bug.cgi?id=177865
1592
1593         Reviewed by Michael Catanzaro.
1594
1595         Build freetype6 without harfbuzz support.
1596         This seems to be what distros like Fedora, Debian or OpenEmbedded do.
1597         Also explicitly enable support for freetype and fontconfig on harfbuzz.
1598
1599         * gtk/jhbuild.modules: Enable also support for icu.
1600         * wpe/jhbuild.modules:
1601
1602 2017-10-04  Yusuke Suzuki  <utatane.tea@gmail.com>
1603
1604         [Test262] Update Test262 to Oct 4 version
1605         https://bugs.webkit.org/show_bug.cgi?id=177859
1606
1607         Reviewed by Sam Weinig.
1608
1609         * Scripts/import-test262-tests:
1610
1611 2017-10-04  Ryosuke Niwa  <rniwa@webkit.org>
1612
1613         Use blob URL when pasting RTFD instead of overriding DocumentLoader
1614         https://bugs.webkit.org/show_bug.cgi?id=177801
1615         <rdar://problem/34542270>
1616
1617         Reviewed by Wenson Hsieh.
1618
1619         Added a regression test for an assertion failure when pasting an empty RTFD as well as a test for pasting
1620         RTFD with an image, which should result in an image element with a blob URL.
1621
1622         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1623         * TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
1624         * TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm:
1625         * TestWebKitAPI/Tests/WebKitCocoa/paste-rtfd.html:
1626
1627 2017-10-03  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
1628
1629         [GLib] Let WebCore know of low power situations
1630         https://bugs.webkit.org/show_bug.cgi?id=177810
1631
1632         Reviewed by Carlos Garcia Campos.
1633
1634         * gtk/install-dependencies: add upower-glib dev packages for Debian, Arch and Fedora.
1635
1636 2017-10-03  Saam Barati  <sbarati@apple.com>
1637
1638         Implement polymorphic prototypes
1639         https://bugs.webkit.org/show_bug.cgi?id=176391
1640
1641         Reviewed by Filip Pizlo.
1642
1643         * Scripts/run-jsc-stress-tests:
1644
1645 2017-10-03  Myles C. Maxfield  <mmaxfield@apple.com> 
1646
1647         Create a SPIR-V assembler 
1648         https://bugs.webkit.org/show_bug.cgi?id=177726 
1649
1650         Reviewed by Filip Pizlo. 
1651
1652         Khronos has released a json file containing every SPIR-V opcode and operand at 
1653         https://github.com/KhronosGroup/SPIRV-Headers/blob/master/include/spirv/1.2/spirv.core.grammar.json 
1654         This patch creates a function which loads this file (via the fetch API), parses it, and creates
1655         an object which holds two things: 
1656         - For each opcode, a class which accepts the appropriate operands 
1657         - For each enum type, an object which holds each enum value 
1658         The constructor for each opcode is smart enough to do some basic type-checking of the argument, 
1659         according to the types listed in Khronos's json file. 
1660
1661         This patch also includes an example .html file which outputs a dummy SPIR-V program, 
1662         which happens to be compatible with the SPIR-V demo at 
1663         https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/blob/master/demos/cube.cpp 
1664         If you modify this demo to use the generated SPIR-V program, you can see the result in 
1665         action.
1666
1667         This patch also commits a copy of Khronos's json file mentioned above. This isn't the first 
1668         Khronos file we've committed into our repository with this license, so there shouldn't be any 
1669         problems there. 
1670
1671         * WebGPUShadingLanguageRI/SPIR-V.js: Added. 
1672         (SPIRV.): 
1673         (SPIRVAssembler): 
1674         (SPIRVAssembler.prototype.append): 
1675         (SPIRVAssembler.prototype.get size): 
1676         (SPIRVAssembler.prototype.get storage): 
1677         (SPIRVAssembler.prototype.get result): 
1678         * WebGPUShadingLanguageRI/SPIRV.html: Added. 
1679         * WebGPUShadingLanguageRI/spirv.core.grammar.json: Added. 
1680
1681 2017-10-03  Chris Dumez  <cdumez@apple.com>
1682
1683         SharedStringHashStore should support removing hashes
1684         https://bugs.webkit.org/show_bug.cgi?id=177770
1685
1686         Reviewed by Alex Christensen.
1687
1688         Add API test coverage.
1689
1690         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1691         * TestWebKitAPI/Tests/WebKitCocoa/VisitedLinkStore.mm: Added.
1692         (TestWebKitAPI::TEST):
1693
1694 2017-10-03  Dewei Zhu  <dewei_zhu@apple.com>
1695
1696         Fix missing import for BenchmarkRunner.
1697         https://bugs.webkit.org/show_bug.cgi?id=177842
1698
1699         Reviewed by Ryosuke Niwa.
1700
1701         'show_results' requires BenchmarkRunner.
1702
1703         * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
1704
1705 2017-10-03  Olivier Blin  <olivier.blin@softathome.com>
1706
1707         [WPE] Bump deps to add support for xdg-shell-unstable-v6 protocol
1708         https://bugs.webkit.org/show_bug.cgi?id=177820
1709
1710         Reviewed by Žan Doberšek.
1711
1712         gnome-shell does not advertize the xdg-shell protocol anymore, but xdg-shell-unstable-v6 instead.
1713         Support has been added in WPEBackend-mesa, we need to update the requirements.
1714         wayland-1.10 is needed for wl_proxy_get_version(), used in the generated headers.
1715
1716         * wpe/jhbuild.modules:
1717
1718 2017-10-03  Alex Christensen  <achristensen@webkit.org>
1719
1720         Add ObjC SPI equivalent to WKPageLoaderClient.willGoToBackForwardListItem
1721         https://bugs.webkit.org/show_bug.cgi?id=177825
1722         <rdar://problem/22387505>
1723
1724         Reviewed by Tim Horton.
1725
1726         * TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
1727         (-[BackForwardDelegate _webView:willGoToBackForwardListItem:inPageCache:]):
1728         (-[BackForwardDelegate webView:didFinishNavigation:]):
1729         (TEST):
1730
1731 2017-10-03  Antti Koivisto  <antti@apple.com>
1732
1733         Allow assigning WeakPtr<Derived> to WeakPtr<Base>
1734         https://bugs.webkit.org/show_bug.cgi?id=177817
1735
1736         Reviewed by Geoff Garen.
1737
1738         * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
1739         (TestWebKitAPI::Base::weakPtrFactory):
1740         (TestWebKitAPI::TEST):
1741
1742 2017-10-03  Youenn Fablet  <youenn@apple.com>
1743
1744         Remove no longer needed WebRTC build infrastructure
1745         https://bugs.webkit.org/show_bug.cgi?id=177756
1746
1747         Reviewed by Alejandro G. Castro.
1748
1749         * Scripts/generate-libwebrtc-cmake: Removed.
1750         * Scripts/webkitpy/libwebrtc/__init__.py: Removed.
1751         * Scripts/webkitpy/libwebrtc/generate_cmake.py: Removed.
1752
1753 2017-10-03  Joanmarie Diggs  <jdiggs@igalia.com>
1754
1755         AX: [ATK] ARIA drag-and-drop attribute values should be exposed via AtkObject attributes
1756         https://bugs.webkit.org/show_bug.cgi?id=177763
1757
1758         Reviewed by Chris Fleizach.
1759
1760         Implement ariaIsGrabbed() and ariaDropEffects() for ATK.
1761
1762         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1763         (WTR::AccessibilityUIElement::ariaIsGrabbed const):
1764         (WTR::AccessibilityUIElement::ariaDropEffects const):
1765
1766 2017-10-02  Myles C. Maxfield  <mmaxfield@apple.com>
1767
1768         Make WSL demo compatible with Microsoft Edge
1769         https://bugs.webkit.org/show_bug.cgi?id=177643
1770
1771         Reviewed by Saam Barati.
1772
1773         This patch does two things. The first is it migrates a loop over ParentNode.children to a legacy style loop
1774         because Microsoft Edge throws an exception when trying to use a for...of loop with it. This patch also hides
1775         the compilation behind a setTimeout(0) so there is some indication that something is happening during a
1776         compile.
1777
1778
1779         * Tools/WebGPUShadingLanguageRI/index.html:
1780
1781 2017-10-02  Joanmarie Diggs  <jdiggs@igalia.com>
1782
1783         AX: [ATK] The value of aria-level is not exposed on non-heading roles
1784         https://bugs.webkit.org/show_bug.cgi?id=177775
1785
1786         Reviewed by Chris Fleizach.
1787
1788         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1789         (WTR::AccessibilityUIElement::hierarchicalLevel const):
1790
1791 2017-10-02  Geoffrey Garen  <ggaren@apple.com>
1792
1793         WeakPtr should have a move constructor
1794         https://bugs.webkit.org/show_bug.cgi?id=177789
1795
1796         Reviewed by Chris Dumez.
1797
1798         Chris made me write an API test. It wasn't that painful.
1799
1800         * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
1801         (TestWebKitAPI::TEST):
1802
1803 2017-10-02  Filip Pizlo  <fpizlo@apple.com>
1804
1805         WSL ^ should be *
1806         https://bugs.webkit.org/show_bug.cgi?id=177705
1807
1808         Rubber stamped by Keith Miller.
1809         
1810         When I first wrote the prototype, I thought it would be cool to use ^ for pointers. Nobody agrees. I've
1811         gotten so much feedback to use *. This changes pointers to use *.
1812
1813         * WebGPUShadingLanguageRI/DereferenceExpression.js:
1814         (DereferenceExpression.prototype.toString):
1815         (DereferenceExpression):
1816         * WebGPUShadingLanguageRI/Intrinsics.js:
1817         (Intrinsics):
1818         * WebGPUShadingLanguageRI/Parse.js:
1819         (parseType):
1820         (parsePossiblePrefix):
1821         * WebGPUShadingLanguageRI/PtrType.js:
1822         (PtrType.prototype.toString):
1823         (PtrType):
1824         * WebGPUShadingLanguageRI/StandardLibrary.js:
1825         * WebGPUShadingLanguageRI/Test.js:
1826         (tests.simpleDereference):
1827         (tests.dereferenceStore):
1828         (tests.simpleMakePtr):
1829         (tests.loadNull):
1830         (tests.storeNull):
1831         (tests.returnNull):
1832         (tests.dereferenceDefaultNull):
1833         (tests.defaultInitializedNull):
1834         (tests.passNullToPtrMonomorphic):
1835         (tests.passNullToPtrPolymorphic):
1836         (tests.passNullAndNotNull):
1837         (tests.passNullAndNotNullFullPoly):
1838         (tests.passNullAndNotNullFullPolyReverse):
1839         (tests.chainGeneric):
1840         (tests.chainStruct):
1841         (tests.chainStructNewlyValid):
1842         (tests.chainStructDevice):
1843         (tests.paramChainStructDevice):
1844         (tests.simpleProtocolExtends):
1845         (tests.protocolExtendsTwo):
1846         (tests.overrideSubscriptStruct):
1847         (tests.overrideSubscriptStructAndDoStores):
1848         (tests.overrideSubscriptStructAndUsePointers):
1849         (tests.overrideSubscriptStructAndUsePointersIncorrectly):
1850         (tests.makeArrayRefFromPointer):
1851         (tests.nonArrayRefArrayLengthFail):
1852         (tests.constexprIsNotLValuePtr):
1853         (tests.genericAccessors):
1854         (tests.nestedSubscriptLValueEmulationSimple):
1855         (tests.nestedSubscriptLValueEmulationGeneric):
1856         (tests.shaderTypes):
1857         (tests.enumPtrBase):
1858         (tests.mutuallyRecursiveStructWithPointersBroken):
1859         (tests.mutuallyRecursiveStructWithPointers):
1860         (tests.linkedList):
1861         (tests.pointerToPointer):
1862         (tests.pointerGetter):
1863         (tests.operatorCastWithTypeVariableInferredFromReturnType):
1864         (tests.loneSetterPointer):
1865         (tests.anderWithNothingWrong):
1866         (tests.anderWithWrongNumberOfArguments):
1867         (tests.anderDoesntReturnPointer):
1868         (tests.anderDoesntTakeReference):
1869         (tests.anderWithArrayRef):
1870         (tests.pointerIndexGetter):
1871         (tests.loneIndexSetterPointer):
1872         (tests.indexAnderWithNothingWrong):
1873         (tests.indexAnderWithWrongNumberOfArguments):
1874         (tests.indexAnderDoesntReturnPointer):
1875         (tests.indexAnderDoesntTakeReference):
1876         (tests.indexAnderWithArrayRef):
1877         (tests.devicePtrPtr):
1878         (tests.threadgroupPtrPtr):
1879         (tests.constantPtrPtr):
1880         (tests.pointerIndexGetterInProtocol):
1881         (tests.loneIndexSetterPointerInProtocol):
1882         (tests.indexAnderWithNothingWrongInProtocol):
1883         (tests.indexAnderWithWrongNumberOfArgumentsInProtocol):
1884         (tests.indexAnderDoesntReturnPointerInProtocol):
1885         (tests.indexAnderDoesntTakeReferenceInProtocol):
1886         (tests.indexAnderWithArrayRefInProtocol):
1887         (tests.andReturnedArrayRef):
1888
1889 2017-10-02  Filip Pizlo  <fpizlo@apple.com>
1890
1891         WSL should be fine with &foo()[i] if foo() returns a []
1892         https://bugs.webkit.org/show_bug.cgi?id=177704
1893
1894         Reviewed by Saam Barati.
1895         
1896         Previously, we'd determine if a property access expression (base.field or base[index]) was an lvalue by
1897         asking if its base was an lvalue. This is right in all cases except if the base is of type []. Then, the
1898         property access expression is an lvalue so long as there is a setter or ander.
1899         
1900         This fixes the issue and adds a test.
1901         
1902         Also, this makes error messages in the case that something is not an lvalue a lot better. If something
1903         is not an lvalue because we could not find anders or setters, then we will tell you why we could not
1904         find them.
1905
1906         * WebGPUShadingLanguageRI/Checker.js:
1907         (Checker.prototype.visitAssignment):
1908         (Checker.prototype.visitReadModifyWriteExpression):
1909         (Checker.prototype.visitMakePtrExpression):
1910         (Checker.prototype._finishVisitingPropertyAccess):
1911         * WebGPUShadingLanguageRI/DotExpression.js:
1912         (DotExpression.prototype.get fieldName):
1913         (DotExpression.prototype.get isLValue): Deleted.
1914         (DotExpression.prototype.get addressSpace): Deleted.
1915         * WebGPUShadingLanguageRI/IndexExpression.js:
1916         (IndexExpression.prototype.get index):
1917         (IndexExpression.prototype.get isLValue): Deleted.
1918         (IndexExpression.prototype.get addressSpace): Deleted.
1919         * WebGPUShadingLanguageRI/PropertyAccessExpression.js:
1920         (PropertyAccessExpression):
1921         (PropertyAccessExpression.prototype.get isLValue):
1922         (PropertyAccessExpression.prototype.set isLValue):
1923         * WebGPUShadingLanguageRI/PropertyResolver.js:
1924         (PropertyResolver.prototype._visitRValuesWithinLValue.RValueFinder.prototype.visitMakeArrayRefExpression):
1925         (PropertyResolver.prototype._visitRValuesWithinLValue.RValueFinder):
1926         (PropertyResolver.prototype._visitRValuesWithinLValue):
1927         * WebGPUShadingLanguageRI/Test.js:
1928         (tests.storeNullArrayRef):
1929         (tests.andReturnedArrayRef):
1930
1931 2017-10-02  Wenson Hsieh  <wenson_hsieh@apple.com>
1932
1933         Guard iOS webkitGetAsEntry API tests on older iOS versions
1934
1935         Unreviewed test gardening. After r222688, these tests require custom pasteboard data to be enabled by default,
1936         so don't run them against shipping iOS.
1937
1938         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1939
1940 2017-10-02  Carlos Garcia Campos  <cgarcia@igalia.com>
1941
1942         [WPE][GTK] Crash in webkit_web_resource_get_data_finish()
1943         https://bugs.webkit.org/show_bug.cgi?id=177107
1944
1945         Reviewed by Michael Catanzaro.
1946
1947         Add a test case to check we handle errors when webkit_web_resource_get_data() fails.
1948
1949         * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
1950         (webViewloadChanged):
1951         (testWebResourceGetDataError):
1952         (beforeAll):
1953
1954 2017-10-02  Alex Christensen  <achristensen@webkit.org>
1955
1956         Fix build after r222715
1957         https://bugs.webkit.org/show_bug.cgi?id=177697
1958
1959         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
1960         (TEST):
1961         Use the public API instead of the removed SPI.
1962
1963 2017-10-02  Alex Christensen  <achristensen@webkit.org>
1964
1965         REGRESSION(r214201): WebProcess hangs during policy decisions
1966         https://bugs.webkit.org/show_bug.cgi?id=177590
1967         <rdar://problem/33362929>
1968
1969         Reviewed by Andy Estes.
1970
1971         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1972         * TestWebKitAPI/Tests/WebKitCocoa/JavaScriptDuringNavigation.mm: Added.
1973         (-[JSNavigationDelegate webView:didFinishNavigation:]):
1974         (-[JSNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
1975         (-[JSNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
1976         (-[JSNavigationDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
1977         (TEST):
1978
1979 2017-10-02  Jonathan Bedard  <jbedard@apple.com>
1980
1981         Log stack-trace for run-webkit-tests when interrupted
1982         https://bugs.webkit.org/show_bug.cgi?id=176393
1983         <rdar://problem/34262310>
1984
1985         Reviewed by Darin Adler.
1986
1987         When run-webkit-tests is stuck, it is difficult to immediately tell
1988         why. Saving a stack-trace when run-webkit-tests is terminated
1989         or stopped with CNTRL-C will make such issues easier to debug.
1990
1991         * Scripts/webkitpy/common/interupt_debugging.py: Added.
1992         (log_stack_trace): Given a Python frame object, log a stack trace to
1993         the provided file.
1994         (log_stack_trace_on_term): Attach a listener to SIGTERM so that a
1995         stack-trace can be logged when a program is terminated.
1996         (log_stack_trace_on_cntrl_c): Attach a listener to SIGINT so that a
1997         stack-trace can be logged when a program is CNTRL-Ced. 
1998         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1999         (main): Set handlers to log stack trace on interruption.
2000
2001 2017-10-02  Michael Catanzaro  <mcatanzaro@igalia.com>
2002
2003         Remove ENABLE_CSS_REGIONS
2004         https://bugs.webkit.org/show_bug.cgi?id=177689
2005
2006         Reviewed by Darin Adler.
2007
2008         * Scripts/webkitperl/FeatureList.pm:
2009
2010 2017-09-30  Carlos Garcia Campos  <cgarcia@igalia.com>
2011
2012         Unreviewed. Upgrade webkitgtk-test-fonts to version 0.0.7.
2013
2014         This version upgrades liberation fonts to version 2, that has a wider glyph coverage.
2015
2016         * gtk/jhbuild.modules:
2017
2018 2017-09-29  Alex Christensen  <achristensen@webkit.org>
2019
2020         Expose WebPreferences::webGLEnabled through WKPreferences
2021         https://bugs.webkit.org/show_bug.cgi?id=177692
2022         <rdar://problem/24110556>
2023
2024         Reviewed by Andy Estes.
2025
2026         * TestWebKitAPI/Tests/WebKitCocoa/Preferences.mm:
2027         (-[AlertSaver alert]):
2028         (-[AlertSaver webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2029         (TEST):
2030
2031 2017-09-29  Alex Christensen  <achristensen@webkit.org>
2032
2033         Fix WKWebViewConfigurationPrivate after r222663
2034         https://bugs.webkit.org/show_bug.cgi?id=177644
2035
2036         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2037         * TestWebKitAPI/Tests/WebKitCocoa/Configuration.mm: Added.
2038         (TEST):
2039
2040 2017-09-28  Ryosuke Niwa  <rniwa@webkit.org>
2041
2042         Image pasting is not working on tineye.com / gmail.com / GitHub.com due to lack of support for DataTransfer.items
2043         https://bugs.webkit.org/show_bug.cgi?id=170449
2044         <rdar://problem/31432525>
2045
2046         Reviewed by Wenson Hsieh.
2047
2048         Added an API test to paste an image from pasteboard. The test is shared between iOS and macOS.
2049
2050         The tests to paste image files are only enabled on macOS since putting files into pasteboard isn't a thing on iOS.
2051
2052         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2053         * TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm: Added.
2054         (writeImageDataToPasteboard):
2055         (writeBundleFileToPasteboard):
2056         * TestWebKitAPI/Tests/WebKitCocoa/paste-image.html: Added.
2057         * TestWebKitAPI/Tests/WebKitCocoa/sunset-in-cupertino-100px.tiff: Added.
2058         * TestWebKitAPI/Tests/WebKitCocoa/sunset-in-cupertino-200px.png: Added.
2059         * TestWebKitAPI/Tests/WebKitCocoa/sunset-in-cupertino-400px.gif: Added.
2060         * TestWebKitAPI/Tests/WebKitCocoa/sunset-in-cupertino-600px.jpg: Added.
2061         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm: Rebaselined the test now that types contain "Files".
2062
2063 2017-09-29  Wenson Hsieh  <wenson_hsieh@apple.com>
2064
2065         [iOS WK2] Implement -[WKContentView hasText] for compatibility with the UITextInput protocol
2066         https://bugs.webkit.org/show_bug.cgi?id=177662
2067         <rdar://problem/33410373>
2068
2069         Reviewed by Tim Horton.
2070
2071         Add EditorState API tests to check that the value of -[WKContentView hasText] is correct when editing both plain
2072         and rich text areas.
2073
2074         * TestWebKitAPI/EditingTestHarness.h:
2075         * TestWebKitAPI/EditingTestHarness.mm:
2076         (-[EditingTestHarness insertParagraph]):
2077         (-[EditingTestHarness insertText:]):
2078         (-[EditingTestHarness insertHTML:]):
2079         (-[EditingTestHarness selectAll]):
2080         (-[EditingTestHarness deleteBackwards]):
2081         * TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm:
2082
2083         Add versions of EditingTestHarness helpers that don't require us to expect any editor state after executing the
2084         edit command.
2085
2086         (TestWebKitAPI::checkContentViewHasTextWithFailureDescription):
2087         (TestWebKitAPI::TEST):
2088         * TestWebKitAPI/cocoa/TestWKWebView.h:
2089         * TestWebKitAPI/cocoa/TestWKWebView.mm:
2090         (-[TestWKWebView textInputContentView]):
2091
2092 2017-09-29  Charles Turner  <cturner@igalia.com>
2093
2094         Update my status.
2095
2096         Unreviewed.
2097
2098         * Scripts/webkitpy/common/config/contributors.json:
2099
2100 2017-09-28  Commit Queue  <commit-queue@webkit.org>
2101
2102         Unreviewed, rolling out r222639.
2103         https://bugs.webkit.org/show_bug.cgi?id=177630
2104
2105         Breaks AppleWin build (Requested by dolmstead on #webkit).
2106
2107         Reverted changeset:
2108
2109         "[WinCairo][MiniBrowser] Add ca-bundle to display secure
2110         pages."
2111         https://bugs.webkit.org/show_bug.cgi?id=168486
2112         http://trac.webkit.org/changeset/222639
2113
2114 2017-09-28  Joanmarie Diggs  <jdiggs@igalia.com>
2115
2116         AX: [ATK] object:state-changed notifications missing for multiple ARIA attributes
2117         https://bugs.webkit.org/show_bug.cgi?id=177542
2118
2119         Add platform support for the notifications. Also add support for getting the
2120         boolean argument indicating whether the state has been set or unset.
2121
2122         Reviewed by Chris Fleizach.
2123
2124         * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
2125
2126 2017-09-28  Basuke Suzuki  <Basuke.Suzuki@sony.com>
2127
2128         [WinCairo][MiniBrowser] Add ca-bundle to display secure pages.
2129         Copy cacert.pem file into bundle directory.
2130         https://bugs.webkit.org/show_bug.cgi?id=168486
2131
2132         Reviewed by Brent Fulgham.
2133
2134         * MiniBrowser/win/CMakeLists.txt:
2135
2136 2017-09-28  Lucas Forschler  <lforschler@apple.com>
2137
2138         check in AWS Lambda code used for WebKitArchiveSupport
2139         https://bugs.webkit.org/show_bug.cgi?id=177614
2140         
2141         Rubber-stamped by Alexey Proskuryakov.
2142
2143         * WebKitArchiveSupport/lambda: Added.
2144         * WebKitArchiveSupport/lambda/delete-minified-s3-archive-from-dynamodb.py: Added.
2145         (lambda_handler):
2146         * WebKitArchiveSupport/lambda/delete-s3-archive-from-dynamodb.py: Added.
2147         (lambda_handler):
2148         * WebKitArchiveSupport/lambda/register-archive-in-dynamodb.py: Added.
2149         (lambda_handler):
2150         * WebKitArchiveSupport/lambda/register-minified-s3-archive-in-dynamodb.py: Added.
2151         (lambda_handler):
2152
2153 2017-09-28  Jiewen Tan  <jiewen_tan@apple.com>
2154
2155         WeakPtrFactory should allow downcasting
2156         https://bugs.webkit.org/show_bug.cgi?id=177389
2157         <rdar://problem/34604174>
2158
2159         Reviewed by Geoffrey Garen.
2160
2161         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2162         * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
2163         (TestWebKitAPI::Base::foo):
2164         (TestWebKitAPI::Base::createWeakPtr):
2165         (TestWebKitAPI::Derived::foo):
2166         (TestWebKitAPI::TEST):
2167
2168 2017-09-28  Megan Gardner  <megan_gardner@apple.com>
2169
2170         Add debug flag to WebKitTestRunner to show where touches are being generated
2171         https://bugs.webkit.org/show_bug.cgi?id=177583
2172
2173         Reviewed by Tim Horton and Wenson Hsieh.
2174
2175         Add a flag, and the ability to paint a dot where the HIDEventGenerator is creating fake touches to
2176         send through UIKit. This will help in debugging touch tests, because it will be easier to see if
2177         one is actually sending the touches at the locations that they expect. This will help differentiate between
2178         problems in the locations of the touches, and other problems that can come up when writing tests.
2179
2180         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2181         (parse_args):
2182         * Scripts/webkitpy/port/driver.py:
2183         (Driver.cmd_line):
2184         * WebKitTestRunner/Options.cpp:
2185         (WTR::Options::Options):
2186         (WTR::handleOptionShowTouches):
2187         (WTR::OptionsHandler::OptionsHandler):
2188         * WebKitTestRunner/Options.h:
2189         * WebKitTestRunner/TestController.cpp:
2190         (WTR::TestController::initialize):
2191         * WebKitTestRunner/TestController.h:
2192         (WTR::TestController::shouldShowTouches const):
2193         * WebKitTestRunner/TestOptions.h:
2194         * WebKitTestRunner/ios/HIDEventGenerator.h:
2195         * WebKitTestRunner/ios/HIDEventGenerator.mm:
2196         (-[DebugTouchView pointInside:withEvent:]):
2197         (-[HIDEventGenerator setShouldShowTouches:]):
2198         (-[HIDEventGenerator initDebugViews]):
2199         (-[HIDEventGenerator updateDebugUI:withPoint:isTouching:]):
2200         (-[HIDEventGenerator _createIOHIDEventWithInfo:]):
2201         (-[HIDEventGenerator _createIOHIDEventType:]):
2202         (-[HIDEventGenerator _updateTouchPoints:count:]):
2203         (-[HIDEventGenerator touchDownAtPoints:touchCount:]):
2204         (-[HIDEventGenerator liftUpAtPoints:touchCount:]):
2205         (-[HIDEventGenerator moveToPoints:touchCount:duration:]):
2206         (-[HIDEventGenerator markerEventReceived:]):
2207         * WebKitTestRunner/ios/TestControllerIOS.mm:
2208         (WTR::TestController::updatePlatformSpecificTestOptionsForTest const):
2209         * WebKitTestRunner/ios/mainIOS.mm:
2210         (-[WebKitTestRunnerApp _runTestController]):
2211
2212 2017-09-28  Mark Lam  <mark.lam@apple.com>
2213
2214         [Re-landing] Turn on exception scope verification for JSC tests.
2215         https://bugs.webkit.org/show_bug.cgi?id=162351
2216         <rdar://problem/29563911>
2217
2218         Reviewed by Saam Barati.
2219
2220         Update: I'm re-landing this patch now that test262 exception check validation
2221         failures have been fixed in r222617.  testapi still has some validation failures,
2222         but this patch does not affect testapi.
2223
2224         Added the option to --validateExceptionChecks=true option to BASE_OPTIONS in
2225         run-jsc-stress-tests.  This turns on exception scope verification on JSC test
2226         runs (which currently does not include testapi).
2227
2228         Some stats on time to run JSC stress and mozilla tests:
2229         1. Release build w/o --validateExceptionChecks=true: real 16m22.544s, user 156m24.080s, sys 123m3.649s
2230         2. Debug build w/o --validateExceptionChecks=true: real 78m34.206s, user 1661m57.008s, sys 73m21.177s
2231         3. Debug build w/ --validateExceptionChecks=true: real 77m41.106s, user 1656m13.924s, sys 73m42.309s
2232         4. Debug build w/ --validateExceptionChecks=true --dumpSimulatedThrows=true: real 92m56.918s, user 2012m56.441s, sys 75m14.174s
2233
2234         The stats shows that (2) and (3) has effectively no time difference.  Hence, the
2235         cost of enabling --validateExceptionChecks=true is not significant.
2236
2237         It would be nice to enable --dumpSimulatedThrows=true as well, but (4) is about
2238         21% slower than (3).  To avoid making debug test runs a lot slower, we'll leave
2239         --dumpSimulatedThrows=true off.  We can manually add that when we see a regression
2240         and need to debug the issue.  Otherwise, we wont pay the price for it.
2241
2242         * Scripts/run-jsc-stress-tests:
2243
2244 2017-09-27  Alex Christensen  <achristensen@webkit.org>
2245
2246         Add WKContentRuleList notify action type
2247         https://bugs.webkit.org/show_bug.cgi?id=177013
2248         <rdar://problem/31073936>
2249
2250         Reviewed by Darin Adler.
2251
2252         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2253         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
2254         (WebCore::ContentExtensions::operator<<):
2255         (TestWebKitAPI::InMemoryCompiledContentExtension::create):
2256         (TestWebKitAPI::InMemoryCompiledContentExtension::data):
2257         (TestWebKitAPI::InMemoryCompiledContentExtension::InMemoryCompiledContentExtension):
2258         (TestWebKitAPI::makeBackend):
2259         (TestWebKitAPI::TEST_F):
2260         (TestWebKitAPI::actionsEqual):
2261         (TestWebKitAPI::sequenceInstances):
2262         (TestWebKitAPI::InMemoryCompiledContentExtension::createFromFilter): Deleted.
2263         (TestWebKitAPI::InMemoryCompiledContentExtension::~InMemoryCompiledContentExtension): Deleted.
2264         * TestWebKitAPI/Tests/WebKitCocoa/ContentRuleListNotification.mm: Added.
2265         (-[ContentRuleListNotificationDelegate _webView:URL:contentRuleListIdentifiers:notifications:]):
2266         (-[ContentRuleListNotificationDelegate webView:startURLSchemeTask:]):
2267         (-[ContentRuleListNotificationDelegate webView:stopURLSchemeTask:]):
2268         (-[ContentRuleListNotificationDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2269         (makeWarnContentRuleList):
2270         (TEST):
2271
2272 2017-09-27  Wenson Hsieh  <wenson_hsieh@apple.com>
2273
2274         Drag event DataTransfer has unexpected types "dyn.ah62d4..."
2275         https://bugs.webkit.org/show_bug.cgi?id=172526
2276         <rdar://problem/32396081>
2277
2278         Reviewed by Ryosuke Niwa.
2279
2280         Adds new API tests on iOS to cover various cases of using DataTransfer.setData, DataTransfer.getData, and
2281         DataTransfer.types, as well as their interaction with platform objects (source NSItemProviders in the case of
2282         drag and drop, and the general UIPasteboard for copy and paste).
2283
2284         * TestWebKitAPI/PlatformUtilities.h:
2285         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2286         * TestWebKitAPI/Tests/WebKitCocoa/dump-datatransfer-types.html: Added.
2287
2288         Introduce a new API test harness that both drag-and-drop and copy-and-paste tests use to dump DataTransfer's
2289         web-exposed types and values.
2290
2291         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2292         (checkFirstTypeIsPresentAndSecondTypeIsMissing):
2293         (checkJSONWithLogging):
2294         (TestWebKitAPI::TEST):
2295         (checkTypeIdentifierAndIsNotOtherTypeIdentifier): Deleted.
2296         * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
2297         (TestWebKitAPI::checkJSONWithLogging):
2298         (TestWebKitAPI::setUpWebViewForPasteboardTests):
2299         (TestWebKitAPI::TEST):
2300         * TestWebKitAPI/cocoa/PlatformUtilitiesCocoa.mm:
2301         (TestWebKitAPI::Util::jsonMatchesExpectedValues):
2302
2303 2017-09-27  Lucas Forschler  <lforschler@apple.com>
2304
2305         Add macOS High Sierra and iOS Simulator 11 support to bisect-builds.
2306         https://bugs.webkit.org/show_bug.cgi?id=177578
2307
2308         Reviewed by Alexey Proskuryakov.
2309
2310         * Scripts/bisect-builds:
2311         (minified_platforms):
2312         (unminified_platforms):
2313
2314 2017-09-27  Ryan Haddad  <ryanhaddad@apple.com>
2315
2316         Update TestResultsServer for High Sierra queues.
2317         https://bugs.webkit.org/show_bug.cgi?id=177500
2318
2319         Reviewed by Alexey Proskuryakov.
2320
2321         * TestResultServer/static-dashboards/builders.jsonp:
2322
2323 2017-09-27  Lucas Forschler  <lforschler@apple.com>
2324
2325         bisect-builds:add a README to the archive.
2326         https://bugs.webkit.org/show_bug.cgi?id=177376
2327
2328         Reviewed by Alexey Proskuryakov & Jon Davis.
2329
2330         * BuildSlaveSupport/built-product-archive:
2331         (addFilesToArchive): refactor function (was previously addLauncherToArchive)
2332         (createZip): Teach function to add the README
2333         (addLauncherToArchive): Deleted. (refactored to addFilesToArchive)
2334         * BuildSlaveSupport/run-webkit-archive: Deleted. (Moved to WebKitArchiveSupport)
2335         * WebKitArchiveSupport: Added.
2336         * WebKitArchiveSupport/README: Added. README which will be packaged up with the archive.
2337         * WebKitArchiveSupport/run-webkit-archive: Added. (Moved from BuildSlaveSupport)
2338
2339 2017-09-26  Tim Horton  <timothy_horton@apple.com>
2340
2341         Mac CMake bot should provide verbose build output
2342         https://bugs.webkit.org/show_bug.cgi?id=177512
2343
2344         Reviewed by Alexey Proskuryakov.
2345
2346         * BuildSlaveSupport/build.webkit.org-config/config.json:
2347         It's hard to diagnose weird bot-only build problems without the
2348         full verbose build output, so turn that on. The Xcode builders
2349         do it too, so why not CMake!
2350
2351 2017-09-26  Tim Horton  <timothy_horton@apple.com>
2352
2353         Make it possible to easily get verbose ninja output from build-webkit
2354         https://bugs.webkit.org/show_bug.cgi?id=177511
2355
2356         Reviewed by Sam Weinig.
2357
2358         * Scripts/build-webkit:
2359         Add a -v/--verbose argument to build-webkit, which sets the environment
2360         variable VERBOSE=1, which buildCMakeGeneratedProject already checks.
2361
2362         * Scripts/webkitdirs.pm:
2363         (buildCMakeGeneratedProject):
2364         Add ninja verbosity arguments to @makeArgs, which are appended
2365         after the -- and thus handed to ninja; the previous implementation
2366         (appending to @args) would only work if @makeArgs was non-empty and thus
2367         the -- was included.
2368
2369 2017-09-26  Said Abou-Hallawa  <sabouhallawa@apple.com>
2370
2371         Followup (r222427): SynchronizedFixedQueue should not have a public constructor
2372         https://bugs.webkit.org/show_bug.cgi?id=177458
2373
2374         Reviewed by Tim Horton.
2375
2376         Fix the definition and the creation of SynchronizedFixedQueue.
2377
2378         * TestWebKitAPI/Tests/WTF/SynchronizedFixedQueue.cpp:
2379         (TestWebKitAPI::ToUpperConverter::ToUpperConverter):
2380         (TestWebKitAPI::ToUpperConverter::startProducing):
2381         (TestWebKitAPI::ToUpperConverter::startConsuming):
2382         (TestWebKitAPI::ToUpperConverter::stopProducing):
2383         (TestWebKitAPI::ToUpperConverter::stopConsuming):
2384         (TestWebKitAPI::ToUpperConverter::enqueueLower):
2385
2386 2017-09-26  Wenson Hsieh  <wenson_hsieh@apple.com>
2387
2388         [ios-simulator] API test DataInteractionTests.ExternalSourceDataTransferItemGetFolderAsEntry is failing
2389         https://bugs.webkit.org/show_bug.cgi?id=177271
2390
2391         Reviewed by Tim Horton and Megan Gardner.
2392
2393         Rebaseline a failing API test.
2394
2395         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2396         (TestWebKitAPI::TEST):
2397
2398 2017-09-26  Per Arne Vollan  <pvollan@apple.com>
2399
2400         Set LF eol-style on Windows shell script, because the script failed on one of the EWS
2401         bots, when it had the 'native' style.
2402
2403         Unreviewed Windows EWS fix. 
2404
2405         * EWSTools/start-queue-win.sh: Modified property svn:eol-style.
2406
2407 2017-09-26  Jonathan Bedard  <jbedard@apple.com>
2408
2409         webkitpy: Notify parent process when a worker is spawned
2410         https://bugs.webkit.org/show_bug.cgi?id=177467
2411         <rdar://problem/34660194>
2412
2413         Reviewed by Daniel Bates.
2414
2415         When we fork the parent process, there may be resources in that process
2416         which workers will take ownership of. Notify ports when a new worker is created
2417         so that these resources can be correctly managed.
2418
2419         * Scripts/webkitpy/common/message_pool.py:
2420         (_MessagePool._start_workers): After all workers are started, notify the caller
2421         that a worker has been created, unless we are running inline, in which case the
2422         parent process is still the worker.
2423         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
2424         (LayoutTestRunner._handle_did_spawn_worker): Notify the port that a worker process
2425         has been created.
2426         * Scripts/webkitpy/port/base.py:
2427         (Port.did_spawn_worker): Add function so that ports may manage any
2428         resources created on the parent process but managed by the provided worker.
2429         * Scripts/webkitpy/port/device.py:
2430         (Device.release_worker_resources): Call release_worker_resources on the
2431         platform_device if such a function is defined.
2432         * Scripts/webkitpy/port/ios.py:
2433         (IOSPort.did_spawn_worker): Release any worker resources on the iOS
2434         device object associated with the spawned worker.
2435         * Scripts/webkitpy/test/runner.py:
2436         (Runner.handle): Ignore the did_spawn_worker message during testing.
2437
2438 2017-09-26  Jer Noble  <jer.noble@apple.com>
2439
2440         Thrown ObjC exception when right clicking on <img> containing mp4 link
2441         https://bugs.webkit.org/show_bug.cgi?id=177370
2442
2443         Reviewed by Darin Adler.
2444
2445         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2446         * TestWebKitAPI/Tests/WebKit/mac/ContextMenuImgWithVideo.html: Added.
2447         * TestWebKitAPI/Tests/WebKit/mac/ContextMenuImgWithVideo.mm: Added.
2448         (-[ContextMenuImgWithVideoDelegate _webView:contextMenu:forElement:]):
2449         (TestWebKitAPI::TEST):
2450
2451 2017-09-26  Per Arne Vollan  <pvollan@apple.com>
2452
2453         [Win] 'webkit-patch clean' is failing on bot.
2454         https://bugs.webkit.org/show_bug.cgi?id=177488
2455
2456         Reviewed by Brent Fulgham.
2457
2458         If 'os.remove' throws an exception, catch it.
2459
2460         * Scripts/webkitpy/common/checkout/scm/svn.py:
2461         (SVN.discard_working_directory_changes):
2462
2463 2017-09-25  Frederik Riedel  <riedel@apple.com>
2464
2465         Expose way to set values of classified form controls as {Legacy WebKit, WebKit} SPI
2466         https://bugs.webkit.org/show_bug.cgi?id=174394
2467         <rdar://problem/33183504>
2468
2469         Reviewed by Ryosuke Niwa.
2470
2471         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2472         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm: Added.
2473         (-[WKWebView _privateTextInput]): Testing helpers.
2474         (TestWebKitAPI::TEST): Added test cases to test AutoFill for web views.
2475         * TestWebKitAPI/ios/UIKitSPI.h:
2476
2477 2017-09-25  Frederic Wang  <fwang@igalia.com>
2478
2479         Change my status to reviewer and reformat with validate-committer-lists
2480
2481         Unreviewed.
2482
2483         * Scripts/webkitpy/common/config/contributors.json:
2484
2485 2017-09-25  Ryan Haddad  <ryanhaddad@apple.com>
2486
2487         Add High Sierra bots to buildbot and dashboard.
2488         https://bugs.webkit.org/show_bug.cgi?id=177437
2489
2490         Reviewed by Alexey Proskuryakov.
2491
2492         * BuildSlaveSupport/build.webkit.org-config/config.json: Add High Sierra queues, move Leaks and JSC queues over from Sierra.
2493         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py: Update expected results.
2494         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js: Add High Sierra.
2495         (WebKitBuildbot):
2496
2497 2017-09-25  Chris Dumez  <cdumez@apple.com>
2498
2499         [WK2] Add API to query if a download was user-initiated
2500         https://bugs.webkit.org/show_bug.cgi?id=177435
2501         <rdar://problem/34498422>
2502
2503         Reviewed by Alex Christensen.
2504
2505         Add API test coverage.
2506
2507         * TestWebKitAPI/Tests/WebKit/mac/ContextMenuDownload.mm:
2508         (TestWebKitAPI::decideDestinationWithSuggestedFilename):
2509         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
2510         (-[DownloadDelegate _downloadDidStart:]):
2511         (-[DownloadDelegate _downloadDidFinish:]):
2512         (runTest):
2513         (TEST):
2514         (-[BlobDownloadDelegate _downloadDidStart:]):
2515         (-[BlobDownloadDelegate _downloadDidFinish:]):
2516         (-[RedirectedDownloadDelegate _downloadDidStart:]):
2517         (-[RedirectedDownloadDelegate _downloadDidFinish:]):
2518
2519 2017-09-25  Commit Queue  <commit-queue@webkit.org>
2520
2521         Unreviewed, rolling out r222455.
2522         https://bugs.webkit.org/show_bug.cgi?id=177460
2523
2524         broke iOS build (Requested by alexchristensen on #webkit).
2525
2526         Reverted changeset:
2527
2528         "Add WKContentRuleList notify action type"
2529         https://bugs.webkit.org/show_bug.cgi?id=177013
2530         http://trac.webkit.org/changeset/222455
2531
2532 2017-09-25  Per Arne Vollan  <pvollan@apple.com>
2533
2534         [Win] run-api-tests is failing.
2535         https://bugs.webkit.org/show_bug.cgi?id=177454
2536
2537         Reviewed by Brent Fulgham.
2538
2539         TestWebKit.exe has changed name to TestWebKitLegacy.exe.
2540
2541         * Scripts/run-api-tests:
2542         (testToolPaths):
2543
2544 2017-09-25  Per Arne Vollan  <pvollan@apple.com>
2545
2546         [Win] Cygwin 64-bit EWS process cannot find Visual Studio installation.
2547         https://bugs.webkit.org/show_bug.cgi?id=177244
2548
2549         Reviewed by Alex Christensen.
2550
2551         The 64-bit EWS shell process should try to find Visual Studio in the 32-bit program files folder.
2552
2553         * EWSTools/start-queue-win.sh:
2554
2555 2017-09-25  Alex Christensen  <achristensen@webkit.org>
2556
2557         Add WKContentRuleList notify action type
2558         https://bugs.webkit.org/show_bug.cgi?id=177013
2559         <rdar://problem/31073936>
2560
2561         Reviewed by Darin Adler.
2562
2563         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2564         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
2565         (WebCore::ContentExtensions::operator<<):
2566         (TestWebKitAPI::InMemoryCompiledContentExtension::create):
2567         (TestWebKitAPI::InMemoryCompiledContentExtension::data):
2568         (TestWebKitAPI::InMemoryCompiledContentExtension::InMemoryCompiledContentExtension):
2569         (TestWebKitAPI::makeBackend):
2570         (TestWebKitAPI::TEST_F):
2571         (TestWebKitAPI::actionsEqual):
2572         (TestWebKitAPI::sequenceInstances):
2573         (TestWebKitAPI::InMemoryCompiledContentExtension::createFromFilter): Deleted.
2574         (TestWebKitAPI::InMemoryCompiledContentExtension::~InMemoryCompiledContentExtension): Deleted.
2575         * TestWebKitAPI/Tests/WebKitCocoa/ContentRuleListNotification.mm: Added.
2576         (-[ContentRuleListNotificationDelegate _webView:URL:contentRuleListIdentifiers:notifications:]):
2577         (-[ContentRuleListNotificationDelegate webView:startURLSchemeTask:]):
2578         (-[ContentRuleListNotificationDelegate webView:stopURLSchemeTask:]):
2579         (-[ContentRuleListNotificationDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2580         (makeWarnContentRuleList):
2581         (TEST):
2582
2583 2017-09-25  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2584
2585         REGRESSION(r222160) [GTK] [Debug] Internal compiler error on the buildbot (huge memory usage by GCC)
2586         https://bugs.webkit.org/show_bug.cgi?id=177223
2587
2588         Reviewed by Carlos Garcia Campos.
2589
2590         When the user environment sets the variable NUMBER_OF_PROCESSORS
2591         this should be passed down to the build system (ninja or make) always.
2592
2593         Playing with the number of this variable is needed when using icecc
2594         (as you usually want to launch more parallel build process than your
2595         number of cores), or when you want to limit the number of parallel
2596         build process for hardware capacity reasons.
2597
2598         * Scripts/build-webkit:
2599
2600 2017-09-24  Fujii Hironori  <Hironori.Fujii@sony.com>
2601
2602         [GTK] Incremental builds fail every time Web Inspector icons are removed
2603         https://bugs.webkit.org/show_bug.cgi?id=177349
2604
2605         Reviewed by Carlos Garcia Campos.
2606
2607         Removing GTK WebInspector image files always breaks the GTK and
2608         WPE ports incremental builds.
2609
2610         * Scripts/webkitdirs.pm:
2611         (shouldRemoveCMakeCache): Check the timestamp of
2612         Source/WebInspectorUI/UserInterface/Images/gtk directory if
2613         isGtk() or isWPE().
2614
2615 2017-09-24  Joanmarie Diggs  <jdiggs@igalia.com>
2616
2617         [ATK] Object attributes are missing for ARIA live region roles
2618         https://bugs.webkit.org/show_bug.cgi?id=171174
2619
2620         Reviewed by Chris Fleizach.
2621
2622         Add support for testing property values for AXARIALive, AXARIAAtomic, and
2623         AXARIARelevant. Also add handling for testing whether AXElementBusy is
2624         "supported" (in ATK, busy is a state and is supported on all elements
2625         regardless of whether the state is present or absent from the state set).
2626
2627         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
2628         (WTR::AccessibilityUIElement::boolAttributeValue):
2629         (WTR::AccessibilityUIElement::isAttributeSupported):
2630
2631 2017-09-23  Michael Catanzaro  <mcatanzaro@igalia.com>
2632
2633         Unreviewed Mac CMake build fixup after r222194
2634
2635         * DumpRenderTree/PlatformMac.cmake:
2636
2637 2017-09-22  Zalan Bujtas  <zalan@apple.com>
2638
2639         WeakPtrFactory should populate m_ref lazily.
2640         https://bugs.webkit.org/show_bug.cgi?id=177375
2641
2642         Reviewed by Geoffrey Garen.
2643
2644         * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
2645         (TestWebKitAPI::TEST):
2646
2647 2017-09-22  Filip Pizlo  <fpizlo@apple.com>
2648
2649         WSL should report an error if you try to create an operator overload that will never be called
2650         https://bugs.webkit.org/show_bug.cgi?id=177092
2651
2652         Reviewed by JF Bastien.
2653         
2654         This adds all kinds of checks to ensure that your operator overloads make sense. This adds all
2655         kinds of tests for those checks.
2656         
2657         In the process of writing those tests, I hit an awesome bug: function instantiation was
2658         instantiating all types, which meant that if that instantiated function needed to resolve calls
2659         to protocol functions, we'd fail because we would have cloned top-level struct types. We need
2660         to preserve the uninstantiated argument types, type arguments, and return type (for casts) in
2661         order to be able to resolve protocol calls. But we also need the instantiated version of the
2662         type arguments for execution. So, this adds some more stuff to the CallExpression class.
2663         
2664         * WebGPUShadingLanguageRI/All.js:
2665         * WebGPUShadingLanguageRI/ArrayRefType.js:
2666         (ArrayRefType.prototype.unifyImpl):
2667         * WebGPUShadingLanguageRI/ArrayType.js:
2668         (ArrayType.prototype.get isArray):
2669         * WebGPUShadingLanguageRI/CallExpression.js:
2670         (CallExpression.resolve):
2671         (CallExpression.prototype.resolve):
2672         (CallExpression.prototype.resolveToOverload):
2673         * WebGPUShadingLanguageRI/Checker.js:
2674         (Checker.prototype._checkOperatorOverload):
2675         (Checker.prototype.visitFuncDef):
2676         (Checker.prototype.visitProtocolDecl):
2677         (Checker.prototype.visitMakeArrayRefExpression):
2678         * WebGPUShadingLanguageRI/EBufferBuilder.js:
2679         (EBufferBuilder.prototype._createEPtr):
2680         * WebGPUShadingLanguageRI/EPtr.js:
2681         (EPtr):
2682         * WebGPUShadingLanguageRI/Evaluator.js:
2683         (Evaluator.prototype._snapshot):
2684         (Evaluator.prototype._runBody):
2685         (Evaluator.prototype.visitFunctionLikeBlock):
2686         (Evaluator.prototype.visitCallExpression):
2687         (Evaluator):
2688         (Evaluator.prototype.runFunc): Deleted.
2689         * WebGPUShadingLanguageRI/ExternalOrigin.js: Added.
2690         * WebGPUShadingLanguageRI/Func.js:
2691         (Func.prototype.toDeclString):
2692         * WebGPUShadingLanguageRI/FuncInstantiator.js:
2693         (FuncInstantiator.prototype.getUnique.InstantiationSubstitution.prototype.visitCallExpression):
2694         (FuncInstantiator.prototype.getUnique.InstantiationSubstitution):
2695         (FuncInstantiator.prototype.getUnique.InstantiationInstantiateImmediates.prototype.visitCallExpression):
2696         (FuncInstantiator.prototype.getUnique.InstantiationInstantiateImmediates):
2697         (FuncInstantiator.prototype.getUnique.Instantiate.prototype.visitFuncDef):
2698         * WebGPUShadingLanguageRI/Intrinsics.js:
2699         (Intrinsics):
2700         * WebGPUShadingLanguageRI/LateChecker.js:
2701         (LateChecker.prototype.visitReferenceType):
2702         (LateChecker.prototype._checkShaderType):
2703         * WebGPUShadingLanguageRI/Lexer.js:
2704         (Lexer._textIsIdentifierImpl):
2705         (Lexer.textIsIdentifier):
2706         (Lexer.prototype.next):
2707         (Lexer):
2708         * WebGPUShadingLanguageRI/NameResolver.js:
2709         (NameResolver.prototype.visitProtocolDecl):
2710         * WebGPUShadingLanguageRI/Parse.js:
2711         (parseType.getAddressSpace):
2712         (parseType):
2713         * WebGPUShadingLanguageRI/Prepare.js:
2714         (let.prepare):
2715         * WebGPUShadingLanguageRI/PtrType.js:
2716         (PtrType.prototype.unifyImpl):
2717         * WebGPUShadingLanguageRI/ReferenceType.js:
2718         (ReferenceType):
2719         * WebGPUShadingLanguageRI/Rewriter.js:
2720         (Rewriter.prototype.visitReferenceType):
2721         (Rewriter.prototype.processDerivedCallData):
2722         * WebGPUShadingLanguageRI/StandardLibrary.js:
2723         (intToString):
2724         * WebGPUShadingLanguageRI/StatementCloner.js:
2725         (StatementCloner.prototype.visitFuncDef):
2726         * WebGPUShadingLanguageRI/StructLayoutBuilder.js:
2727         (StructLayoutBuilder.prototype.visitCallExpression):
2728         (StructLayoutBuilder):
2729         * WebGPUShadingLanguageRI/Substitution.js:
2730         (Substitution.prototype.visitTypeRef):
2731         * WebGPUShadingLanguageRI/Test.html:
2732         * WebGPUShadingLanguageRI/Test.js:
2733         (checkNumber):
2734         (set target):
2735         (tests.literalBool):
2736         (tests.identityBool):
2737         (tests.intSimpleMath):
2738         (tests.uintSimpleMath):
2739         (tests.uint8SimpleMath):
2740         (tests.equality):
2741         (tests.logicalNegation):
2742         (tests.notEquality):
2743         (tests.equalityTypeFailure):
2744         (tests.generalNegation):
2745         (tests.add1):
2746         (tests.simpleGeneric):
2747         (tests.nameResolutionFailure):
2748         (tests.simpleVariable):
2749         (tests.simpleAssignment):
2750         (tests.simpleDefault):
2751         (tests.simpleDereference):
2752         (tests.dereferenceStore):
2753         (tests.simpleMakePtr):
2754         (tests.threadArrayLoad):
2755         (tests.threadArrayLoadIntLiteral):
2756         (tests.deviceArrayLoad):
2757         (tests.threadArrayStore):
2758         (tests.deviceArrayStore):
2759         (tests.deviceArrayStoreIntLiteral):
2760         (tests.simpleProtocol):
2761         (tests.typeMismatchReturn):
2762         (tests.typeMismatchVariableDecl):
2763         (tests.typeMismatchAssignment):
2764         (tests.typeMismatchReturnParam):
2765         (tests.badAdd):
2766         (tests.lexerKeyword):
2767         (tests.simpleNoReturn):
2768         (tests.simpleUnreachableCode):
2769         (tests.simpleStruct):
2770         (tests.genericStructInstance):
2771         (tests.doubleGenericCallsDoubleGeneric):
2772         (tests.doubleGenericCallsSingleGeneric):
2773         (tests.loadNull):
2774         (tests.storeNull):
2775         (tests.returnNull):
2776         (tests.dereferenceDefaultNull):
2777         (tests.defaultInitializedNull):
2778         (tests.passNullToPtrMonomorphic):
2779         (tests.passNullToPtrPolymorphic):
2780         (tests.passNullToPolymorphic):
2781         (tests.loadNullArrayRef):
2782         (tests.storeNullArrayRef):
2783         (tests.returnNullArrayRef):
2784         (tests.dereferenceDefaultNullArrayRef):
2785         (tests.defaultInitializedNullArrayRef):
2786         (tests.defaultInitializedNullArrayRefIntLiteral):
2787         (tests.passNullToPtrMonomorphicArrayRef):
2788         (tests.passNullToPtrPolymorphicArrayRef):
2789         (tests.returnIntLiteralUint):
2790         (tests.returnIntLiteralDouble):
2791         (tests.badIntLiteralForInt):
2792         (tests.badIntLiteralForUint):
2793         (tests.badIntLiteralForDouble):
2794         (tests.passNullAndNotNull):
2795         (tests.passNullAndNotNullFullPoly):
2796         (tests.passNullAndNotNullFullPolyReverse):
2797         (tests.nullTypeVariableUnify):
2798         (tests.doubleNot):
2799         (tests.simpleRecursion):
2800         (tests.protocolMonoSigPolyDef):
2801         (tests.protocolPolySigPolyDef):
2802         (tests.protocolDoublePolySigDoublePolyDef):
2803         (tests.protocolDoublePolySigDoublePolyDefExplicit):
2804         (tests.variableShadowing):
2805         (tests.ifStatement):
2806         (tests.ifElseStatement):
2807         (tests.ifElseIfStatement):
2808         (tests.ifElseIfElseStatement):
2809         (tests.returnIf):
2810         (tests.simpleWhile):
2811         (tests.protocolMonoPolySigDoublePolyDefExplicit):
2812         (tests.ambiguousOverloadSimple):
2813         (tests.ambiguousOverloadOverlapping):
2814         (tests.ambiguousOverloadTieBreak):
2815         (tests.intOverloadResolution):
2816         (tests.intOverloadResolutionReverseOrder):
2817         (tests.intOverloadResolutionGeneric):
2818         (tests.intLiteralGeneric):
2819         (tests.intLiteralGenericWithProtocols):
2820         (tests.uintLiteralGeneric):
2821         (tests.uintLiteralGenericWithProtocols):
2822         (tests.intLiteralGenericSpecific):
2823         (tests.simpleConstexpr):
2824         (tests.break):
2825         (tests.continue):
2826         (tests.doWhile):
2827         (tests.forLoop):
2828         (tests.chainConstexpr):
2829         (tests.chainGeneric):
2830         (tests.chainStruct):
2831         (tests.chainStructNewlyValid):
2832         (tests.chainStructDevice):
2833         (tests.paramChainStructDevice):
2834         (tests.simpleProtocolExtends):
2835         (tests.protocolExtendsTwo):
2836         (tests.prefixPlusPlus):
2837         (tests.prefixPlusPlusResult):
2838         (tests.postfixPlusPlus):
2839         (tests.postfixPlusPlusResult):
2840         (tests.prefixMinusMinus):
2841         (tests.prefixMinusMinusResult):
2842         (tests.postfixMinusMinus):
2843         (tests.postfixMinusMinusResult):
2844         (tests.plusEquals):
2845         (tests.plusEqualsResult):
2846         (tests.minusEquals):
2847         (tests.minusEqualsResult):
2848         (tests.timesEquals):
2849         (tests.timesEqualsResult):
2850         (tests.divideEquals):
2851         (tests.divideEqualsResult):
2852         (tests.twoIntLiterals):
2853         (tests.unifyDifferentLiterals):
2854         (tests.unifyDifferentLiteralsBackwards):
2855         (tests.unifyVeryDifferentLiterals):
2856         (tests.unifyVeryDifferentLiteralsBackwards):
2857         (tests.assignUintToInt):
2858         (tests.buildArrayThenSumIt):
2859         (tests.buildArrayThenSumItUsingArrayReference):
2860         (tests.overrideSubscriptStruct):
2861         (tests.overrideSubscriptStructAndDoStores):
2862         (tests.overrideSubscriptStructAndUsePointers):
2863         (tests.overrideSubscriptStructAndUsePointersIncorrectly):
2864         (tests.makeArrayRefFromLocal):
2865         (tests.makeArrayRefFromPointer):
2866         (tests.makeArrayRefFromArrayRef):
2867         (tests.simpleLength):
2868         (tests.nonArrayRefArrayLengthSucceed):
2869         (tests.nonArrayRefArrayLengthFail):
2870         (tests.constexprIsNotLValuePtr):
2871         (tests.constexprIsNotLValueAssign):
2872         (tests.constexprIsNotLValueRMW):
2873         (tests.assignLength):
2874         (tests.assignLengthHelper):
2875         (tests.simpleGetter):
2876         (tests.simpleSetter):
2877         (tests.genericAccessors):
2878         (tests.bitSubscriptAccessor):
2879         (tests.nestedSubscriptLValueEmulationSimple):
2880         (tests.nestedSubscriptLValueEmulationGeneric):
2881         (tests.boolBitAnd):
2882         (tests.boolBitOr):
2883         (tests.boolBitXor):
2884         (tests.boolBitNot):
2885         (tests.intBitAnd):
2886         (tests.intBitOr):
2887         (tests.intBitXor):
2888         (tests.intBitNot):
2889         (tests.intLShift):
2890         (tests.intRShift):
2891         (tests.uintBitAnd):
2892         (tests.uintBitOr):
2893         (tests.uintBitXor):
2894         (tests.uintBitNot):
2895         (tests.uintLShift):
2896         (tests.uintRShift):
2897         (tests.uint8BitAnd):
2898         (tests.uint8BitOr):
2899         (tests.uint8BitXor):
2900         (tests.uint8BitNot):
2901         (tests.uint8LShift):
2902         (tests.uint8RShift):
2903         (tests.floatMath):
2904         (tests.genericCastInfer):
2905         (tests.booleanMath):
2906         (tests.typedefArray):
2907         (tests.shaderTypes):
2908         (tests.builtinVectors):
2909         (tests.instantiateStructInStruct):
2910         (tests.instantiateStructInStructWithInt2):
2911         (tests.simpleEnum):
2912         (tests.enumWithManualValues):
2913         (tests.enumWithoutZero):
2914         (tests.enumDuplicates):
2915         (tests.enumWithSomeManualValues):
2916         (tests.enumConstexprGenericFunction):
2917         (tests.enumConstexprGenericStruct):
2918         (tests.trap):
2919         (tests.swizzle):
2920         (tests.enumWithExplicitIntBase):
2921         (tests.enumWithUintBase):
2922         (tests.enumFloatBase):
2923         (tests.enumPtrBase):
2924         (tests.enumArrayRefBase):
2925         (tests.emptyStruct):
2926         (tests.enumStructBase):
2927         (tests.enumNoMembers):
2928         (tests.simpleSwitch):
2929         (tests.exhaustiveUint8Switch):
2930         (tests.notQuiteExhaustiveUint8Switch):
2931         (tests.notQuiteExhaustiveUint8SwitchWithDefault):
2932         (tests.switchFallThrough):
2933         (tests.switchBreak):
2934         (tests.enumSwitchBreakExhaustive):
2935         (tests.enumSwitchBreakNotQuiteExhaustive):
2936         (tests.enumSwitchBreakNotQuiteExhaustiveWithDefault):
2937         (tests.simpleRecursiveStruct):
2938         (tests.mutuallyRecursiveStruct):
2939         (tests.mutuallyRecursiveStructWithPointersBroken):
2940         (tests.mutuallyRecursiveStructWithPointers):
2941         (tests.linkedList):
2942         (tests.pointerToPointer):
2943         (tests.arrayRefToArrayRef):
2944         (tests.pointerGetter):
2945         (tests.loneSetter):
2946         (tests.setterWithMismatchedType):
2947         (tests.setterWithMatchedType):
2948         (tests.operatorWithUninferrableTypeVariable):
2949         (tests.operatorWithoutUninferrableTypeVariable):
2950         (tests.operatorCastWithUninferrableTypeVariable):
2951         (tests.operatorCastWithTypeVariableInferredFromReturnType):
2952         (tests.incWrongArgumentLength):
2953         (tests.decWrongArgumentLength):
2954         (tests.incWrongTypes):
2955         (tests.decWrongTypes):
2956         (tests.plusWrongArgumentLength):
2957         (tests.minusWrongArgumentLength):
2958         (tests.timesWrongArgumentLength):
2959         (tests.divideWrongArgumentLength):
2960         (tests.moduloWrongArgumentLength):
2961         (tests.bitAndWrongArgumentLength):
2962         (tests.bitOrWrongArgumentLength):
2963         (tests.bitXorWrongArgumentLength):
2964         (tests.lShiftWrongArgumentLength):
2965         (tests.rShiftWrongArgumentLength):
2966         (tests.bitNotWrongArgumentLength):
2967         (tests.equalsWrongArgumentLength):
2968         (tests.lessThanWrongArgumentLength):
2969         (tests.lessEqualWrongArgumentLength):
2970         (tests.greaterWrongArgumentLength):
2971         (tests.greaterEqualWrongArgumentLength):
2972         (tests.equalsWrongReturnType):
2973         (tests.notEqualsOverload):
2974         (tests.lessThanWrongReturnType):
2975         (tests.lessEqualWrongReturnType):
2976         (tests.greaterThanWrongReturnType):
2977         (tests.greaterEqualWrongReturnType):
2978         (tests.dotOperatorWrongArgumentLength):
2979         (tests.dotOperatorSetterWrongArgumentLength):
2980         (tests.loneSetterPointer):
2981         (tests.setterWithNoGetterOverload):
2982         (tests.setterWithNoGetterOverloadFixed):
2983         (tests.anderWithNothingWrong):
2984         (tests.anderWithWrongNumberOfArguments):
2985         (tests.anderDoesntReturnPointer):
2986         (tests.anderDoesntTakeReference):
2987         (tests.anderWithArrayRef):
2988         (tests.pointerIndexGetter):
2989         (tests.loneIndexSetter):
2990         (tests.notLoneIndexSetter):
2991         (tests.indexSetterWithMismatchedType):
2992         (tests.indexOperatorWrongArgumentLength):
2993         (tests.indexOperatorSetterWrongArgumentLength):
2994         (tests.loneIndexSetterPointer):
2995         (tests.indexSetterWithNoGetterOverload):
2996         (tests.indexSetterWithNoGetterOverloadFixed):
2997         (tests.indexAnderWithNothingWrong):
2998         (tests.indexAnderWithWrongNumberOfArguments):
2999         (tests.indexAnderDoesntReturnPointer):
3000         (tests.indexAnderDoesntTakeReference):
3001         (tests.indexAnderWithArrayRef):
3002         (tests.devicePtrPtr):
3003         (tests.threadgroupPtrPtr):
3004         (tests.constantPtrPtr):
3005         (tests.pointerIndexGetterInProtocol):
3006         (tests.loneIndexSetterInProtocol):
3007         (tests.notLoneIndexSetterInProtocol):
3008         (tests.indexSetterWithMismatchedTypeInProtocol):
3009         (tests.indexOperatorWrongArgumentLengthInProtocol):
3010         (tests.indexOperatorSetterWrongArgumentLengthInProtocol):
3011         (tests.loneIndexSetterPointerInProtocol):
3012         (tests.indexSetterWithNoGetterOverloadInProtocol):
3013         (tests.indexSetterWithNoGetterOverloadFixedInProtocol):
3014         (tests.indexAnderWithNothingWrongInProtocol):
3015         (tests.indexAnderWithWrongNumberOfArgumentsInProtocol):
3016         (tests.indexAnderDoesntReturnPointerInProtocol):
3017         (tests.indexAnderDoesntTakeReferenceInProtocol):
3018         (tests.indexAnderWithArrayRefInProtocol):
3019         (doTest):
3020         (this.window.let._.of.doTest):
3021         (TEST_literalBool): Deleted.
3022         (TEST_identityBool): Deleted.
3023         (TEST_intSimpleMath): Deleted.
3024         (TEST_uintSimpleMath): Deleted.
3025         (TEST_uint8SimpleMath): Deleted.
3026         (TEST_equality): Deleted.
3027         (TEST_logicalNegation): Deleted.
3028         (TEST_notEquality): Deleted.
3029         (TEST_equalityTypeFailure): Deleted.
3030         (): Deleted.
3031         (TEST_add1): Deleted.
3032         (TEST_simpleGeneric): Deleted.
3033         (TEST_nameResolutionFailure): Deleted.
3034         (TEST_simpleAssignment): Deleted.
3035         (TEST_simpleDefault): Deleted.
3036         (TEST_simpleDereference): Deleted.
3037         (TEST_dereferenceStore): Deleted.
3038         (TEST_simpleMakePtr): Deleted.
3039         (TEST_threadArrayLoad): Deleted.
3040         (TEST_threadArrayLoadIntLiteral): Deleted.
3041         (TEST_deviceArrayLoad): Deleted.
3042         (TEST_threadArrayStore): Deleted.
3043         (TEST_deviceArrayStore): Deleted.
3044         (TEST_deviceArrayStoreIntLiteral): Deleted.
3045         (TEST_simpleProtocol): Deleted.
3046         (TEST_typeMismatchReturn): Deleted.
3047         (TEST_simpleNoReturn): Deleted.
3048         (TEST_genericStructInstance): Deleted.
3049         (TEST_doubleGenericCallsDoubleGeneric): Deleted.
3050         (TEST_doubleGenericCallsSingleGeneric): Deleted.
3051         (TEST_dereferenceDefaultNull): Deleted.
3052         (TEST_dereferenceDefaultNullArrayRef): Deleted.
3053         (TEST_returnIntLiteralDouble): Deleted.
3054         (TEST_badIntLiteralForInt): Deleted.
3055         (TEST_passNullAndNotNullFullPoly): Deleted.
3056         (TEST_passNullAndNotNullFullPolyReverse): Deleted.
3057         (TEST_nullTypeVariableUnify.recurse): Deleted.
3058         (TEST_nullTypeVariableUnify.everyOrder): Deleted.
3059         (TEST_nullTypeVariableUnify.everyPair): Deleted.
3060         (TEST_nullTypeVariableUnify): Deleted.
3061         (TEST_simpleRecursion): Deleted.
3062         (TEST_protocolPolySigPolyDef): Deleted.
3063         (TEST_protocolDoublePolySigDoublePolyDef): Deleted.
3064         (TEST_protocolDoublePolySigDoublePolyDefExplicit): Deleted.
3065         (TEST_variableShadowing): Deleted.
3066         (TEST_ifStatement): Deleted.
3067         (TEST_ifElseStatement): Deleted.
3068         (TEST_ifElseIfStatement): Deleted.
3069         (TEST_ifElseIfElseStatement): Deleted.
3070         (TEST_returnIf): Deleted.
3071         (TEST_simpleWhile): Deleted.
3072         (TEST_protocolMonoPolySigDoublePolyDefExplicit): Deleted.
3073         (TEST_intOverloadResolution): Deleted.
3074         (TEST_intOverloadResolutionReverseOrder): Deleted.
3075         (TEST_intOverloadResolutionGeneric): Deleted.
3076         (TEST_intLiteralGeneric): Deleted.
3077         (TEST_intLiteralGenericWithProtocols): Deleted.
3078         (TEST_uintLiteralGeneric): Deleted.
3079         (TEST_uintLiteralGenericWithProtocols): Deleted.
3080         (TEST_intLiteralGenericSpecific): Deleted.
3081         (TEST_simpleConstexpr): Deleted.
3082         (TEST_break): Deleted.
3083         (TEST_forLoop): Deleted.
3084         (TEST_chainConstexpr): Deleted.
3085         (TEST_chainGeneric): Deleted.
3086         (TEST_chainStruct): Deleted.
3087         (TEST_chainStructNewlyValid): Deleted.
3088         (TEST_chainStructDevice): Deleted.
3089         (TEST_paramChainStructDevice): Deleted.
3090         (TEST_simpleProtocolExtends): Deleted.
3091         (TEST_protocolExtendsTwo): Deleted.
3092         (TEST_prefixPlusPlus): Deleted.
3093         (TEST_prefixPlusPlusResult): Deleted.
3094         (TEST_postfixPlusPlus): Deleted.
3095         (TEST_postfixPlusPlusResult): Deleted.
3096         (TEST_prefixMinusMinus): Deleted.
3097         (TEST_prefixMinusMinusResult): Deleted.
3098         (TEST_postfixMinusMinus): Deleted.
3099         (TEST_postfixMinusMinusResult): Deleted.
3100         (TEST_plusEquals): Deleted.
3101         (TEST_plusEqualsResult): Deleted.
3102         (TEST_minusEquals): Deleted.
3103         (TEST_minusEqualsResult): Deleted.
3104         (TEST_timesEquals): Deleted.
3105         (TEST_timesEqualsResult): Deleted.
3106         (TEST_divideEquals): Deleted.
3107         (TEST_divideEqualsResult): Deleted.
3108         (TEST_twoIntLiterals): Deleted.
3109         (TEST_unifyDifferentLiterals): Deleted.
3110         (TEST_buildArrayThenSumItUsingArrayReference): Deleted.
3111         (TEST_overrideSubscriptStruct): Deleted.
3112         (TEST_overrideSubscriptStructAndDoStores): Deleted.
3113         (TEST_overrideSubscriptStructAndUsePointers): Deleted.
3114         (TEST_overrideSubscriptStructAndUsePointersIncorrectly): Deleted.
3115         (TEST_makeArrayRefFromPointer): Deleted.
3116         (TEST_makeArrayRefFromArrayRef): Deleted.
3117         (TEST_nonArrayRefArrayLengthSucceed): Deleted.
3118         (TEST_nonArrayRefArrayLengthFail): Deleted.
3119         (TEST_simpleSetter): Deleted.
3120         (TEST_genericAccessors): Deleted.
3121         (TEST_bitSubscriptAccessor): Deleted.
3122         (TEST_nestedSubscriptLValueEmulationSimple): Deleted.
3123         (TEST_nestedSubscriptLValueEmulationGeneric): Deleted.
3124         (TEST_boolBitAnd): Deleted.
3125         (TEST_boolBitOr): Deleted.
3126         (TEST_boolBitXor): Deleted.
3127         (TEST_boolBitNot): Deleted.
3128         (TEST_intBitAnd): Deleted.
3129         (TEST_intBitOr): Deleted.
3130         (TEST_intBitXor): Deleted.
3131         (TEST_intBitNot): Deleted.
3132         (TEST_intLShift): Deleted.
3133         (TEST_intRShift): Deleted.
3134         (TEST_uintBitAnd): Deleted.
3135         (TEST_uintBitOr): Deleted.
3136         (TEST_uintBitXor): Deleted.
3137         (TEST_uintBitNot): Deleted.
3138         (TEST_uintLShift): Deleted.
3139         (TEST_uintRShift): Deleted.
3140         (TEST_uint8BitAnd): Deleted.
3141         (TEST_uint8BitOr): Deleted.
3142         (TEST_uint8BitXor): Deleted.
3143         (TEST_uint8BitNot): Deleted.
3144         (TEST_uint8LShift): Deleted.
3145         (TEST_uint8RShift): Deleted.
3146         (TEST_floatMath): Deleted.
3147         (TEST_booleanMath): Deleted.
3148         (TEST_typedefArray): Deleted.
3149         (TEST_shaderTypes): Deleted.
3150         (TEST_instantiateStructInStruct): Deleted.
3151         (TEST_instantiateStructInStructWithInt2): Deleted.
3152         (TEST_simpleEnum): Deleted.
3153         (TEST_enumWithManualValues): Deleted.
3154         (TEST_enumWithoutZero): Deleted.
3155         (TEST_enumConstexprGenericFunction): Deleted.
3156         (TEST_enumConstexprGenericStruct): Deleted.
3157         (TEST_trap): Deleted.
3158         (TEST_enumWithExplicitIntBase): Deleted.
3159         (TEST_enumWithUintBase): Deleted.
3160         (TEST_enumFloatBase): Deleted.
3161         (TEST_enumStructBase): Deleted.
3162         (TEST_simpleSwitch): Deleted.
3163         (TEST_exhaustiveUint8Switch): Deleted.
3164         (TEST_notQuiteExhaustiveUint8Switch): Deleted.
3165         (TEST_switchFallThrough): Deleted.
3166         (TEST_switchBreak): Deleted.
3167         (TEST_enumSwitchBreakExhaustive): Deleted.
3168         (TEST_enumSwitchBreakNotQuiteExhaustive): Deleted.
3169         (TEST_simpleRecursiveStruct): Deleted.
3170         (TEST_linkedList): Deleted.
3171         * WebGPUShadingLanguageRI/Type.js:
3172         (Type.prototype.get isArray):
3173         * WebGPUShadingLanguageRI/TypeRef.js:
3174         (TypeRef.wrap):
3175         * WebGPUShadingLanguageRI/TypeVariableTracker.js:
3176         (TypeVariableTracker.prototype.set get return):
3177         (TypeVariableTracker.prototype.visitVariableRef):
3178         (TypeVariableTracker):
3179         * WebGPUShadingLanguageRI/Visitor.js:
3180         (Visitor.prototype.visitProtocolDecl):
3181         * WebGPUShadingLanguageRI/index.html:
3182
3183 2017-09-22  Matt Lewis  <jlewis3@apple.com>
3184
3185         Unreviewed, rolling out r222394.
3186
3187         This broke the Windows Debug Build.
3188
3189         Reverted changeset:
3190
3191         "Remove build-webkit's notion of feature flags having a
3192         default value"
3193         https://bugs.webkit.org/show_bug.cgi?id=177338
3194         http://trac.webkit.org/changeset/222394
3195
3196 2017-09-22  Tim Horton <timothy_horton@apple.com> and Michael Catanzaro <mcatanzaro@igalia.com>
3197
3198         Remove build-webkit's notion of feature flags having a default value
3199         https://bugs.webkit.org/show_bug.cgi?id=177338
3200
3201         Reviewed by Alex Christensen.
3202
3203         Delegate feature flag default values to the build system.
3204         (FeatureDefines.xcconfig for Xcode, WebKitFeatures.cmake and Options*.cmake for CMake, and FeatureDefines.h for everyone)
3205
3206         * BuildSlaveSupport/build.webkit.org-config/config.json:
3207         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
3208         (Factory.__init__):
3209         Update GTK and WPE buildbot configuration to use --no-experimental-features on old stable
3210         bots instead of --default-cmake-features.
3211
3212         * Scripts/build-webkit:
3213         (cMakeArgsFromFeatures):
3214         Default feature values to 'undef'.
3215         Remove the --default-cmake-features argument; it is now the default.
3216         Add --no-experimental-features to replace it.
3217         Stop printing the default feature flag value in the help.
3218         Avoid propagating undefined values to the build system;
3219         only mention flags that are overridden on the command line.
3220
3221         This has the nice side effect of using the default CMake features
3222         for CMake builds, but still allowing toggling of them using the
3223         prettier --FEATURE and --no-FEATURE arguments.
3224
3225         * Scripts/webkitdirs.pm:
3226         (generateBuildSystemFromCMakeProject):
3227         No longer need to suppress CMake warnings about unused arguments.
3228
3229         * Scripts/webkitperl/FeatureList.pm:
3230         Remove the default values from the feature list.
3231
3232 2017-09-21  Joseph Pecoraro  <pecoraro@apple.com>
3233
3234         Unreviewed, add the ability to skip a test262 test.
3235
3236         * Scripts/run-jsc-stress-tests:
3237         Other handlers have :skip but a few didn't.
3238
3239 2017-09-21  Ryan Haddad  <ryanhaddad@apple.com>
3240
3241         Change architecture for ios-ews queue to arm64.
3242         https://bugs.webkit.org/show_bug.cgi?id=177332
3243
3244         Reviewed by Alexey Proskuryakov.
3245
3246         * Scripts/webkitpy/common/config/ews.json:
3247
3248 2017-09-21  Tim Horton  <timothy_horton@apple.com>
3249
3250         Use 'ninja' from the SDK if it exists
3251         https://bugs.webkit.org/show_bug.cgi?id=177330
3252
3253         Reviewed by Alex Christensen.
3254
3255         * Scripts/webkitdirs.pm:
3256         (canUseNinja):
3257         Check for ninja with xcrun in addition to commandExists() for Cocoa platforms.
3258
3259         (generateBuildSystemFromCMakeProject):
3260         (canUseNinjaGenerator): Deleted.
3261         Remove canUseNinjaGenerator; as noted in bug 177057, the Ninja generator
3262         is available in all versions of CMake supported by WebKit.
3263
3264 2017-09-21  Chris Dumez  <cdumez@apple.com>
3265
3266         Regression(r222308): new API tests are failing for !NETWORK_SESSION
3267         https://bugs.webkit.org/show_bug.cgi?id=177321
3268
3269         Reviewed by Alex Christensen.
3270
3271         Unskip API tests now that they pass everywhere.
3272
3273         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
3274         (TEST):
3275
3276 2017-09-21  Filip Pizlo  <fpizlo@apple.com>
3277
3278         Unreviewed, fix ability to run tests in browser.
3279
3280         * WebGPUShadingLanguageRI/Test.html:
3281         * WebGPUShadingLanguageRI/index.html:
3282
3283 2017-09-21  Jonathan Bedard  <jbedard@apple.com>
3284
3285         webkitpy: Ignore failure to get updated selenium version
3286         https://bugs.webkit.org/show_bug.cgi?id=177205
3287         <rdar://problem/34531669>
3288
3289         Reviewed by Lucas Forschler.
3290
3291         Sometime asking PyPI for the latest version of Selenium fails. We should try and
3292         fallback to, at a minimum, version 3.5.0 or a newer installed version.
3293
3294         * Scripts/webkitpy/thirdparty/__init__.py:
3295         (AutoinstallImportHook.greater_than_equal_to_version): Return true if the second
3296         version string is greater than or equal to the first version string.
3297         (AutoinstallImportHook._install_selenium): If we can't get the latest PyPI url,
3298         fallback to version 3.5.0 or a newer installed version.
3299
3300 2017-09-21  Filip Pizlo  <fpizlo@apple.com>
3301
3302         WSL should have some post-instantiation type checking
3303         https://bugs.webkit.org/show_bug.cgi?id=177303
3304
3305         Reviewed by Keith Miller.
3306         
3307         This patch removes the Primitive protocol! Yay!
3308         
3309         The Primitive protocol was an attempt to handle the fact that Metal wouldn't allow us to point a
3310         non-thread pointer at data structures that have pointers. This type checking rule interacts badly with
3311         generics. I was able to get it to mostly work by making Primitive into a dynamic protocol - a type
3312         belongs to it if it happens to be isPrimitive.
3313         
3314         But that was a mistake, since it makes it hard to create pointers that are generic over address space.
3315         Also, it's not an appropriate rule for targeting SPIR-V logical mode. That rule will be different, and
3316         possibly more complicated.
3317         
3318         All of these kinds of rules are easier to implement of we run them after instantiation, since then they
3319         don't get in the way of generics. That's what this patch does.
3320         
3321         This means that we get all of the same type checking power as before, and we still can catch the errors
3322         that Metal requires us to check for. It's easier to do those checks now.
3323         
3324         Finally, this removes the shader type checker's incomplete reimplementation of isPrimitive (which was
3325         called NonNumericSearcher). The shader type checker calls isPrimitive now.
3326
3327         * WebGPUShadingLanguageRI/AddressSpace.js:
3328         (needsPrimitiveProtocol): Deleted.
3329         (protocolSuffix): Deleted.
3330         * WebGPUShadingLanguageRI/All.js:
3331         * WebGPUShadingLanguageRI/Checker.js:
3332         (Checker.prototype._checkShaderType):
3333         (Checker.prototype._checkShaderType.NonNumericSearcher): Deleted.
3334         (Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitArrayRefType): Deleted.
3335         (Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitPtrType): Deleted.
3336         (Checker.prototype.visitReferenceType): Deleted.
3337         * WebGPUShadingLanguageRI/FuncInstantiator.js:
3338         (FuncInstantiator.prototype.getUnique.Instantiate.prototype.visitFuncDef):
3339         * WebGPUShadingLanguageRI/Inline.js:
3340         (_inlineFunction):
3341         * WebGPUShadingLanguageRI/Intrinsics.js:
3342         (Intrinsics):
3343         * WebGPUShadingLanguageRI/LateChecker.js: Added.
3344         (LateChecker):
3345         (LateChecker.prototype.visitReferenceType):
3346         (LateChecker.prototype._checkShaderType):
3347         (LateChecker.prototype.visitFuncDef):
3348         * WebGPUShadingLanguageRI/LexerToken.js:
3349         (LexerToken.prototype.get isInternal): Deleted.
3350         * WebGPUShadingLanguageRI/NativeType.js:
3351         (NativeType):
3352         (NativeType.prototype.get name):
3353         (NativeType.prototype.get isPrimitive):
3354         (NativeType.prototype.set isPrimitive):
3355         (NativeType.prototype.toString):
3356         * WebGPUShadingLanguageRI/Parse.js:
3357         (parseNative):
3358         * WebGPUShadingLanguageRI/ProgramWithUnnecessaryThingsRemoved.js:
3359         (programWithUnnecessaryThingsRemoved):
3360         * WebGPUShadingLanguageRI/ProtocolDecl.js:
3361         * WebGPUShadingLanguageRI/ReferenceType.js:
3362         (ReferenceType.prototype.get elementType):
3363         (ReferenceType.prototype.get isPrimitive): Deleted.
3364         * WebGPUShadingLanguageRI/StandardLibrary.js:
3365         * WebGPUShadingLanguageRI/StatementCloner.js:
3366         (StatementCloner.prototype.visitNativeType):
3367         * WebGPUShadingLanguageRI/SynthesizeStructAccessors.js:
3368         (synthesizeStructAccessors):
3369         * WebGPUShadingLanguageRI/Test.js:
3370         (TEST_passNullAndNotNullFullPoly):
3371         (TEST_passNullAndNotNullFullPolyReverse):
3372         (TEST_nullTypeVariableUnify):
3373         (TEST_chainStructNewlyValid):
3374         (TEST_chainStructDevice):
3375         (TEST_chainStructInvalid): Deleted.
3376         * WebGPUShadingLanguageRI/Type.js:
3377         (Type.prototype.get isPrimitive):
3378
3379 2017-09-21  Chris Dumez  <cdumez@apple.com>
3380
3381         Unreviewed, temporarily disable new API tests introduced in r222308 until they pass on El Capitan
3382
3383         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
3384         (TEST):
3385
3386 2017-09-21  Commit Queue  <commit-queue@webkit.org>
3387
3388         Unreviewed, rolling out r222272.
3389         https://bugs.webkit.org/show_bug.cgi?id=177316
3390
3391         This patch broke builds on some Win EWS bots. (Requested by
3392         perarne on #webkit).
3393
3394         Reverted changeset:
3395
3396         "[Win] Cygwin 64-bit EWS process cannot find Visual Studio
3397         installation."
3398         https://bugs.webkit.org/show_bug.cgi?id=177244
3399         http://trac.webkit.org/changeset/222272
3400
3401 2017-09-21  Filip Pizlo  <fpizlo@apple.com>
3402
3403         Unreviewed, fix a bug in the interactive app that was introduced by bad merging.
3404
3405         * WebGPUShadingLanguageRI/FlattenedStructOffsetGatherer.js:
3406         (FlattenedStructOffsetGatherer.prototype.visitTypeRef):
3407         (FlattenedStructOffsetGatherer):
3408         * WebGPUShadingLanguageRI/index.html:
3409
3410 2017-09-20  Filip Pizlo  <fpizlo@apple.com>
3411
3412         WSL should support switch
3413         https://bugs.webkit.org/show_bug.cgi?id=176978
3414
3415         Reviewed by Keith Miller.
3416         
3417         This adds fairly complete support for switch statements. This includes things like verifying
3418         whether or not a default statement is needed. This even works when the programmer lists all of
3419         the values of an integer type.
3420         
3421         To test that last part, this patch adds uint8 support. It's easy add it, but of course it
3422         meant adding a lot of tests.
3423         
3424         This also fixes enum bugs, since switch does things to enums that we previously didn't test.
3425
3426         * WebGPUShadingLanguageRI/All.js:
3427         * WebGPUShadingLanguageRI/Checker.js:
3428         (Checker.prototype.visitSwitchStatement):
3429         * WebGPUShadingLanguageRI/EnumLiteral.js:
3430         (EnumLiteral.prototype.get valueForSelectedType):
3431         * WebGPUShadingLanguageRI/EnumType.js:
3432         (EnumType.prototype.allValues):
3433         (EnumType.prototype.valuesEqual):
3434         * WebGPUShadingLanguageRI/Evaluator.js:
3435         (Evaluator.prototype.visitSwitchStatement):
3436         * WebGPUShadingLanguageRI/Inliner.js:
3437         (Inliner.prototype.visitCallExpression):
3438         (Inliner):
3439         (Inliner.prototype.visitCastExpression): Deleted.
3440         * WebGPUShadingLanguageRI/Intrinsics.js:
3441         (Intrinsics.):
3442         (Intrinsics):
3443         * WebGPUShadingLanguageRI/LoopChecker.js:
3444         (LoopChecker):
3445         (LoopChecker.prototype.visitFuncDef):
3446         (LoopChecker.prototype.visitWhileLoop):
3447         (LoopChecker.prototype.visitDoWhileLoop):
3448         (LoopChecker.prototype.visitForLoop):
3449         (LoopChecker.prototype.visitSwitchStatement):
3450         (LoopChecker.prototype.visitBreak):
3451         (LoopChecker.prototype.visitContinue):
3452         * WebGPUShadingLanguageRI/Node.js:
3453         (Node.prototype.commit):
3454         * WebGPUShadingLanguageRI/Parse.js:
3455         (parseSwitchCase):
3456         (parseSwitchStatement):
3457         (parseStatement):
3458         (parseBlockBody):
3459         (parseBlock):
3460         * WebGPUShadingLanguageRI/Prepare.js:
3461         (let.prepare):
3462         * WebGPUShadingLanguageRI/ReturnChecker.js:
3463         (ReturnChecker.prototype._mergeReturnStyle):
3464         (ReturnChecker.prototype.visitIfStatement):
3465         (ReturnChecker.prototype.visitWhileLoop):
3466         (ReturnChecker.prototype.visitDoWhileLoop):
3467         (ReturnChecker.prototype.visitForLoop):
3468         (ReturnChecker.prototype.visitSwitchStatement):
3469         (ReturnChecker.prototype.visitContinue):
3470         (ReturnChecker):
3471         * WebGPUShadingLanguageRI/Rewriter.js:
3472         (Rewriter.prototype.visitSwitchStatement):
3473         (Rewriter.prototype.visitSwitchCase):
3474         * WebGPUShadingLanguageRI/StandardLibrary.js:
3475         (uint8.operator):
3476         (bool.operator):
3477         (_generateSwizzle):
3478         * WebGPUShadingLanguageRI/SwitchCase.js: Added.
3479         (SwitchCase):
3480         (SwitchCase.prototype.get origin):
3481         (SwitchCase.prototype.get isDefault):
3482         (SwitchCase.prototype.get value):
3483         (SwitchCase.prototype.get body):
3484         (SwitchCase.prototype.toString):
3485         * WebGPUShadingLanguageRI/SwitchStatement.js: Added.
3486         (SwitchStatement):
3487         (SwitchStatement.prototype.get origin):
3488         (SwitchStatement.prototype.get value):
3489         (SwitchStatement.prototype.add):
3490         (SwitchStatement.prototype.get switchCases):
3491         (SwitchStatement.prototype.toString):
3492         * WebGPUShadingLanguageRI/Test.html:
3493         * WebGPUShadingLanguageRI/Test.js:
3494         (makeUint8):
3495         (makeEnum):
3496         (checkUint8):
3497         (TEST_uint8SimpleMath):
3498         (TEST_equality):
3499         (TEST_notEquality):
3500         (TEST_uint8BitAnd):
3501         (TEST_uint8BitOr):
3502         (TEST_uint8BitXor):
3503         (TEST_uint8BitNot):
3504         (TEST_uint8LShift):
3505         (TEST_uint8RShift):
3506         (TEST_enumWithExplicitIntBase):
3507         (TEST_enumWithUintBase):
3508         (TEST_enumFloatBase):
3509         (TEST_enumStructBase):
3510         (TEST_simpleSwitch):
3511         (TEST_exhaustiveUint8Switch):
3512         (TEST_notQuiteExhaustiveUint8Switch):
3513         (TEST_switchFallThrough):
3514         (TEST_switchBreak):
3515         (TEST_enumSwitchBreakExhaustive):
3516         (TEST_enumSwitchBreakNotQuiteExhaustive):
3517         (doTest):
3518         * WebGPUShadingLanguageRI/UnificationContext.js:
3519         (UnificationContext):
3520         (UnificationContext.prototype.addExtraNode):
3521         (UnificationContext.prototype.get nodes):
3522         * WebGPUShadingLanguageRI/Visitor.js:
3523         (Visitor.prototype.visitProtocolDecl):
3524         * WebGPUShadingLanguageRI/index.html:
3525
3526 2017-09-20  Filip Pizlo  <fpizlo@apple.com>
3527
3528         WSL needs a way to verify that structs are not cyclic
3529         https://bugs.webkit.org/show_bug.cgi?id=177044
3530
3531         Reviewed by Myles Maxfield.
3532         
3533         This adds a recursive type checking phase. Even before adding this phase, the compiler would
3534         successfully detect recursive types - but at the cost of also rejecting programs that had
3535         recursive types indirectly through pointers. To make both things work, I had to change Visitor
3536         to no longer visit TypeRef.type by default. This resulted in some other changes in a few other
3537         parts of the code that previously relied on that behavior.
3538
3539         * WebGPUShadingLanguageRI/All.js:
3540         * WebGPUShadingLanguageRI/CheckRecursiveTypes.js: Added.
3541         (checkRecursiveTypes):
3542         * WebGPUShadingLanguageRI/Checker.js:
3543         (Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitArrayRefType):
3544         (Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitPtrType):
3545         (Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitTypeRef):
3546         (Checker.prototype._checkShaderType.NonNumericSearcher):
3547         (Checker.prototype._checkShaderType):
3548         (Checker.prototype.visitTypeRef):
3549         * WebGPUShadingLanguageRI/NameResolver.js:
3550         (NameResolver.prototype.visitProtocolDecl):
3551         * WebGPUShadingLanguageRI/Prepare.js:
3552         (let.prepare):
3553         * WebGPUShadingLanguageRI/RecursiveTypeChecker.js: Added.
3554         (RecursiveTypeChecker):
3555         (RecursiveTypeChecker.prototype.visitFuncDef):
3556         (RecursiveTypeChecker.prototype.visitNativeFunc):
3557         (RecursiveTypeChecker.prototype.visitStructType):
3558         (RecursiveTypeChecker.prototype.visitReferenceType):
3559         (RecursiveTypeChecker.prototype.visitTypeRef):
3560         * WebGPUShadingLanguageRI/StructLayoutBuilder.js:
3561         (StructLayoutBuilder.prototype.visitTypeRef):
3562         (StructLayoutBuilder):
3563         * WebGPUShadingLanguageRI/Test.html:
3564         * WebGPUShadingLanguageRI/Test.js:
3565         (TEST_simpleRecursiveStruct):
3566         * WebGPUShadingLanguageRI/TypeDefResolver.js:
3567         (TypeDefResolver.prototype.visitTypeRef):
3568         (TypeDefResolver):
3569         * WebGPUShadingLanguageRI/Visitor.js:
3570         (Visitor.prototype.visitProtocolDecl):
3571         * WebGPUShadingLanguageRI/index.html:
3572
3573 2017-09-21  Ryan Haddad  <ryanhaddad@apple.com>
3574
3575         Update TestResultsServer for iOS 11 queues.
3576         https://bugs.webkit.org/show_bug.cgi?id=177285
3577
3578         Reviewed by Alexey Proskuryakov.
3579
3580         * TestResultServer/static-dashboards/builders.jsonp:
3581
3582 2017-09-21  Alex Christensen  <achristensen@webkit.org>
3583
3584         REGRESSION(r221465) WKWebViews without WebGL delegate callbacks crash when WebGL contexts are created
3585         https://bugs.webkit.org/show_bug.cgi?id=177306
3586         <rdar://problem/34351988>
3587
3588         Reviewed by Chris Dumez.
3589
3590         * TestWebKitAPI/Tests/WebKitCocoa/WebGLPolicy.mm:
3591         (-[WebGLTestDelegate webView:startURLSchemeTask:]):
3592         (-[DelegateWithoutWebGL webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
3593         (TEST):
3594
3595 2017-09-20  Joseph Pecoraro  <pecoraro@apple.com>
3596
3597         Update test262 tests
3598         https://bugs.webkit.org/show_bug.cgi?id=177220
3599
3600         Reviewed by Saam Barati and Yusuke Suzuki.
3601
3602         * Scripts/import-test262-tests:
3603         - better detect upstream git repository url from import location
3604         - update JSTest test262 resources when importing from repository
3605         - take seconds instead of 20+ minutes to write yaml with --failures
3606         - update "negative" command to only include just the exception type
3607
3608 2017-09-20  Chris Dumez  <cdumez@apple.com>
3609
3610         [WK2] Add API to get the redirect chain of a WKDownload
3611         https://bugs.webkit.org/show_bug.cgi?id=176628
3612         <rdar://problem/34338279>
3613
3614         Reviewed by Alex Christensen.