Cache line layout path
https://bugs.webkit.org/show_bug.cgi?id=123298

Reviewed by Sam Weinig.

Determining the path can be non-trivial. Avoid computing it repeatedly on relayouts.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::RenderBlock):
(WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
(WebCore::RenderBlock::invalidateLineLayoutPath):
(WebCore::RenderBlock::removeChild):

    Invalidate the path when children change.

* rendering/RenderBlock.h:
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::layoutInlineChildren):
(WebCore::RenderBlockFlow::styleDidChange):

    Invalidate the path when style changes.

(WebCore::RenderBlockFlow::deleteLineBoxesBeforeSimpleLineLayout):
(WebCore::RenderBlockFlow::ensureLineBoxes):
* rendering/RenderText.cpp:
(WebCore::RenderText::setText):

    Invalidate the path when text changes.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157985 268f45cc-cd09-0410-ab3c-d52691b4dbfc
New Mavericks results for editing and fast/html, with MountainLion fallbacks.

* platform/mac-mountainlion/editing/input/caret-at-the-edge-of-input-expected.txt: Copied from LayoutTests/platform/mac/editing/input/caret-at-the-edge-of-input-expected.txt.
* platform/mac-mountainlion/editing/inserting/before-after-input-element-expected.txt: Copied from LayoutTests/platform/mac/editing/inserting/before-after-input-element-expected.txt.
* platform/mac-mountainlion/editing/pasteboard/4806874-expected.txt: Copied from LayoutTests/platform/mac/editing/pasteboard/4806874-expected.txt.
* platform/mac-mountainlion/editing/pasteboard/drop-text-without-selection-expected.txt: Copied from LayoutTests/platform/mac/editing/pasteboard/drop-text-without-selection-expected.txt.
* platform/mac-mountainlion/editing/pasteboard/input-field-1-expected.txt: Copied from LayoutTests/platform/mac/editing/pasteboard/input-field-1-expected.txt.
* platform/mac-mountainlion/editing/selection/3690703-2-expected.txt: Copied from LayoutTests/platform/mac/editing/selection/3690703-2-expected.txt.
* platform/mac-mountainlion/editing/selection/3690703-expected.txt: Copied from LayoutTests/platform/mac/editing/selection/3690703-expected.txt.
* platform/mac-mountainlion/editing/selection/3690719-expected.txt: Copied from LayoutTests/platform/mac/editing/selection/3690719-expected.txt.
* platform/mac-mountainlion/editing/selection/4895428-3-expected.txt: Copied from LayoutTests/platform/mac/editing/selection/4895428-3-expected.txt.
* platform/mac-mountainlion/editing/selection/4975120-expected.txt: Copied from LayoutTests/platform/mac/editing/selection/4975120-expected.txt.
* platform/mac-mountainlion/editing/selection/drag-select-1-expected.txt: Copied from LayoutTests/platform/mac/editing/selection/drag-select-1-expected.txt.
* platform/mac-mountainlion/editing/selection/replaced-boundaries-3-expected.txt: Copied from LayoutTests/platform/mac/editing/selection/replaced-boundaries-3-expected.txt.
* platform/mac-mountainlion/editing/selection/select-from-textfield-outwards-expected.txt: Copied from LayoutTests/platform/mac/editing/selection/select-from-textfield-outwards-expected.txt.
* platform/mac-mountainlion/fast/html/details-no-summary4-expected.txt: Copied from LayoutTests/platform/mac/fast/html/details-no-summary4-expected.txt.
* platform/mac-mountainlion/fast/html/details-open-javascript-expected.txt: Copied from LayoutTests/platform/mac/fast/html/details-open-javascript-expected.txt.
* platform/mac-mountainlion/fast/html/details-open2-expected.txt: Copied from LayoutTests/platform/mac/fast/html/details-open2-expected.txt.
* platform/mac-mountainlion/fast/html/details-open4-expected.txt: Copied from LayoutTests/platform/mac/fast/html/details-open4-expected.txt.
* platform/mac-mountainlion/fast/html/details-replace-summary-child-expected.txt: Copied from LayoutTests/platform/mac/fast/html/details-replace-summary-child-expected.txt.
* platform/mac-mountainlion/fast/html/details-replace-text-expected.txt: Copied from LayoutTests/platform/mac/fast/html/details-replace-text-expected.txt.
* platform/mac/editing/input/caret-at-the-edge-of-input-expected.txt:
* platform/mac/editing/inserting/before-after-input-element-expected.txt:
* platform/mac/editing/pasteboard/4806874-expected.txt:
* platform/mac/editing/pasteboard/drop-text-without-selection-expected.txt:
* platform/mac/editing/pasteboard/input-field-1-expected.txt:
* platform/mac/editing/selection/3690703-2-expected.txt:
* platform/mac/editing/selection/3690703-expected.txt:
* platform/mac/editing/selection/3690719-expected.txt:
* platform/mac/editing/selection/4895428-3-expected.txt:
* platform/mac/editing/selection/4975120-expected.txt:
* platform/mac/editing/selection/drag-select-1-expected.txt:
* platform/mac/editing/selection/replaced-boundaries-3-expected.txt:
* platform/mac/editing/selection/select-from-textfield-outwards-expected.txt:
* platform/mac/fast/html/details-no-summary4-expected.txt:
* platform/mac/fast/html/details-open-javascript-expected.txt:
* platform/mac/fast/html/details-open2-expected.txt:
* platform/mac/fast/html/details-open4-expected.txt:
* platform/mac/fast/html/details-replace-summary-child-expected.txt:
* platform/mac/fast/html/details-replace-text-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157986 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove references to OS X 10.7 from Xcode configuration settings.

