Actions
Feature #18279
closedENV.merge! support multiple arguments as Hash.merge!
Description
I give a useful example for this.
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
ENV.merge!({}.merge!(*envs))
Updated by zw963 (Wei Zheng) about 3 years ago
- Subject changed from ENV.merge! support multile arguments as hash. to ENV.merge! support multile arguments as Hash.merge!
- Description updated (diff)
Updated by ko1 (Koichi Sasada) almost 3 years ago
- Status changed from Open to Assigned
- Assignee set to matz (Yukihiro Matsumoto)
Hash#merge!(*other)
accepts multiple values, so I think it is acceptable.
Matz, how about it?
Updated by nobu (Nobuyoshi Nakada) almost 3 years ago
- Subject changed from ENV.merge! support multile arguments as Hash.merge! to ENV.merge! support multiple arguments as Hash.merge!
Updated by matz (Yukihiro Matsumoto) over 2 years ago
Accepted.
Matz.
Updated by nobu (Nobuyoshi Nakada) over 2 years ago
- Status changed from Assigned to Closed
Applied in changeset git|278fefb96294adf9d27a78f919c714a31b65ef58.
ENV.merge! support multile arguments [Feature #18279]
Actions
Like0
Like0Like0Like0Like0Like0