2018-03-23  Youenn Fablet  <youenn@apple.com>

        Update WPT tools to a1ec330
        https://bugs.webkit.org/show_bug.cgi?id=183934

        Reviewed by Chris Dumez.

        * resources/config.json:
        * resources/import-expectations.json:
        * web-platform-tests/config.default.json:
        * web-platform-tests/tools/: Refreshed.

2018-03-23  Youenn Fablet  <youenn@apple.com>

        DocumentThreadableLoader should send credentials after redirections and preflight if fetch option credentials is include
        https://bugs.webkit.org/show_bug.cgi?id=183928

        Reviewed by Chris Dumez.

        * web-platform-tests/fetch/api/cors/cors-cookies-redirect.any.html: Added.
        * web-platform-tests/fetch/api/cors/cors-cookies-redirect.any.js: Added.
        * web-platform-tests/fetch/api/cors/cors-cookies-redirect.any.worker.html: Added.
        * web-platform-tests/fetch/api/resources/inspect-headers.py:
        * web-platform-tests/fetch/api/resources/redirect.py:

2018-03-23  Sergio Villar Senin  <svillar@igalia.com>

        [css-grid] Fix auto repeat tracks computation with definite min sizes
        https://bugs.webkit.org/show_bug.cgi?id=183933

        Reviewed by Javier Fernandez.

        The relevant test for this change is just grid-inline-auto-repeat-001.html. The other ones
        were pulled in by the import. The unique change in those tests is the location of a
        stylesheet. Since we're using it in the new test it seems sensible to use this same commit
        to import those changes too. There is one important change in testing-utils.js which is
        also required by the new test.

        * resources/import-expectations.json:
        * web-platform-tests/css/css-grid/grid-definition/grid-change-fit-content-argument-001.html:
        * web-platform-tests/css/css-grid/grid-definition/grid-inline-auto-repeat-001-expected.txt: Added.
        * web-platform-tests/css/css-grid/grid-definition/grid-inline-auto-repeat-001.html: Added.
        * web-platform-tests/css/css-grid/grid-definition/grid-template-columns-fit-content-001-expected.html:
        * web-platform-tests/css/css-grid/grid-definition/grid-template-columns-fit-content-001.html:
        * web-platform-tests/css/css-grid/grid-definition/grid-template-rows-fit-content-001-expected.html:
        * web-platform-tests/css/css-grid/grid-definition/grid-template-rows-fit-content-001.html:
        * web-platform-tests/css/css-grid/grid-definition/support/grid.css: Added.
        (.grid):
        (.inline-grid):
        (.firstRowFirstColumn):
        (.onlyFirstRowOnlyFirstColumn):
        (.firstRowSecondColumn):
        (.onlyFirstRowOnlySecondColumn):
        (.secondRowFirstColumn):
        (.onlySecondRowOnlyFirstColumn):
        (.secondRowSecondColumn):
        (.onlySecondRowOnlySecondColumn):
        (.endSecondRowEndSecondColumn):
        (.thirdRowSecondColumn):
        (.firstRowThirdColumn):
        (.secondRowThirdColumn):
        (.firstRowFourthColumn):
        (.secondRowFourthColumn):
        (.firstAutoRowSecondAutoColumn):
        (.autoLastRowAutoLastColumn):
        (.autoSecondRowAutoFirstColumn):
        (.firstRowBothColumn):
        (.secondRowBothColumn):
        (.bothRowFirstColumn):
        (.bothRowSecondColumn):
        (.bothRowBothColumn):
        (.autoRowAutoColumn):
        (.firstRowAutoColumn):
        (.secondRowAutoColumn):
        (.thirdRowAutoColumn):
        (.autoRowFirstColumn):
        (.autoRowSecondColumn):
        (.autoRowThirdColumn):
        (.autoRowAutoColumnSpanning2):
        (.autoRowSpanning2AutoColumn):
        (.autoRowSpanning2AutoColumnSpanning3):
        (.autoRowSpanning3AutoColumnSpanning2):
        (.autoRowFirstColumnSpanning2):
        (.autoRowSecondColumnSpanning2):
        (.firstRowSpanning2AutoColumn):
        (.secondRowSpanning2AutoColumn):
        (.gridAutoFlowColumnSparse):
        (.gridAutoFlowColumnDense):
        (.gridAutoFlowRowSparse):
        (.gridAutoFlowRowDense):
        (.constrainedContainer):
        (.unconstrainedContainer):
        (.sizedToGridArea):
        (.verticalRL):
        (.verticalLR):
        (.horizontalTB):
        (.directionRTL):
        (.directionLTR):
        * web-platform-tests/css/css-grid/grid-definition/support/testing-utils.js:
        (checkGridTemplateRows): Convert the passed computed style to an Array in case it is just an string.
        * web-platform-tests/css/css-grid/grid-definition/support/w3c-import.log:
        * web-platform-tests/css/css-grid/grid-definition/w3c-import.log:

2018-03-23  Antoine Quint  <graouts@apple.com>

        [Web Animations] Animated transform styles are ignored when calling getComputedStyle()
        https://bugs.webkit.org/show_bug.cgi?id=183918

        Reviewed by Dean Jackson.

        We obtain a number of progressions by correctly serializing the transform property on getComputedStyle().

        * web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt:
        * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt:
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-iteration-composite-operation-expected.txt:
        * web-platform-tests/web-animations/interfaces/Animation/cancel-expected.txt:

2018-03-22  Frederic Wang  <fwang@igalia.com>

        [MathML] Import WPT test to replace mathml/opentype/large-operators-italic-correction.html
        https://bugs.webkit.org/show_bug.cgi?id=183891

        Reviewed by Manuel Rego Casasnovas.

        Import WPT test added in https://github.com/w3c/web-platform-tests/pull/9993.

        * web-platform-tests/fonts/math/largeop-displayoperatorminheight2000-2AFF-italiccorrection3000.woff: Added.
        * web-platform-tests/fonts/math/w3c-import.log:
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-parameters-2-expected.txt: Added.
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-parameters-2.html: Added.
        * web-platform-tests/mathml/presentation-markup/scripts/w3c-import.log:
        * web-platform-tests/mathml/tools/largeop.py:

2018-03-20  Antoine Quint  <graouts@apple.com>

        [Web Animations] Update the timing model when pending tasks schedule changes
        https://bugs.webkit.org/show_bug.cgi?id=183785

        Reviewed by Dean Jackson.

        Record a progression now that we correctly invalidate effects as their pending play
        or pause task schedule changes. Setting an animation's effect resets pending tasks. 

        * web-platform-tests/web-animations/interfaces/Animation/effect-expected.txt:

2018-03-16  Claudio Saavedra  <csaavedra@igalia.com>

        Unreviewed rebaseline

        These seem to have been forgotten, update baseline as it seemed needed.
        * web-platform-tests/dom/events/EventListener-invoke-legacy-expected.txt:
        * web-platform-tests/dom/nodes/Document-createElement-namespace-expected.txt:
        * web-platform-tests/encrypted-media/idlharness-expected.txt:

2018-03-15  Youenn Fablet  <youenn@apple.com>

        Bad configuration parameters should make RTCPeerConnection constructor throw
        https://bugs.webkit.org/show_bug.cgi?id=183615

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCConfiguration-bundlePolicy-expected.txt:
        * web-platform-tests/webrtc/RTCConfiguration-iceServers-expected.txt:
        * web-platform-tests/webrtc/rtcpeerconnection/rtcpeerconnection-constructor-expected.txt:

