Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 3f625fb7fe0d38a12c76a175fc74a65f34441288
https://github.com/WebKit/WebKit/commit/3f625fb7fe0d38a12c76a175fc74a65f34441288
Author: Elliott Williams <[email protected]>
Date: 2026-03-26 (Thu, 26 Mar 2026)
Changed paths:
M Source/JavaScriptCore/Scripts/generate-unified-sources.sh
A Source/WTF/Scripts/generate-unified-source-bundles.py
R Source/WTF/Scripts/generate-unified-source-bundles.rb
M Source/WTF/WTF.xcodeproj/project.pbxproj
M Source/WTF/wtf/CMakeLists.txt
M Source/WebCore/Scripts/generate-unified-sources.sh
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebKit/Scripts/generate-unified-sources.sh
M Source/WebKit/WebKit.xcodeproj/project.pbxproj
M Source/WebKitLegacy/WebKitLegacy.xcodeproj/project.pbxproj
M Source/WebKitLegacy/scripts/generate-unified-sources.sh
M Source/cmake/WebKitMacros.cmake
M Tools/Scripts/filter-build-webkit
M Tools/TestWebKitAPI/Scripts/generate-unified-sources.sh
M Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
Log Message:
-----------
[Build] Rewrite generate-unified-sources in Python
https://bugs.webkit.org/show_bug.cgi?id=310723
rdar://173342223
Reviewed by Darin Adler.
A faithful 1:1 port of the Ruby script to Python, which produces
byte-identical output during the build. The overall data structures and
control flow are the same, and the major refactors are to use some
Python stdlib classes that are higher level than what's available in
Ruby, namely `ArgumentParser` and `pathlib.Path`.
Works towards future enhancements to the bundling algorithm, which will
be easier to write, test, and typecheck in Python.
* Source/JavaScriptCore/Scripts/generate-unified-sources.sh:
* Source/WTF/Scripts/generate-unified-source-bundles.py: Added.
(log):
(bundle_prefix_and_size_for_path):
(SourceFile):
(SourceFile.__init__):
(SourceFile.sort_key):
(SourceFile.derived):
(SourceFile.__str__):
(SourceFile.__repr__):
(BundleManager):
(BundleManager.__init__):
(BundleManager.write_file):
(BundleManager.bundle_file_name):
(BundleManager.flush):
(BundleManager.flush_to_max):
(BundleManager.add_file):
(process_file_for_unified_source_generation):
(parse_args):
(main):
* Source/WTF/Scripts/generate-unified-source-bundles.rb: Removed.
* Source/WTF/WTF.xcodeproj/project.pbxproj:
* Source/WTF/wtf/CMakeLists.txt:
* Source/WebCore/Scripts/generate-unified-sources.sh:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebKit/Scripts/generate-unified-sources.sh:
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
* Source/WebKitLegacy/WebKitLegacy.xcodeproj/project.pbxproj:
* Source/WebKitLegacy/scripts/generate-unified-sources.sh:
* Source/cmake/WebKitMacros.cmake:
* Tools/Scripts/filter-build-webkit:
(main):
* Tools/TestWebKitAPI/Scripts/generate-unified-sources.sh:
* Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
Canonical link: https://commits.webkit.org/310016@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications