[#119390] [Ruby master Feature#20775] Gemify win32-registry, win32-sspi and win32-resolv — "larskanis (Lars Kanis) via ruby-core" <ruby-core@...>

Issue #20775 has been reported by larskanis (Lars Kanis).

12 messages 2024/10/01

[#119410] [Ruby master Feature#20778] ruby/repl_type_completor as a bundled gem — "tompng (tomoya ishida) via ruby-core" <ruby-core@...>

SXNzdWUgIzIwNzc4IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IHRvbXBuZyAodG9tb3lhIGlzaGlkYSku

7 messages 2024/10/02

[#119432] [Ruby master Misc#20781] DevMeeting-2024-11-07 — "mame (Yusuke Endoh) via ruby-core" <ruby-core@...>

Issue #20781 has been reported by mame (Yusuke Endoh).

11 messages 2024/10/03

[#119442] [Ruby master Feature#20782] Introduction of Happy Eyeballs Version 2 (RFC8305) in TCPSocket.new — "shioimm (Misaki Shioi) via ruby-core" <ruby-core@...>

SXNzdWUgIzIwNzgyIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IHNoaW9pbW0gKE1pc2FraSBTaGlvaSku

12 messages 2024/10/04

[#119462] [Ruby master Bug#20785] Should `a in b, and c` `a in b, or c` `a in b, rescue c` be syntax ok? — "tompng (tomoya ishida) via ruby-core" <ruby-core@...>

Issue #20785 has been reported by tompng (tomoya ishida).

10 messages 2024/10/05

[#119495] [Ruby master Feature#20792] String#forcible_encoding? — "kddnewton (Kevin Newton) via ruby-core" <ruby-core@...>

Issue #20792 has been reported by kddnewton (Kevin Newton).

16 messages 2024/10/09

[#119514] [Ruby master Bug#20796] Segmentation fault in rubyzip tests with ruby 3.4.0-preview2 — "tikkss (Tsutomu Katsube) via ruby-core" <ruby-core@...>

Issue #20796 has been reported by tikkss (Tsutomu Katsube).

10 messages 2024/10/13

[#119534] [Ruby master Bug#20800] Don't place `ruby` executable into `/usr/libexec/x86_64-linux/bin` — "vo.x (Vit Ondruch) via ruby-core" <ruby-core@...>

Issue #20800 has been reported by vo.x (Vit Ondruch).

10 messages 2024/10/21

[#119575] [Ruby master Bug#20808] Cannot override Data#inspect — "maicolben (Maicol Bentancor) via ruby-core" <ruby-core@...>

Issue #20808 has been reported by maicolben (Maicol Bentancor).

8 messages 2024/10/21

[#119621] [Ruby master Bug#20816] Potential regression in Ruby 3.3.x (compared with 3.1 and 3.2) regarding fast syscalls and multi-threading. — "adrienjarthon (Adrien Jarthon) via ruby-core" <ruby-core@...>

SXNzdWUgIzIwODE2IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGFkcmllbmphcnRob24gKEFkcmllbiBK

6 messages 2024/10/25

[#119622] [Ruby master Bug#20817] Ruby 3.4.0dev emits `warning: possibly useless use of + in void context` while Ruby 3.3.5 does not — "yahonda (Yasuo Honda) via ruby-core" <ruby-core@...>

Issue #20817 has been reported by yahonda (Yasuo Honda).

8 messages 2024/10/26

[#119646] [Ruby master Feature#20855] Introduce `Fiber::Scheduler#blocking_region` to avoid stalling the event loop. — "ioquatix (Samuel Williams) via ruby-core" <ruby-core@...>

Issue #20855 has been reported by ioquatix (Samuel Williams).

10 messages 2024/10/31

[#119650] [Ruby master Bug#20857] Don't change `Hash#inspect formatting` — "vo.x (Vit Ondruch) via ruby-core" <ruby-core@...>

Issue #20857 has been reported by vo.x (Vit Ondruch).

17 messages 2024/10/31

[ruby-core:119633] [Ruby master Bug#20819] IO#readline does not process newlines correctly for non-ASCII compatible encodings

From: "javanthropus (Jeremy Bopp) via ruby-core" <ruby-core@...>
Date: 2024-10-28 14:08:51 UTC
List: ruby-core #119633
Issue #20819 has been reported by javanthropus (Jeremy Bopp).

----------------------------------------
Bug #20819: IO#readline does not process newlines correctly for non-ASCII compatible encodings
https://bugs.ruby-lang.org/issues/20819

* Author: javanthropus (Jeremy Bopp)
* Status: Open
* ruby -v: ruby 3.3.4 (2024-07-09 revision be1089c8ec) [x86_64-linux]
* Backport: 3.1: UNKNOWN, 3.2: UNKNOWN, 3.3: UNKNOWN
----------------------------------------
When not performing character conversion, IO#readline only processes newline characters as ASCII when reading paragraphs.  However, when character conversion is involved, even when converting between 2 ASCII incompatible encodings, newline handling is correct.

```ruby
require "tempfile"

Tempfile.open(binmode: true) do |f|
  f.set_encoding("utf-16le")
  f.write("\n\n\n\nhello\n\nworld")
  f.rewind

  # No character conversion case.
  # Expecting "hello\n\n".encode(Encoding::UTF_16LE)
  f.readline("")   # => "\0".force_encoding(Encoding::UTF_16LE) + "\n\n\nhello\n\nworld".encode(Encoding::UTF_16LE)

  f.set_encoding("utf-16le:utf-32le")
  f.rewind

  # Character conversion case.
  f.readline("")   # => "hello\n\n".encode(Encoding::UTF_32LE)
end
```

In the failing case, a newline character appears in the first byte of the input due to the UTF-16LE encoding.  This is discarded per the normal behavior of reading paragraphs, but the following null byte is not consumed as required to consume the entire newline character in UTF-16LE encoding.  This leads to a leading and invalid null byte in the output of IO#readline.  Furthermore, the newlines between "hello" and "world" are not seen as a pair of newline characters sufficient to end the first paragraph because they are not ASCII newlines and instead have a null byte between them.



-- 
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/lists/ruby-core.ml.ruby-lang.org/


In This Thread

Prev Next