2018-03-14  Frederic Wang  <fwang@igalia.com>

        Finish migration to MathML WPT tests
        https://bugs.webkit.org/show_bug.cgi?id=183628

        Reviewed by Manuel Rego Casasnovas.

        In r225162, the MathML tests from the WPT repository were imported. They were intended to
        replace the ones in imported/mathml-in-html5 but the migration was not fully possible. The
        main issue was that many MathML tests use Web fonts to test the use of OpenType parameters
        but document.fonts.ready is unreliable in WebKit (bug 174030). A workaround was implemented
        in WPT ( https://github.com/w3c/web-platform-tests/pull/10025 ) so this commit finishes
        the migration. We update the WPT MathML tests and now run them all, we remove
        imported/mathml-in-html5 and the associated TestExpectations failures. Two cases unrelated to
        font loading are still failing: One for the SuperscriptShiftUpCramped parameter (bug 156401)
        and one for the RadicalDegreeBottomRaisePercent parameter (bug 183631).

        Reviewed by Manuel Rego Casasnovas.

        * web-platform-tests/mathml/presentation-markup/fractions/frac-parameters-1-expected.txt: Renamed from LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/fractions/frac-parameters-1-expected.txt.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-parameters-1.html: Import font loading workaround.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-parameters-2-expected.txt: Renamed from LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/fractions/frac-parameters-2-expected.txt.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-parameters-2.html: Import font loading workaround.
        * web-platform-tests/mathml/presentation-markup/operators/mo-axis-height-1.html: Import font loading workaround.
        * web-platform-tests/mathml/presentation-markup/radicals/root-parameters-1-expected.txt: Renamed from LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/radicals/root-parameters-1-expected.txt.
        Also add the failure with RadicalDegreeBottomRaisePercent.
        * web-platform-tests/mathml/presentation-markup/radicals/root-parameters-1.html: Import font loading workaround.
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-parameters-1-expected.txt: Renamed from LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/scripts/subsup-parameters-1-expected.txt.
        Also add the failure for SuperscriptShiftUpCramped.
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-parameters-1.html: Import font loading workaround.
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-1-expected.txt: Renamed from LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/scripts/underover-parameters-1-expected.txt.
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-1.html: Import font loading workaround.
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-2-expected.txt: Renamed from LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/scripts/underover-parameters-2-expected.txt.
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-2.html: Import font loading workaround.
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-3-expected.txt: Renamed from LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/scripts/underover-parameters-3-expected.txt.
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-3.html: Import font loading workaround.
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-4-expected.txt: Renamed from LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/scripts/underover-parameters-4-expected.txt.
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-4.html: Import font loading workaround.
        * web-platform-tests/mathml/presentation-markup/tables/table-axis-height.html: Import font loading workaround.
        * web-platform-tests/mathml/relations/css-styling/displaystyle-1.html: Import font loading workaround.
        * web-platform-tests/mathml/relations/css-styling/lengths-3.html: Import font loading workaround.
        * web-platform-tests/mathml/tools/utils/misc.py: Import update to Python 3.
        (downloadWithProgressBar):

2018-03-13  Youenn Fablet  <youenn@apple.com>

        Layout Test imported/w3c/web-platform-tests/service-workers/service-worker/register-closed-window.https.html is flaky
        https://bugs.webkit.org/show_bug.cgi?id=182853
        <rdar://problem/37645429>

        Reviewed by Chris Dumez.

        * web-platform-tests/service-workers/service-worker/register-closed-window.https-expected.txt:

2018-03-13  Youenn Fablet  <youenn@apple.com>

        Calling removeTrack with RTCRtpSender does not set SenderTrack to null
        https://bugs.webkit.org/show_bug.cgi?id=183308

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCPeerConnection-removeTrack.https-expected.txt:

2018-03-12  Chris Dumez  <cdumez@apple.com>

        Return boolean from DOMTokenList's replace() method
        https://bugs.webkit.org/show_bug.cgi?id=183567

        Reviewed by Youenn Fablet.

        Rebaseline web platform test now that all checks are passing.

        * web-platform-tests/dom/nodes/Element-classlist-expected.txt:

2018-03-12  Ryan Haddad  <ryanhaddad@apple.com>

        Unreviewed, rebaseline two cssom tests after r229544.

        * web-platform-tests/cssom-view/interfaces-expected.txt:
        * web-platform-tests/cssom/interfaces-expected.txt:

2018-03-12  Youenn Fablet  <youenn@apple.com>

        RTCPeerConnection's close method should update signalingState
        https://bugs.webkit.org/show_bug.cgi?id=174314
        <rdar://problem/33267977>

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCPeerConnection-createDataChannel-expected.txt:

2018-03-12  Chris Dumez  <cdumez@apple.com>

        Re-sync dom web-platform-tests
        https://bugs.webkit.org/show_bug.cgi?id=183570

        Reviewed by Alex Christensen.

        Re-sync dom web-platform-tests from upstream 5a1c088ef0.

        * resources/import-expectations.json:
        * resources/resource-files.json:
        * web-platform-tests/dom/abort/event.any-expected.txt:
        * web-platform-tests/dom/abort/event.any.js:
        (test.t.signal.onabort):
        * web-platform-tests/dom/abort/event.any.worker-expected.txt:
        * web-platform-tests/dom/events/Event-subclasses-constructors-expected.txt:
        * web-platform-tests/dom/events/Event-subclasses-constructors.html:
        * web-platform-tests/dom/events/EventListener-invoke-legacy.html:
        * web-platform-tests/dom/events/event-disabled-dynamic-expected.txt: Added.
        * web-platform-tests/dom/events/event-disabled-dynamic.html: Added.
        * web-platform-tests/dom/events/w3c-import.log:
        * web-platform-tests/dom/historical-expected.txt:
        * web-platform-tests/dom/historical.html:
        * web-platform-tests/dom/interfaces-expected.txt:
        * web-platform-tests/dom/interfaces.html:
        * web-platform-tests/dom/nodes/Document-constructor-svg.svg: Removed.
        * web-platform-tests/dom/nodes/Document-createElement-namespace-tests/empty.html: Added.
        * web-platform-tests/dom/nodes/Document-createElement-namespace-tests/empty.svg: Added.
        * web-platform-tests/dom/nodes/Document-createElement-namespace-tests/empty.xhtml: Added.
        * web-platform-tests/dom/nodes/Document-createElement-namespace-tests/empty.xml: Added.
        * web-platform-tests/dom/nodes/Document-createElement-namespace-tests/generate.py:
        * web-platform-tests/dom/nodes/Document-createElement-namespace-tests/w3c-import.log:
        * web-platform-tests/dom/nodes/Document-importNode-expected.txt:
        * web-platform-tests/dom/nodes/Document-importNode.html:
        * web-platform-tests/dom/nodes/Element-classlist-expected.txt:
        * web-platform-tests/dom/nodes/Element-classlist.html:
        * web-platform-tests/dom/nodes/Element-matches-expected.txt:
        * web-platform-tests/dom/nodes/Element-webkitMatchesSelector-expected.txt:
        * web-platform-tests/dom/nodes/ParentNode-querySelector-All-expected.txt:
        * web-platform-tests/dom/nodes/ParentNode-querySelector-All-xht-expected.txt:
        * web-platform-tests/dom/nodes/selectors.js:
        * web-platform-tests/dom/nodes/w3c-import.log:
        * web-platform-tests/html/dom/interfaces-expected.txt:
        * web-platform-tests/interfaces/dom.idl:
        * web-platform-tests/interfaces/html.idl:
        * web-platform-tests/resources/idlharness.js:
        (constValue):
        (self.IdlArray):
        (IdlArray.prototype.add_idls):
        (should_skip):
        (IdlArray.prototype.internal_add_idls):
        (IdlArray.prototype.recursively_get_includes):
        (IdlArray.prototype.is_json_type):
        (IdlArray.prototype.test):
        (IdlInterface):
        (IdlInterface.prototype.is_mixin):
        (IdlInterface.prototype.get_unscopables):
        (IdlInterface.prototype.is_global):
        (_traverse_inherited_and_consequential_interfaces):
        (IdlInterface.prototype.test):
        (IdlInterface.prototype.test_self):
        (IdlInterface.prototype.test_member_attribute):
        (IdlInterface.prototype.test_member_operation):
        (IdlInterface.prototype.do_member_unscopable_asserts):
        (IdlInterface.prototype.test_primary_interface_of):
        (IdlInterface.prototype.test_interface_of):
        (IdlInterfaceMember):
        * web-platform-tests/resources/idlharness.js.headers:
        * web-platform-tests/resources/webidl2/lib/webidl2.js:
        (WebIDLParseError):
        (WebIDLParseError.prototype.toString):
        (sanitize_name):
        (consume):
        (ws):
        (all_ws):
        (integer_type):
        (float_type):
        (primitive_type):
        (const_value):
        (type_suffix):
        (single_type):
        (union_type):
        (type):
        (type_with_extended_attributes):
        (argument):
        (argument_list):
        (simple_extended_attr):
        (extended_attrs):
        (default_):
        (const_):
        (inheritance):
        (operation_rest):
        (callback):
        (attribute):
        (attribute_rest):
        (return_type):
        (operation):
        (static_member):
        (stringifier):
        (identifiers):
        (iterable_type):
        (readonly_iterable_type):
        (iterable):
        (interface_rest):
        (mixin_rest):
        (interface_):
        (namespace):
        (noninherited_attribute):
        (regular_operation):
        (partial):
        (dictionary):
        (enum_):
        (parse):

2018-03-12  Frederic Wang  <fwang@igalia.com>

        Import WPT tests for blocked modal dialogs in sanboxed documents
        https://bugs.webkit.org/show_bug.cgi?id=183568

        Reviewed by Youenn Fablet.

        * resources/import-expectations.json:
        * resources/resource-files.json:
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-1-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-1.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-2-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-2.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-3-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-3.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-4-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-4.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-opens-modals.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_block_modals.js: Added.
        (runTest):
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/w3c-import.log:

2018-03-12  Antoine Quint  <graouts@apple.com>

        [Web Animations] Implement CSS Animations and CSS Transitions as Web Animations
        https://bugs.webkit.org/show_bug.cgi?id=183504
        <rdar://problem/38372965>

        Reviewed by Dean Jackson and Jon Lee.

        Since we've improved our implementation of getAnimations() we updated the expectations to mark
        the progressions. Both tests for getAnimations() now pass 100%. Another test now fails at a later
        stage and needed its expectation updated.

        * web-platform-tests/web-animations/interfaces/Animatable/animate-expected.txt:
        * web-platform-tests/web-animations/interfaces/Animatable/getAnimations-expected.txt:
        * web-platform-tests/web-animations/interfaces/Document/getAnimations-expected.txt:

2018-03-02  Youenn Fablet  <youenn@apple.com>

        Loads for a Document controlled by a Service Worker should not use AppCache
        https://bugs.webkit.org/show_bug.cgi?id=183148

        Reviewed by Chris Dumez.

        * web-platform-tests/service-workers/service-worker/appcache-ordering-main.https-expected.txt:

2018-02-28  Youenn Fablet  <youenn@apple.com>

        Make LayoutTests wait_for_state fail after a given period of time
        https://bugs.webkit.org/show_bug.cgi?id=183039

        Reviewed by Chris Dumez.

        This will allow further investigating why some tests are timing out.

        * web-platform-tests/service-workers/service-worker/resources/test-helpers.sub.js:
        (wait_for_state):

2018-02-27  Antoine Quint  <graouts@apple.com>

        [Web Animations] Correct implementation of pending tasks and promises
        https://bugs.webkit.org/show_bug.cgi?id=183161

        Reviewed by Dean Jackson.

        Update test expectations with progressions (+32 WPT PASS).

        * web-platform-tests/web-animations/interfaces/Animatable/animate-no-browsing-context-expected.txt:
        * web-platform-tests/web-animations/interfaces/Animation/finish-expected.txt:
        * web-platform-tests/web-animations/interfaces/Animation/finished-expected.txt:
        * web-platform-tests/web-animations/interfaces/Animation/onfinish-expected.txt:
        * web-platform-tests/web-animations/interfaces/Animation/pause-expected.txt:
        * web-platform-tests/web-animations/interfaces/Animation/pending-expected.txt:
        * web-platform-tests/web-animations/interfaces/Animation/startTime-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/canceling-an-animation-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/pausing-an-animation-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/play-states-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/reversing-an-animation-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/set-the-animation-start-time-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/set-the-target-effect-of-an-animation-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/set-the-timeline-of-an-animation-expected.txt:

2018-02-26  Antoine Quint  <graouts@apple.com>

        [Web Animations] Update the playState implementation
        https://bugs.webkit.org/show_bug.cgi?id=183145

        Reviewed by Dean Jackson.

        Update test expectations with slightly different failures later on in a couple of tests.

        * web-platform-tests/web-animations/timing-model/animations/set-the-timeline-of-an-animation-expected.txt:

2018-02-26  Antoine Quint  <graouts@apple.com>

        [Web Animations] Implement the procedure to set the start time
        https://bugs.webkit.org/show_bug.cgi?id=183137

        Reviewed by Dean Jackson.

        Update test expectations with progressions.

        * web-platform-tests/web-animations/timing-model/animations/set-the-animation-start-time-expected.txt:

2018-02-26  Antoine Quint  <graouts@apple.com>

        [Web Animations] Ensure setting the hold time invalidates the timing model
        https://bugs.webkit.org/show_bug.cgi?id=183136

        Reviewed by Dean Jackson.

        Update test expectations with progressions.

        * web-platform-tests/css/css-multicol/multicol-gap-animation-001-expected.txt:
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-iteration-composite-operation-expected.txt:
        * web-platform-tests/web-animations/interfaces/Animation/cancel-expected.txt:
        * web-platform-tests/web-animations/interfaces/Animation/finish-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/iterationComposite-expected.txt:

2018-02-26  Commit Queue  <commit-queue@webkit.org>

        Unreviewed, rolling out r226745.
        https://bugs.webkit.org/show_bug.cgi?id=183132

        This is breaking some websites (Requested by youenn on
        #webkit).

        Reverted changeset:

        "Use no-cache fetch mode when loading main documents with
        location.reload()"
        https://bugs.webkit.org/show_bug.cgi?id=181285
        https://trac.webkit.org/changeset/226745

2018-02-19  Antoine Quint  <graouts@apple.com>

        [Web Animations] Make KeyframeEffect target nullable and read-write
        https://bugs.webkit.org/show_bug.cgi?id=182741

        Reviewed by Dean Jackson.

        Update test expectations with progressions resulting from handling null values for a keyframe effect's target
        as well as making the KeyframeEffect target a read-write property. 

        * web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt:
        * web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt:
        * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/idlharness-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/processing-a-keyframes-argument-001-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/target-expected.txt:

2018-02-17  Antoine Quint  <graouts@apple.com>

        [Web Animations] Store all parsed keyframe input information in a single structure
        https://bugs.webkit.org/show_bug.cgi?id=182903

        Reviewed by Dean Jackson.

        Update test expectations with progressions resulting from returning the style values as provided
        by the keyframe input when calling getKeyframes(). 

        * web-platform-tests/web-animations/interfaces/Animatable/animate-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/constructor-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/setKeyframes-expected.txt:

2018-02-17  Antoine Quint  <graouts@apple.com>

        [Web Animations] Accept null composite modes in keyframes
        https://bugs.webkit.org/show_bug.cgi?id=182902

        Reviewed by Dean Jackson.

        Update test expectations with progressions.

        * web-platform-tests/web-animations/interfaces/KeyframeEffect/constructor-expected.txt:

2018-02-19  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Apply automatic minimum size clamping to spanning items too
        https://bugs.webkit.org/show_bug.cgi?id=182684

        Reviewed by Javier Fernandez.

        Update WPT tests related to this change.

        * web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-022-expected.txt:
        * web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-022.html:
        * web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-023-expected.txt:
        * web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-023.html:
        * web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-024-expected.txt: Added.
        * web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-024.html: Added.
        * web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-025-expected.txt: Added.
        * web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-025.html: Added.
        * web-platform-tests/css/css-grid/grid-items/w3c-import.log:

2018-02-16  Daniel Bates  <dabates@apple.com>

        Remove UTF-32 BOM parsing code
        https://bugs.webkit.org/show_bug.cgi?id=182900
        <rdar://problem/37238717>

        Reviewed by Alexey Proskuryakov.

        Update expected results now that all sub-tests pass.

        * web-platform-tests/encoding/unsupported-encodings-expected.txt:
        * web-platform-tests/encoding/utf-32-expected.txt:

2018-02-15  Antoine Quint  <graouts@apple.com>

        [Web Animations] Ensure that changing the timing model updates styles synchronously
        https://bugs.webkit.org/show_bug.cgi?id=182836

        Reviewed by Dean Jackson.

        Update test expectations for progressions.

        * web-platform-tests/css-timing-1/cubic-bezier-timing-functions-output-expected.txt:
        * web-platform-tests/css-timing-1/frames-timing-functions-output-expected.txt:
        * web-platform-tests/css-timing-1/step-timing-functions-output-expected.txt:
        * web-platform-tests/css/css-multicol/multicol-gap-animation-001-expected.txt:
        * web-platform-tests/web-animations/animation-model/animation-types/discrete-expected.txt:
        * web-platform-tests/web-animations/animation-model/animation-types/visibility-expected.txt:
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-iteration-composite-operation-expected.txt:
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-transformed-distance-expected.txt:
        * web-platform-tests/web-animations/interfaces/Animation/cancel-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/iterationComposite-expected.txt:

2018-02-14  Ryan Haddad  <ryanhaddad@apple.com>

        Unreviewed, rolling out r228444.

        Introduced API and Layout test failures.

        Reverted changeset:

        "[WebAuthN] Revisit the whole async model of task dispatching,
        timeout and aborting"
        https://bugs.webkit.org/show_bug.cgi?id=181946
        https://trac.webkit.org/changeset/228444

2018-02-13  Commit Queue  <commit-queue@webkit.org>

        Unreviewed, rolling out r228437, r228439, and r228440.
        https://bugs.webkit.org/show_bug.cgi?id=182756

        Introduced LayoutTest failures (Requested by ryanhadd_ on
        #webkit).

        Reverted changesets:

        "[Web Animations] Make KeyframeEffect target nullable and
        read-write"
        https://bugs.webkit.org/show_bug.cgi?id=182741
        https://trac.webkit.org/changeset/228437

        "Unreviewed attempt to fix build after r228437."
        https://trac.webkit.org/changeset/228439

        "[Web Animations] Make KeyframeEffect target nullable and
        read-write"
        https://bugs.webkit.org/show_bug.cgi?id=182741
        https://trac.webkit.org/changeset/228440

2018-02-13  Antoine Quint  <graouts@apple.com>

        [Web Animations] Make KeyframeEffect target nullable and read-write
        https://bugs.webkit.org/show_bug.cgi?id=182741

        Reviewed by Dean Jackson.

        Update test expectations for tests that use null KeyframeEffect targets and tests that update their target.

        * web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt:
        * web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt:
        * web-platform-tests/web-animations/animation-model/animation-types/discrete-expected.txt:
        * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt:
        * web-platform-tests/web-animations/animation-model/animation-types/visibility-expected.txt:
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-iteration-composite-operation-expected.txt:
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-transformed-distance-expected.txt:
        * web-platform-tests/web-animations/interfaces/Animatable/animate-no-browsing-context-expected.txt:
        * web-platform-tests/web-animations/interfaces/Animation/cancel-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/idlharness-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/iterationComposite-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/processing-a-keyframes-argument-001-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/target-expected.txt:
        * web-platform-tests/web-animations/timing-model/timelines/document-timelines-expected.txt:

2018-02-12  Antoine Quint  <graouts@apple.com>

        [Web Animations] Support the copy constructors for KeyframeEffectReadOnly and KeyframeEffect
        https://bugs.webkit.org/show_bug.cgi?id=182712

        Reviewed by Dean Jackson.

        Update test expectations for tests relevant to the copy constructors.

        * web-platform-tests/web-animations/interfaces/KeyframeEffect/copy-constructor-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/idlharness-expected.txt:

2018-02-08  Antoine Quint  <graouts@apple.com>

        [Web Animations] Refactor AnimationEffect and KeyframeEffect into AnimationEffectReadOnly, KeyframeEffectReadOnly and KeyframeEffect
        https://bugs.webkit.org/show_bug.cgi?id=182608

        Reviewed by Dean Jackson.

        Update WPT expectations with progressions and updated failure points for all tests that involved
        either AnimationEffectReadOnly or KeyframeEffectReadOnly.

        * web-platform-tests/web-animations/interfaces/Animation/constructor-expected.txt:
        * web-platform-tests/web-animations/interfaces/Animation/effect-expected.txt:
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/idlharness-expected.txt:
        * web-platform-tests/web-animations/interfaces/Document/getAnimations-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/constructor-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/copy-constructor-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/idlharness-expected.txt:

2018-02-09  Youenn Fablet  <youenn@apple.com>

        Add support for cache storage of blob response
        https://bugs.webkit.org/show_bug.cgi?id=182637

        Reviewed by Brady Eidson.

        * web-platform-tests/service-workers/cache-storage/script-tests/cache-put.js:
        (cache_test.async):
        * web-platform-tests/service-workers/cache-storage/serviceworker/cache-put.https-expected.txt:
        * web-platform-tests/service-workers/cache-storage/window/cache-put.https-expected.txt:
        * web-platform-tests/service-workers/cache-storage/worker/cache-put.https-expected.txt:
        * web-platform-tests/service-workers/cache-storage/window/cache-put.https.html:

2018-02-09  Javier Fernandez  <jfernandez@igalia.com>

        [css-align] Implement the new behavior of 'legacy' for justify-items
        https://bugs.webkit.org/show_bug.cgi?id=172712

        Reviewed by Antti Koivisto.

        Rebaselined Default Alignment related tests because of the new 'legacy' value.

        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-004-expected.txt:
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-004.html:
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-002-expected.txt:
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-002.html:
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-004-expected.txt:
        * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-004-expected.txt:
        * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-004.html:

2018-02-08  Antoine Quint  <graouts@apple.com>

        [Web Animations] Always expose "composite" in output of getKeyframes()
        https://bugs.webkit.org/show_bug.cgi?id=182600

        Reviewed by Dean Jackson.

        Update expected results to account for a number of progressions.

        * web-platform-tests/web-animations/interfaces/Animatable/animate-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/composite-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/setKeyframes-expected.txt:

2018-02-07  Youenn Fablet  <youenn@apple.com>

        Remove www1/www2 URLs from service worker tests
        https://bugs.webkit.org/show_bug.cgi?id=182548

        Reviewed by Chris Dumez.

        * web-platform-tests/service-workers/service-worker/http-to-https-redirect-and-register.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/http-to-https-redirect-and-register.https.html:
        * web-platform-tests/service-workers/service-worker/update-bytecheck.https.html:

2018-02-07  Chris Dumez  <cdumez@apple.com>

        IndexedDB in service workers is using a memory backed store
        https://bugs.webkit.org/show_bug.cgi?id=182574
        <rdar://problem/37316205>

        Reviewed by Youenn Fablet.

        Rebaseline WPT test that is now passing.

        * web-platform-tests/service-workers/service-worker/indexeddb.https-expected.txt:

2018-02-05  Chris Dumez  <cdumez@apple.com>

        Unreviewed, unskip fetch-event-respond-with-partial-stream.https.html as it no longer times out

        * web-platform-tests/service-workers/service-worker/fetch-event-respond-with-partial-stream.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/import-scripts-redirect.https-expected.txt:

2018-02-05  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Rename gutter properties to remove "grid-" prefix
        https://bugs.webkit.org/show_bug.cgi?id=180290

        Reviewed by Javier Fernandez.

        Imported WPT tests from css/css-align/gaps/.
        And also update the tests on css/css-grid/alignment/ gutter tests.

        * web-platform-tests/css/css-align/gaps/column-gap-animation-001-expected.txt: Added.
        * web-platform-tests/css/css-align/gaps/column-gap-animation-001.html: Added.
        * web-platform-tests/css/css-align/gaps/column-gap-animation-002-expected.txt: Added.
        * web-platform-tests/css/css-align/gaps/column-gap-animation-002.html: Added.
        * web-platform-tests/css/css-align/gaps/column-gap-animation-003-expected.txt: Added.
        * web-platform-tests/css/css-align/gaps/column-gap-animation-003.html: Added.
        * web-platform-tests/css/css-align/gaps/column-gap-parsing-001-expected.txt: Added.
        * web-platform-tests/css/css-align/gaps/column-gap-parsing-001.html: Added.
        * web-platform-tests/css/css-align/gaps/gap-animation-001-expected.txt: Added.
        * web-platform-tests/css/css-align/gaps/gap-animation-001.html: Added.
        * web-platform-tests/css/css-align/gaps/gap-animation-002-expected.txt: Added.
        * web-platform-tests/css/css-align/gaps/gap-animation-002.html: Added.
        * web-platform-tests/css/css-align/gaps/gap-animation-003-expected.txt: Added.
        * web-platform-tests/css/css-align/gaps/gap-animation-003.html: Added.
        * web-platform-tests/css/css-align/gaps/gap-animation-004-expected.txt: Added.
        * web-platform-tests/css/css-align/gaps/gap-animation-004.html: Added.
        * web-platform-tests/css/css-align/gaps/gap-parsing-001-expected.txt: Added.
        * web-platform-tests/css/css-align/gaps/gap-parsing-001.html: Added.
        * web-platform-tests/css/css-align/gaps/grid-column-gap-parsing-001-expected.txt: Added.
        * web-platform-tests/css/css-align/gaps/grid-column-gap-parsing-001.html: Added.
        * web-platform-tests/css/css-align/gaps/grid-gap-parsing-001-expected.txt: Added.
        * web-platform-tests/css/css-align/gaps/grid-gap-parsing-001.html: Added.
        * web-platform-tests/css/css-align/gaps/grid-row-gap-parsing-001-expected.txt: Added.
        * web-platform-tests/css/css-align/gaps/grid-row-gap-parsing-001.html: Added.
        * web-platform-tests/css/css-align/gaps/row-gap-animation-001-expected.txt: Added.
        * web-platform-tests/css/css-align/gaps/row-gap-animation-001.html: Added.
        * web-platform-tests/css/css-align/gaps/row-gap-animation-002-expected.txt: Added.
        * web-platform-tests/css/css-align/gaps/row-gap-animation-002.html: Added.
        * web-platform-tests/css/css-align/gaps/row-gap-animation-003-expected.txt: Added.
        * web-platform-tests/css/css-align/gaps/row-gap-animation-003.html: Added.
        * web-platform-tests/css/css-align/gaps/row-gap-parsing-001-expected.txt: Added.
        * web-platform-tests/css/css-align/gaps/row-gap-parsing-001.html: Added.
        * web-platform-tests/css/css-align/gaps/w3c-import.log: Added.
        * web-platform-tests/css/css-grid/alignment/grid-gutters-001-expected.html:
        * web-platform-tests/css/css-grid/alignment/grid-gutters-002-expected.html:
        * web-platform-tests/css/css-grid/alignment/grid-gutters-003-expected.html:
        * web-platform-tests/css/css-grid/alignment/grid-gutters-004-expected.html:
        * web-platform-tests/css/css-grid/alignment/grid-gutters-005-expected.html:
        * web-platform-tests/css/css-grid/alignment/grid-gutters-006-expected.html:
        * web-platform-tests/css/css-grid/alignment/grid-gutters-007-expected.html:
        * web-platform-tests/css/css-grid/alignment/grid-gutters-008-expected.html:
        * web-platform-tests/css/css-grid/alignment/grid-gutters-009-expected.html:
        * web-platform-tests/css/css-grid/alignment/grid-gutters-010-expected.html:

2018-02-05  Ms2ger  <Ms2ger@igalia.com>

        Implement createImageBitmap(HTMLVideoElement)
        https://bugs.webkit.org/show_bug.cgi?id=182388

        Reviewed by Žan Doberšek.

        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-drawImage-expected.txt:
        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-drawImage.html:
          Update from upstream to make the test pass on macOS.
        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-invalid-args-expected.txt:

2018-02-02  Chris Dumez  <cdumez@apple.com>

        Clearing a registration should null out its workers before setting their state to "redundant"
        https://bugs.webkit.org/show_bug.cgi?id=182418
        <rdar://problem/37142874>

        Reviewed by Youenn Fablet.

        Rebaseline WPT test now that all checks are passing. I verified that this test is passing
        in both Firefox and Chrome.

        * web-platform-tests/service-workers/service-worker/activation.https-expected.txt:

2018-02-02  Ms2ger  <Ms2ger@igalia.com>

        Update imagebitmap tests.
        https://bugs.webkit.org/show_bug.cgi?id=182335
        <rdar://problem/37110684>

        Unreviewed test gardening.

        * web-platform-tests/2dcontext/imagebitmap/common.sub.js: Renamed from LayoutTests/imported/w3c/web-platform-tests/2dcontext/imagebitmap/common.js.
        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-drawImage-expected.txt:
        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-drawImage.html:
        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-invalid-args-expected.txt:
        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-invalid-args.html:
        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-origin.sub-expected.txt: Added.
        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-origin.sub.html: Added.
        * web-platform-tests/2dcontext/imagebitmap/w3c-import.log:
        * web-platform-tests/common/namespaces.js: Added.
        * web-platform-tests/common/w3c-import.log:
        * web-platform-tests/images/pattern.mp4: Added.
        * web-platform-tests/images/pattern.svg: Added.
        * web-platform-tests/images/w3c-import.log:

2018-02-01  Chris Dumez  <cdumez@apple.com>

        When SW install fails, null out registration.installing before setting worker state to "redundant"
        https://bugs.webkit.org/show_bug.cgi?id=182416
        <rdar://problem/37141997>

        Reviewed by Youenn Fablet.

        Rebaseline WPT test now that one more check is passing.

        * web-platform-tests/service-workers/service-worker/register-same-scope-different-script-url.https-expected.txt:

2018-02-01  Chris Dumez  <cdumez@apple.com>

        Add missing RETURN_IF_EXCEPTION() after object->get() calls in convertDictionary<>()
        https://bugs.webkit.org/show_bug.cgi?id=182392
        <rdar://problem/37119215>

        Reviewed by Geoffrey Garen.

        Rebaseline WPT test now that all checks are passing.

        * web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/extendable-message-event-constructor.https-expected.txt:

2018-02-01  Chris Dumez  <cdumez@apple.com>

        Unreviewed, rebaseline imported/w3c/web-platform-tests/service-workers/service-worker/performance-timeline.https.html

        * web-platform-tests/service-workers/service-worker/performance-timeline.https-expected.txt:

2018-02-01  Commit Queue  <commit-queue@webkit.org>

        Unreviewed, rolling out r227958 and r227972.
        https://bugs.webkit.org/show_bug.cgi?id=182393

        This caused a consistent crash on macOS. (Requested by
        mlewis13 on #webkit).

        Reverted changesets:

        "Update imagebitmap tests."
        https://bugs.webkit.org/show_bug.cgi?id=182335
        https://trac.webkit.org/changeset/227958

        "[WPE] Update test expectations for r227958"
        https://bugs.webkit.org/show_bug.cgi?id=182391
        https://trac.webkit.org/changeset/227972

2018-02-01  Chris Dumez  <cdumez@apple.com>

        Queue a microtask when a waitUntil() promise is settled
        https://bugs.webkit.org/show_bug.cgi?id=182372
        <rdar://problem/37101019>

        Reviewed by Mark Lam.

        Reaseline WPT test now that all checks are passing.

        * web-platform-tests/service-workers/service-worker/extendable-event-async-waituntil.https-expected.txt:

2018-02-01  Ms2ger  <Ms2ger@igalia.com>

        Update imagebitmap tests.
        https://bugs.webkit.org/show_bug.cgi?id=182335

        Unreviewed test gardening.

        * web-platform-tests/2dcontext/imagebitmap/common.sub.js: Renamed from LayoutTests/imported/w3c/web-platform-tests/2dcontext/imagebitmap/common.js.
        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-drawImage-expected.txt:
        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-drawImage.html:
        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-invalid-args-expected.txt:
        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-invalid-args.html:
        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-origin.sub-expected.txt: Added.
        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-origin.sub.html: Added.
        * web-platform-tests/2dcontext/imagebitmap/w3c-import.log:
        * web-platform-tests/common/namespaces.js: Added.
        * web-platform-tests/common/w3c-import.log:
        * web-platform-tests/images/pattern.mp4: Added.
        * web-platform-tests/images/pattern.svg: Added.
        * web-platform-tests/images/w3c-import.log:

2018-01-31  Saam Barati  <sbarati@apple.com>

        JSC incorrectly interpreting script, sets Global Property instead of Global Lexical variable (LiteralParser / JSONP path)
        https://bugs.webkit.org/show_bug.cgi?id=182074
        <rdar://problem/36846261>

        Reviewed by Mark Lam.

        * web-platform-tests/service-workers/service-worker/import-scripts-updated-flag.https-expected.txt:

2018-01-30  Youenn Fablet  <youenn@apple.com> and Oleksandr Skachkov  <gskachkov@gmail.com>

        FetchResponse should support ConsumeData callback on chunk data is received
        https://bugs.webkit.org/show_bug.cgi?id=181600
        <rdar://problem/36932547>

        Reviewed by Alex Christensen.

        * web-platform-tests/service-workers/service-worker/fetch-event-respond-with-body-loaded-in-chunk.https-expected.txt: Added.
        * web-platform-tests/service-workers/service-worker/fetch-event-respond-with-body-loaded-in-chunk.https.html: Added.
        * web-platform-tests/service-workers/service-worker/resources/fetch-event-respond-with-body-loaded-in-chunk-worker.js: Added.

2018-01-30  Javier Fernandez  <jfernandez@igalia.com>

        [css-align] The 'baseline' value must be invalid for the 'justify-content' property
        https://bugs.webkit.org/show_bug.cgi?id=181794

        Reviewed by Antti Koivisto.

        Adapted the test cases using <baseline-position> keywords to the new CSS syntax.
        Imported the CSS/support folder.

        * resources/import-expectations.json:
        * web-platform-tests/css/css-align/content-distribution/parse-align-content-001-expected.txt:
        * web-platform-tests/css/css-align/content-distribution/parse-align-content-001.html:
        * web-platform-tests/css/css-align/content-distribution/parse-align-content-003-expected.txt:
        * web-platform-tests/css/css-align/content-distribution/parse-align-content-003.html:
        * web-platform-tests/css/css-align/content-distribution/parse-justify-content-001-expected.txt:
        * web-platform-tests/css/css-align/content-distribution/parse-justify-content-001.html:
        * web-platform-tests/css/css-align/content-distribution/parse-justify-content-003-expected.txt:
        * web-platform-tests/css/css-align/content-distribution/parse-justify-content-003.html:
        * web-platform-tests/css/css-align/content-distribution/parse-justify-content-004-expected.txt:
        * web-platform-tests/css/css-align/content-distribution/parse-justify-content-004.html:
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-001-expected.txt:
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-001.html:
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-002-expected.txt:
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-002.html:
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-004-expected.txt:
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-004.html:
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-006-expected.txt:
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-006.html:
        * web-platform-tests/css/css-align/default-alignment/parse-align-items-001-expected.txt:
        * web-platform-tests/css/css-align/default-alignment/parse-align-items-001.html:
        * web-platform-tests/css/css-align/default-alignment/parse-align-items-003-expected.txt:
        * web-platform-tests/css/css-align/default-alignment/parse-align-items-003.html:
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-001-expected.txt:
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-001.html:
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-003-expected.txt:
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-003.html:
        * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-001.html:
        * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-002.html:
        * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-004.html:
        * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-006.html:
        * web-platform-tests/css/css-align/resources/alignment-parsing-utils.js:
        (checkPlaceShorhand):
        (checkPlaceShorhandLonghands):
        * web-platform-tests/css/css-align/self-alignment/parse-align-self-001-expected.txt:
        * web-platform-tests/css/css-align/self-alignment/parse-align-self-001.html:
        * web-platform-tests/css/css-align/self-alignment/parse-align-self-003-expected.txt:
        * web-platform-tests/css/css-align/self-alignment/parse-align-self-003.html:
        * web-platform-tests/css/css-align/self-alignment/parse-justify-self-001-expected.txt:
        * web-platform-tests/css/css-align/self-alignment/parse-justify-self-001.html:
        * web-platform-tests/css/css-align/self-alignment/parse-justify-self-003-expected.txt:
        * web-platform-tests/css/css-align/self-alignment/parse-justify-self-003.html:
        * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-001.html:
        * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-002.html:
        * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-004.html:
        * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-006.html:
        * web-platform-tests/css/support/1x1-green.png: Added.
        * web-platform-tests/css/support/1x1-lime.png: Added.
        * web-platform-tests/css/support/1x1-maroon.png: Added.
        * web-platform-tests/css/support/1x1-navy.png: Added.
        * web-platform-tests/css/support/1x1-red.png: Added.
        * web-platform-tests/css/support/1x1-white.png: Added.
        * web-platform-tests/css/support/60x60-gg-rr.png: Added.
        * web-platform-tests/css/support/60x60-green.png: Added.
        * web-platform-tests/css/support/60x60-red.png: Added.
        * web-platform-tests/css/support/OWNERS: Added.
        * web-platform-tests/css/support/README: Added.
        * web-platform-tests/css/support/a-green.css: Added.
        (.a):
        * web-platform-tests/css/support/alignment.css: Added.
        (.alignSelfAuto):
        (.alignSelfNormal):
        (.alignSelfStretch):
        (.alignSelfStart):
        (.alignSelfEnd):
        (.alignSelfCenter):
        (.alignSelfRight):
        (.alignSelfLeft):
        (.alignSelfFlexStart):
        (.alignSelfFlexEnd):
        (.alignSelfSelfStart):
        (.alignSelfSelfEnd):
        (.alignSelfSafeCenter):
        (.alignSelfUnsafeCenter):
        (.alignSelfSafeEnd):
        (.alignSelfUnsafeEnd):
        (.alignSelfSafeSelfEnd):
        (.alignSelfUnsafeSelfEnd):
        (.alignSelfSafeSelfStart):
        (.alignSelfUnsafeSelfStart):
        (.alignSelfSafeRight):
        (.alignSelfUnsafeRight):
        (.alignSelfSafeLeft):
        (.alignSelfUnsafeLeft):
        (.alignSelfSafeFlexEnd):
        (.alignSelfUnsafeFlexEnd):
        (.alignSelfSafeFlexStart):
        (.alignSelfUnsafeFlexStart):
        (.alignSelfBaseline):
        (.alignSelfFirstBaseline):
        (.alignSelfLastBaseline):
        (.alignItemsAuto):
        (.alignItemsNormal):
        (.alignItemsStretch):
        (.alignItemsStart):
        (.alignItemsCenter):
        (.alignItemsEnd):
        (.alignItemsLeft):
        (.alignItemsRight):
        (.alignItemsFlexStart):
        (.alignItemsFlexEnd):
        (.alignItemsSelfStart):
        (.alignItemsSelfEnd):
        (.alignItemsSafeCenter):
        (.alignItemsUnsafeCenter):
        (.alignItemsSafeEnd):
        (.alignItemsUnsafeEnd):
        (.alignItemsSafeSelfEnd):
        (.alignItemsUnsafeSelfEnd):
        (.alignItemsSafeSelfStart):
        (.alignItemsUnsafeSelfStart):
        (.alignItemsSafeRight):
        (.alignItemsUnsafeRight):
        (.alignItemsSafeLeft):
        (.alignItemsUnsafeLeft):
        (.alignItemsSafeFlexEnd):
        (.alignItemsUnsafeFlexEnd):
        (.alignItemsSafeFlexStart):
        (.alignItemsUnsafeFlexStart):
        (.alignItemsBaseline):
        (.alignItemsFirstBaseline):
        (.alignItemsLastBaseline):
        (.alignContentBaseline):
        (.alignContentLastBaseline):
        (.alignContentStart):
        (.alignContentEnd):
        (.alignContentCenter):
        (.alignContentLeft):
        (.alignContentRight):
        (.alignContentFlexStart):
        (.alignContentFlexEnd):
        (.alignContentSpaceBetween):
        (.alignContentSpaceAround):
        (.alignContentSpaceEvenly):
        (.alignContentStretch):
        (.alignContentSafeCenter):
        (.alignContentUnsafeCenter):
        (.alignContentSafeEnd):
        (.alignContentUnsafeEnd):
        (.alignContentSafeRight):
        (.alignContentUnsafeRight):
        (.alignContentSafeLeft):
        (.alignContentUnsafeLeft):
        (.alignContentSafeFlexEnd):
        (.alignContentUnsafeFlexEnd):
        (.alignContentSafeFlexStart):
        (.alignContentUnsafeFlexStart):
        (.alignContentFirstBaseline):
        (.justifySelfAuto):
        (.justifySelfNormal):
        (.justifySelfStretch):
        (.justifySelfStart):
        (.justifySelfCenter):
        (.justifySelfEnd):
        (.justifySelfRight):
        (.justifySelfLeft):
        (.justifySelfFlexStart):
        (.justifySelfFlexEnd):
        (.justifySelfSelfStart):
        (.justifySelfSelfEnd):
        (.justifySelfSafeCenter):
        (.justifySelfUnsafeCenter):
        (.justifySelfSafeEnd):
        (.justifySelfUnsafeEnd):
        (.justifySelfSafeSelfEnd):
        (.justifySelfUnsafeSelfEnd):
        (.justifySelfSafeSelfStart):
        (.justifySelfUnsafeSelfStart):
        (.justifySelfSafeRight):
        (.justifySelfUnsafeRight):
        (.justifySelfSafeLeft):
        (.justifySelfUnsafeLeft):
        (.justifySelfSafeFlexEnd):
        (.justifySelfUnsafeFlexEnd):
        (.justifySelfSafeFlexStart):
        (.justifySelfUnsafeFlexStart):
        (.justifySelfBaseline):
        (.justifySelfFirstBaseline):
        (.justifySelfLastBaseline):
        (.justifyItemsAuto):
        (.justifyItemsNormal):
        (.justifyItemsStretch):
        (.justifyItemsStart):
        (.justifyItemsCenter):
        (.justifyItemsEnd):
        (.justifyItemsLeft):
        (.justifyItemsRight):
        (.justifyItemsFlexStart):
        (.justifyItemsFlexEnd):
        (.justifyItemsSelfStart):
        (.justifyItemsSelfEnd):
        (.justifyItemsLegacy):
        (.justifyItemsLegacyLeft):
        (.justifyItemsLegacyCenter):
        (.justifyItemsLegacyRight):
        (.justifyItemsLeftLegacy):
        (.justifyItemsCenterLegacy):
        (.justifyItemsRightLegacy):
        (.justifyItemsSafeCenter):
        (.justifyItemsUnsafeCenter):
        (.justifyItemsSafeEnd):
        (.justifyItemsUnsafeEnd):
        (.justifyItemsSafeSelfEnd):
        (.justifyItemsUnsafeSelfEnd):
        (.justifyItemsSafeSelfStart):
        (.justifyItemsUnsafeSelfStart):
        (.justifyItemsSafeRight):
        (.justifyItemsUnsafeRight):
        (.justifyItemsSafeLeft):
        (.justifyItemsUnsafeLeft):
        (.justifyItemsSafeFlexEnd):
        (.justifyItemsUnsafeFlexEnd):
        (.justifyItemsSafeFlexStart):
        (.justifyItemsUnsafeFlexStart):
        (.justifyItemsTest):
        (.justifyItemsBaseline):
        (.justifyItemsFirstBaseline):
        (.justifyItemsLastBaseline):
        (.justifyContentBaseline):
        (.justifyContentLastBaseline):
        (.justifyContentStart):
        (.justifyContentEnd):
        (.justifyContentCenter):
        (.justifyContentLeft):
        (.justifyContentRight):
        (.justifyContentFlexStart):
        (.justifyContentFlexEnd):
        (.justifyContentSpaceBetween):
        (.justifyContentSpaceAround):
        (.justifyContentSpaceEvenly):
        (.justifyContentStretch):
        (.justifyContentSafeCenter):
        (.justifyContentUnsafeCenter):
        (.justifyContentSafeEnd):
        (.justifyContentUnsafeEnd):
        (.justifyContentSafeRight):
        (.justifyContentUnsafeRight):
        (.justifyContentSafeLeft):
        (.justifyContentUnsafeLeft):
        (.justifyContentSafeFlexEnd):
        (.justifyContentUnsafeFlexEnd):
        (.justifyContentSafeFlexStart):
        (.justifyContentUnsafeFlexStart):
        (.justifyContentFirstBaseline):
        (.itemsNormal):
        (.itemsStretch):
        (.itemsStart):
        (.itemsCenter):
        (.itemsEnd):
        (.itemsLeft):
        (.itemsRight):
        (.itemsSelfStart):
        (.itemsSelfEnd):
        (.itemsBaseline):
        (.selfStretch):
        (.selfStart):
        (.selfEnd):
        (.selfCenter):
        (.selfRight):
        (.selfLeft):
        (.selfSelfStart):
        (.selfSelfEnd):
        (.selfBaseline):
        (.contentStart):
        (.contentCenter):
        (.contentEnd):
        (.contentCenterSafe):
        (.contentCenterUnsafe):
        (.contentEndSafe):
        (.contentEndUnsafe):
        (.contentSpaceBetween):
        (.contentSpaceAround):
        (.contentSpaceEvenly):
        (.contentStretch):
        * web-platform-tests/css/support/b-green.css: Added.
        (.b):
        * web-platform-tests/css/support/c-red.css: Added.
        (.c):
        * web-platform-tests/css/support/cat.png: Added.
        * web-platform-tests/css/support/green.ico: Added.
        * web-platform-tests/css/support/import-green.css: Added.
        (.import):
        * web-platform-tests/css/support/import-red.css: Added.
        (.import):
        * web-platform-tests/css/support/pattern-grg-rgr-grg.png: Added.
        * web-platform-tests/css/support/pattern-grg-rrg-rgg.png: Added.
        * web-platform-tests/css/support/pattern-rgr-grg-rgr.png: Added.
        * web-platform-tests/css/support/pattern-tr.png: Added.
        * web-platform-tests/css/support/red.ico: Added.
        * web-platform-tests/css/support/ruler-h-50%.png: Added.
        * web-platform-tests/css/support/ruler-h-50px.png: Added.
        * web-platform-tests/css/support/ruler-v-100px.png: Added.
        * web-platform-tests/css/support/ruler-v-50px.png: Added.
        * web-platform-tests/css/support/square-purple.png: Added.
        * web-platform-tests/css/support/square-teal.png: Added.
        * web-platform-tests/css/support/square-white.png: Added.
        * web-platform-tests/css/support/support/README: Added.
        * web-platform-tests/css/support/support/swatch-green.png: Added.
        * web-platform-tests/css/support/support/swatch-red.png: Added.
        * web-platform-tests/css/support/support/w3c-import.log: Added.
        * web-platform-tests/css/support/swatch-blue.png: Added.
        * web-platform-tests/css/support/swatch-green.png: Added.
        * web-platform-tests/css/support/swatch-lime.png: Added.
        * web-platform-tests/css/support/swatch-orange.png: Added.
        * web-platform-tests/css/support/swatch-red.png: Added.
        * web-platform-tests/css/support/swatch-teal.png: Added.
        * web-platform-tests/css/support/swatch-white.png: Added.
        * web-platform-tests/css/support/swatch-yellow.png: Added.
        * web-platform-tests/css/support/test-bl.png: Added.
        * web-platform-tests/css/support/test-br.png: Added.
        * web-platform-tests/css/support/test-inner-half-size.png: Added.
        * web-platform-tests/css/support/test-outer.png: Added.
        * web-platform-tests/css/support/test-tl.png: Added.
        * web-platform-tests/css/support/test-tr.png: Added.
        * web-platform-tests/css/support/w3c-import.log: Added.

2018-01-30  Frederic Wang  <fwang@igalia.com>

        Use document.scrollingElement to access viewport scroll properties in tests
        https://bugs.webkit.org/show_bug.cgi?id=182241

        Reviewed by Antonio Gomes.

        Many tests use document.body in standard mode in order to access scroll properties of the
        viewport. This is incorrect per the CSSOM View specification but WebKit does not follow the
        spec at the moment (see bug 5991). This replaces several of these instances with
        document.scrollingElement, so that tests will still work when WebKit's behavior is changed.
        The change in that web-platform-tests test are imported from
        https://github.com/w3c/web-platform-tests/commit/fc33ef7641427a3f1388093c54b24f292c21b34d

        * web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/003.html:

2018-01-29  Youenn Fablet  <youenn@apple.com>

        ServiceWorkerClientFetch should not consider responses without Location headers as redirection responses
        https://bugs.webkit.org/show_bug.cgi?id=182134

        Reviewed by Chris Dumez.

        * web-platform-tests/service-workers/service-worker/navigation-redirect.https-expected.txt:

2018-01-29  Oleksandr Skachkov  <gskachkov@gmail.com>

        FetchResponse should support ConsumeData callback on chunk data is received: handling ReadableStream bodies
        https://bugs.webkit.org/show_bug.cgi?id=182008

        Reviewed by Youenn Fablet.

        * web-platform-tests/service-workers/service-worker/fetch-event-respond-with-readable-stream-chunk.https-expected.txt: Added.
        * web-platform-tests/service-workers/service-worker/fetch-event-respond-with-readable-stream-chunk.https.html: Added.
        * web-platform-tests/service-workers/service-worker/resources/fetch-event-respond-with-readable-stream-chunk-iframe.html: Added.
        * web-platform-tests/service-workers/service-worker/resources/fetch-event-respond-with-readable-stream-chunk-worker.js: Added.
        (const.process):
        (this.step):
        (this.run):
        (const.asyncSteps):

2018-01-26  Antoine Quint  <graouts@apple.com>

        [Web Animations] Distinguish between an omitted and a null timeline argument to the Animation constructor
        https://bugs.webkit.org/show_bug.cgi?id=179065

        Reviewed by Dean Jackson.

        Update WPT test output with progressions.

        * web-platform-tests/web-animations/interfaces/Animation/constructor-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/reversing-an-animation-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/set-the-timeline-of-an-animation-expected.txt:

2018-01-26  Youenn Fablet  <youenn@apple.com>

        CSP post checks should be done for service worker responses
        https://bugs.webkit.org/show_bug.cgi?id=182160

        Reviewed by Daniel Bates.

        * web-platform-tests/service-workers/service-worker/fetch-csp.https-expected.txt:

2018-01-26  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-multicol] Support percentages in column-gap
        https://bugs.webkit.org/show_bug.cgi?id=182004

        Reviewed by Javier Fernandez.

        New expected results for a few tests that are passing now.
        One is the test for this specific patch, the other are tests related to animations
        of "normal" and initial value, that were fixed with the introduction of GapLength.

        * web-platform-tests/css/css-multicol/multicol-gap-animation-002-expected.txt:
        * web-platform-tests/css/css-multicol/multicol-gap-animation-003-expected.txt:
        * web-platform-tests/css/css-multicol/multicol-gap-percentage-001-expected.txt:

2018-01-25  Yusuke Suzuki  <utatane.tea@gmail.com>

        imported/w3c/web-platform-tests/html/semantics/scripting-1/the-script-element/module/errorhandling.html crashes
        https://bugs.webkit.org/show_bug.cgi?id=181980

        Reviewed by Ryosuke Niwa.

        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/dynamic-imports-script-error-expected.txt:
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/errorhandling-expected.txt: Added.

2018-01-25  Chris Dumez  <cdumez@apple.com>

        Access to service workers / Cache API should be disabled in sandboxed frames without allow-same-origin flag
        https://bugs.webkit.org/show_bug.cgi?id=182140
        <rdar://problem/36879952>

        Reviewed by Youenn Fablet.

        Rebaseline several WPT test that either pass or fail differently.

        * web-platform-tests/service-workers/cache-storage/window/sandboxed-iframes.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/sandboxed-iframe-navigator-serviceworker.https-expected.txt:

2018-01-25  Chris Dumez  <cdumez@apple.com>

        Clients.get(id) should only returns clients in the service worker's origin
        https://bugs.webkit.org/show_bug.cgi?id=182149
        <rdar://problem/36882310>

        Reviewed by Youenn Fablet.

        Rebase WPT test that is now passing.

        * web-platform-tests/service-workers/service-worker/clients-get-cross-origin.https-expected.txt:

2018-01-25  Youenn Fablet  <youenn@apple.com>

        ShapeOutside should use same origin credentials mode
        https://bugs.webkit.org/show_bug.cgi?id=182141

        Reviewed by Chris Dumez.

        * web-platform-tests/service-workers/service-worker/fetch-request-css-images.https-expected.txt:

2018-01-25  Youenn Fablet  <youenn@apple.com>

        DocumentThreadableLoader should ensure service worker is not reused if redirection comes from the network
        https://bugs.webkit.org/show_bug.cgi?id=182137

        Reviewed by Chris Dumez.

        * web-platform-tests/service-workers/service-worker/fetch-request-fallback.https-expected.txt:

2018-01-25  Youenn Fablet  <youenn@apple.com>

        DocumentLoader should interrupt ongoing load when getting a redirection from network that matches a service worker
        https://bugs.webkit.org/show_bug.cgi?id=182115

        Reviewed by Alex Christensen.

        * web-platform-tests/service-workers/service-worker/navigation-redirect.https-expected.txt:

2018-01-25  Chris Dumez  <cdumez@apple.com>

        Registering same scope as the script directory without the last slash should fail
        https://bugs.webkit.org/show_bug.cgi?id=182122
        <rdar://problem/36877167>

        Reviewed by Youenn Fablet.

        Rebaseline WPT test now that one more check is passing.

        * web-platform-tests/service-workers/service-worker/registration-security-error.https-expected.txt:

2018-01-25  Antoine Quint  <graouts@apple.com>

        [Web Animations] Expose the reverse() method
        https://bugs.webkit.org/show_bug.cgi?id=182100
        <rdar://problem/36867117>

        Reviewed by Dean Jackson.

        Update WPT test output with progressions.

        * web-platform-tests/web-animations/interfaces/Animation/idlharness-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/reversing-an-animation-expected.txt:

2018-01-25  Antoine Quint  <graouts@apple.com>

        [Web Animations] Account for provided easings when computing progress and resolving keyframe effect values
        https://bugs.webkit.org/show_bug.cgi?id=182098
        <rdar://problem/36866149>

        Reviewed by Dean Jackson.

        Update expected values with a few adjusted failures and many progressions.

        * web-platform-tests/css-timing-1/step-timing-functions-output-expected.txt:
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-iteration-composite-operation-expected.txt:
        * web-platform-tests/web-animations/interfaces/Animation/effect-expected.txt:
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/easing-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/iterationComposite-expected.txt:
        * web-platform-tests/web-animations/timing-model/time-transformations/transformed-progress-expected.txt:

2018-01-25  Youenn Fablet  <youenn@apple.com>

        Set integrity fetch options for loading scripts and CSS
        https://bugs.webkit.org/show_bug.cgi?id=182077

        Reviewed by Chris Dumez.

        * web-platform-tests/service-workers/service-worker/fetch-request-resources.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/fetch-request-resources.https.html:

2018-01-25  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-multicol] Update WPT test suite
        https://bugs.webkit.org/show_bug.cgi?id=182087

        Reviewed by Javier Fernandez.

        * resources/import-expectations.json:
        * resources/resource-files.json:
        * web-platform-tests/css/css-multicol/OWNERS: Added.
        * web-platform-tests/css/css-multicol/extremely-tall-multicol-with-extremely-tall-child-crash-expected.txt: Added.
        * web-platform-tests/css/css-multicol/extremely-tall-multicol-with-extremely-tall-child-crash.html: Added.
        * web-platform-tests/css/css-multicol/multicol-basic-001-expected.html:
        * web-platform-tests/css/css-multicol/multicol-basic-001.html:
        * web-platform-tests/css/css-multicol/multicol-basic-002-expected.html:
        * web-platform-tests/css/css-multicol/multicol-basic-002.html:
        * web-platform-tests/css/css-multicol/multicol-basic-003-expected.html:
        * web-platform-tests/css/css-multicol/multicol-basic-003.html:
        * web-platform-tests/css/css-multicol/multicol-basic-004-expected.html:
        * web-platform-tests/css/css-multicol/multicol-basic-004.html:
        * web-platform-tests/css/css-multicol/multicol-basic-005-expected.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-basic-005.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-basic-006-expected.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-basic-006.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-basic-007-expected.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-basic-007.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-basic-008-expected.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-basic-008.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-block-no-clip-001-expected.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-multicol/multicol-width-002-expected.xht.
        * web-platform-tests/css/css-multicol/multicol-block-no-clip-001.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-multicol/multicol-clip-001.xht.
        * web-platform-tests/css/css-multicol/multicol-block-no-clip-002-expected.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-block-no-clip-002.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-multicol/multicol-clip-001.xht.
        * web-platform-tests/css/css-multicol/multicol-br-inside-avoidcolumn-001-expected.html: Added.
        * web-platform-tests/css/css-multicol/multicol-br-inside-avoidcolumn-001.xht:
        * web-platform-tests/css/css-multicol/multicol-break-000-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-break-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-break-001.xht:
        * web-platform-tests/css/css-multicol/multicol-clip-001.xht:
        * web-platform-tests/css/css-multicol/multicol-columns-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-columns-001.xht:
        * web-platform-tests/css/css-multicol/multicol-columns-002-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-columns-002.xht:
        * web-platform-tests/css/css-multicol/multicol-columns-003-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-columns-003.xht:
        * web-platform-tests/css/css-multicol/multicol-columns-004-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-columns-004.xht:
        * web-platform-tests/css/css-multicol/multicol-columns-005-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-columns-005.xht:
        * web-platform-tests/css/css-multicol/multicol-columns-006-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-columns-006.xht:
        * web-platform-tests/css/css-multicol/multicol-columns-007-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-columns-007.xht:
        * web-platform-tests/css/css-multicol/multicol-columns-invalid-002.xht:
        * web-platform-tests/css/css-multicol/multicol-containing-001.xht:
        * web-platform-tests/css/css-multicol/multicol-containing-002.xht:
        * web-platform-tests/css/css-multicol/multicol-count-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-count-001.xht:
        * web-platform-tests/css/css-multicol/multicol-count-002-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-count-computed-003-expected.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-count-computed-003.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-count-computed-005-expected.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-count-computed-005.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-fill-000.xht:
        * web-platform-tests/css/css-multicol/multicol-fill-001.xht:
        * web-platform-tests/css/css-multicol/multicol-fill-auto-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-fill-auto-001.xht:
        * web-platform-tests/css/css-multicol/multicol-fill-auto-002-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-fill-auto-002.xht:
        * web-platform-tests/css/css-multicol/multicol-fill-auto-003.xht:
        * web-platform-tests/css/css-multicol/multicol-fill-auto-block-children-002-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-fill-auto-block-children-002.xht:
        * web-platform-tests/css/css-multicol/multicol-fill-balance-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-fill-balance-001.xht:
        * web-platform-tests/css/css-multicol/multicol-fill-balance-002-expected.html: Added.
        * web-platform-tests/css/css-multicol/multicol-fill-balance-002.html: Added.
        * web-platform-tests/css/css-multicol/multicol-gap-000.xht:
        * web-platform-tests/css/css-multicol/multicol-gap-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-gap-animation-001-expected.txt: Added.
        * web-platform-tests/css/css-multicol/multicol-gap-animation-001.html: Added.
        * web-platform-tests/css/css-multicol/multicol-gap-animation-002-expected.txt: Added.
        * web-platform-tests/css/css-multicol/multicol-gap-animation-002.html: Added.
        * web-platform-tests/css/css-multicol/multicol-gap-animation-003-expected.txt: Added.
        * web-platform-tests/css/css-multicol/multicol-gap-animation-003.html: Added.
        * web-platform-tests/css/css-multicol/multicol-gap-fraction-002-expected.html: Added.
        * web-platform-tests/css/css-multicol/multicol-gap-fraction-002.html: Added.
        * web-platform-tests/css/css-multicol/multicol-gap-large-001.xht:
        * web-platform-tests/css/css-multicol/multicol-gap-large-002-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-gap-percentage-001-expected.txt: Added.
        * web-platform-tests/css/css-multicol/multicol-gap-percentage-001.html: Added.
        * web-platform-tests/css/css-multicol/multicol-height-block-child-001-expected.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-height-block-child-001.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-inherit-001.xht:
        * web-platform-tests/css/css-multicol/multicol-inherit-002.xht:
        * web-platform-tests/css/css-multicol/multicol-inherit-003.xht:
        * web-platform-tests/css/css-multicol/multicol-margin-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-margin-001.xht:
        * web-platform-tests/css/css-multicol/multicol-margin-002-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-margin-002.xht:
        * web-platform-tests/css/css-multicol/multicol-margin-child-001.xht:
        * web-platform-tests/css/css-multicol/multicol-nested-005.xht:
        * web-platform-tests/css/css-multicol/multicol-nested-column-rule-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-nested-column-rule-001.xht:
        * web-platform-tests/css/css-multicol/multicol-nested-margin-002-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-nested-margin-002.xht:
        * web-platform-tests/css/css-multicol/multicol-nested-margin-003.xht:
        * web-platform-tests/css/css-multicol/multicol-nested-margin-004-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-nested-margin-004.xht:
        * web-platform-tests/css/css-multicol/multicol-nested-margin-005-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-nested-margin-005.xht:
        * web-platform-tests/css/css-multicol/multicol-overflow-000.xht:
        * web-platform-tests/css/css-multicol/multicol-reduce-000-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-reduce-000.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-000-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-000.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-001.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-002-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-002.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-003.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-color-001.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-color-inherit-002.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-dashed-000.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-double-000.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-fraction-002.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-fraction-003-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-fraction-003.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-groove-000.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-hidden-000.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-inset-000.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-large-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-large-001.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-large-002.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-multicol/multicol-rule-large-001.xht.
        * web-platform-tests/css/css-multicol/multicol-rule-none-000.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-outset-000.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-px-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-px-001.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-ridge-000.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-samelength-001.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-shorthand-2-expected.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-multicol/multicol-shorthand-001-expected.xht.
        * web-platform-tests/css/css-multicol/multicol-rule-shorthand-2.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-multicol/multicol-rule-002.xht.
        * web-platform-tests/css/css-multicol/multicol-rule-solid-000.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-stacking-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-rule-stacking-001.xht:
        * web-platform-tests/css/css-multicol/multicol-shorthand-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-shorthand-001.xht:
        * web-platform-tests/css/css-multicol/multicol-span-000.xht:
        * web-platform-tests/css/css-multicol/multicol-span-all-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-span-all-001.xht:
        * web-platform-tests/css/css-multicol/multicol-span-all-003-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-span-all-003.xht:
        * web-platform-tests/css/css-multicol/multicol-span-all-block-sibling-003-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-span-all-block-sibling-003.xht:
        * web-platform-tests/css/css-multicol/multicol-span-all-margin-001.xht:
        * web-platform-tests/css/css-multicol/multicol-span-all-margin-002-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-span-all-margin-bottom-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-span-all-margin-bottom-001.xht:
        * web-platform-tests/css/css-multicol/multicol-span-all-margin-nested-firstchild-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-span-all-margin-nested-firstchild-001.xht:
        * web-platform-tests/css/css-multicol/multicol-span-none-001-expected.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-span-none-001.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-table-cell-vertical-align-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-table-cell-vertical-align-001.xht:
        * web-platform-tests/css/css-multicol/multicol-width-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-width-001.xht:
        * web-platform-tests/css/css-multicol/multicol-width-002-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-width-003-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-width-ch-001-expected.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-width-ch-001.xht: Added.
        * web-platform-tests/css/css-multicol/multicol-width-count-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-width-count-001.xht:
        * web-platform-tests/css/css-multicol/multicol-width-count-002-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-width-negative-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-width-small-001.xht:
        * web-platform-tests/css/css-multicol/multicol-zero-height-001-expected.xht:
        * web-platform-tests/css/css-multicol/multicol-zero-height-001.xht:
        * web-platform-tests/css/css-multicol/support/w3c-import.log: Added.
        * web-platform-tests/css/css-multicol/w3c-import.log: Added.

2018-01-25  Antoine Quint  <graouts@apple.com>

        [Web Animations] Update WPT tests and move them to imported/w3c/web-platform-tests
        https://bugs.webkit.org/show_bug.cgi?id=182092

        Unreviewed test gardening.

        * web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt.
        * web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property.html: Renamed from LayoutTests/http/wpt/web-animations/animation-model/animation-types/accumulation-per-property.html.
        * web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/animation-model/animation-types/addition-per-property-expected.txt.
        * web-platform-tests/web-animations/animation-model/animation-types/addition-per-property.html: Renamed from LayoutTests/http/wpt/web-animations/animation-model/animation-types/addition-per-property.html.
        * web-platform-tests/web-animations/animation-model/animation-types/discrete-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/animation-model/animation-types/discrete-animation-expected.txt.
        * web-platform-tests/web-animations/animation-model/animation-types/discrete.html: Renamed from LayoutTests/http/wpt/web-animations/animation-model/animation-types/discrete-animation.html.
        * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt.
        * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property.html: Renamed from LayoutTests/http/wpt/web-animations/animation-model/animation-types/interpolation-per-property.html.
        * web-platform-tests/web-animations/animation-model/animation-types/property-list.js: Renamed from LayoutTests/http/wpt/web-animations/animation-model/animation-types/property-list.js.
        * web-platform-tests/web-animations/animation-model/animation-types/property-types.js: Renamed from LayoutTests/http/wpt/web-animations/animation-model/animation-types/property-types.js.
        * web-platform-tests/web-animations/animation-model/animation-types/visibility-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/animation-model/keyframe-effects/effect-value-visibility-expected.txt.
        * web-platform-tests/web-animations/animation-model/animation-types/visibility.html: Renamed from LayoutTests/http/wpt/web-animations/animation-model/keyframe-effects/effect-value-visibility.html.
        * web-platform-tests/web-animations/animation-model/combining-effects/effect-composition-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/animation-model/combining-effects/effect-composition-expected.txt.
        * web-platform-tests/web-animations/animation-model/combining-effects/effect-composition.html: Renamed from LayoutTests/http/wpt/web-animations/animation-model/combining-effects/effect-composition.html.
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-context-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/animation-model/keyframe-effects/effect-value-context-expected.txt.
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-context.html: Renamed from LayoutTests/http/wpt/web-animations/animation-model/keyframe-effects/effect-value-context.html.
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-iteration-composite-operation-expected.txt: Added.
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-iteration-composite-operation.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/KeyframeEffect/iterationComposite.html.
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-overlapping-keyframes-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/animation-model/keyframe-effects/effect-value-overlapping-keyframes-expected.txt.
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-overlapping-keyframes.html: Renamed from LayoutTests/http/wpt/web-animations/animation-model/keyframe-effects/effect-value-overlapping-keyframes.html.
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-transformed-distance-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/animation-model/keyframe-effects/effect-value-transformed-distance-expected.txt.
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-transformed-distance.html: Renamed from LayoutTests/http/wpt/web-animations/animation-model/keyframe-effects/effect-value-transformed-distance.html.
        * web-platform-tests/web-animations/interfaces/Animatable/animate-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/Animatable/animate-no-browsing-context-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animatable/animate-no-browsing-context-expected.txt.
        * web-platform-tests/web-animations/interfaces/Animatable/animate-no-browsing-context.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animatable/animate-no-browsing-context.html.
        * web-platform-tests/web-animations/interfaces/Animatable/animate.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animatable/animate.html.
        * web-platform-tests/web-animations/interfaces/Animatable/getAnimations-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/Animatable/getAnimations.html: Added.
        * web-platform-tests/web-animations/interfaces/Animation/cancel-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/cancel-expected.txt.
        * web-platform-tests/web-animations/interfaces/Animation/cancel.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/cancel.html.
        * web-platform-tests/web-animations/interfaces/Animation/constructor-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/constructor-expected.txt.
        * web-platform-tests/web-animations/interfaces/Animation/constructor.html: Added.
        * web-platform-tests/web-animations/interfaces/Animation/effect-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/effect-expected.txt.
        * web-platform-tests/web-animations/interfaces/Animation/effect.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/effect.html.
        * web-platform-tests/web-animations/interfaces/Animation/finish-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/Animation/finish.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/finish.html.
        * web-platform-tests/web-animations/interfaces/Animation/finished-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/Animation/finished.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/finished.html.
        * web-platform-tests/web-animations/interfaces/Animation/id-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/id-expected.txt.
        * web-platform-tests/web-animations/interfaces/Animation/id.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/id.html.
        * web-platform-tests/web-animations/interfaces/Animation/idlharness-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/idlharness-expected.txt.
        * web-platform-tests/web-animations/interfaces/Animation/idlharness.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/idlharness.html.
        * web-platform-tests/web-animations/interfaces/Animation/oncancel-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/oncancel-expected.txt.
        * web-platform-tests/web-animations/interfaces/Animation/oncancel.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/oncancel.html.
        * web-platform-tests/web-animations/interfaces/Animation/onfinish-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/onfinish-expected.txt.
        * web-platform-tests/web-animations/interfaces/Animation/onfinish.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/onfinish.html.
        * web-platform-tests/web-animations/interfaces/Animation/pause-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/pause-expected.txt.
        * web-platform-tests/web-animations/interfaces/Animation/pause.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/pause.html.
        * web-platform-tests/web-animations/interfaces/Animation/pending-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/Animation/pending.html: Added.
        * web-platform-tests/web-animations/interfaces/Animation/play-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/play-expected.txt.
        * web-platform-tests/web-animations/interfaces/Animation/play.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/play.html.
        * web-platform-tests/web-animations/interfaces/Animation/playbackRate-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/playbackRate-expected.txt.
        * web-platform-tests/web-animations/interfaces/Animation/playbackRate.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/playbackRate.html.
        * web-platform-tests/web-animations/interfaces/Animation/ready-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/ready-expected.txt.
        * web-platform-tests/web-animations/interfaces/Animation/ready.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/ready.html.
        * web-platform-tests/web-animations/interfaces/Animation/startTime-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/startTime-expected.txt.
        * web-platform-tests/web-animations/interfaces/Animation/startTime.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Animation/startTime.html.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/delay-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/delay.html: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/direction-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/direction.html: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/duration-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/duration.html: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/easing-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/AnimationEffectTiming/easing-expected.txt.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/easing.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/AnimationEffectTiming/easing.html.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/endDelay-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/endDelay.html: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/fill-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/fill.html: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/getComputedTiming-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/getComputedTiming.html: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/idlharness-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/idlharness.html: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/iterationStart-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/iterationStart.html: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/iterations-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/iterations.html: Added.
        * web-platform-tests/web-animations/interfaces/AnimationPlaybackEvent/constructor-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/AnimationPlaybackEvent/constructor.html: Added.
        * web-platform-tests/web-animations/interfaces/AnimationPlaybackEvent/idlharness-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/AnimationPlaybackEvent/idlharness.html: Added.
        * web-platform-tests/web-animations/interfaces/Document/getAnimations-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Document/getAnimations-expected.txt.
        * web-platform-tests/web-animations/interfaces/Document/getAnimations.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/Document/getAnimations.html.
        * web-platform-tests/web-animations/interfaces/Document/timeline-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/Document/timeline.html: Added.
        * web-platform-tests/web-animations/interfaces/DocumentTimeline/constructor-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/DocumentTimeline/constructor-expected.txt.
        * web-platform-tests/web-animations/interfaces/DocumentTimeline/constructor.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/DocumentTimeline/constructor.html.
        * web-platform-tests/web-animations/interfaces/DocumentTimeline/idlharness-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/AnimationTimeline/idlharness-expected.txt.
        * web-platform-tests/web-animations/interfaces/DocumentTimeline/idlharness.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/AnimationTimeline/idlharness.html.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/composite-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/composite.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/KeyframeEffect/composite.html.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/constructor-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/constructor.html: Added.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/copy-constructor-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/copy-constructor.html: Added.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/idlharness-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/idlharness.html: Added.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/iterationComposite-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/iterationComposite.html: Added.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/processing-a-keyframes-argument-001-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/KeyframeEffect/processing-a-keyframes-argument-001-expected.txt.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/processing-a-keyframes-argument-001.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/KeyframeEffect/processing-a-keyframes-argument-001.html.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/processing-a-keyframes-argument-002-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/KeyframeEffect/processing-a-keyframes-argument-002-expected.txt.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/processing-a-keyframes-argument-002.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/KeyframeEffect/processing-a-keyframes-argument-002.html.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/setKeyframes-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/setKeyframes.html: Added.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/target-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/interfaces/KeyframeEffect/setTarget-expected.txt.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/target.html: Renamed from LayoutTests/http/wpt/web-animations/interfaces/KeyframeEffect/setTarget.html.
        * web-platform-tests/web-animations/resources/easing-tests.js: Renamed from LayoutTests/http/wpt/web-animations/resources/easing-tests.js.
        * web-platform-tests/web-animations/resources/effect-tests.js: Renamed from LayoutTests/http/wpt/web-animations/resources/effect-tests.js.
        * web-platform-tests/web-animations/resources/keyframe-tests.js: Added.
        * web-platform-tests/web-animations/resources/keyframe-utils.js: Added.
        * web-platform-tests/web-animations/resources/xhr-doc.py: Renamed from LayoutTests/http/wpt/web-animations/resources/xhr-doc.py.
        * web-platform-tests/web-animations/testcommon.js: Renamed from LayoutTests/http/wpt/web-animations/testcommon.js.
        * web-platform-tests/web-animations/timing-model/animation-effects/active-time-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animation-effects/active-time-expected.txt.
        * web-platform-tests/web-animations/timing-model/animation-effects/active-time.html: Added.
        * web-platform-tests/web-animations/timing-model/animation-effects/current-iteration-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animation-effects/current-iteration-expected.txt.
        * web-platform-tests/web-animations/timing-model/animation-effects/current-iteration.html: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animation-effects/current-iteration.html.
        * web-platform-tests/web-animations/timing-model/animation-effects/local-time-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animation-effects/local-time-expected.txt.
        * web-platform-tests/web-animations/timing-model/animation-effects/local-time.html: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animation-effects/local-time.html.
        * web-platform-tests/web-animations/timing-model/animation-effects/phases-and-states-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animation-effects/phases-and-states-expected.txt.
        * web-platform-tests/web-animations/timing-model/animation-effects/phases-and-states.html: Added.
        * web-platform-tests/web-animations/timing-model/animation-effects/simple-iteration-progress-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animation-effects/simple-iteration-progress-expected.txt.
        * web-platform-tests/web-animations/timing-model/animation-effects/simple-iteration-progress.html: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animation-effects/simple-iteration-progress.html.
        * web-platform-tests/web-animations/timing-model/animations/canceling-an-animation-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/canceling-an-animation-expected.txt.
        * web-platform-tests/web-animations/timing-model/animations/canceling-an-animation.html: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/canceling-an-animation.html.
        * web-platform-tests/web-animations/timing-model/animations/current-time-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/current-time-expected.txt.
        * web-platform-tests/web-animations/timing-model/animations/current-time.html: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/current-time.html.
        * web-platform-tests/web-animations/timing-model/animations/finishing-an-animation-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/finishing-an-animation-expected.txt.
        * web-platform-tests/web-animations/timing-model/animations/finishing-an-animation.html: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/finishing-an-animation.html.
        * web-platform-tests/web-animations/timing-model/animations/pausing-an-animation-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/pausing-an-animation-expected.txt.
        * web-platform-tests/web-animations/timing-model/animations/pausing-an-animation.html: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/pausing-an-animation.html.
        * web-platform-tests/web-animations/timing-model/animations/play-states-expected.txt: Added.
        * web-platform-tests/web-animations/timing-model/animations/play-states.html: Added.
        * web-platform-tests/web-animations/timing-model/animations/playing-an-animation-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/playing-an-animation-expected.txt.
        * web-platform-tests/web-animations/timing-model/animations/playing-an-animation.html: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/playing-an-animation.html.
        * web-platform-tests/web-animations/timing-model/animations/reversing-an-animation-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/reversing-an-animation-expected.txt.
        * web-platform-tests/web-animations/timing-model/animations/reversing-an-animation.html: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/reversing-an-animation.html.
        * web-platform-tests/web-animations/timing-model/animations/set-the-animation-start-time-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/set-the-animation-start-time-expected.txt.
        * web-platform-tests/web-animations/timing-model/animations/set-the-animation-start-time.html: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/set-the-animation-start-time.html.
        * web-platform-tests/web-animations/timing-model/animations/set-the-target-effect-of-an-animation-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/set-the-target-effect-of-an-animation-expected.txt.
        * web-platform-tests/web-animations/timing-model/animations/set-the-target-effect-of-an-animation.html: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/set-the-target-effect-of-an-animation.html.
        * web-platform-tests/web-animations/timing-model/animations/set-the-timeline-of-an-animation-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/set-the-timeline-of-an-animation-expected.txt.
        * web-platform-tests/web-animations/timing-model/animations/set-the-timeline-of-an-animation.html: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/set-the-timeline-of-an-animation.html.
        * web-platform-tests/web-animations/timing-model/animations/updating-the-finished-state-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/updating-the-finished-state-expected.txt.
        * web-platform-tests/web-animations/timing-model/animations/updating-the-finished-state.html: Renamed from LayoutTests/http/wpt/web-animations/timing-model/animations/updating-the-finished-state.html.
        * web-platform-tests/web-animations/timing-model/time-transformations/transformed-progress-expected.txt: Renamed from LayoutTests/http/wpt/web-animations/timing-model/time-transformations/transformed-progress-expected.txt.
        * web-platform-tests/web-animations/timing-model/time-transformations/transformed-progress.html: Renamed from LayoutTests/http/wpt/web-animations/timing-model/time-transformations/transformed-progress.html.
        * web-platform-tests/web-animations/timing-model/timelines/document-timelines-expected.txt: Added.
        * web-platform-tests/web-animations/timing-model/timelines/document-timelines.html: Added.
        * web-platform-tests/web-animations/timing-model/timelines/timelines-expected.txt: Added.
        * web-platform-tests/web-animations/timing-model/timelines/timelines.html: Added.

2018-01-24  Manuel Rego Casasnovas  <rego@igalia.com>

        Move css-color & css-multicol WPT suites to the proper folder
        https://bugs.webkit.org/show_bug.cgi?id=182044

        Reviewed by Youenn Fablet.

        * resources/import-expectations.json:
        * web-platform-tests/css/css-color/: Renamed from LayoutTests/imported/w3c/css/css-color-3/.
        * web-platform-tests/css/css-multicol/: Renamed from LayoutTests/imported/w3c/css/css-multicol-1/.

2018-01-24  Chris Dumez  <cdumez@apple.com>

        close() operation should not be exposed inside a ServiceWorkerGlobalScope
        https://bugs.webkit.org/show_bug.cgi?id=182057

        Reviewed by Youenn Fablet.

        Rebaseline WPT tests now that more checks are passing.

        * web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/close.https-expected.txt:
        * web-platform-tests/workers/interfaces.worker-expected.txt:

2018-01-24  Chris Dumez  <cdumez@apple.com>

        Unreviewed, rebaseline flaky service worker test

        * web-platform-tests/service-workers/service-worker/windowclient-navigate.https-expected.txt:

2018-01-24  Chris Dumez  <cdumez@apple.com>

        Unreviewed, unskip some service worker tests that no longer time out

        * web-platform-tests/service-workers/service-worker/clients-matchall-include-uncontrolled.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/extendable-event-waituntil.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/indexeddb.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/navigation-redirect.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/postmessage-msgport-to-client.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/postmessage.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/sandboxed-iframe-fetch-event.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/update-recovery.https-expected.txt:

2018-01-24  Manuel Rego Casasnovas  <rego@igalia.com>

        Update paths of CSS tests from WPT
        https://bugs.webkit.org/show_bug.cgi?id=182043

        Reviewed by Youenn Fablet.

        * resources/import-expectations.json:
        * resources/resource-files.json:
        * web-platform-tests/css/css-display/: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-display-3/.
        * web-platform-tests/css/css-pseudo/: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-pseudo-4/.
        * web-platform-tests/css/css-scoping/: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-scoping-1/.
        * web-platform-tests/css/css-shapes/: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/.
        * web-platform-tests/css/css-ui/: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-ui-3/.
        * web-platform-tests/css/geometry/: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/geometry-1/.
        * web-platform-tests/css/selectors/: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors4/.
        * web-platform-tests/lint.whitelist:

2018-01-23  Yusuke Suzuki  <utatane.tea@gmail.com>

        Import WPT for modules
        https://bugs.webkit.org/show_bug.cgi?id=181981

        Reviewed by Sam Weinig.

        This patch just imports WPT for modules mechanically.

        * resources/import-expectations.json:
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/bad-module-specifier.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/charset-01-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/charset-01.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/charset-02-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/charset-02.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/charset-03-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/charset-03.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/compilation-error-1-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/compilation-error-1.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/compilation-error-2-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/compilation-error-2.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/credentials.sub-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/credentials.sub.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/crossorigin-common.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/crossorigin-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/crossorigin-import-different.sub.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/crossorigin-import-missingheader.sub.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/crossorigin-import-same.sub.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/crossorigin-import-wrongheader.sub.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/crossorigin-root-different.sub.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/crossorigin-root-missingheader.sub.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/crossorigin-root-same.sub.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/crossorigin-root-wrongheader.sub.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/crossorigin-scripterror.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/crossorigin.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/currentScript-null-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/currentScript-null.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/currentscript.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/custom-element-exception-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/custom-element-exception.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/cycle-tdz-access-a.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/cycle-tdz-access.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/cycle-unresolvable-a.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/cycle-unresolvable.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/dynamic-imports-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/dynamic-imports-fetch-error.sub-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/dynamic-imports-fetch-error.sub.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/dynamic-imports-script-error-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/dynamic-imports-script-error.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/dynamic-imports.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/inline-event-handler-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/inline-event-handler.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-external-classic-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-external-classic.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-external-module-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-external-module.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-external.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-inline-classic-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-inline-classic.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-inline-module-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/propagate-nonce-inline-module.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-classic-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-classic.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-module-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-base-url-module.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-classic-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-classic.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-module-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-module.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/w3c-import.log: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/error-and-slow-dependency-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/error-and-slow-dependency.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-common.js: Added.
        (errorHandler):
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependent.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependent.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependentmultiple.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-dependentmultiple.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/errorhandling-parseerror-root.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/errorhandling-wrongMimetype-import.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/errorhandling-wrongMimetype.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/errorhandling.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-1-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-1.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-2-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-2.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-3-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-3.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-4-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-4.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicordered2.js: Added.
        (test_dynamicOrdered.step):
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicordered3.js: Added.
        (test_dynamicOrdered.step):
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicordered4.js: Added.
        (test_dynamicOrdered.step):
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicunordered1.js: Added.
        (test_dynamicUnordered1.step):
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/execorder-dynamicunordered2.js: Added.
        (test_dynamicUnordered2.step):
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/execorder-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedordered2.js: Added.
        (test_parsedOrdered.step):
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedordered4.js: Added.
        (test_parsedOrdered.step):
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedunordered1.js: Added.
        (test_parsedUnordered1.step):
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/execorder-parsedunordered2.js: Added.
        (test_parsedUnordered2.step):
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/execorder.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/export-something-nested.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/export-something.js: Added.
        (export.set_foo):
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/fetch-error-1-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/fetch-error-1.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/fetch-error-2-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/fetch-error-2.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/fetch-error-2.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/import-something-namespace.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/import-subgraph-404-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/import-subgraph-404.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/imports-a.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/imports-b.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/imports-cycle-a.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/imports-cycle-b.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/imports-cycle.js: Added.
        (test_importCycle.step):
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/imports-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/imports-inc-a.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/imports-inc-ab.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/imports-inc-b.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/imports-self-inner.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/imports-self.js: Added.
        (test_importSelf.step):
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/imports.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-1-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-1.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-1.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-2-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-2.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-3-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-3.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4a.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4b.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4c.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-4d.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5a.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5b.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5c.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5d.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-5e.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6a.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6b.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6c.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-6d.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7a.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7b.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7c.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7d.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7e.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-7f.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/instantiation-error-8.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/integrity-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/integrity-matches-inner.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/integrity-matches.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/integrity-mismatches-inner.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/integrity-mismatches.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/integrity.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/late-namespace-request-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/late-namespace-request.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/late-star-export-request-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/late-star-export-request.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/load-error-events-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/load-error-events-inline-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/load-error-events-inline.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/load-error-events.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/missing-export-nested.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/missing-export.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/module-in-xhtml-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/module-in-xhtml.xhtml: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/module-vs-script-1-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/module-vs-script-1.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/module-vs-script-2-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/module-vs-script-2.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/nested-missing-export.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/nomodule-attribute-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/nomodule-attribute.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/resources/404-but-js.asis: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/resources/500-but-js.asis: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/resources/check-cookie.py: Added.
        (main):
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/resources/credentials-iframe.sub.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/resources/delayed-modulescript.py: Added.
        (main):
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/resources/import-non-utf8-with-charset-header.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/resources/import-non-utf8.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/resources/import-utf8-with-charset-header.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/resources/import-utf8.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/resources/imports-404-but-js.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/resources/imports-500-but-js.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/resources/imports-b-cross-origin.sub.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/resources/w3c-import.log: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/script-for-event-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/script-for-event.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/set-currentScript-on-window.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/single-evaluation-1-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/single-evaluation-1.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/single-evaluation-2-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/single-evaluation-2.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/slow-cycle-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/slow-cycle.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/slow-module-graph-a.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/slow-module-graph-b.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/specifier-error-expected.txt: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/specifier-error.html: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/syntaxerror-nested.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/syntaxerror.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/this-nested.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/this.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/throw-error.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/throw-nested.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/throw.js: Added.
        * web-platform-tests/html/semantics/scripting-1/the-script-element/module/w3c-import.log: Added.

2018-01-23  Javier Fernandez  <jfernandez@igalia.com>

        [css-align] 'left' and 'right' should parse as invalid in block/cross-axis alignment
        https://bugs.webkit.org/show_bug.cgi?id=181792

        Reviewed by Antti Koivisto.

        Imported new Web Platform Tests for the css-align module.

        * resources/import-expectations.json:
        * web-platform-tests/css/css-align-3/content-distribution/w3c-import.log: Removed.
        * web-platform-tests/css/css-align-3/default-alignment/w3c-import.log: Removed.
        * web-platform-tests/css/css-align-3/resources/alignment-parsing-utils.js: Removed.
        * web-platform-tests/css/css-align-3/self-alignment/w3c-import.log: Removed.
        * web-platform-tests/css/css-align/content-distribution/parse-align-content-001-expected.txt: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-align-content-001.html: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-align-content-002-expected.txt: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-align-content-002.html: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-align-content-003-expected.txt: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-align-content-003.html: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-align-content-004-expected.txt: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-align-content-004.html: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-align-content-005-expected.txt: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-align-content-005.html: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-justify-content-001-expected.txt: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-justify-content-001.html: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-justify-content-002-expected.txt: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-justify-content-002.html: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-justify-content-003-expected.txt: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-justify-content-003.html: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-justify-content-004-expected.txt: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-justify-content-004.html: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-justify-content-005-expected.txt: Added.
        * web-platform-tests/css/css-align/content-distribution/parse-justify-content-005.html: Added.
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-001-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-001-expected.txt.
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-001.html.
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-002-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-002-expected.txt.
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-002.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-002.html.
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-003-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-003-expected.txt.
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-003.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-003.html.
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-004-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-004-expected.txt.
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-004.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-004.html.
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-005-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-005-expected.txt.
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-005.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-005.html.
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-006-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-006-expected.txt.
        * web-platform-tests/css/css-align/content-distribution/place-content-shorthand-006.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/content-distribution/place-content-shorthand-006.html.
        * web-platform-tests/css/css-align/content-distribution/w3c-import.log: Added.
        * web-platform-tests/css/css-align/default-alignment/justify-items-legacy-001-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/justify-items-legacy-001-expected.txt.
        * web-platform-tests/css/css-align/default-alignment/justify-items-legacy-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/justify-items-legacy-001.html.
        * web-platform-tests/css/css-align/default-alignment/parse-align-items-001-expected.txt: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-align-items-001.html: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-align-items-002-expected.txt: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-align-items-002.html: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-align-items-003-expected.txt: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-align-items-003.html: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-align-items-004-expected.txt: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-align-items-004.html: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-align-items-005-expected.txt: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-align-items-005.html: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-001-expected.txt: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-001.html: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-002-expected.txt: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-002.html: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-003-expected.txt: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-003.html: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-004-expected.txt: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-004.html: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-005-expected.txt: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-005.html: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-006-expected.txt: Added.
        * web-platform-tests/css/css-align/default-alignment/parse-justify-items-006.html: Added.
        * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-001-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-001-expected.txt.
        * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-001.html.
        * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-002-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-002-expected.txt.
        * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-002.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-002.html.
        * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-003-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-003-expected.txt.
        * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-003.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-003.html.
        * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-004-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-004-expected.txt.
        * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-004.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-004.html.
        * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-005-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-005-expected.txt.
        * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-005.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-005.html.
        * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-006-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-006-expected.txt.
        * web-platform-tests/css/css-align/default-alignment/place-items-shorthand-006.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/default-alignment/place-items-shorthand-006.html.
        * web-platform-tests/css/css-align/default-alignment/w3c-import.log: Added.
        * web-platform-tests/css/css-align/distribution-values/space-evenly-001-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/distribution-values/space-evenly-001-expected.xht.
        * web-platform-tests/css/css-align/distribution-values/space-evenly-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/distribution-values/space-evenly-001.html.
        * web-platform-tests/css/css-align/distribution-values/w3c-import.log: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/distribution-values/w3c-import.log.
        * web-platform-tests/css/css-align/resources/alignment-parsing-utils.js: Added.
        (checkPlaceShorhand):
        (checkPlaceShorhandLonghands):
        (checkPlaceShorthandInvalidValues):
        (checkValues):
        (checkBadValues):
        (checkInitialValues):
        (checkInheritValues):
        (checkLegacyValues):
        (checkSupportedValues):
        * web-platform-tests/css/css-align/resources/w3c-import.log: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/resources/w3c-import.log.
        * web-platform-tests/css/css-align/self-alignment/parse-align-self-001-expected.txt: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-align-self-001.html: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-align-self-002-expected.txt: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-align-self-002.html: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-align-self-003-expected.txt: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-align-self-003.html: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-align-self-004-expected.txt: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-align-self-004.html: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-align-self-005-expected.txt: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-align-self-005.html: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-justify-self-001-expected.txt: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-justify-self-001.html: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-justify-self-002-expected.txt: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-justify-self-002.html: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-justify-self-003-expected.txt: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-justify-self-003.html: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-justify-self-004-expected.txt: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-justify-self-004.html: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-justify-self-005-expected.txt: Added.
        * web-platform-tests/css/css-align/self-alignment/parse-justify-self-005.html: Added.
        * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-001-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-001-expected.txt.
        * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-001.html.
        * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-002-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-002-expected.txt.
        * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-002.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-002.html.
        * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-003-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-003-expected.txt.
        * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-003.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-003.html.
        * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-004-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-004-expected.txt.
        * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-004.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-004.html.
        * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-005-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-005-expected.txt.
        * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-005.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-005.html.
        * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-006-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-006-expected.txt.
        * web-platform-tests/css/css-align/self-alignment/place-self-shorthand-006.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-align-3/self-alignment/place-self-shorthand-006.html.
        * web-platform-tests/css/css-align/self-alignment/w3c-import.log: Added.

2018-01-23  Brady Eidson  <beidson@apple.com>

        Allow passing MessagePorts across processes (e.g. ServiceWorkers).
        https://bugs.webkit.org/show_bug.cgi?id=181178

        Reviewed by Andy Estes.

        Re-baseline for many new passes and a few new failure modes.

        * web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/extendable-message-event.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/postmessage.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/registration-attribute.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/ServiceWorkerGlobalScope/unregister.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/claim-affect-other-registration.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/claim-fetch.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/claim-not-using-registration.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/claim-using-registration.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/claim-worker-fetch.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/client-id.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/clients-get-cross-origin.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/clients-get.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/clients-matchall-client-types.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/clients-matchall-exact-controller.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/clients-matchall-order.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/clients-matchall.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/extendable-event-async-waituntil.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/fetch-event-async-respond-with.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/fetch-event-respond-with-stops-propagation.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/fetch-event-throws-after-respond-with.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/fetch-request-css-base-url.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/fetch-request-css-images.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/fetch-request-fallback.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/fetch-request-no-freshness-headers.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/fetch-request-resources.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/immutable-prototype-serviceworker.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/registration-end-to-end.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/registration-events.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/skip-waiting-installed.https-expected.txt:

2018-01-22  Chris Nardi  <csnardi1@gmail.com>

        Parse calc() in CSS media queries
        https://bugs.webkit.org/show_bug.cgi?id=181716

        Reviewed by Antti Koivisto.

        * resources/import-expectations.json:
        * resources/resource-files.json:
        * web-platform-tests/css/mediaqueries/OWNERS: Added.
        * web-platform-tests/css/mediaqueries/aspect-ratio-001-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/aspect-ratio-001.html: Added.
        * web-platform-tests/css/mediaqueries/aspect-ratio-002-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/aspect-ratio-002.html: Added.
        * web-platform-tests/css/mediaqueries/aspect-ratio-003-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/aspect-ratio-003.html: Added.
        * web-platform-tests/css/mediaqueries/aspect-ratio-004-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/aspect-ratio-004.html: Added.
        * web-platform-tests/css/mediaqueries/device-aspect-ratio-001-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/device-aspect-ratio-001.html: Added.
        * web-platform-tests/css/mediaqueries/device-aspect-ratio-002-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/device-aspect-ratio-002.html: Added.
        * web-platform-tests/css/mediaqueries/device-aspect-ratio-003-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/device-aspect-ratio-003.html: Added.
        * web-platform-tests/css/mediaqueries/device-aspect-ratio-004-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/device-aspect-ratio-004.html: Added.
        * web-platform-tests/css/mediaqueries/device-aspect-ratio-005-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/device-aspect-ratio-005.html: Added.
        * web-platform-tests/css/mediaqueries/device-aspect-ratio-006-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/device-aspect-ratio-006.html: Added.
        * web-platform-tests/css/mediaqueries/min-width-001-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/min-width-001.xht: Added.
        * web-platform-tests/css/mediaqueries/min-width-tables-001-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/min-width-tables-001.html: Added.
        * web-platform-tests/css/mediaqueries/mq-calc-001-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/mq-calc-001.html: Added.
        * web-platform-tests/css/mediaqueries/mq-calc-002-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/mq-calc-002.html: Added.
        * web-platform-tests/css/mediaqueries/mq-calc-003-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/mq-calc-003.html: Added.
        * web-platform-tests/css/mediaqueries/mq-calc-004-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/mq-calc-004.html: Added.
        * web-platform-tests/css/mediaqueries/mq-calc-005-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/mq-calc-005.html: Added.
        * web-platform-tests/css/mediaqueries/mq-invalid-media-type-001-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/mq-invalid-media-type-001.html: Added.
        * web-platform-tests/css/mediaqueries/mq-invalid-media-type-002-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/mq-invalid-media-type-002.html: Added.
        * web-platform-tests/css/mediaqueries/mq-invalid-media-type-003-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/mq-invalid-media-type-003.html: Added.
        * web-platform-tests/css/mediaqueries/mq-invalid-media-type-004-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/mq-invalid-media-type-004.html: Added.
        * web-platform-tests/css/mediaqueries/relative-units-001-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/relative-units-001.html: Added.
        * web-platform-tests/css/mediaqueries/relative-units-002-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/relative-units-002.html: Added.
        * web-platform-tests/css/mediaqueries/relative-units-003-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/relative-units-003.html: Added.
        * web-platform-tests/css/mediaqueries/relative-units-004-expected.xht: Added.
        * web-platform-tests/css/mediaqueries/relative-units-004.html: Added.
        * web-platform-tests/css/mediaqueries/support/media_queries_iframe.html: Renamed from LayoutTests/fast/media/w3c/resources/media_queries_iframe.html.
        * web-platform-tests/css/mediaqueries/support/min-width-tables-001-iframe.html: Added.
        * web-platform-tests/css/mediaqueries/support/w3c-import.log: Added.
        * web-platform-tests/css/mediaqueries/test_media_queries-expected.txt: Renamed from LayoutTests/fast/media/w3c/test_media_queries-expected.txt.
        * web-platform-tests/css/mediaqueries/test_media_queries.html: Renamed from LayoutTests/fast/media/w3c/test_media_queries.html.
        * web-platform-tests/css/mediaqueries/w3c-import.log: Added.

2018-01-22  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Spanning Grid item has too much space at the bottom / is too high
        https://bugs.webkit.org/show_bug.cgi?id=181677

        Imported WPT tests to check this change.

        Reviewed by Javier Fernandez.

        * web-platform-tests/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-001-expected.txt: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-001.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-002-expected.txt: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-002.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/w3c-import.log:

2018-01-20  Youenn Fablet  <youenn@apple.com>

        fetch redirect is incompatible with "no-cors" mode
        https://bugs.webkit.org/show_bug.cgi?id=181866
        <rdar://problem/35827140>

        Reviewed by Chris Dumez.

        * web-platform-tests/fetch/api/redirect/redirect-mode-expected.txt:
        * web-platform-tests/fetch/api/redirect/redirect-mode-worker-expected.txt:
        * web-platform-tests/fetch/api/redirect/redirect-mode.js:
        (redirectMode):
        * web-platform-tests/service-workers/service-worker/fetch-event-redirect.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/fetch-event-redirect.https.html:
        * web-platform-tests/service-workers/service-worker/fetch-request-redirect.https-expected.txt:

2018-01-19  Joseph Pecoraro  <pecoraro@apple.com>

        AppCache: Log a Deprecation warning to the Console when AppCache is used
        https://bugs.webkit.org/show_bug.cgi?id=181778

        Reviewed by Alex Christensen.

        * web-platform-tests/html/browsers/offline/appcache/workers/appcache-worker-expected.txt:
        * web-platform-tests/html/browsers/offline/introduction-4/event_cached-expected.txt:
        * web-platform-tests/html/browsers/offline/introduction-4/event_checking-expected.txt:
        * web-platform-tests/html/browsers/offline/introduction-4/event_noupdate-expected.txt:
        * web-platform-tests/html/browsers/offline/introduction-4/event_progress-expected.txt:
        * web-platform-tests/html/browsers/offline/manifest_url_check-expected.txt:
        * web-platform-tests/service-workers/service-worker/appcache-ordering-main.https-expected.txt:

2018-01-17  Ali Juma  <ajuma@chromium.org>

        Update web platform tests for Visual Viewport API
        https://bugs.webkit.org/show_bug.cgi?id=181689

        Reviewed by Alex Christensen.

        Rename the test directory from 'viewport' to 'visual-viewport', and update
        viewport-resize-event-on-load-overflowing-page.html.

        This corresponds to the following upstream commits:
        1) https://github.com/w3c/web-platform-tests/commit/f878fee4df619e55c7fbfce1a2ff5e5d4d83a03b
        2) https://github.com/w3c/web-platform-tests/commit/03a684d63e62d85cffed38bc942f468692d7d54f

        * resources/import-expectations.json:
        * web-platform-tests/viewport/w3c-import.log: Removed.
        * web-platform-tests/visual-viewport/viewport-no-resize-event-on-overflow-recalc-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-no-resize-event-on-overflow-recalc-expected.txt.
        * web-platform-tests/visual-viewport/viewport-no-resize-event-on-overflow-recalc.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-no-resize-event-on-overflow-recalc.html.
        * web-platform-tests/visual-viewport/viewport-read-size-causes-layout-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-read-size-causes-layout-expected.txt.
        * web-platform-tests/visual-viewport/viewport-read-size-causes-layout.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-read-size-causes-layout.html.
        * web-platform-tests/visual-viewport/viewport-read-size-in-iframe-causes-layout-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-read-size-in-iframe-causes-layout-expected.txt.
        * web-platform-tests/visual-viewport/viewport-read-size-in-iframe-causes-layout.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-read-size-in-iframe-causes-layout.html.
        * web-platform-tests/visual-viewport/viewport-resize-event-on-load-overflowing-page-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-resize-event-on-load-overflowing-page-expected.txt.
        * web-platform-tests/visual-viewport/viewport-resize-event-on-load-overflowing-page.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-resize-event-on-load-overflowing-page.html.
        * web-platform-tests/visual-viewport/viewport-scrollbars-cause-resize-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-scrollbars-cause-resize-expected.txt.
        * web-platform-tests/visual-viewport/viewport-scrollbars-cause-resize.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-scrollbars-cause-resize.html.
        * web-platform-tests/visual-viewport/viewport-type-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-type-expected.txt.
        * web-platform-tests/visual-viewport/viewport-type.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-type.html.
        * web-platform-tests/visual-viewport/viewport-unscaled-scale-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-unscaled-scale-expected.txt.
        * web-platform-tests/visual-viewport/viewport-unscaled-scale-iframe-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-unscaled-scale-iframe-expected.txt.
        * web-platform-tests/visual-viewport/viewport-unscaled-scale-iframe.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-unscaled-scale-iframe.html.
        * web-platform-tests/visual-viewport/viewport-unscaled-scale.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-unscaled-scale.html.
        * web-platform-tests/visual-viewport/viewport-unscaled-scroll-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-unscaled-scroll-expected.txt.
        * web-platform-tests/visual-viewport/viewport-unscaled-scroll-iframe-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-unscaled-scroll-iframe-expected.txt.
        * web-platform-tests/visual-viewport/viewport-unscaled-scroll-iframe.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-unscaled-scroll-iframe.html.
        * web-platform-tests/visual-viewport/viewport-unscaled-scroll.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-unscaled-scroll.html.
        * web-platform-tests/visual-viewport/viewport-unscaled-size-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-unscaled-size-expected.txt.
        * web-platform-tests/visual-viewport/viewport-unscaled-size-iframe-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-unscaled-size-iframe-expected.txt.
        * web-platform-tests/visual-viewport/viewport-unscaled-size-iframe.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-unscaled-size-iframe.html.
        * web-platform-tests/visual-viewport/viewport-unscaled-size.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport-unscaled-size.html.
        * web-platform-tests/visual-viewport/viewport_support.js: Renamed from LayoutTests/imported/w3c/web-platform-tests/viewport/viewport_support.js.
        * web-platform-tests/visual-viewport/w3c-import.log: Added.

