Actions
Feature #18279
openENV.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) 7 months ago
- Description updated (diff)
- Subject changed from ENV.merge! support multile arguments as hash. to ENV.merge! support multile arguments as Hash.merge!
Updated by ko1 (Koichi Sasada) 6 months ago
- Assignee set to matz (Yukihiro Matsumoto)
- Status changed from Open to Assigned
Hash#merge!(*other)
accepts multiple values, so I think it is acceptable.
Matz, how about it?
Updated by nobu (Nobuyoshi Nakada) 6 months ago
- Subject changed from ENV.merge! support multile arguments as Hash.merge! to ENV.merge! support multiple arguments as Hash.merge!
Actions