[#100689] [Ruby master Feature#17303] Make webrick to bundled gems or remove from stdlib — hsbt@...
Issue #17303 has been reported by hsbt (Hiroshi SHIBATA).
11 messages
2020/11/02
[#100852] [Ruby master Feature#17326] Add Kernel#must! to the standard library — zimmerman.jake@...
Issue #17326 has been reported by jez (Jake Zimmerman).
24 messages
2020/11/14
[#100930] [Ruby master Feature#17333] Enumerable#many? — masafumi.o1988@...
Issue #17333 has been reported by okuramasafumi (Masafumi OKURA).
10 messages
2020/11/18
[#101071] [Ruby master Feature#17342] Hash#fetch_set — hunter_spawn@...
Issue #17342 has been reported by MaxLap (Maxime Lapointe).
26 messages
2020/11/25
[ruby-core:101123] [Ruby master Bug#17345] ripper: nothing raised when assigning to keyword variables
From:
nov@...
Date:
2020-11-27 10:39:36 UTC
List:
ruby-core #101123
Issue #17345 has been updated by no6v (Nobuhiro IMAI).
Thanks for the quick fix, however `*_error` parser events except `parse_error` seem not to set an error message properly.
```
$ ruby -rripper -ve 'Ripper.lex("nil=1", raise_errors: true)'
ruby 3.0.0dev (2020-11-26T11:14:34Z master f5ca3ff4db) [x86_64-linux]
/home/nov/.rvm/rubies/ruby-head/lib/ruby/3.0.0/ripper/lexer.rb:134:in `parse': #<struct Ripper::Lexer::Elem pos=[1, 0], event=:on_kw, tok="nil", state=END, message=nil> ;#<struct Ripper::Lexer::Elem pos=[1, 3], event=:on_op, tok="=", state=BEG, message=nil> ;#<struct Ripper::Lexer::Elem pos=[1, 4], event=:on_int, tok="1", state=END, message=nil> (SyntaxError)
```
----------------------------------------
Bug #17345: ripper: nothing raised when assigning to keyword variables
https://bugs.ruby-lang.org/issues/17345#change-88802
* Author: no6v (Nobuhiro IMAI)
* Status: Closed
* Priority: Normal
* ruby -v: ruby 3.0.0dev (2020-11-25T04:36:39Z master 00f046ef57) [x86_64-linux]
* Backport: 2.5: UNKNOWN, 2.6: UNKNOWN, 2.7: UNKNOWN
----------------------------------------
```ruby
require "ripper"
Ripper.tokenize("retry=1", raise_errors: true)
# => SyntaxError (syntax error, unexpected '=', expecting end-of-input)
Ripper.tokenize("nil=1", raise_errors: true) # => ["nil", "=", "1"]
lexer = Ripper::Lexer.new("nil=1")
lexer.tokenize # => ["nil", "=", "1"]
lexer.error? # => true
lexer.errors # => []
```
Lexer recognizes there was an error, but nothing is set to `errors`.
--
https://bugs.ruby-lang.org/
Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>