Issue #18279 has been updated by nobu (Nobuyoshi Nakada).

Subject changed from ENV.merge! support multile arguments as Hash.merge! to ENV.merge! support multiple arguments as Hash.merge!

https://github.com/ruby/ruby/pull/5207

----------------------------------------
Feature #18279: ENV.merge! support multiple arguments as Hash.merge!
https://bugs.ruby-lang.org/issues/18279#change-95120

* Author: zw963 (Wei Zheng)
* Status: Assigned
* Priority: Normal
* Assignee: matz (Yukihiro Matsumoto)
----------------------------------------
I give a useful example for this.

```rb
require 'yaml'
env_files = ['config.yml', 'config.local']
envs = env_files.filter_map {|file| YAML.load_file(file)['env'] if File.file?(file) }
ENV.merge!(*envs) # Raise wrong number of arguments (given 2, expected 1)


```

For now, above code have do like this in ruby 3.0.2

```rb
ENV.merge!({}.merge!(*envs))
```



-- 
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>