From: "madeline-hou (Madeline Hou) via ruby-core" Date: 2023-11-13T19:08:00+00:00 Subject: [ruby-core:115366] [Ruby master Bug#7964] Writing an ASCII-8BIT String to a StringIO created from a UTF-8 String Issue #7964 has been updated by madeline-hou (Madeline Hou). @naruse (Yui NARUSE) Like you said, the example comparisons aren't equal. I saw that the Feature #5677 that your linked to in your comment was rejected, would it be alright to close this issue? ---------------------------------------- Bug #7964: Writing an ASCII-8BIT String to a StringIO created from a UTF-8 String https://bugs.ruby-lang.org/issues/7964#change-105295 * Author: brixen (Brian Shirai) * Status: Assigned * Priority: Normal * Assignee: nobu (Nobuyoshi Nakada) * ruby -v: ruby 2.0.0p0 (2013-02-24 revision 39474) [x86_64-darwin10.8.0] ---------------------------------------- =begin In the following script, an ASCII-8BIT String is written to a StringIO created with a UTF-8 String without error. However, a << b or a + b will raise an exception, as will writing an ASCII-8BIT String to a File with UTF-8 external encoding. + $ cat file_enc.rb # encoding: utf-8 require 'stringio' a = "On a very cold morning, it was -8�F." b = a.dup.force_encoding "ascii-8bit" io = StringIO.new a io.write(b) p io.string.encoding File.open "data.txt", "w:utf-8" do |f| f.write a f.write b end + $ ruby2.0 -v file_enc.rb ruby 2.0.0p0 (2013-02-24 revision 39474) [x86_64-darwin10.8.0] # file_enc.rb:13:in `write': "\xC2" from ASCII-8BIT to UTF-8 (Encoding::UndefinedConversionError) from file_enc.rb:13:in `block in
' from file_enc.rb:11:in `open' from file_enc.rb:11:in `
' + $ ruby1.9.3 -v file_enc.rb ruby 1.9.3p327 (2012-11-10 revision 37606) [x86_64-darwin10.8.0] # file_enc.rb:13:in `write': "\xC2" from ASCII-8BIT to UTF-8 (Encoding::UndefinedConversionError) from file_enc.rb:13:in `block in
' from file_enc.rb:11:in `open' from file_enc.rb:11:in `
' =end -- https://bugs.ruby-lang.org/ ______________________________________________ ruby-core mailing list -- ruby-core@ml.ruby-lang.org To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org ruby-core info -- https://ml.ruby-lang.org/mailman3/postorius/lists/ruby-core.ml.ruby-lang.org/