Bug 315311

Summary: Reduce cost of framework-headers rule invocations
Product: WebKit Reporter: Brent Fulgham <bfulgham>
Component: New BugsAssignee: Brent Fulgham <bfulgham>
Status: REOPENED    
Severity: Normal CC: webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 315422    
Bug Blocks:    

Brent Fulgham
Reported 2026-05-21 12:09:30 PDT
The script `postprocess-framework-headers-definitions` is sourced on every invocation. That's (currently) 107 lines of bash that runs Perl + JSON parsing per invocation to compute TBA versions from branch_config.json. While this is effectively a no-op for OpenSource builds, this is a non-zero cost for work that repeats unchanged 3,337 times across the build. This accounts for about 8.5s of wall clock build time, and was made worse by my patch that enabled script sandboxes. We can avoid this work by computing this constant (per-build) value once and reusing it for subsequent files in the build phase. We do this for each project, so that we do not break the non-Engineer build that needs to be able to build projects independently.
Attachments
Radar WebKit Bug Importer
Comment 1 2026-05-21 12:09:36 PDT
Brent Fulgham
Comment 2 2026-05-21 12:15:16 PDT
This makes up for the ~8-10s cost of Bug 313032.
Brent Fulgham
Comment 3 2026-05-21 21:46:29 PDT
EWS
Comment 4 2026-05-22 16:37:17 PDT
Committed 313764@main (8671f597bd6c): <https://commits.webkit.org/313764@main> Reviewed commits have been landed. Closing PR #65458 and removing active labels.
Jonathan Bedard
Comment 5 2026-05-23 05:44:25 PDT
Reopened Bugzilla. REGRESSION(313764@main): 'WKJSSerializedNode' is unavailable: not available on tvOS, tracking revert in https://bugs.webkit.org/show_bug.cgi?id=315422.
Note You need to log in before you can comment on or make changes to this bug.