Bug 280924

Summary: WebKit's Swift overlay calls actor-isolated code from a nonisolated context
Product: WebKit Reporter: Elliott Williams <emw>
Component: Tools / TestsAssignee: Elliott Williams <emw>
Status: RESOLVED FIXED    
Severity: Normal CC: webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 280734    
Bug Blocks: 282452    

Elliott Williams
Reported 2024-10-04 17:21:04 PDT
Early builds of WebKit's merged Swift overlay in <https://bugs.webkit.org/show_bug.cgi?id=280734> show some actor isolation errors. The Swift toolchain used in Xcode 13 elevates these to errors, whereas more recent Xcodes treat them as warnings: /Volumes/Data/worker/macOS-Ventura-Release-Build-EWS/build/Source/WebKit/UIProcess/API/Cocoa/WebKitSwiftOverlay.swift:70:58: error: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context public func pdf(configuration: WKPDFConfiguration = .init()) async throws -> Data { WebKit.WKPDFConfiguration:4:12: note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous public init() /Volumes/Data/worker/macOS-Ventura-Release-Build-EWS/build/Source/WebKit/UIProcess/API/Cocoa/WebKitSwiftOverlay.swift:78:78: error: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context public func find(_ string: String, configuration: WKFindConfiguration = .init()) async throws -> WKFindResult { WebKit.WKFindConfiguration:5:12: note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous public init()
Attachments
Radar WebKit Bug Importer
Comment 1 2024-10-04 17:21:39 PDT
Elliott Williams
Comment 2 2024-10-31 09:32:05 PDT
EWS
Comment 3 2024-11-14 16:40:54 PST
Committed 286620@main (967f1ef0f0c8): <https://commits.webkit.org/286620@main> Reviewed commits have been landed. Closing PR #36002 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.