Now that we're not building for OS X 10.7 they're no longer needed.

Reviewed by Anders Carlsson.

Source/JavaScriptCore:

* Configurations/Base.xcconfig:
* Configurations/DebugRelease.xcconfig:
* Configurations/FeatureDefines.xcconfig:
* Configurations/Version.xcconfig:

Source/ThirdParty:

* gtest/xcode/Config/General.xcconfig:

Source/ThirdParty/ANGLE:

* Configurations/Base.xcconfig:
* Configurations/DebugRelease.xcconfig:

Source/WebCore:

* Configurations/Base.xcconfig:
* Configurations/DebugRelease.xcconfig:
* Configurations/FeatureDefines.xcconfig:
* Configurations/Version.xcconfig:

Source/WebInspectorUI:

* Configurations/Base.xcconfig:
* Configurations/DebugRelease.xcconfig:
* Configurations/Version.xcconfig:

Source/WebKit/mac:

* Configurations/Base.xcconfig:
* Configurations/DebugRelease.xcconfig:
* Configurations/FeatureDefines.xcconfig:
* Configurations/Version.xcconfig:

Source/WebKit2:

* Configurations/Base.xcconfig:
* Configurations/BaseXPCService.xcconfig:
* Configurations/DebugRelease.xcconfig:
* Configurations/FeatureDefines.xcconfig:
* Configurations/Version.xcconfig:
* Configurations/WebContentProcess.xcconfig:

Source/WTF:

* Configurations/Base.xcconfig:
* Configurations/DebugRelease.xcconfig:

Tools:

* DumpRenderTree/mac/Configurations/Base.xcconfig:
* DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
* MiniBrowser/Configurations/Base.xcconfig:
* MiniBrowser/Configurations/DebugRelease.xcconfig:
* TestWebKitAPI/Configurations/Base.xcconfig:
* TestWebKitAPI/Configurations/DebugRelease.xcconfig:
* WebKitLauncher/Configurations/Base.xcconfig:
* WebKitTestRunner/Configurations/Base.xcconfig:
* WebKitTestRunner/Configurations/DebugRelease.xcconfig:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157987 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Showing lists of flaky tests for a builder takes too long
https://bugs.webkit.org/show_bug.cgi?id=123311

Reviewed by Sam Weinig.

Generate JSONs for tests failing, flaky, or with wrong expectation at the time a builder reports results
instead when the frontend requests to those those results since it takes multiple seconds or minutes to
generate those JSON files.

* api/failing-tests.php: Moved and renamed to manually generate all JSON files for a given builder.
(main):

* api/report.php: Manually flush and end the request (to avoid blocking run-webkit-tests on the other side
for minutes), then generate JSONs for tests that are failing, are flaky, and have wrong expectations.

* api/results.php: Merge format_result_rows here since it's not used anywhere else.

* include/config.json: Added the path to the data directory into which JSON files are generated.

* include/db.php:
(configPath): Takes a relative path value from config.json, and resolves it.

* include/json-shared.php:
(echo_success): Extracted from exit_with_success.
(exit_with_success):

* include/test-results.php:
(add_builder): Extracted from add_build.
(add_build):
(ResultsJSONWriter): Extracted from api/failing-tests.php.
(ResultsJSONWriter.__construct):
(ResultsJSONWriter.start):
(ResultsJSONWriter.end):
(ResultsJSONWriter.add_results_for_test_if_matches):
(ResultsJSONWriter.pass_for_failure_type):
(FailingResultsJSONWriter): Extracted from index.html's TestResultsView._matchesFailureType.
(FailingResultsJSONWriter.__construct):
(FailingResultsJSONWriter.pass_for_failure_type):
(FlakyResultsJSONWriter): Ditto.
(FlakyResultsJSONWriter.__construct):
(FlakyResultsJSONWriter.pass_for_failure_type):
(WrongExpectationsResultsJSONWriter): Ditto.
(WrongExpectationsResultsJSONWriter.__construct):
(WrongExpectationsResultsJSONWriter.pass_for_failure_type):
(ResultsJSONGenerator): Ditto.
(ResultsJSONGenerator.__construct):
(ResultsJSONGenerator.generate):
(ResultsJSONGenerator.open_json_for_failure_type):
(ResultsJSONGenerator.write_jsons):

* index.html:
(TestResultsView):
(TestResultsView.setBuilders):
(TestResultsView._createResultCell): Add a hyperlink to results.html in the tooltip.
(TestResultsView.fetchFailingTestsForBuilder): Fetch the generated JSON files.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157988 268f45cc-cd09-0410-ab3c-d52691b4dbfc