Hello, subversion developers:

Now Fedora 38 is preparing for upcoming ruby 3.2 (which is expected to be 
released
on 2022/Dec), and current subversion fails for test suite for ruby like:

===============================================================================
Error: test_adm_ensure(SvnWcTest): NoMethodError: undefined method `exists?' 
for File:Class
/builddir/build/BUILD/subversion-1.14.2/subversion/bindings/swig/ruby/test/test_wc.rb:345:in
 `test_adm_ensure'
     342:
     343:   def test_adm_ensure
     344:     adm_dir = Dir.glob(File.join(@wc_path, "{.,_}svn")).first
  => 345:     assert(File.exists?(adm_dir))
     346:     FileUtils.rm_rf(adm_dir)
     347:     assert(!File.exists?(adm_dir))
     348:     Svn::Wc.ensure_adm(@wc_path, @fs.uuid, @repos_uri, @repos_uri, 0)
/builddir/build/BUILD/subversion-1.14.2/subversion/bindings/swig/ruby/test/test-unit-ext/priority.rb:115:in
 `run'
===============================================================================

Error: test_delete(SvnWcTest): NoMethodError: undefined method `exists?' for 
File:Class
Error: test_switch_editor(SvnWcTest): NoMethodError: undefined method `exists?' 
for File:Class
Error: test_update_editor(SvnWcTest): NoMethodError: undefined method `exists?' 
for File:Class
Error: test_update_editor_options(SvnWcTest): NoMethodError: undefined method 
`exists?' for File:Class

Ruby 3.2 now completely removes "File.exists?" which were already obsoleted on 
ruby 2.1.
Just replacing with "File.exist?" should fix these errors.

https://github.com/ruby/ruby/blob/6378825df5c7abc7ef45f257057ffd21dc9e63b5/NEWS.md?plain=1#L248
https://bugs.ruby-lang.org/issues/17391
https://docs.ruby-lang.org/en/3.1/File.html#method-c-exist-3F

The targets which need fixing are:
===============================================================================
./subversion/bindings/swig/ruby/test/test_wc.rb:345:    
assert(File.exists?(adm_dir))
./subversion/bindings/swig/ruby/test/test_wc.rb:347:    
assert(!File.exists?(adm_dir))
./subversion/bindings/swig/ruby/test/test_wc.rb:349:    
assert(File.exists?(adm_dir))
./subversion/bindings/swig/ruby/test/test_wc.rb:477:      
assert(File.exists?(path))
./subversion/bindings/swig/ruby/test/test_wc.rb:481:      
assert(!File.exists?(path))
./subversion/bindings/swig/ruby/test/test_wc.rb:485:      
assert(File.exists?(path))
./subversion/bindings/swig/ruby/test/test_wc.rb:489:      
assert(File.exists?(path))
./subversion/bindings/swig/ruby/test/test_wc.rb:811:        
assert(File.exists?(path2))
./subversion/bindings/swig/ruby/test/test_wc.rb:813:        
assert(!File.exists?(path2))
./subversion/bindings/swig/ruby/test/test_wc.rb:851:        
assert(File.exists?(path2))
./subversion/bindings/swig/ruby/test/test_wc.rb:853:        
assert(!File.exists?(path2))
./subversion/bindings/swig/ruby/test/test_wc.rb:949:        
assert(File.exists?(path1))
./subversion/bindings/swig/ruby/test/test_wc.rb:951:        
assert(File.exists?(File.join(@wc_path, file2)))
./subversion/bindings/swig/ruby/test/windows_util.rb:118:            
File.read(gen_make_opts).lines.to_a if File.exists?(gen_make_opts)
./subversion/bindings/swig/ruby/svn/util.rb:23:    if File.exists?(svn_ext_path)
===============================================================================

Regards,
Mamoru TASAKA <mtas...@fedoraproject.org>

Reply via email to