[webkit-changes] [WebKit/WebKit] ea719b: messages.in files should be annotated with a dispa...
Gavin
noreply at github.com
Fri Dec 6 04:25:02 PST 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: ea719b6182f67abdd5719844d11fa60d95e4377b
https://github.com/WebKit/WebKit/commit/ea719b6182f67abdd5719844d11fa60d95e4377b
Author: Gavin Phillips <gavin.p at apple.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M Source/WTF/wtf/RuntimeApplicationChecks.h
M Source/WebKit/GPUProcess/GPUConnectionToWebProcess.messages.in
M Source/WebKit/ModelProcess/ModelConnectionToWebProcess.messages.in
M Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.messages.in
M Source/WebKit/Scripts/webkit/messages.py
M Source/WebKit/Scripts/webkit/messages_unittest.py
M Source/WebKit/Scripts/webkit/model.py
M Source/WebKit/Scripts/webkit/parser.py
M Source/WebKit/Scripts/webkit/tests/Makefile
M Source/WebKit/Scripts/webkit/tests/MessageArgumentDescriptions.cpp
M Source/WebKit/Scripts/webkit/tests/MessageNames.cpp
M Source/WebKit/Scripts/webkit/tests/MessageNames.h
M Source/WebKit/Scripts/webkit/tests/TestWithCVPixelBufferMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithDeferSendingOptionMessages.h
A Source/WebKit/Scripts/webkit/tests/TestWithDispatchedFromAndTo.messages.in
A Source/WebKit/Scripts/webkit/tests/TestWithDispatchedFromAndToMessageReceiver.cpp
A Source/WebKit/Scripts/webkit/tests/TestWithDispatchedFromAndToMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithEnabledByAndConjunctionMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithEnabledByMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithEnabledByOrConjunctionMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithIfMessageMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithImageDataMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithLegacyReceiverMessages.h
A Source/WebKit/Scripts/webkit/tests/TestWithMultiLineExtendedAttributes.messages.in
A Source/WebKit/Scripts/webkit/tests/TestWithMultiLineExtendedAttributesMessageReceiver.cpp
A Source/WebKit/Scripts/webkit/tests/TestWithMultiLineExtendedAttributesMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithSemaphoreMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithStreamBatchedMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithStreamBufferMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithStreamMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithStreamServerConnectionHandleMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithSuperclassAndWantsAsyncDispatchMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithSuperclassAndWantsDispatchMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithSuperclassMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithValidatorMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithWantsAsyncDispatchMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithWantsDispatchMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithWantsDispatchNoSyncMessagesMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithoutAttributesMessages.h
M Source/WebKit/Scripts/webkit/tests/TestWithoutUsingIPCConnectionMessages.h
M Source/WebKit/UIProcess/WebPageProxy.messages.in
Log Message:
-----------
messages.in files should be annotated with a dispatched(From|To)="(UI|Network|GPU|Model|WebProcess)" attribute
https://bugs.webkit.org/show_bug.cgi?id=283827
rdar://125231437
Reviewed by Alex Christensen and Sihui Liu.
Currently, it’s non trivial to tell where a given IPC message is expected to be sent
from/received without understanding how a given receiver is constructed and attached to the connection.
This change creates a new dispatched(From|To)="(UI|Network|GPU|WebProcess|Model)" attribute
which can be used to assert a given process always sends/receives the message.
This is achieved via an ASSERT(WebKit::IsInXXXProcess()); generated via the .messages.in parser
and placed in the generated sender/receiver code.
* Source/WebKit/GPUProcess/GPUConnectionToWebProcess.messages.in:
* Source/WebKit/ModelProcess/ModelConnectionToWebProcess.messages.in:
* Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.messages.in:
* Source/WebKit/Scripts/webkit/messages.py:
(message_to_struct_declaration):
(generate_dispatched_for_x):
(generate_message_handler):
* Source/WebKit/Scripts/webkit/model.py:
(MessageReceiver.__init__):
(generate_global_model):
* Source/WebKit/Scripts/webkit/parser.py:
(parse):
(parse_process_name_string):
* Source/WebKit/UIProcess/WebPageProxy.messages.in:
Canonical link: https://commits.webkit.org/287439@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list