Koanf Versions Save

Simple, extremely lightweight, extensible, configuration management library for Go. Support for JSON, TOML, YAML, env, command line, file, S3 etc. Alternative to viper.

v2.1.1

1 month ago

What's Changed

New Contributors

Full Changelog: https://github.com/knadh/koanf/compare/v2.1.0...v2.1.1

v2.1.0

3 months ago

Important

https://github.com/mitchellh/mapstructure/issues/349#issuecomment-1860372162 is discontinued and koanf has switched to using the fork github.com/go-viper/mapstructure/v2.

If you are referencing the mapstructure lib in your code (custom DecoderConfig), you have to switch the paths to the above forked version of mapstructure lib.

github.com/mitchellh/mapstructure -> github.com/go-viper/mapstructure/v2

What's Changed

Full Changelog: https://github.com/knadh/koanf/compare/v2.0.2...v2.1.0

v2.0.2

3 months ago

Important

https://github.com/mitchellh/mapstructure/issues/349#issuecomment-1860372162 is discontinued and koanf has switched to using the fork github.com/go-viper/mapstructure/v2.

If you are referencing the mapstructure lib in your code (custom DecoderConfig), you have to switch the paths to the above forked version of koanf.

github.com/mitchellh/mapstructure => github.com/go-viper/mapstructure/v2

What's Changed

New Contributors

Full Changelog: https://github.com/knadh/koanf/compare/v2.0.1...v2.0.2

v2.0.1

1 year ago

What's Changed

New Contributors

Full Changelog: https://github.com/knadh/koanf/compare/v2.0.0...v2.0.1

v2.0.0

1 year ago

This is a major breaking change that ends koanf v1 (v1.5.0) and moves to v2. Continued usage of v1 is unaffected. While koanf does not bundle external dependencies into its core thereby avoiding them in the build, a go get would still pull them and go.mod, bringing in unnecessary references as all the providers and parsers were "sub" packages of the main module.

This PR upgrades koanf to v2 and separates every single provider and parser package into its own module, go.mod, and release tag (eg: providers/yaml/v0.1.0). That is, one-repository, many modules. This removes references to all indirect dependencies in the main koanf package significantly de-cluttering it.

What changes?

  • Going forward, koanf references should change to github.com/knadh/koanf/v2.
  • The required parsers and providers should be installed explicitly as they do not come bundled with the main koanf package anymore. Eg: go get github.com/knadh/koanf/providers/s3, go get github.com/knadh/koanf/parsers/json etc.
  • That's all. There is no change in functionality.

Full Changelog: https://github.com/knadh/koanf/compare/v1.5.0...v2.0.0

v1.5.0

1 year ago

What's Changed

Full Changelog: https://github.com/knadh/koanf/compare/v1.4.5...v1.5.0

v1.4.5

1 year ago

What's Changed

New Contributors

Full Changelog: https://github.com/knadh/koanf/compare/v1.4.4...v1.4.5

v1.4.4

1 year ago

What's Changed

New Contributors

Full Changelog: https://github.com/knadh/koanf/compare/v1.4.3...v1.4.4

v1.4.2

1 year ago

What's Changed

New Contributors

Full Changelog: https://github.com/knadh/koanf/compare/v1.4.1...v1.4.2

v1.4.1

2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/knadh/koanf/compare/v1.4.0...v1.4.1