- Make dry-validation dependency less strict allowing to use newer versions (#183)
- Fix
key?
andhas_key?
, which raise NoMethodError in non Rails environment, by using ActiveSupport#delegate
implicitly (#185)
New features
Config#fail_on_missing
option (defaultfalse
) to raise aKeyError
exception when accessing a non-existing key- Add ability to test if a value was set for a given key with
key?
andhas_key?
(#182)
New features
- Add parsing of ENV variable values to Boolean type (#180)
New features
- Add ability to validate config schema (#155 thanks to @ok32)
- Add count to the reserved names list (#167 thanks to @carbonin)
Bug fixes
- Correctly parse
env_prefix
, which containsenv_separator
(#177 thanks to @rdodson41)
New features
- Added support for passing a raw ruby hash into to both
Settings.add_source!
andSettings.prepend_source!
(#108 thanks to @halloffame)
Bug fixes
- Added new reserved name
test
(#158 thanks to @milushov) to_hash
should not replace nested config objects with Hash (#160 thanks to @seikichi)
- WARNING: Overwrite arrays found in previously loaded settings file (#137 thanks to @Fryguy and @dtaniwaki) - this is a change breaking previous behaviour. If you want to keep Config to work as before, which is merging arrays found in following loaded settings file, please add
config.overwrite_arrays = false
to your Config initializer - Changed default ENV variables loading settings to downcase variable names and parse values
- Added parsing ENV variables values to Float type
- Change method definition order in Rails integration module to prevent undefined method
preload
error (based on @YaroSpace suggestion in #111
- Add ability to load settings from ENV variables (#108 thanks to @vinceve and @spalladino)
- Removed Rails 5 deprecation warnings for prepend_before_filter (#141)
- Downgrade minimum ruby version to 2.0.0 (#136)
- Add ability to specify knockout_prefix option for deep_merge
- Minor code and documentation refactoring and cleanup
RailsConfig
is now officially renamed toConfig
- Fixed array descent when converting to hash (#89)
- Catch OpenStruct reserved keywords (#95 by @dudo)
- Allows loading before app configuration process (#107 by @Antiarchitect)
deep_merge
is now properly managed via gemspec (#110)- Added
prepend_source!
(#102)
- Released deprecated gem migrating to the new name
- Ability to use in Settings file keywords reserved for OpenStruct: select, collect (#95)
- Made config work without Rails as a hard dependency (#86, #88)
- Fix generate error when .gitignore is missing (#85)
- Fix deprecation warning on File.exists? (#81)
- Add a shortcut method for setting files (#67)
- Improve YAMLSource load error message by outputting offending file path (#88)
- Ability to specify the app name when calling the Heroku rake task (#75)
- Fixed compatibility with Rails 4.1 (#72)
- Testing suite verifies compatibility with Rails 3.2, 4.0 and 4.1
- Compatibility with Heroku (#64)