2018-01-12  Jiewen Tan  <jiewen_tan@apple.com>

        [WebAuthN] Implement dummy WebAuthN IDLs
        https://bugs.webkit.org/show_bug.cgi?id=181627
        <rdar://problem/36459864>

        Reviewed by Alex Christensen.

        * web-platform-tests/credential-management/credentialscontainer-create-basics.https-expected.txt:

2018-01-11  Youenn Fablet  <youenn@apple.com>

        Redirected iframe loading with Request.redirect=follow should fail
        https://bugs.webkit.org/show_bug.cgi?id=181491

        Reviewed by Alex Christensen.

        Updated tests to output a more deterministic output, more debuggable.
        Made use of media.js to allow loading either oga or mp3 when oga is not supported.

        * web-platform-tests/service-workers/service-worker/fetch-request-redirect.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/fetch-request-redirect.https.html:

2018-01-10  Youenn Fablet  <youenn@apple.com>

        Use no-cache fetch mode when loading main documents with location.reload()
        https://bugs.webkit.org/show_bug.cgi?id=181285

        Reviewed by Alex Christensen.

        * web-platform-tests/service-workers/service-worker/fetch-event.https-expected.txt:

2018-01-09  Chris Dumez  <cdumez@apple.com>

        We should not return undefined for most properties of a detached Window
        https://bugs.webkit.org/show_bug.cgi?id=181416
        <rdar://problem/36162489>

        Reviewed by Ryosuke Niwa.

        Rebaseline several WPT tests now that more checks are passing.

        * web-platform-tests/custom-elements/custom-element-registry/per-global-expected.txt:
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe-append-to-child-document-expected.txt:
        * web-platform-tests/service-workers/service-worker/detached-context.https-expected.txt:

