Viper Versions Save

Go configuration with fangs

v1.18.2

5 months ago

tl;dr Skip 1.18.0 and 1.18.1 and upgrade to this version instead.

This release fixes a regression that appears in rare circumstances when using Unmarshal or UnmarshalExact to decode values onto pointers with multiple indirection (eg. pointer to a pointer, etc). The change was introduced in 1.18.0 as a means to resolve a long-standing bug when decoding environment variables to structs.

The feature is now disabled by default and can be enabled using the viper_bind_struct build tag. It's also considered experimental at this point, so breaking changes may be introduced in the future.

What's Changed

Bug Fixes 🐛

Full Changelog: https://github.com/spf13/viper/compare/v1.18.1...v1.18.2

v1.18.1

5 months ago

What's Changed

Bug Fixes 🐛

Full Changelog: https://github.com/spf13/viper/compare/v1.18.0...v1.18.1

v1.18.0

5 months ago

Major changes

Highlighting some of the changes for better visibility.

Please share your feedback in the Discussion forum. Thanks! ❤️

AutomaticEnv works with Unmarshal

Previously, environment variables that weren't bound manually or had no defaults could not be mapped by Unmarshal. (The problem is explained in details in this issue: #761)

#1429 introduced a solution that solves that issue.

What's Changed

Enhancements 🚀

Bug Fixes 🐛

Dependency Updates ⬆️

Other Changes

New Contributors

Full Changelog: https://github.com/spf13/viper/compare/v1.17.0...v1.18.0

v1.17.0

7 months ago

Major changes

Highlighting some of the changes for better visibility.

Please share your feedback in the Discussion forum. Thanks! ❤️

Minimum Go version: 1.19

Viper now requires Go 1.19

This change ensures we can stay up to date with modern practices and dependencies.

log/slog support [BREAKING]

Viper v1.11.0 added an experimental Logger interface to allow custom implementations (besides jwalterweatherman).

In addition, it also exposed an experimental WithLogger function allowing to set a custom logger.

This release deprecates that interface in favor of log/slog released in Go 1.21.

[!WARNING] WithLogger accepts an *slog.Logger from now on.

To preserve backwards compatibility with older Go versions, prior to Go 1.21 Viper accepts a *golang.org/x/exp/slog.Logger.

The experimental flag is removed.

New finder implementation [BREAKING]

As of this release, Viper uses a new library to look for files, called locafero.

The new library is better covered by tests and has been built from scratch as a general purpose file finder library.

The implementation is experimental and is hidden behind a finder build tag.

[!WARNING] The io/fs based implementation (that used to be hidden behind a finder build tag) has been removed.

What's Changed

Exciting New Features 🎉

Enhancements 🚀

Breaking Changes 🛠

Dependency Updates ⬆️

Other Changes

New Contributors

Full Changelog: https://github.com/spf13/viper/compare/v1.16.0...v1.17.0

v1.16.0

11 months ago

What's Changed

Enhancements 🚀

Bug Fixes 🐛

Dependency Updates ⬆️

Other Changes

New Contributors

Full Changelog: https://github.com/spf13/viper/compare/v1.15.0...v1.16.0

v1.15.0

1 year ago

What's Changed

Exciting New Features 🎉

Enhancements 🚀

Breaking Changes 🛠

Dependency Updates ⬆️

New Contributors

Full Changelog: https://github.com/spf13/viper/compare/v1.14.0...v1.15.0

v1.14.0

1 year ago

What's Changed

Enhancements 🚀

Breaking Changes 🛠

Dependency Updates ⬆️

Full Changelog: https://github.com/spf13/viper/compare/v1.13.0...v1.14.0

v1.13.0

1 year ago

Important: This is the last release supporting Go 1.15.

What's Changed

Exciting New Features 🎉

Enhancements 🚀

Bug Fixes 🐛

Dependency Updates ⬆️

New Contributors

Full Changelog: https://github.com/spf13/viper/compare/v1.12.0...v1.13.0

v1.12.0

1 year ago

This release makes YAML v3 and TOML v2 the default versions used for encoding.

You can switch back to the old versions by adding viper_yaml2 and viper_toml1 to the build tags.

Please note that YAML v2 and TOML v1 are considered deprecated from this release and may be removed in a future release.

Please provide feedback in discussions and report bugs on the issue tracker. Thanks!

What's Changed

Exciting New Features 🎉

Enhancements 🚀

Dependency Updates ⬆️

New Contributors

Full Changelog: https://github.com/spf13/viper/compare/v1.11.0...v1.12.0

v1.11.0

2 years ago

What's Changed

Exciting New Features 🎉

Enhancements 🚀

Bug Fixes 🐛

Breaking Changes 🛠

Dependency Updates ⬆️

New Contributors

Full Changelog: https://github.com/spf13/viper/compare/v1.10.1...v1.11.0