RESOLVED FIXED 246743
webkitgtk 2.38.0 fails to build with upcoming ruby 3.2 due to removed File.exists?
https://bugs.webkit.org/show_bug.cgi?id=246743
Summary webkitgtk 2.38.0 fails to build with upcoming ruby 3.2 due to removed File.ex...
Mamoru TASAKA
Reported 2022-10-19 07:13:39 PDT
Fedora 38 is now preparing for upcoming ruby3.2 (which is expected to be released on Chistmas of 2022), and WebKitGTK 2.38.0 fails to build with ruby3.2 dev like: -------------------------------------------------- FAILED: JavaScriptCore/DerivedSources/LLIntDesiredSettings.h /builddir/build/BUILD/webkitgtk-2.38.0/redhat-linux-build/webkit2gtk-5.0/JavaScriptCore/DerivedSources/LLIntDesiredSettings.h cd /builddir/build/BUILD/webkitgtk-2.38.0/redhat-linux-build/webkit2gtk-5.0/Source/JavaScriptCore && /usr/bin/ruby /builddir/build/BUILD/webkitgtk-2.38.0/Source/JavaScriptCore/offlineasm/generate_settings_extractor.rb -I/builddir/build/BUILD/webkitgtk-2.38.0/redhat-linux-build/webkit2gtk-5.0/JavaScriptCore/DerivedSources/ /builddir/build/BUILD/webkitgtk-2.38.0/Source/JavaScriptCore/llint/LowLevelInterpreter.asm /builddir/build/BUILD/webkitgtk-2.38.0/redhat-linux-build/webkit2gtk-5.0/JavaScriptCore/DerivedSources/LLIntDesiredSettings.h X86_64 /builddir/build/BUILD/webkitgtk-2.38.0/Source/JavaScriptCore/offlineasm/parser.rb:879:in `block in parseIncludes': undefined method `exists?' for File:Class (NoMethodError) if not File.exists?(fileName) ^^^^^^^^ Did you mean? exist? from /builddir/build/BUILD/webkitgtk-2.38.0/Source/JavaScriptCore/offlineasm/parser.rb:860:in `loop' from /builddir/build/BUILD/webkitgtk-2.38.0/Source/JavaScriptCore/offlineasm/parser.rb:860:in `parseIncludes' from /builddir/build/BUILD/webkitgtk-2.38.0/Source/JavaScriptCore/offlineasm/parser.rb:920:in `parseHash' from /builddir/build/BUILD/webkitgtk-2.38.0/Source/JavaScriptCore/offlineasm/generate_settings_extractor.rb:58:in `<main>' -------------------------------------------------- File.exists? is deprecated since ruby 2.1 and is removed with ruby 3.2. People is expected to simply replace this with File.exist? The targets need fixing are: -------------------------------------------------- ./Source/JavaScriptCore/offlineasm/config.rb:26:if buildProductsDirectory and File.exists?(buildProductsDirectory) ./Source/JavaScriptCore/offlineasm/config.rb:30:if sdkRootDirectory and File.exists?(sdkRootDirectory) ./Source/JavaScriptCore/offlineasm/parser.rb:843: if not File.exists?(fileName) ./Source/JavaScriptCore/offlineasm/parser.rb:846: fileExists = File.exists?(fileName) ./Source/JavaScriptCore/offlineasm/parser.rb:879: if not File.exists?(fileName) ./Source/JavaScriptCore/offlineasm/parser.rb:882: fileExists = File.exists?(fileName) ./Source/WebInspectorUI/Scripts/update-LegacyInspectorBackendCommands.rb:39: if !File.exists?(generated_path) -------------------------------------------------- References: https://github.com/ruby/ruby/blob/6378825df5c7abc7ef45f257057ffd21dc9e63b5/NEWS.md?plain=1#L245-L248 https://bugs.ruby-lang.org/issues/17391 https://docs.ruby-lang.org/ja/latest/method/File/s/exists=3f.html
Attachments
Fujii Hironori
Comment 1 2022-12-12 18:34:51 PST
EWS
Comment 2 2022-12-12 21:25:24 PST
Committed 257775@main (b7ac5d0ccc7c): <https://commits.webkit.org/257775@main> Reviewed commits have been landed. Closing PR #7531 and removing active labels.
Radar WebKit Bug Importer
Comment 3 2022-12-12 21:26:16 PST
Note You need to log in before you can comment on or make changes to this bug.