2018-01-09  Matt Lewis  <jlewis3@apple.com>

        Unreviewed, rolling out r226531.

        This caused test failures on macOS WK2.

        Reverted changeset:

        "Use no-cache fetch mode when loading main documents with
        location.reload()"
        https://bugs.webkit.org/show_bug.cgi?id=181285
        https://trac.webkit.org/changeset/226531

2018-01-09  Youenn Fablet  <youenn@apple.com>

        Make imported/w3c/web-platform-tests/service-workers/service-worker/fetch-canvas-tainting-cache.https.html robust to quota error
        https://bugs.webkit.org/show_bug.cgi?id=181404

        Reviewed by Alex Christensen.

        Ensure fetch event promise is resolved in case cache is used.
        Ensure each cache entry is deleted to not hit any cache quota error.
        Test was previously deleting the whole cache, but in WebKit, the quota
        in such a case will only be updated when the cache is garbaged collected, which is not deterministic.
        Make tests output more results to improve debugability.

        * web-platform-tests/service-workers/service-worker/fetch-canvas-tainting-cache.https.html:
        * web-platform-tests/service-workers/service-worker/fetch-canvas-tainting.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/fetch-canvas-tainting.https.html:
        * web-platform-tests/service-workers/service-worker/resources/fetch-canvas-tainting-iframe.html:

