[#113107] [Ruby master Bug#19576] Backport request: Gemfile.lock resolving is broken with bundler shipped with Ruby 3.1.4 — "jprokop (Jarek Prokop) via ruby-core" <ruby-core@...>

Issue #19576 has been reported by jprokop (Jarek Prokop).

8 messages 2023/04/04

[#113112] [Ruby master Bug#19578] abort() shows stack trace when run within rescue clause — "Dan0042 (Daniel DeLorme) via ruby-core" <ruby-core@...>

Issue #19578 has been reported by Dan0042 (Daniel DeLorme).

8 messages 2023/04/04

[#113180] [Ruby master Feature#19588] Allow Comparable#clamp(min, max) to accept nil as a specification — "kyanagi (Kouhei Yanagita) via ruby-core" <ruby-core@...>

Issue #19588 has been reported by kyanagi (Kouhei Yanagita).

7 messages 2023/04/11

[#113209] [Ruby master Bug#19596] Decreased performance after upgrading from ruby 2.7.2 to ruby 3.2.2 — silva96 via ruby-core <ruby-core@...>

Issue #19596 has been reported by silva96 (Benjam=EDn Silva).

7 messages 2023/04/13

[#113238] [Ruby master Misc#19599] DevMeeting-2023-05-10 — "mame (Yusuke Endoh) via ruby-core" <ruby-core@...>

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

14 messages 2023/04/14

[#113285] [Ruby master Bug#19607] Introduce `Hash#symbolize_keys`. — "ioquatix (Samuel Williams) via ruby-core" <ruby-core@...>

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

8 messages 2023/04/18

[#113303] [Ruby master Feature#19610] GC.delay_promotion — "peterzhu2118 (Peter Zhu) via ruby-core" <ruby-core@...>

Issue #19610 has been reported by peterzhu2118 (Peter Zhu).

9 messages 2023/04/20

[#113313] [Ruby master Bug#19613] Add version information to all function documentation — "fulldecent (William Entriken) via ruby-core" <ruby-core@...>

Issue #19613 has been reported by fulldecent (William Entriken).

7 messages 2023/04/23

[#113342] [Ruby master Feature#19617] Add Method#binding and UnboundMethod#binding, similar to Proc#binding — "nevans (Nicholas Evans) via ruby-core" <ruby-core@...>

Issue #19617 has been reported by nevans (Nicholas Evans).

9 messages 2023/04/25

[#113381] [Ruby master Bug#19624] Backticks - IO object leakage — pineman via ruby-core <ruby-core@...>

Issue #19624 has been reported by pineman (Jo=E3o Pinheiro).

10 messages 2023/04/30

[ruby-core:113069] [Ruby master Bug#18743] Enumerator#next / peek re-use each others stacktraces

From: "marcper (Marcelo Pereira) via ruby-core" <ruby-core@...>
Date: 2023-04-01 10:10:02 UTC
List: ruby-core #113069
Issue #18743 has been updated by marcper (Marcelo Pereira).





Hello @ko1, let me know if the patch in the current form is acceptable.



Best,

Marcelo



----------------------------------------

Bug #18743: Enumerator#next / peek re-use each others stacktraces

https://bugs.ruby-lang.org/issues/18743#change-102602



* Author: sos4nt (Stefan Sch=FC=DFler)

* Status: Open

* Priority: Normal

* Assignee: ko1 (Koichi Sasada)

* Backport: 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN

----------------------------------------

I encountered an odd behavior.



If I rescue the `StopIteration` exception from `peek` and call `next` after=
wards: (or vice-versa)



```ruby

# enum.rb             # 1

                      # 2

enum =3D [].each        # 3

enum.peek rescue nil  # 4

enum.next             # 5

```



it will show the stacktrace from the rescued `peek` call:



```

$ ruby enum.rb

enum.rb:4:in `peek': iteration reached an end (StopIteration)

	from enum.rb:4:in `<main>'

```



Whereas the error should refer to `next` on line number 5.



The same happens when calling `peek` after `next` or when having muliple `p=
eek` / `next` calls:



```ruby

# enum.rb                # 1

                         # 2

enum =3D [].each           # 3

enum.peek rescue nil     # 4

enum.next rescue nil     # 5

enum.peek rescue nil     # 6

puts "line #{__LINE__}"  # 7

enum.next                # 8

```



The stacktrace from the first (rescued) `peek` or `next` call will be shown=
 which doesn't reflect the actual error location:



```

$ ruby enum.rb

line 7

enum.rb:4:in `peek': iteration reached an end (StopIteration)

	from enum.rb:4:in `<main>'

```



This is very confusing when debugging code.



---Files--------------------------------

01-Recreate-stacktrace-enumerator.patch (1.29 KB)





--=20

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-c=
ore.ml.ruby-lang.org/

In This Thread