[#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:100929] [Ruby master Bug#17332] No error when using endless method definitions with `self.` setters
From:
marcandre-ruby-core@...
Date:
2020-11-18 10:32:21 UTC
List:
ruby-core #100929
Issue #17332 has been updated by marcandre (Marc-Andre Lafortune).
Status changed from Open to Closed
Seems to have been fixed since preview1:
```
[05:29][~]$ ruby -v -e 'def self.foo=() = 1'
ruby 3.0.0dev (2020-11-07T21:47:45Z master 2f12af42f7) [x86_64-darwin18]
-e:1: setter method cannot be defined in an endless method definition
def self.foo=() = 1
[05:29][~]$ ruby -v -e 'obj = Object.new; def obj.foo=() = 1'
ruby 3.0.0dev (2020-11-07T21:47:45Z master 2f12af42f7) [x86_64-darwin18]
-e:1: setter method cannot be defined in an endless method definition
obj = Object.new; def obj.foo=() = 1
```
----------------------------------------
Bug #17332: No error when using endless method definitions with `self.` setters
https://bugs.ruby-lang.org/issues/17332#change-88582
* Author: hjwylde (Henry Wylde)
* Status: Closed
* Priority: Normal
* ruby -v: ruby 3.0.0preview1 (2020-09-25 master 0096d2b895) [x86_64-linux]
* Backport: 2.5: UNKNOWN, 2.6: UNKNOWN, 2.7: UNKNOWN
----------------------------------------
With ruby 3.0.0 preview1, endless method definitions can be used for setter methods with explicit receiver:
```ruby
def self.foo=() = 1
# => :foo=
```
```ruby
obj = Object.new
def obj.foo=() = 1
# => :foo=
```
From my understanding, setter methods are not intended to be allowed with endless method definitions.
Expected result:
The same error to occur for all setter methods ("setter method cannot be defined in an endless method definition"). E.g.,
```ruby
def foo=() = 1
# !> SyntaxError ((irb):4: setter method cannot be defined in an endless method definition)
```
--
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>