2018-01-09  Youenn Fablet  <youenn@apple.com>

        [iOS Debug WK2] Layout Test imported/w3c/web-platform-tests/service-workers/service-worker/register-closed-window.https.html is flaky
        https://bugs.webkit.org/show_bug.cgi?id=181087
        <rdar://problem/36188109>

        Reviewed by Chris Dumez.

        Updated test to get a more deterministic output.

        * web-platform-tests/service-workers/service-worker/register-closed-window.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/resources/register-closed-window-iframe.html:

2018-01-09  Youenn Fablet  <youenn@apple.com>

        Add CSP support to service workers
        https://bugs.webkit.org/show_bug.cgi?id=181385

        Reviewed by Chris Dumez.

        * web-platform-tests/service-workers/service-worker/service-worker-csp-connect.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/service-worker-csp-default.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/service-worker-csp-script.https-expected.txt:

2018-01-09  Ali Juma  <ajuma@chromium.org>

        Implement VisualViewport API events
        https://bugs.webkit.org/show_bug.cgi?id=179386

        Reviewed by Frédéric Wang.

        Update expectation for a viewport WPT that now passes.

        * web-platform-tests/viewport/viewport-resize-event-on-load-overflowing-page-expected.txt:

2018-01-08  Chris Nardi  <csnardi1@gmail.com>

        ::first-letter incorrectly selects grapheme pairs
        https://bugs.webkit.org/show_bug.cgi?id=181315

        Reviewed by Darin Adler.

        Updated css-pseudo-4 to latest WPT revision and added first-letter-004.html.

        * web-platform-tests/css/css-pseudo-4/first-letter-004-expected.html: Added.
        * web-platform-tests/css/css-pseudo-4/first-letter-004.html: Added.
        * web-platform-tests/css/css-pseudo-4/marker-color-expected.html:
        * web-platform-tests/css/css-pseudo-4/marker-color.html:
        * web-platform-tests/css/css-pseudo-4/marker-font-properties.html:
        * web-platform-tests/css/css-pseudo-4/w3c-import.log:

