lib/anyway/config.rb in anyway_config-2.4.0 vs lib/anyway/config.rb in anyway_config-2.4.1

- old
+ new

@@ -197,10 +197,22 @@ else config_name.upcase end end + def loader_options(val = nil) + return (@loader_options = val) unless val.nil? + + return @loader_options if instance_variable_defined?(:@loader_options) + + @loader_options = if superclass < Anyway::Config + superclass.loader_options + else + {} + end + end + def new_empty_config() = {} def coerce_types(mapping) Utils.deep_merge!(coercion_mapping, mapping) @@ -341,10 +353,16 @@ trace = Tracing.capture do Tracing.trace!(:defaults) { base_config } config_path = resolve_config_path(config_name, env_prefix) - load_from_sources(base_config, name: config_name, env_prefix:, config_path:) + load_from_sources( + base_config, + name: config_name, + env_prefix:, + config_path:, + **self.class.loader_options + ) if overrides Tracing.trace!(:load) { overrides } Utils.deep_merge!(base_config, overrides)