* [ruby-core:119214] [Ruby master Bug#20747] [prism] regression in retry precedence
@ 2024-09-16 8:26 byroot (Jean Boussier) via ruby-core
2024-09-16 14:41 ` [ruby-core:119221] " luke-gru (Luke Gruber) via ruby-core
2024-09-16 19:28 ` [ruby-core:119229] " kddnewton (Kevin Newton) via ruby-core
0 siblings, 2 replies; 3+ messages in thread
From: byroot (Jean Boussier) via ruby-core @ 2024-09-16 8:26 UTC (permalink / raw)
To: ruby-core; +Cc: byroot (Jean Boussier)
Issue #20747 has been reported by byroot (Jean Boussier).
----------------------------------------
Bug #20747: [prism] regression in retry precedence
https://bugs.ruby-lang.org/issues/20747
* Author: byroot (Jean Boussier)
* Status: Open
* Assignee: kddnewton (Kevin Newton)
* ruby -v: ruby 3.4.0dev (2024-09-15T01:06:11Z master 532af89e3b) +PRISM [arm64-darwin23]
* Backport: 3.1: UNKNOWN, 3.2: UNKNOWN, 3.3: UNKNOWN
----------------------------------------
Since prism has been made the default, our test suite now fail to boot with the following error:
```ruby
syntax error found (SyntaxError)
298 | raise e
299 | else
> 300 | retry
| ^~~~~ Invalid retry after else
301 | end
302 | end
```
Here's the code in question, that reproduce the error:
```ruby
def retry_thing(times: 1)
retries ||= 0
begin
yield
rescue RuntimeError => e
raise if (retries += 1) > times
begin
refresh!
rescue
raise e
else
retry
end
end
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/lists/ruby-core.ml.ruby-lang.org/
^ permalink raw reply [flat|nested] 3+ messages in thread
* [ruby-core:119221] [Ruby master Bug#20747] [prism] regression in retry precedence
2024-09-16 8:26 [ruby-core:119214] [Ruby master Bug#20747] [prism] regression in retry precedence byroot (Jean Boussier) via ruby-core
@ 2024-09-16 14:41 ` luke-gru (Luke Gruber) via ruby-core
2024-09-16 19:28 ` [ruby-core:119229] " kddnewton (Kevin Newton) via ruby-core
1 sibling, 0 replies; 3+ messages in thread
From: luke-gru (Luke Gruber) via ruby-core @ 2024-09-16 14:41 UTC (permalink / raw)
To: ruby-core; +Cc: luke-gru (Luke Gruber)
Issue #20747 has been updated by luke-gru (Luke Gruber).
PR here: https://github.com/ruby/ruby/pull/11631
----------------------------------------
Bug #20747: [prism] regression in retry precedence
https://bugs.ruby-lang.org/issues/20747#change-109798
* Author: byroot (Jean Boussier)
* Status: Open
* Assignee: kddnewton (Kevin Newton)
* ruby -v: ruby 3.4.0dev (2024-09-15T01:06:11Z master 532af89e3b) +PRISM [arm64-darwin23]
* Backport: 3.1: DONTNEED, 3.2: DONTNEED, 3.3: DONTNEED
----------------------------------------
Since prism has been made the default, our test suite now fail to boot with the following error:
```ruby
syntax error found (SyntaxError)
298 | raise e
299 | else
> 300 | retry
| ^~~~~ Invalid retry after else
301 | end
302 | end
```
Here's the code in question, that reproduce the error:
```ruby
def retry_thing(times: 1)
retries ||= 0
begin
yield
rescue RuntimeError => e
raise if (retries += 1) > times
begin
refresh!
rescue
raise e
else
retry
end
end
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/lists/ruby-core.ml.ruby-lang.org/
^ permalink raw reply [flat|nested] 3+ messages in thread
* [ruby-core:119229] [Ruby master Bug#20747] [prism] regression in retry precedence
2024-09-16 8:26 [ruby-core:119214] [Ruby master Bug#20747] [prism] regression in retry precedence byroot (Jean Boussier) via ruby-core
2024-09-16 14:41 ` [ruby-core:119221] " luke-gru (Luke Gruber) via ruby-core
@ 2024-09-16 19:28 ` kddnewton (Kevin Newton) via ruby-core
1 sibling, 0 replies; 3+ messages in thread
From: kddnewton (Kevin Newton) via ruby-core @ 2024-09-16 19:28 UTC (permalink / raw)
To: ruby-core; +Cc: kddnewton (Kevin Newton)
Issue #20747 has been updated by kddnewton (Kevin Newton).
I have opened a PR to fix this: https://github.com/ruby/prism/pull/3073.
----------------------------------------
Bug #20747: [prism] regression in retry precedence
https://bugs.ruby-lang.org/issues/20747#change-109810
* Author: byroot (Jean Boussier)
* Status: Open
* Assignee: kddnewton (Kevin Newton)
* ruby -v: ruby 3.4.0dev (2024-09-15T01:06:11Z master 532af89e3b) +PRISM [arm64-darwin23]
* Backport: 3.1: DONTNEED, 3.2: DONTNEED, 3.3: DONTNEED
----------------------------------------
Since prism has been made the default, our test suite now fail to boot with the following error:
```ruby
syntax error found (SyntaxError)
298 | raise e
299 | else
> 300 | retry
| ^~~~~ Invalid retry after else
301 | end
302 | end
```
Here's the code in question, that reproduce the error:
```ruby
def retry_thing(times: 1)
retries ||= 0
begin
yield
rescue RuntimeError => e
raise if (retries += 1) > times
begin
refresh!
rescue
raise e
else
retry
end
end
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/lists/ruby-core.ml.ruby-lang.org/
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-09-16 19:29 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-09-16 8:26 [ruby-core:119214] [Ruby master Bug#20747] [prism] regression in retry precedence byroot (Jean Boussier) via ruby-core
2024-09-16 14:41 ` [ruby-core:119221] " luke-gru (Luke Gruber) via ruby-core
2024-09-16 19:28 ` [ruby-core:119229] " kddnewton (Kevin Newton) via ruby-core
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).