2018-01-08  Commit Queue  <commit-queue@webkit.org>

        Unreviewed, rolling out r226532 and r226540.
        https://bugs.webkit.org/show_bug.cgi?id=181422

        jessie says basic browsing does not seem to work (Requested by
        alexchristensen on #webkit).

        Reverted changesets:

        "Add CSP support to service workers"
        https://bugs.webkit.org/show_bug.cgi?id=181385
        https://trac.webkit.org/changeset/226532

        "SWClientConnection should not keep references to service
        worker jobs"
        https://bugs.webkit.org/show_bug.cgi?id=181381
        https://trac.webkit.org/changeset/226540

2018-01-08  Youenn Fablet  <youenn@apple.com>

        Add CSP support to service workers
        https://bugs.webkit.org/show_bug.cgi?id=181385

        Reviewed by Chris Dumez.

        * web-platform-tests/service-workers/service-worker/service-worker-csp-connect.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/service-worker-csp-default.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/service-worker-csp-script.https-expected.txt:

2018-01-08  Youenn Fablet  <youenn@apple.com>

        Use no-cache fetch mode when loading main documents with location.reload()
        https://bugs.webkit.org/show_bug.cgi?id=181285

        Reviewed by Alex Christensen.

        * web-platform-tests/service-workers/service-worker/fetch-event.https-expected.txt:

2018-01-08  Ms2ger  <Ms2ger@igalia.com>

        Update imagebitmap tests.
        https://bugs.webkit.org/show_bug.cgi?id=181379

        Unreviewed test gardening.

        * web-platform-tests/2dcontext/imagebitmap/common.js:
        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-drawImage-expected.txt:
        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-drawImage.html:
        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-invalid-args-expected.txt:
        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-invalid-args.html:

2018-01-07  Ms2ger  <Ms2ger@igalia.com>

        Implement createImageBitmap(ImageBitmap)
        https://bugs.webkit.org/show_bug.cgi?id=181287

        Reviewed by Darin Adler.

        * web-platform-tests/2dcontext/imagebitmap/createImageBitmap-drawImage-expected.txt: rebaseline.

2018-01-05  Alex Christensen  <achristensen@webkit.org>

        Forbid < and > in URL hosts
        https://bugs.webkit.org/show_bug.cgi?id=181308
        <rdar://problem/36012757>

        Reviewed by Tim Horton.

        * web-platform-tests/url/a-element-expected.txt:
        * web-platform-tests/url/a-element-origin-expected.txt:
        * web-platform-tests/url/a-element-origin-xhtml-expected.txt:
        * web-platform-tests/url/a-element-xhtml-expected.txt:
        * web-platform-tests/url/url-constructor-expected.txt:
        * web-platform-tests/url/url-origin-expected.txt:

2018-01-05  Youenn Fablet  <youenn@apple.com>

        Skip LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/claim-shared-worker-fetch.https.html
        https://bugs.webkit.org/show_bug.cgi?id=181329

        Unreviewed.

        * web-platform-tests/service-workers/service-worker/claim-shared-worker-fetch.https-expected.txt: Removed.

2018-01-05  Youenn Fablet  <youenn@apple.com>

        LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event.https.html should not expect Upgrade-Insecure Requests header
        https://bugs.webkit.org/show_bug.cgi?id=181286

        Reviewed by Alex Christensen.

        Test previously expected upgrade-insecure-requests header to be inserted in a HTTP request.
        Given the request URL is HTTPS, there is no need for that header.

        * web-platform-tests/service-workers/service-worker/fetch-event.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/fetch-event.https.html:

2018-01-04  Youenn Fablet  <youenn@apple.com>

        FetchResponse should set its internal response text encoding name
        https://bugs.webkit.org/show_bug.cgi?id=181284

        Reviewed by Alex Christensen.

        * web-platform-tests/service-workers/service-worker/fetch-event.https-expected.txt:

2018-01-04  Youenn Fablet  <youenn@apple.com>

        Service Worker should expose redirect mode for navigation loads as manual
        https://bugs.webkit.org/show_bug.cgi?id=181067

        Reviewed by Alex Christensen.

        Updating test to match the latest fetch spec.

        * web-platform-tests/service-workers/service-worker/navigation-redirect-to-http.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/request-end-to-end.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/request-end-to-end.https.html:

2018-01-04  Youenn Fablet  <youenn@apple.com>

        Implement  https://fetch.spec.whatwg.org/#main-fetch default referrer policy setting
        https://bugs.webkit.org/show_bug.cgi?id=181239

        Reviewed by Alex Christensen.

        Updated test to output more tests for better error reporting.
        Also updated to relax the settings so that HTTP loads are done even though the page is HTTPS.
        Updated referrer computation since it should be done based on the fetch context and not its parent context.

        * web-platform-tests/service-workers/service-worker/fetch-event-referrer-policy.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/fetch-event-referrer-policy.https.html:

2018-01-02  Youenn Fablet  <youenn@apple.com>

        Memory cache should not reuse resources with different credential fetch option
        https://bugs.webkit.org/show_bug.cgi?id=181212

        Reviewed by Alex Christensen.

        * web-platform-tests/service-workers/service-worker/fetch-cors-xhr.https-expected.txt:

2018-01-02  Jiewen Tan  <jiewen_tan@apple.com>

        Update Credential Management API for WebAuthentication
        https://bugs.webkit.org/show_bug.cgi?id=181082
        <rdar://problem/36055239>

        Reviewed by Brent Fulgham.

        * web-platform-tests/credential-management/credentialscontainer-create-basics.https-expected.txt:
        * web-platform-tests/credential-management/idl.https-expected.txt:

2018-01-02  Ms2ger  <Ms2ger@igalia.com>

        Update imported/w3c/web-platform-tests/html/browsers/windows/browsing-context.html from upstream wpt.
        https://bugs.webkit.org/show_bug.cgi?id=172255

        Unreviewed test gardening.

        * web-platform-tests/html/browsers/windows/browsing-context-expected.txt: rebaseline.
        * web-platform-tests/html/browsers/windows/browsing-context.html: update.

== Rolled over to ChangeLog-2018-01-01 ==
