[#121215] [Ruby master Bug#21166] Fiber Scheduler is unable to be interrupted by `IO#close`. — "ioquatix (Samuel Williams) via ruby-core" <ruby-core@...>

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

13 messages 2025/03/02

[#121222] [Ruby master Bug#21167] Visual Studio 2022 17.13.x couldn't build ruby.exe — "hsbt (Hiroshi SHIBATA) via ruby-core" <ruby-core@...>

Issue #21167 has been reported by hsbt (Hiroshi SHIBATA).

8 messages 2025/03/03

[#121234] [Ruby master Bug#21168] Prism doesn't require argument parentheses (in some cases) when a block is present but parse.y does — "Earlopain (Earlopain _) via ruby-core" <ruby-core@...>

Issue #21168 has been reported by Earlopain (Earlopain _).

8 messages 2025/03/04

[#121389] [Ruby Bug#21187] Strings concatenated with `\` getting frozen with literal hashes (PRISM only) — LocoDelAssembly via ruby-core <ruby-core@...>

Issue #21187 has been reported by LocoDelAssembly (Hern=E1n Pereira).

12 messages 2025/03/17

[#121413] [Ruby Bug#21193] Inherited callback returns `nil` for `Object.const_source_location` — "eileencodes (Eileen Uchitelle) via ruby-core" <ruby-core@...>

Issue #21193 has been reported by eileencodes (Eileen Uchitelle).

15 messages 2025/03/20

[#121451] [Ruby Bug#21201] Performance regression when defining methods inside `refine` blocks — "alpaca-tc (Hiroyuki Ishii) via ruby-core" <ruby-core@...>

Issue #21201 has been reported by alpaca-tc (Hiroyuki Ishii).

8 messages 2025/03/27

[ruby-core:121295] [Ruby master Bug#21142] Lazy enumerator `.each_with_index` ignores `.take(0)` before it

From: "alanwu (Alan Wu) via ruby-core" <ruby-core@...>
Date: 2025-03-11 14:21:19 UTC
List: ruby-core #121295
Issue #21142 has been updated by alanwu (Alan Wu).

Assignee deleted (alanwu (Alan Wu))

The pull request you point was released with 3.4, but the problem started with 3.2, so it's not due to the change in the pull request. 

----------------------------------------
Bug #21142: Lazy enumerator `.each_with_index` ignores `.take(0)` before it
https://bugs.ruby-lang.org/issues/21142#change-112258

* Author: aaronkison (Aaron Kison)
* Status: Open
* ruby -v: 3.2.7 
* Backport: 3.1: UNKNOWN, 3.2: UNKNOWN, 3.3: UNKNOWN, 3.4: UNKNOWN
----------------------------------------
Minimum code to produce problem:
```
class Numbers; def each; 100.times { yield _1 }; end; include Enumerable; end

Numbers.new.lazy.take(0).each_with_index.map { _1 }.to_a
```

Output (at ruby 3.2.7, and 3.3.0):
```
[0, 1, ..., 99]
```

Expected output (and was as at ruby 3.1.4):
```
[]
```

It works when it opposite ordering: `Numbers.new.lazy.each_with_index.take(0).map { _1 }.to_a`.
I suspect it may be related to the change here https://github.com/ruby/ruby/pull/11868/files but I'm not familiar with any of that code. It seems like it replaces an allocated index with a counting index, which my hunch is it works for every value except for 0.



-- 
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