FYI: The multiple commit notifications is due to infra debugging an (unrelated) notification issue.
/Daniel Den tors 30 apr. 2026 kl 11:22 skrev <[email protected]>: > > Author: jun66j5 > Date: Thu Apr 30 08:35:58 2026 > New Revision: 1933572 > > Log: > swig-rb: Fix fronzen string literal warnings since Ruby 3.4. > > * subversion/bindings/swig/ruby/svn/core.rb > (Stream#read, > Stream#read_all, > Config#to_s): Use `String.new` instead of string literal. > * subversion/bindings/swig/ruby/svn/error.rb > (SvnError#initialize): Ditto. > * subversion/bindings/swig/ruby/svn/info.rb > (DiffEntry#initialize): Ditto. > * subversion/bindings/swig/ruby/test/test_core.rb > (SvnCoreTest#test_stream_copy): Ditto. > * subversion/bindings/swig/ruby/test/test_delta.rb > (SvnDeltaTest#test_txdelta_apply_instructions, > SvnDeltaTest#test_push_target, > SvnDeltaTest#test_apply, > SvnDeltaTest#test_svndiff): Ditto. > * subversion/bindings/swig/ruby/test/test_fs.rb > (SvnFsTest#test_delta): Ditto. > * subversion/bindings/swig/ruby/test/test_repos.rb > (SvnReposTest#test_dump, > SvnReposTest#test_load): Ditto. > > Modified: > subversion/trunk/subversion/bindings/swig/ruby/svn/core.rb > subversion/trunk/subversion/bindings/swig/ruby/svn/error.rb > subversion/trunk/subversion/bindings/swig/ruby/svn/info.rb > subversion/trunk/subversion/bindings/swig/ruby/test/test_core.rb > subversion/trunk/subversion/bindings/swig/ruby/test/test_delta.rb > subversion/trunk/subversion/bindings/swig/ruby/test/test_fs.rb > subversion/trunk/subversion/bindings/swig/ruby/test/test_repos.rb > > Modified: subversion/trunk/subversion/bindings/swig/ruby/svn/core.rb > ============================================================================== > --- subversion/trunk/subversion/bindings/swig/ruby/svn/core.rb Thu Apr 30 > 08:30:24 2026 (r1933571) > +++ subversion/trunk/subversion/bindings/swig/ruby/svn/core.rb Thu Apr 30 > 08:35:58 2026 (r1933572) > @@ -141,7 +141,7 @@ module Svn > if len.nil? > read_all > else > - buf = "" > + buf = String.new > while len > CHUNK_SIZE > buf << _read(CHUNK_SIZE) > len -= CHUNK_SIZE > @@ -165,7 +165,7 @@ module Svn > end > > def read_all > - buf = "" > + buf = String.new > while chunk = _read(CHUNK_SIZE) > buf << chunk > end > @@ -587,7 +587,7 @@ module Svn > > alias_method :_to_s, :to_s > def to_s > - result = "" > + result = String.new > each_section do |section| > result << "[#{section}]\n" > each_option(section) do |name, value| > > Modified: subversion/trunk/subversion/bindings/swig/ruby/svn/error.rb > ============================================================================== > --- subversion/trunk/subversion/bindings/swig/ruby/svn/error.rb Thu Apr 30 > 08:30:24 2026 (r1933571) > +++ subversion/trunk/subversion/bindings/swig/ruby/svn/error.rb Thu Apr 30 > 08:35:58 2026 (r1933572) > @@ -49,7 +49,7 @@ module Svn > @file = file > @line = line > @child = child > - message = "" > + message = String.new > if file > message << "#{file}" > message << ":#{line}" if line > > Modified: subversion/trunk/subversion/bindings/swig/ruby/svn/info.rb > ============================================================================== > --- subversion/trunk/subversion/bindings/swig/ruby/svn/info.rb Thu Apr 30 > 08:30:24 2026 (r1933571) > +++ subversion/trunk/subversion/bindings/swig/ruby/svn/info.rb Thu Apr 30 > 08:35:58 2026 (r1933572) > @@ -327,7 +327,7 @@ module Svn > @type = type > @added_line = 0 > @deleted_line = 0 > - @body = "" > + @body = String.new > end > > def count_up_added_line! > > Modified: subversion/trunk/subversion/bindings/swig/ruby/test/test_core.rb > ============================================================================== > --- subversion/trunk/subversion/bindings/swig/ruby/test/test_core.rb Thu > Apr 30 08:30:24 2026 (r1933571) > +++ subversion/trunk/subversion/bindings/swig/ruby/test/test_core.rb Thu > Apr 30 08:35:58 2026 (r1933572) > @@ -591,7 +591,7 @@ EOD > def test_stream_copy > source = "content" > original = StringIO.new(source) > - copied = StringIO.new("") > + copied = StringIO.new(String.new) > original_stream = Svn::Core::Stream.new(original) > copied_stream = Svn::Core::Stream.new(copied) > > > Modified: subversion/trunk/subversion/bindings/swig/ruby/test/test_delta.rb > ============================================================================== > --- subversion/trunk/subversion/bindings/swig/ruby/test/test_delta.rb Thu > Apr 30 08:30:24 2026 (r1933571) > +++ subversion/trunk/subversion/bindings/swig/ruby/test/test_delta.rb Thu > Apr 30 08:35:58 2026 (r1933572) > @@ -108,7 +108,7 @@ class SvnDeltaTest < Test::Unit::TestCas > target = StringIO.new(t) > stream = Svn::Delta::TextDeltaStream.new(source, target) > > - result = "" > + result = String.new > offset = 0 > stream.each do |window| > result << window.apply_instructions(s[offset, window.sview_len]) > @@ -120,7 +120,7 @@ class SvnDeltaTest < Test::Unit::TestCas > def test_push_target > source = StringIO.new("abcde") > target_content = "ZZZ" * 100 > - data = "" > + data = String.new > finished = false > handler = Proc.new do |window| > if window > @@ -145,7 +145,7 @@ class SvnDeltaTest < Test::Unit::TestCas > stream = Svn::Delta::TextDeltaStream.new(source, target) > > apply_source = StringIO.new(source_text) > - apply_result = StringIO.new("") > + apply_result = StringIO.new(String.new) > > handler, digest = Svn::Delta.apply(apply_source, apply_result) > assert_nil(digest) > @@ -197,7 +197,7 @@ class SvnDeltaTest < Test::Unit::TestCas > assert_equal(target_text, window.new_data) > > finished = false > - data = "" > + data = String.new > stream = Svn::Delta.parse_svndiff do |window| > if window > data << window.new_data > > Modified: subversion/trunk/subversion/bindings/swig/ruby/test/test_fs.rb > ============================================================================== > --- subversion/trunk/subversion/bindings/swig/ruby/test/test_fs.rb Thu > Apr 30 08:30:24 2026 (r1933571) > +++ subversion/trunk/subversion/bindings/swig/ruby/test/test_fs.rb Thu > Apr 30 08:35:58 2026 (r1933572) > @@ -385,7 +385,7 @@ class SvnFsTest < Test::Unit::TestCase > path_in_repos) > end > > - data = '' > + data = String.new > stream.each{|w| data << w.new_data} > assert_equal(normalize_line_break(expected), data) > > > Modified: subversion/trunk/subversion/bindings/swig/ruby/test/test_repos.rb > ============================================================================== > --- subversion/trunk/subversion/bindings/swig/ruby/test/test_repos.rb Thu > Apr 30 08:30:24 2026 (r1933571) > +++ subversion/trunk/subversion/bindings/swig/ruby/test/test_repos.rb Thu > Apr 30 08:35:58 2026 (r1933572) > @@ -647,11 +647,11 @@ class SvnReposTest < Test::Unit::TestCas > @repos.dump_fs(nil, nil, rev1, rev2) > end > > - dump = StringIO.new("") > - feedback = StringIO.new("") > + dump = StringIO.new(String.new) > + feedback = StringIO.new(String.new) > @repos.dump_fs(dump, feedback, rev1, rev2) > > - dump_unless_feedback = StringIO.new("") > + dump_unless_feedback = StringIO.new(String.new) > @repos.dump_fs(dump_unless_feedback, nil, rev1, rev2) > > dump.rewind > @@ -674,7 +674,7 @@ class SvnReposTest < Test::Unit::TestCas > File.open(path, "a") {|f| f.print(source)} > rev2 = ctx.ci(@wc_path).revision > > - dump = StringIO.new("") > + dump = StringIO.new(String.new) > @repos.dump_fs(dump, nil, rev1, rev2) > > dest_path = File.join(@tmp_path, "dest") > @@ -685,8 +685,8 @@ class SvnReposTest < Test::Unit::TestCas > end > > [ > - [StringIO.new(""), Svn::Repos::LOAD_UUID_DEFAULT, "/"], > - [StringIO.new("")], > + [StringIO.new(String.new), Svn::Repos::LOAD_UUID_DEFAULT, "/"], > + [StringIO.new(String.new)], > [], > ].each_with_index do |args, i| > dest_path = File.join(@tmp_path, "dest#{i}") >

