From: merch-redmine@... Date: 2020-07-17T15:39:04+00:00 Subject: [ruby-core:99205] [Ruby master Misc#17035] is non-symbol key hash spread a bug or a feature? Issue #17035 has been updated by jeremyevans0 (Jeremy Evans). Status changed from Open to Closed chucke (Tiago Cardoso) wrote: > ``` ruby > {**{"a" => "b"}} > ``` > > breaks in ruby < 2.7, but works in 2.7 . This is an expected new feature in ruby 2.7, and will not break in future ruby versions. `**` is the keyword splat operator. In ruby <2.7, `"a"` is not a valid keyword key, but in ruby 2.7, it is (you can pass it as a keyword if a method accepts arbitrary keywords). ---------------------------------------- Misc #17035: is non-symbol key hash spread a bug or a feature? https://bugs.ruby-lang.org/issues/17035#change-86583 * Author: chucke (Tiago Cardoso) * Status: Closed * Priority: Normal ---------------------------------------- Coming from https://github.com/jruby/jruby/issues/6327#issuecomment-659577894 I've queried jruby about a bug I found, only to find that the behaviour is correct for the ruby versions jruby emulates. The following: ``` ruby {**{"a" => "b"}} ``` breaks in ruby < 2.7, but works in 2.7 . I've looked at the 2.7 announcements and didn't find any. Is this a feature that ruby wants to keep (I'd very much like so) ? Or was this accidental, and unlikely to be maintained in the long run? -- https://bugs.ruby-lang.org/ Unsubscribe: