Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 66c45d7c64726e3b9d5700305bd2945c7a978e4d
https://github.com/WebKit/WebKit/commit/66c45d7c64726e3b9d5700305bd2945c7a978e4d
Author: Lauro Moura <[email protected]>
Date: 2024-12-19 (Thu, 19 Dec 2024)
Changed paths:
M Source/WebCore/CMakeLists.txt
M Source/WebCore/Headers.cmake
M Source/WebCore/Sources.txt
A Source/WebCore/automation/AutomationInstrumentation.cpp
A Source/WebCore/automation/AutomationInstrumentation.h
M Source/WebCore/page/PageConsoleClient.cpp
M Source/WebCore/workers/WorkerGlobalScope.cpp
M Source/WebDriver/Session.cpp
M Source/WebDriver/Session.h
M Source/WebDriver/SessionHost.cpp
M Source/WebDriver/SessionHost.h
M Source/WebDriver/WebDriverService.cpp
M Source/WebDriver/WebDriverService.h
M Source/WebDriver/WebSocketServer.cpp
M Source/WebKit/CMakeLists.txt
M Source/WebKit/DerivedSources-input.xcfilelist
M Source/WebKit/DerivedSources.make
M Source/WebKit/Scripts/webkit/messages.py
M Source/WebKit/Shared/JavaScriptCore.serialization.in
M Source/WebKit/UIProcess/Automation/Automation.json
M Source/WebKit/UIProcess/Automation/WebAutomationSession.cpp
M Source/WebKit/UIProcess/Automation/WebAutomationSession.h
A Source/WebKit/UIProcess/Automation/WebAutomationSession.messages.in
M Source/WebKit/WebKit.xcodeproj/project.pbxproj
M Source/WebKit/WebProcess/Automation/WebAutomationSessionProxy.cpp
M Source/WebKit/WebProcess/Automation/WebAutomationSessionProxy.h
M Source/cmake/OptionsWPE.cmake
Log Message:
-----------
[WebDriver][BiDi] Implement the log module
https://bugs.webkit.org/show_bug.cgi?id=271956
Reviewed by BJ Burg and Devin Rousso.
Adds the basic infrastructure for global WebDriver BiDi events,
using the `log.entryAdded` event as the first event implemented.
Console logging is supported through a new client class that gets
notified of console messages by the new `AutomationInstrumentation`,
based on the existing `InspectorInstrumentation` class.
This version supports text console messages, missing advanced
information like stacktraces, extra args and realm id.
This commit also adds back the WebAutomationSession.messages.in, so the
WebProcess can notify the UIProcess when a new console message arrives.
It was originally removed in 286516@main. It also includes follow up
fixes after the AbstractRefCounted changes from 287239@main. Note that
as we don't have a preference for WebDriver yet, these messages are
marked as ExceptionForEnabledBy.
Also, WebDriver BiDi is enabled in developer builds for WPE, so we can
actually test it on CI.
* Source/WebCore/CMakeLists.txt:
* Source/WebCore/Headers.cmake:
* Source/WebCore/Sources.txt:
* Source/WebCore/automation/AutomationInstrumentation.cpp: Added.
(WebCore::Inspector::automationClient):
(WebCore::AutomationInstrumentation::setClient):
(WebCore::AutomationInstrumentation::clearClient):
(WebCore::logEntryLevelForMessage):
(WebCore::logEntryMethodNameForMessage):
(WebCore::AutomationInstrumentation::addMessageToConsole):
* Source/WebCore/automation/AutomationInstrumentation.h: Added.
* Source/WebCore/page/PageConsoleClient.cpp:
(WebCore::PageConsoleClient::addMessage):
(WebCore::PageConsoleClient::messageWithTypeAndLevel):
* Source/WebCore/workers/WorkerGlobalScope.cpp:
(WebCore::WorkerGlobalScope::addConsoleMessage):
(WebCore::WorkerGlobalScope::addMessage):
* Source/WebDriver/Session.cpp:
(WebDriver::Session::Session):
(WebDriver::Session::dispatchEvent):
(WebDriver::Session::doLogEntryAdded):
(WebDriver::Session::emitEvent):
(WebDriver::Session::eventIsEnabled):
(WebDriver::Session::enableGlobalEvent):
(WebDriver::Session::disableGlobalEvent):
(WebDriver::Session::toInternalEventName):
* Source/WebDriver/Session.h:
(WebDriver::Session::create):
* Source/WebDriver/SessionHost.cpp:
(WebDriver::SessionHost::dispatchMessage):
(WebDriver::SessionHost::dispatchEvent):
* Source/WebDriver/SessionHost.h:
* Source/WebDriver/WebDriverService.cpp:
(WebDriver::WebDriverService::bidiSessionSubscribe):
(WebDriver::WebDriverService::bidiSessionUnsubscribe):
* Source/WebDriver/WebDriverService.h:
* Source/WebDriver/WebSocketServer.cpp:
(WebDriver::WebSocketMessageHandler::Message::fail):
* Source/WebKit/CMakeLists.txt:
* Source/WebKit/DerivedSources-input.xcfilelist:
* Source/WebKit/DerivedSources.make:
* Source/WebKit/Scripts/webkit/messages.py:
(headers_for_type):
* Source/WebKit/Shared/JavaScriptCore.serialization.in:
* Source/WebKit/UIProcess/Automation/Automation.json:
* Source/WebKit/UIProcess/Automation/WebAutomationSession.cpp:
(WebKit::WebAutomationSession::setProcessPool):
(WebKit::WebAutomationSession::logEntryAdded):
* Source/WebKit/UIProcess/Automation/WebAutomationSession.h:
* Source/WebKit/UIProcess/Automation/WebAutomationSession.messages.in: Copied
from Source/WebKit/Shared/JavaScriptCore.serialization.in.
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
* Source/WebKit/WebProcess/Automation/WebAutomationSessionProxy.cpp:
(WebKit::WebAutomationSessionProxy::WebAutomationSessionProxy):
(WebKit::WebAutomationSessionProxy::~WebAutomationSessionProxy):
(WebKit::WebAutomationSessionProxy::addMessageToConsole):
* Source/WebKit/WebProcess/Automation/WebAutomationSessionProxy.h:
* Source/cmake/OptionsWPE.cmake:
Canonical link: https://commits.webkit.org/288145@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes