-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ci: enable test shuffle and fix tests #1643
Conversation
👋 Thanks for contributing to Viper! You are awesome! 🎉 A maintainer will take a look at your pull request shortly. 👀 In the meantime: We are working on Viper v2 and we would love to hear your thoughts about what you like or don't like about Viper, so we can improve or fix those issues. ⏰ If you have a couple minutes, please take some time and share your thoughts: https://forms.gle/R6faU74qPRPAzchZ9 📣 If you've already given us your feedback, you can still help by spreading the news, https://twitter.com/sagikazarmark/status/1306904078967074816 Thank you! ❤️ |
Sounds like a good idea, but looks like the tests are failing. :/ |
@sagikazarmark the tests are failing because they depend on each other. I'll try to fix it in this PR. |
@sagikazarmark fixed tests |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [github.com/spf13/viper](https://github.com/spf13/viper) | require | minor | `v1.17.0` -> `v1.18.0` | --- > [!WARNING] > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>spf13/viper (github.com/spf13/viper)</summary> ### [`v1.18.0`](https://github.com/spf13/viper/releases/tag/v1.18.0) [Compare Source](https://github.com/spf13/viper/compare/v1.17.0...v1.18.0) #### 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](https://github.com/spf13/viper/issues/761)) [#​1429](https://github.com/spf13/viper/issues/1429) introduced a solution that solves that issue. #### What's Changed ##### Enhancements 🚀 - chore: rename files according to enabled build tags by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1642](https://github.com/spf13/viper/pull/1642) - test: replace ifs with asserts to simplify tests by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1656](https://github.com/spf13/viper/pull/1656) - ci: enable test shuffle and fix tests by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1643](https://github.com/spf13/viper/pull/1643) - fix: gocritic lint issues by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1696](https://github.com/spf13/viper/pull/1696) ##### Bug Fixes 🐛 - Implement viper.BindStruct for automatic unmarshalling from environment variables by [@​krakowski](https://github.com/krakowski) in [https://github.com/spf13/viper/pull/1429](https://github.com/spf13/viper/pull/1429) - fix isPathShadowedInFlatMap type cast bug by [@​linuxsong](https://github.com/linuxsong) in [https://github.com/spf13/viper/pull/1585](https://github.com/spf13/viper/pull/1585) ##### Dependency Updates ⬆️ - build(deps): bump github/codeql-action from 2.21.9 to 2.22.3 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1661](https://github.com/spf13/viper/pull/1661) - build(deps): bump golang.org/x/net from 0.15.0 to 0.17.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1659](https://github.com/spf13/viper/pull/1659) - build(deps): bump actions/checkout from 4.1.0 to 4.1.1 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1663](https://github.com/spf13/viper/pull/1663) - build(deps): bump actions/github-script from 6.4.1 to 7.0.1 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1686](https://github.com/spf13/viper/pull/1686) - build(deps): bump github/codeql-action from 2.22.3 to 2.22.8 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1688](https://github.com/spf13/viper/pull/1688) - build(deps): bump github.com/spf13/afero from 1.10.0 to 1.11.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1692](https://github.com/spf13/viper/pull/1692) - build(deps): bump actions/dependency-review-action from 3.1.0 to 3.1.4 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1690](https://github.com/spf13/viper/pull/1690) - build(deps): bump cachix/install-nix-action from 23 to 24 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1689](https://github.com/spf13/viper/pull/1689) - build(deps): bump github.com/nats-io/nkeys from 0.4.5 to 0.4.6 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1672](https://github.com/spf13/viper/pull/1672) - build(deps): bump github.com/spf13/cast from 1.5.1 to 1.6.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1691](https://github.com/spf13/viper/pull/1691) - build(deps): bump github.com/fsnotify/fsnotify from 1.6.0 to 1.7.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1668](https://github.com/spf13/viper/pull/1668) - chore: update dependencies by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1694](https://github.com/spf13/viper/pull/1694) - chore: update crypt by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1701](https://github.com/spf13/viper/pull/1701) ##### Other Changes - Add info about multiple hosts for remote config by [@​KaymeKaydex](https://github.com/KaymeKaydex) in [https://github.com/spf13/viper/pull/1684](https://github.com/spf13/viper/pull/1684) - refactor: drop fsonitfy wrapper by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1693](https://github.com/spf13/viper/pull/1693) - Note Get\* behavior on parse failure by [@​scop](https://github.com/scop) in [https://github.com/spf13/viper/pull/1687](https://github.com/spf13/viper/pull/1687) - fix: godot lint issues by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1657](https://github.com/spf13/viper/pull/1657) #### New Contributors - [@​KaymeKaydex](https://github.com/KaymeKaydex) made their first contribution in [https://github.com/spf13/viper/pull/1684](https://github.com/spf13/viper/pull/1684) - [@​krakowski](https://github.com/krakowski) made their first contribution in [https://github.com/spf13/viper/pull/1429](https://github.com/spf13/viper/pull/1429) - [@​linuxsong](https://github.com/linuxsong) made their first contribution in [https://github.com/spf13/viper/pull/1585](https://github.com/spf13/viper/pull/1585) **Full Changelog**: spf13/viper@v1.17.0...v1.18.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "every weekday,after 9am and before 5pm" in timezone America/Los_Angeles, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/trussworks/setup-new-aws-user). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44Ny4yIiwidXBkYXRlZEluVmVyIjoiMzcuODcuMiIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [github.com/spf13/viper](https://github.com/spf13/viper) | require | minor | `v1.17.0` -> `v1.18.0` | --- > [!WARNING] > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>spf13/viper (github.com/spf13/viper)</summary> ### [`v1.18.0`](https://github.com/spf13/viper/releases/tag/v1.18.0) [Compare Source](https://github.com/spf13/viper/compare/v1.17.0...v1.18.0) #### 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](https://github.com/spf13/viper/issues/761)) [#​1429](https://github.com/spf13/viper/issues/1429) introduced a solution that solves that issue. #### What's Changed ##### Enhancements 🚀 - chore: rename files according to enabled build tags by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1642](https://github.com/spf13/viper/pull/1642) - test: replace ifs with asserts to simplify tests by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1656](https://github.com/spf13/viper/pull/1656) - ci: enable test shuffle and fix tests by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1643](https://github.com/spf13/viper/pull/1643) - fix: gocritic lint issues by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1696](https://github.com/spf13/viper/pull/1696) ##### Bug Fixes 🐛 - Implement viper.BindStruct for automatic unmarshalling from environment variables by [@​krakowski](https://github.com/krakowski) in [https://github.com/spf13/viper/pull/1429](https://github.com/spf13/viper/pull/1429) - fix isPathShadowedInFlatMap type cast bug by [@​linuxsong](https://github.com/linuxsong) in [https://github.com/spf13/viper/pull/1585](https://github.com/spf13/viper/pull/1585) ##### Dependency Updates ⬆️ - build(deps): bump github/codeql-action from 2.21.9 to 2.22.3 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1661](https://github.com/spf13/viper/pull/1661) - build(deps): bump golang.org/x/net from 0.15.0 to 0.17.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1659](https://github.com/spf13/viper/pull/1659) - build(deps): bump actions/checkout from 4.1.0 to 4.1.1 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1663](https://github.com/spf13/viper/pull/1663) - build(deps): bump actions/github-script from 6.4.1 to 7.0.1 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1686](https://github.com/spf13/viper/pull/1686) - build(deps): bump github/codeql-action from 2.22.3 to 2.22.8 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1688](https://github.com/spf13/viper/pull/1688) - build(deps): bump github.com/spf13/afero from 1.10.0 to 1.11.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1692](https://github.com/spf13/viper/pull/1692) - build(deps): bump actions/dependency-review-action from 3.1.0 to 3.1.4 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1690](https://github.com/spf13/viper/pull/1690) - build(deps): bump cachix/install-nix-action from 23 to 24 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1689](https://github.com/spf13/viper/pull/1689) - build(deps): bump github.com/nats-io/nkeys from 0.4.5 to 0.4.6 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1672](https://github.com/spf13/viper/pull/1672) - build(deps): bump github.com/spf13/cast from 1.5.1 to 1.6.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1691](https://github.com/spf13/viper/pull/1691) - build(deps): bump github.com/fsnotify/fsnotify from 1.6.0 to 1.7.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1668](https://github.com/spf13/viper/pull/1668) - chore: update dependencies by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1694](https://github.com/spf13/viper/pull/1694) - chore: update crypt by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1701](https://github.com/spf13/viper/pull/1701) ##### Other Changes - Add info about multiple hosts for remote config by [@​KaymeKaydex](https://github.com/KaymeKaydex) in [https://github.com/spf13/viper/pull/1684](https://github.com/spf13/viper/pull/1684) - refactor: drop fsonitfy wrapper by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1693](https://github.com/spf13/viper/pull/1693) - Note Get\* behavior on parse failure by [@​scop](https://github.com/scop) in [https://github.com/spf13/viper/pull/1687](https://github.com/spf13/viper/pull/1687) - fix: godot lint issues by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1657](https://github.com/spf13/viper/pull/1657) #### New Contributors - [@​KaymeKaydex](https://github.com/KaymeKaydex) made their first contribution in [https://github.com/spf13/viper/pull/1684](https://github.com/spf13/viper/pull/1684) - [@​krakowski](https://github.com/krakowski) made their first contribution in [https://github.com/spf13/viper/pull/1429](https://github.com/spf13/viper/pull/1429) - [@​linuxsong](https://github.com/linuxsong) made their first contribution in [https://github.com/spf13/viper/pull/1585](https://github.com/spf13/viper/pull/1585) **Full Changelog**: spf13/viper@v1.17.0...v1.18.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/open-feature/flagd). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44Ny4yIiwidXBkYXRlZEluVmVyIjoiMzcuODcuMiIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [github.com/spf13/viper](https://github.com/spf13/viper) | require | minor | `v1.8.0` -> `v1.18.1` | | [github.com/spf13/viper](https://github.com/spf13/viper) | require | minor | `v1.17.0` -> `v1.18.1` | --- ### Release Notes <details> <summary>spf13/viper (github.com/spf13/viper)</summary> ### [`v1.18.1`](https://github.com/spf13/viper/releases/tag/v1.18.1) [Compare Source](https://github.com/spf13/viper/compare/v1.18.0...v1.18.1) <!-- Release notes generated using configuration in .github/release.yml at v1.18.1 --> #### What's Changed ##### Bug Fixes 🐛 - Merge missing struct keys inside UnmarshalExact by [@​krakowski](https://github.com/krakowski) in [https://github.com/spf13/viper/pull/1704](https://github.com/spf13/viper/pull/1704) **Full Changelog**: spf13/viper@v1.18.0...v1.18.1 ### [`v1.18.0`](https://github.com/spf13/viper/releases/tag/v1.18.0) [Compare Source](https://github.com/spf13/viper/compare/v1.17.0...v1.18.0) #### 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](https://github.com/spf13/viper/issues/761)) [#​1429](https://github.com/spf13/viper/issues/1429) introduced a solution that solves that issue. #### What's Changed ##### Enhancements 🚀 - chore: rename files according to enabled build tags by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1642](https://github.com/spf13/viper/pull/1642) - test: replace ifs with asserts to simplify tests by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1656](https://github.com/spf13/viper/pull/1656) - ci: enable test shuffle and fix tests by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1643](https://github.com/spf13/viper/pull/1643) - fix: gocritic lint issues by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1696](https://github.com/spf13/viper/pull/1696) ##### Bug Fixes 🐛 - Implement viper.BindStruct for automatic unmarshalling from environment variables by [@​krakowski](https://github.com/krakowski) in [https://github.com/spf13/viper/pull/1429](https://github.com/spf13/viper/pull/1429) - fix isPathShadowedInFlatMap type cast bug by [@​linuxsong](https://github.com/linuxsong) in [https://github.com/spf13/viper/pull/1585](https://github.com/spf13/viper/pull/1585) ##### Dependency Updates ⬆️ - build(deps): bump github/codeql-action from 2.21.9 to 2.22.3 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1661](https://github.com/spf13/viper/pull/1661) - build(deps): bump golang.org/x/net from 0.15.0 to 0.17.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1659](https://github.com/spf13/viper/pull/1659) - build(deps): bump actions/checkout from 4.1.0 to 4.1.1 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1663](https://github.com/spf13/viper/pull/1663) - build(deps): bump actions/github-script from 6.4.1 to 7.0.1 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1686](https://github.com/spf13/viper/pull/1686) - build(deps): bump github/codeql-action from 2.22.3 to 2.22.8 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1688](https://github.com/spf13/viper/pull/1688) - build(deps): bump github.com/spf13/afero from 1.10.0 to 1.11.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1692](https://github.com/spf13/viper/pull/1692) - build(deps): bump actions/dependency-review-action from 3.1.0 to 3.1.4 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1690](https://github.com/spf13/viper/pull/1690) - build(deps): bump cachix/install-nix-action from 23 to 24 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1689](https://github.com/spf13/viper/pull/1689) - build(deps): bump github.com/nats-io/nkeys from 0.4.5 to 0.4.6 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1672](https://github.com/spf13/viper/pull/1672) - build(deps): bump github.com/spf13/cast from 1.5.1 to 1.6.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1691](https://github.com/spf13/viper/pull/1691) - build(deps): bump github.com/fsnotify/fsnotify from 1.6.0 to 1.7.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1668](https://github.com/spf13/viper/pull/1668) - chore: update dependencies by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1694](https://github.com/spf13/viper/pull/1694) - chore: update crypt by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1701](https://github.com/spf13/viper/pull/1701) ##### Other Changes - Add info about multiple hosts for remote config by [@​KaymeKaydex](https://github.com/KaymeKaydex) in [https://github.com/spf13/viper/pull/1684](https://github.com/spf13/viper/pull/1684) - refactor: drop fsonitfy wrapper by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1693](https://github.com/spf13/viper/pull/1693) - Note Get\* behavior on parse failure by [@​scop](https://github.com/scop) in [https://github.com/spf13/viper/pull/1687](https://github.com/spf13/viper/pull/1687) - fix: godot lint issues by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1657](https://github.com/spf13/viper/pull/1657) #### New Contributors - [@​KaymeKaydex](https://github.com/KaymeKaydex) made their first contribution in [https://github.com/spf13/viper/pull/1684](https://github.com/spf13/viper/pull/1684) - [@​krakowski](https://github.com/krakowski) made their first contribution in [https://github.com/spf13/viper/pull/1429](https://github.com/spf13/viper/pull/1429) - [@​linuxsong](https://github.com/linuxsong) made their first contribution in [https://github.com/spf13/viper/pull/1585](https://github.com/spf13/viper/pull/1585) **Full Changelog**: spf13/viper@v1.17.0...v1.18.0 ### [`v1.17.0`](https://github.com/spf13/viper/releases/tag/v1.17.0) [Compare Source](https://github.com/spf13/viper/compare/v1.16.0...v1.17.0) #### 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](https://github.com/spf13/viper/releases/tag/v1.11.0) added an experimental `Logger` interface to allow custom implementations (besides [jwalterweatherman](https://github.com/spf13/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](https://pkg.go.dev/log/slog) released in Go 1.21. > \[!WARNING] > `WithLogger` accepts an [\*slog.Logger](https://pkg.go.dev/log/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](https://pkg.go.dev/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](https://github.com/sagikazarmark/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 🎉 - Add NATS support by [@​hooksie1](https://github.com/hooksie1) in [https://github.com/spf13/viper/pull/1590](https://github.com/spf13/viper/pull/1590) - Add slog support by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1627](https://github.com/spf13/viper/pull/1627) ##### Enhancements 🚀 - chore: add local development environment using nix by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1572](https://github.com/spf13/viper/pull/1572) - feat: add func GetEnvPrefix by [@​baruchiro](https://github.com/baruchiro) in [https://github.com/spf13/viper/pull/1565](https://github.com/spf13/viper/pull/1565) - Improve dev env by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1575](https://github.com/spf13/viper/pull/1575) - fix: code optimization by [@​testwill](https://github.com/testwill) in [https://github.com/spf13/viper/pull/1557](https://github.com/spf13/viper/pull/1557) - test: remove not needed testutil.Setenv by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1610](https://github.com/spf13/viper/pull/1610) - new finder library based on afero by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1625](https://github.com/spf13/viper/pull/1625) - refactor: make use of `strings.Cut` by [@​scop](https://github.com/scop) in [https://github.com/spf13/viper/pull/1650](https://github.com/spf13/viper/pull/1650) ##### Breaking Changes 🛠 - feat: drop support for Go 1.17 by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1574](https://github.com/spf13/viper/pull/1574) ##### Dependency Updates ⬆️ - build(deps): bump mheap/github-action-required-labels from 4 to 5 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1563](https://github.com/spf13/viper/pull/1563) - build(deps): bump github.com/stretchr/testify from 1.8.3 to 1.8.4 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1558](https://github.com/spf13/viper/pull/1558) - build(deps): bump cachix/install-nix-action from 21 to 22 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1573](https://github.com/spf13/viper/pull/1573) - build(deps): bump github.com/pelletier/go-toml/v2 from 2.0.8 to 2.0.9 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1586](https://github.com/spf13/viper/pull/1586) - chore: upgrade crypt by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1589](https://github.com/spf13/viper/pull/1589) - build(deps): bump actions/checkout from 3.5.3 to 4.0.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1616](https://github.com/spf13/viper/pull/1616) - build(deps): bump github/codeql-action from 2.21.2 to 2.21.5 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1615](https://github.com/spf13/viper/pull/1615) - build(deps): bump github.com/pelletier/go-toml/v2 from 2.0.9 to 2.1.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1614](https://github.com/spf13/viper/pull/1614) - build(deps): bump actions/dependency-review-action from 3.0.6 to 3.0.8 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1605](https://github.com/spf13/viper/pull/1605) - build(deps): bump golangci/golangci-lint-action from 3.6.0 to 3.7.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1604](https://github.com/spf13/viper/pull/1604) - build(deps): bump actions/setup-go from 4.0.1 to 4.1.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1593](https://github.com/spf13/viper/pull/1593) - build(deps): bump github.com/subosito/gotenv from 1.4.2 to 1.6.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1603](https://github.com/spf13/viper/pull/1603) - build(deps): bump cachix/install-nix-action from 22 to 23 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1620](https://github.com/spf13/viper/pull/1620) - chore(deps): update crypt by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1621](https://github.com/spf13/viper/pull/1621) - build(deps): bump actions/dependency-review-action from 3.0.8 to 3.1.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1623](https://github.com/spf13/viper/pull/1623) - Bump minimum Go version to 1.19 by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1626](https://github.com/spf13/viper/pull/1626) - build(deps): bump github/codeql-action from 2.21.5 to 2.21.6 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1632](https://github.com/spf13/viper/pull/1632) - build(deps): bump github/codeql-action from 2.21.6 to 2.21.7 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1634](https://github.com/spf13/viper/pull/1634) - build(deps): bump actions/checkout from 4.0.0 to 4.1.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1641](https://github.com/spf13/viper/pull/1641) - build(deps): bump github.com/spf13/afero from 1.9.5 to 1.10.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1640](https://github.com/spf13/viper/pull/1640) - build(deps): bump github/codeql-action from 2.21.7 to 2.21.8 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1638](https://github.com/spf13/viper/pull/1638) - build(deps): bump github/codeql-action from 2.21.8 to 2.21.9 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1648](https://github.com/spf13/viper/pull/1648) - chore(deps): update crypt by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1652](https://github.com/spf13/viper/pull/1652) ##### Other Changes - \[StepSecurity] ci: Harden GitHub Actions by [@​step-security-bot](https://github.com/step-security-bot) in [https://github.com/spf13/viper/pull/1592](https://github.com/spf13/viper/pull/1592) - Add Vitess to list of projects using Viper by [@​systay](https://github.com/systay) in [https://github.com/spf13/viper/pull/1619](https://github.com/spf13/viper/pull/1619) - docs: fix typos in comments by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1609](https://github.com/spf13/viper/pull/1609) - ci: add Go 1.21 to the test matrix by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1622](https://github.com/spf13/viper/pull/1622) - Remove usages of deprecated io/ioutil; simplify viper tests by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1631](https://github.com/spf13/viper/pull/1631) - chore: remove deprecated build tags by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1630](https://github.com/spf13/viper/pull/1630) - refactor: replace 'interface{}' with 'any' by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1646](https://github.com/spf13/viper/pull/1646) - test: refactor asserts by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1644](https://github.com/spf13/viper/pull/1644) - docs: add set subset KV example by [@​yhliyr](https://github.com/yhliyr) in [https://github.com/spf13/viper/pull/1647](https://github.com/spf13/viper/pull/1647) - Make deps fixes by [@​bersace](https://github.com/bersace) in [https://github.com/spf13/viper/pull/1628](https://github.com/spf13/viper/pull/1628) #### New Contributors - [@​goldeneggg](https://github.com/goldeneggg) made their first contribution in [https://github.com/spf13/viper/pull/1561](https://github.com/spf13/viper/pull/1561) - [@​baruchiro](https://github.com/baruchiro) made their first contribution in [https://github.com/spf13/viper/pull/1565](https://github.com/spf13/viper/pull/1565) - [@​testwill](https://github.com/testwill) made their first contribution in [https://github.com/spf13/viper/pull/1557](https://github.com/spf13/viper/pull/1557) - [@​step-security-bot](https://github.com/step-security-bot) made their first contribution in [https://github.com/spf13/viper/pull/1592](https://github.com/spf13/viper/pull/1592) - [@​systay](https://github.com/systay) made their first contribution in [https://github.com/spf13/viper/pull/1619](https://github.com/spf13/viper/pull/1619) - [@​alexandear](https://github.com/alexandear) made their first contribution in [https://github.com/spf13/viper/pull/1609](https://github.com/spf13/viper/pull/1609) - [@​hooksie1](https://github.com/hooksie1) made their first contribution in [https://github.com/spf13/viper/pull/1590](https://github.com/spf13/viper/pull/1590) - [@​yhliyr](https://github.com/yhliyr) made their first contribution in [https://github.com/spf13/viper/pull/1647](https://github.com/spf13/viper/pull/1647) - [@​bersace](https://github.com/bersace) made their first contribution in [https://github.com/spf13/viper/pull/1628](https://github.com/spf13/viper/pull/1628) - [@​scop](https://github.com/scop) made their first contribution in [https://github.com/spf13/viper/pull/1650](https://github.com/spf13/viper/pull/1650) **Full Changelog**: spf13/viper@v1.16.0...v1.17.0 ### [`v1.16.0`](https://github.com/spf13/viper/releases/tag/v1.16.0) [Compare Source](https://github.com/spf13/viper/compare/v1.15.0...v1.16.0) <!-- Release notes generated using configuration in .github/release.yml at v1.16.0 --> #### What's Changed ##### Enhancements 🚀 - Sub parent inheritance by [@​TaylorOno](https://github.com/TaylorOno) in [https://github.com/spf13/viper/pull/1056](https://github.com/spf13/viper/pull/1056) - fix: fix typo by [@​yquansah](https://github.com/yquansah) in [https://github.com/spf13/viper/pull/1523](https://github.com/spf13/viper/pull/1523) - ci: add Go 1.20 to build matrix by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1506](https://github.com/spf13/viper/pull/1506) - extend v.find() to handle stringToInt value types with stringToInt pflag [#​1435](https://github.com/spf13/viper/issues/1435) by [@​vorishirne](https://github.com/vorishirne) in [https://github.com/spf13/viper/pull/1462](https://github.com/spf13/viper/pull/1462) - add:viper: allow to disable internal log messages by [@​burgesQ](https://github.com/burgesQ) in [https://github.com/spf13/viper/pull/1483](https://github.com/spf13/viper/pull/1483) - Allow ConfigParseError to unwrap by [@​andig](https://github.com/andig) in [https://github.com/spf13/viper/pull/1433](https://github.com/spf13/viper/pull/1433) ##### Bug Fixes 🐛 - fix: time.Duration slice type conversion by [@​UrbanskiDawid](https://github.com/UrbanskiDawid) in [https://github.com/spf13/viper/pull/1498](https://github.com/spf13/viper/pull/1498) ##### Dependency Updates ⬆️ - build(deps): bump mheap/github-action-required-labels from 3 to 4 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1533](https://github.com/spf13/viper/pull/1533) - build(deps): bump actions/setup-go from 3 to 4 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1526](https://github.com/spf13/viper/pull/1526) - build(deps): bump golang.org/x/net from 0.4.0 to 0.7.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1519](https://github.com/spf13/viper/pull/1519) - build(deps): bump github.com/pelletier/go-toml/v2 from 2.0.6 to 2.0.7 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1516](https://github.com/spf13/viper/pull/1516) - build(deps): bump github.com/stretchr/testify from 1.8.1 to 1.8.2 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1515](https://github.com/spf13/viper/pull/1515) - build(deps): bump github.com/spf13/afero from 1.9.3 to 1.9.5 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1518](https://github.com/spf13/viper/pull/1518) - build(deps): bump github.com/sagikazarmark/crypt from 0.9.0 to 0.10.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1550](https://github.com/spf13/viper/pull/1550) - build(deps): bump github.com/spf13/cast from 1.5.0 to 1.5.1 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1551](https://github.com/spf13/viper/pull/1551) - build(deps): bump github.com/stretchr/testify from 1.8.2 to 1.8.3 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1553](https://github.com/spf13/viper/pull/1553) - build(deps): bump github.com/pelletier/go-toml/v2 from 2.0.7 to 2.0.8 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1555](https://github.com/spf13/viper/pull/1555) ##### Other Changes - Update main image to better handle dark background by [@​Deleplace](https://github.com/Deleplace) in [https://github.com/spf13/viper/pull/1532](https://github.com/spf13/viper/pull/1532) #### New Contributors - [@​UrbanskiDawid](https://github.com/UrbanskiDawid) made their first contribution in [https://github.com/spf13/viper/pull/1498](https://github.com/spf13/viper/pull/1498) - [@​TaylorOno](https://github.com/TaylorOno) made their first contribution in [https://github.com/spf13/viper/pull/1056](https://github.com/spf13/viper/pull/1056) - [@​yquansah](https://github.com/yquansah) made their first contribution in [https://github.com/spf13/viper/pull/1523](https://github.com/spf13/viper/pull/1523) - [@​Azanul](https://github.com/Azanul) made their first contribution in [https://github.com/spf13/viper/pull/1544](https://github.com/spf13/viper/pull/1544) - [@​Deleplace](https://github.com/Deleplace) made their first contribution in [https://github.com/spf13/viper/pull/1532](https://github.com/spf13/viper/pull/1532) - [@​cfabianski](https://github.com/cfabianski) made their first contribution in [https://github.com/spf13/viper/pull/1552](https://github.com/spf13/viper/pull/1552) - [@​vorishirne](https://github.com/vorishirne) made their first contribution in [https://github.com/spf13/viper/pull/1462](https://github.com/spf13/viper/pull/1462) - [@​burgesQ](https://github.com/burgesQ) made their first contribution in [https://github.com/spf13/viper/pull/1483](https://github.com/spf13/viper/pull/1483) - [@​andig](https://github.com/andig) made their first contribution in [https://github.com/spf13/viper/pull/1433](https://github.com/spf13/viper/pull/1433) **Full Changelog**: spf13/viper@v1.15.0...v1.16.0 ### [`v1.15.0`](https://github.com/spf13/viper/releases/tag/v1.15.0) [Compare Source](https://github.com/spf13/viper/compare/v1.14.0...v1.15.0) <!-- Release notes generated using configuration in .github/release.yml at v1.15.0 --> #### What's Changed ##### Exciting New Features 🎉 - feat: add multiple endpoints support for remote by [@​mozartz](https://github.com/mozartz) in [https://github.com/spf13/viper/pull/1464](https://github.com/spf13/viper/pull/1464) ##### Enhancements 🚀 - Add DocBlock to WatchConfig by [@​glebik000](https://github.com/glebik000) in [https://github.com/spf13/viper/pull/1467](https://github.com/spf13/viper/pull/1467) ##### Breaking Changes 🛠 - Drop YAML v2 and TOML v1 by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1493](https://github.com/spf13/viper/pull/1493) - Drop support for Go 1.16 by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1494](https://github.com/spf13/viper/pull/1494) ##### Dependency Updates ⬆️ - build(deps): bump github.com/spf13/afero from 1.9.2 to 1.9.3 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1465](https://github.com/spf13/viper/pull/1465) - build(deps): bump github.com/magiconair/properties from 1.8.6 to 1.8.7 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1475](https://github.com/spf13/viper/pull/1475) - build(deps): bump github.com/pelletier/go-toml/v2 from 2.0.5 to 2.0.6 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1466](https://github.com/spf13/viper/pull/1466) - build(deps): bump mheap/github-action-required-labels from 2 to 3 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1482](https://github.com/spf13/viper/pull/1482) - build(deps): bump github.com/subosito/gotenv from 1.4.1 to 1.4.2 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1488](https://github.com/spf13/viper/pull/1488) - build(deps): bump github.com/sagikazarmark/crypt from 0.8.0 to 0.9.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1490](https://github.com/spf13/viper/pull/1490) #### New Contributors - [@​choar816](https://github.com/choar816) made their first contribution in [https://github.com/spf13/viper/pull/1481](https://github.com/spf13/viper/pull/1481) - [@​lol768](https://github.com/lol768) made their first contribution in [https://github.com/spf13/viper/pull/1485](https://github.com/spf13/viper/pull/1485) - [@​mozartz](https://github.com/mozartz) made their first contribution in [https://github.com/spf13/viper/pull/1464](https://github.com/spf13/viper/pull/1464) - [@​glebik000](https://github.com/glebik000) made their first contribution in [https://github.com/spf13/viper/pull/1467](https://github.com/spf13/viper/pull/1467) **Full Changelog**: spf13/viper@v1.14.0...v1.15.0 ### [`v1.14.0`](https://github.com/spf13/viper/releases/tag/v1.14.0) [Compare Source](https://github.com/spf13/viper/compare/v1.13.0...v1.14.0) <!-- Release notes generated using configuration in .github/release.yml at v1.14.0 --> #### What's Changed ##### Enhancements 🚀 - feat: make Viper compile on platforms unsupported by fsnotify by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1457](https://github.com/spf13/viper/pull/1457) - Fsnotify improvements by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1458](https://github.com/spf13/viper/pull/1458) - Disable watch on appengine by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1460](https://github.com/spf13/viper/pull/1460) ##### Breaking Changes 🛠 - Drop support for Go 1.15 by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1428](https://github.com/spf13/viper/pull/1428) ##### Dependency Updates ⬆️ - build(deps): bump github.com/spf13/afero from 1.8.2 to 1.9.2 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1406](https://github.com/spf13/viper/pull/1406) - build(deps): bump github.com/sagikazarmark/crypt from 0.6.0 to 0.7.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1437](https://github.com/spf13/viper/pull/1437) - build(deps): bump github.com/stretchr/testify from 1.8.0 to 1.8.1 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1453](https://github.com/spf13/viper/pull/1453) - build(deps): bump github.com/fsnotify/fsnotify from 1.5.4 to 1.6.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1449](https://github.com/spf13/viper/pull/1449) - chore: update crypt by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1461](https://github.com/spf13/viper/pull/1461) **Full Changelog**: spf13/viper@v1.13.0...v1.14.0 ### [`v1.13.0`](https://github.com/spf13/viper/releases/tag/v1.13.0) [Compare Source](https://github.com/spf13/viper/compare/v1.12.0...v1.13.0) **Important:** This is the last release supporting Go 1.15. #### What's Changed ##### Exciting New Features 🎉 - Add etcd3 to supported remote providers by [@​franklinkim](https://github.com/franklinkim) in [https://github.com/spf13/viper/pull/1371](https://github.com/spf13/viper/pull/1371) ##### Enhancements 🚀 - Fix go-staticcheck failures (ST1005) by [@​mjmaisey](https://github.com/mjmaisey) in [https://github.com/spf13/viper/pull/1373](https://github.com/spf13/viper/pull/1373) - Use jsonc in markdown codeblocks for better readability by [@​HurSungYun](https://github.com/HurSungYun) in [https://github.com/spf13/viper/pull/1393](https://github.com/spf13/viper/pull/1393) - Add Go 1.19 support by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1424](https://github.com/spf13/viper/pull/1424) - Adds support for uint16 with `GetUint16` by [@​oxisto](https://github.com/oxisto) in [https://github.com/spf13/viper/pull/1405](https://github.com/spf13/viper/pull/1405) - Add a DebugTo convenience funtion by [@​bcrochet](https://github.com/bcrochet) in [https://github.com/spf13/viper/pull/1414](https://github.com/spf13/viper/pull/1414) ##### Bug Fixes 🐛 - Recurse into arrays when converting keys to lowercase by [@​awrichar](https://github.com/awrichar) in [https://github.com/spf13/viper/pull/1387](https://github.com/spf13/viper/pull/1387) ##### Dependency Updates ⬆️ - build(deps): bump github.com/stretchr/testify from 1.7.1 to 1.7.2 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1374](https://github.com/spf13/viper/pull/1374) - build(deps): bump github.com/subosito/gotenv from 1.3.0 to 1.4.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1375](https://github.com/spf13/viper/pull/1375) - build(deps): bump github.com/pelletier/go-toml/v2 from 2.0.1 to 2.0.2 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1378](https://github.com/spf13/viper/pull/1378) - build(deps): bump gopkg.in/yaml.v3 from 3.0.0 to 3.0.1 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1360](https://github.com/spf13/viper/pull/1360) - build(deps): bump github.com/stretchr/testify from 1.7.2 to 1.7.3 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1381](https://github.com/spf13/viper/pull/1381) - build(deps): bump github.com/stretchr/testify from 1.7.3 to 1.7.4 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1384](https://github.com/spf13/viper/pull/1384) - build(deps): bump mheap/github-action-required-labels from 1 to 2 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1383](https://github.com/spf13/viper/pull/1383) - build(deps): bump github.com/stretchr/testify from 1.7.4 to 1.8.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1395](https://github.com/spf13/viper/pull/1395) - build(deps): bump github.com/subosito/gotenv from 1.4.0 to 1.4.1 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1420](https://github.com/spf13/viper/pull/1420) - build(deps): bump github.com/pelletier/go-toml/v2 from 2.0.2 to 2.0.5 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1422](https://github.com/spf13/viper/pull/1422) - build(deps): bump gopkg.in/ini.v1 from 1.66.4 to 1.67.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1412](https://github.com/spf13/viper/pull/1412) #### New Contributors - [@​mjmaisey](https://github.com/mjmaisey) made their first contribution in [https://github.com/spf13/viper/pull/1373](https://github.com/spf13/viper/pull/1373) - [@​HurSungYun](https://github.com/HurSungYun) made their first contribution in [https://github.com/spf13/viper/pull/1393](https://github.com/spf13/viper/pull/1393) - [@​franklinkim](https://github.com/franklinkim) made their first contribution in [https://github.com/spf13/viper/pull/1371](https://github.com/spf13/viper/pull/1371) - [@​awrichar](https://github.com/awrichar) made their first contribution in [https://github.com/spf13/viper/pull/1387](https://github.com/spf13/viper/pull/1387) - [@​oxisto](https://github.com/oxisto) made their first contribution in [https://github.com/spf13/viper/pull/1405](https://github.com/spf13/viper/pull/1405) - [@​bcrochet](https://github.com/bcrochet) made their first contribution in [https://github.com/spf13/viper/pull/1414](https://github.com/spf13/viper/pull/1414) **Full Changelog**: spf13/viper@v1.12.0...v1.13.0 ### [`v1.12.0`](https://github.com/spf13/viper/releases/tag/v1.12.0) [Compare Source](https://github.com/spf13/viper/compare/v1.11.0...v1.12.0) 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! <!-- Release notes generated using configuration in .github/release.yml at v1.12.0 --> #### What's Changed ##### Exciting New Features 🎉 - Add etcd3 support to remote by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1356](https://github.com/spf13/viper/pull/1356) - Make YAML 3 the default by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1357](https://github.com/spf13/viper/pull/1357) - Make TOML 2 the default by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1358](https://github.com/spf13/viper/pull/1358) ##### Enhancements 🚀 - chore: fix Error log calls in mergeMaps by [@​wwade](https://github.com/wwade) in [https://github.com/spf13/viper/pull/1341](https://github.com/spf13/viper/pull/1341) - Add MustBindEnv by [@​meowfaceman](https://github.com/meowfaceman) in [https://github.com/spf13/viper/pull/1301](https://github.com/spf13/viper/pull/1301) ##### Dependency Updates ⬆️ - build(deps): bump github/codeql-action from 1 to 2 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1336](https://github.com/spf13/viper/pull/1336) - build(deps): bump github.com/pelletier/go-toml/v2 from 2.0.0-beta.8 to 2.0.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1339](https://github.com/spf13/viper/pull/1339) - build(deps): bump github.com/mitchellh/mapstructure from 1.4.3 to 1.5.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1332](https://github.com/spf13/viper/pull/1332) - build(deps): bump github.com/pelletier/go-toml from 1.9.4 to 1.9.5 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1335](https://github.com/spf13/viper/pull/1335) - build(deps): bump github.com/fsnotify/fsnotify from 1.5.1 to 1.5.4 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1338](https://github.com/spf13/viper/pull/1338) - build(deps): bump github.com/spf13/cast from 1.4.1 to 1.5.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1344](https://github.com/spf13/viper/pull/1344) - build(deps): bump github.com/pelletier/go-toml/v2 from 2.0.0 to 2.0.1 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1343](https://github.com/spf13/viper/pull/1343) - build(deps): bump github.com/subosito/gotenv from 1.2.0 to 1.3.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1349](https://github.com/spf13/viper/pull/1349) #### New Contributors - [@​meowfaceman](https://github.com/meowfaceman) made their first contribution in [https://github.com/spf13/viper/pull/1301](https://github.com/spf13/viper/pull/1301) - [@​wwade](https://github.com/wwade) made their first contribution in [https://github.com/spf13/viper/pull/1341](https://github.com/spf13/viper/pull/1341) **Full Changelog**: spf13/viper@v1.11.0...v1.12.0 ### [`v1.11.0`](https://github.com/spf13/viper/releases/tag/v1.11.0) [Compare Source](https://github.com/spf13/viper/compare/v1.10.1...v1.11.0) <!-- Release notes generated using configuration in .github/release.yml at v1.11.0 --> #### What's Changed ##### Exciting New Features 🎉 - Experimental yaml v3 library support by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1273](https://github.com/spf13/viper/pull/1273) - Experimental toml v2 support by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1274](https://github.com/spf13/viper/pull/1274) - Experimental logger by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1275](https://github.com/spf13/viper/pull/1275) ##### Enhancements 🚀 - Remove unnecessary operand by [@​steviebps](https://github.com/steviebps) in [https://github.com/spf13/viper/pull/1213](https://github.com/spf13/viper/pull/1213) - Improve encoding layer by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1167](https://github.com/spf13/viper/pull/1167) - Allow merging configs with different types of leaf values by [@​illarion](https://github.com/illarion) in [https://github.com/spf13/viper/pull/1181](https://github.com/spf13/viper/pull/1181) ##### Bug Fixes 🐛 - Disable race detector on windows by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1269](https://github.com/spf13/viper/pull/1269) ##### Breaking Changes 🛠 - Drop Go 1.14 support by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1327](https://github.com/spf13/viper/pull/1327) ##### Dependency Updates ⬆️ - build(deps): bump github.com/spf13/afero from 1.6.0 to 1.7.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1265](https://github.com/spf13/viper/pull/1265) - build(deps): bump github.com/spf13/afero from 1.7.0 to 1.7.1 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1271](https://github.com/spf13/viper/pull/1271) - build(deps): bump github.com/spf13/afero from 1.7.1 to 1.8.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1281](https://github.com/spf13/viper/pull/1281) - build(deps): bump gopkg.in/ini.v1 from 1.66.2 to 1.66.3 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1287](https://github.com/spf13/viper/pull/1287) - build(deps): bump github.com/spf13/afero from 1.8.0 to 1.8.1 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1291](https://github.com/spf13/viper/pull/1291) - build(deps): bump actions/github-script from 5 to 6 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1295](https://github.com/spf13/viper/pull/1295) - build(deps): bump actions/checkout from 2 to 3 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1304](https://github.com/spf13/viper/pull/1304) - build(deps): bump github.com/magiconair/properties from 1.8.5 to 1.8.6 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1299](https://github.com/spf13/viper/pull/1299) - build(deps): bump gopkg.in/ini.v1 from 1.66.3 to 1.66.4 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1293](https://github.com/spf13/viper/pull/1293) - build(deps): bump github.com/spf13/afero from 1.8.1 to 1.8.2 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1311](https://github.com/spf13/viper/pull/1311) - build(deps): bump actions/setup-go from 2 to 3 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1319](https://github.com/spf13/viper/pull/1319) - build(deps): bump github.com/pelletier/go-toml/v2 from 2.0.0-beta.6 to 2.0.0-beta.7 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1320](https://github.com/spf13/viper/pull/1320) - build(deps): bump github.com/pelletier/go-toml/v2 from 2.0.0-beta.7 to 2.0.0-beta.8 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1322](https://github.com/spf13/viper/pull/1322) - Update crypt by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1325](https://github.com/spf13/viper/pull/1325) #### New Contributors - [@​steviebps](https://github.com/steviebps) made their first contribution in [https://github.com/spf13/viper/pull/1213](https://github.com/spf13/viper/pull/1213) - [@​illarion](https://github.com/illarion) made their first contribution in [https://github.com/spf13/viper/pull/1181](https://github.com/spf13/viper/pull/1181) **Full Changelog**: spf13/viper@v1.10.1...v1.11.0 ### [`v1.10.1`](https://github.com/spf13/viper/releases/tag/v1.10.1) [Compare Source](https://github.com/spf13/viper/compare/v1.10.0...v1.10.1) This is a maintenance release upgrading the Consul dependency fixing CVEs. ### [`v1.10.0`](https://github.com/spf13/viper/releases/tag/v1.10.0) [Compare Source](https://github.com/spf13/viper/compare/v1.9.0...v1.10.0) This is a maintenance release primarily containing minor fixes and improvements. #### Changes ##### Added - Experimental finder based on io/fs - Tests are executed on Windows - Tests are executed on Go 1.17 - Logger interface to decouple Viper from JWW *** In addition to the above changes, this release comes with minor improvements, documentation changes an dependency updates. **Many thanks to everyone who contributed to this release!** ### [`v1.9.0`](https://github.com/spf13/viper/releases/tag/v1.9.0) [Compare Source](https://github.com/spf13/viper/compare/v1.8.1...v1.9.0) This is a maintenance release primarily containing minor fixes and improvements. #### Changes ##### Added - Experimental new encoding layer - Add support for `tfvars` files ##### Fixed - Writing hidden files with no extension - `InConfig` processing paths *** In addition to the above changes, this release comes with tons of minor improvements, documentation changes an dependency updates. **Many thanks to everyone who contributed to this release!** ### [`v1.8.1`](https://github.com/spf13/viper/releases/tag/v1.8.1) [Compare Source](https://github.com/spf13/viper/compare/v1.8.0...v1.8.1) This patch releases fixes two minor issues: - Replace `%s` with `%w` when wrapping errors - Fix `pflag.StringArray` processing </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/PingCAP-QE/ee-apps). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44Ny4yIiwidXBkYXRlZEluVmVyIjoiMzcuODcuMiIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [github.com/spf13/viper](https://github.com/spf13/viper) | require | minor | `v1.16.0` -> `v1.18.1` | --- ### Release Notes <details> <summary>spf13/viper (github.com/spf13/viper)</summary> ### [`v1.18.1`](https://github.com/spf13/viper/releases/tag/v1.18.1) [Compare Source](https://github.com/spf13/viper/compare/v1.18.0...v1.18.1) <!-- Release notes generated using configuration in .github/release.yml at v1.18.1 --> #### What's Changed ##### Bug Fixes 🐛 - Merge missing struct keys inside UnmarshalExact by [@​krakowski](https://github.com/krakowski) in [https://github.com/spf13/viper/pull/1704](https://github.com/spf13/viper/pull/1704) **Full Changelog**: spf13/viper@v1.18.0...v1.18.1 ### [`v1.18.0`](https://github.com/spf13/viper/releases/tag/v1.18.0) [Compare Source](https://github.com/spf13/viper/compare/v1.17.0...v1.18.0) #### 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](https://github.com/spf13/viper/issues/761)) [#​1429](https://github.com/spf13/viper/issues/1429) introduced a solution that solves that issue. #### What's Changed ##### Enhancements 🚀 - chore: rename files according to enabled build tags by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1642](https://github.com/spf13/viper/pull/1642) - test: replace ifs with asserts to simplify tests by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1656](https://github.com/spf13/viper/pull/1656) - ci: enable test shuffle and fix tests by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1643](https://github.com/spf13/viper/pull/1643) - fix: gocritic lint issues by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1696](https://github.com/spf13/viper/pull/1696) ##### Bug Fixes 🐛 - Implement viper.BindStruct for automatic unmarshalling from environment variables by [@​krakowski](https://github.com/krakowski) in [https://github.com/spf13/viper/pull/1429](https://github.com/spf13/viper/pull/1429) - fix isPathShadowedInFlatMap type cast bug by [@​linuxsong](https://github.com/linuxsong) in [https://github.com/spf13/viper/pull/1585](https://github.com/spf13/viper/pull/1585) ##### Dependency Updates ⬆️ - build(deps): bump github/codeql-action from 2.21.9 to 2.22.3 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1661](https://github.com/spf13/viper/pull/1661) - build(deps): bump golang.org/x/net from 0.15.0 to 0.17.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1659](https://github.com/spf13/viper/pull/1659) - build(deps): bump actions/checkout from 4.1.0 to 4.1.1 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1663](https://github.com/spf13/viper/pull/1663) - build(deps): bump actions/github-script from 6.4.1 to 7.0.1 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1686](https://github.com/spf13/viper/pull/1686) - build(deps): bump github/codeql-action from 2.22.3 to 2.22.8 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1688](https://github.com/spf13/viper/pull/1688) - build(deps): bump github.com/spf13/afero from 1.10.0 to 1.11.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1692](https://github.com/spf13/viper/pull/1692) - build(deps): bump actions/dependency-review-action from 3.1.0 to 3.1.4 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1690](https://github.com/spf13/viper/pull/1690) - build(deps): bump cachix/install-nix-action from 23 to 24 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1689](https://github.com/spf13/viper/pull/1689) - build(deps): bump github.com/nats-io/nkeys from 0.4.5 to 0.4.6 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1672](https://github.com/spf13/viper/pull/1672) - build(deps): bump github.com/spf13/cast from 1.5.1 to 1.6.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1691](https://github.com/spf13/viper/pull/1691) - build(deps): bump github.com/fsnotify/fsnotify from 1.6.0 to 1.7.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1668](https://github.com/spf13/viper/pull/1668) - chore: update dependencies by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1694](https://github.com/spf13/viper/pull/1694) - chore: update crypt by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1701](https://github.com/spf13/viper/pull/1701) ##### Other Changes - Add info about multiple hosts for remote config by [@​KaymeKaydex](https://github.com/KaymeKaydex) in [https://github.com/spf13/viper/pull/1684](https://github.com/spf13/viper/pull/1684) - refactor: drop fsonitfy wrapper by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1693](https://github.com/spf13/viper/pull/1693) - Note Get\* behavior on parse failure by [@​scop](https://github.com/scop) in [https://github.com/spf13/viper/pull/1687](https://github.com/spf13/viper/pull/1687) - fix: godot lint issues by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1657](https://github.com/spf13/viper/pull/1657) #### New Contributors - [@​KaymeKaydex](https://github.com/KaymeKaydex) made their first contribution in [https://github.com/spf13/viper/pull/1684](https://github.com/spf13/viper/pull/1684) - [@​krakowski](https://github.com/krakowski) made their first contribution in [https://github.com/spf13/viper/pull/1429](https://github.com/spf13/viper/pull/1429) - [@​linuxsong](https://github.com/linuxsong) made their first contribution in [https://github.com/spf13/viper/pull/1585](https://github.com/spf13/viper/pull/1585) **Full Changelog**: spf13/viper@v1.17.0...v1.18.0 ### [`v1.17.0`](https://github.com/spf13/viper/releases/tag/v1.17.0) [Compare Source](https://github.com/spf13/viper/compare/v1.16.0...v1.17.0) #### 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](https://github.com/spf13/viper/releases/tag/v1.11.0) added an experimental `Logger` interface to allow custom implementations (besides [jwalterweatherman](https://github.com/spf13/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](https://pkg.go.dev/log/slog) released in Go 1.21. > \[!WARNING] > `WithLogger` accepts an [\*slog.Logger](https://pkg.go.dev/log/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](https://pkg.go.dev/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](https://github.com/sagikazarmark/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 🎉 - Add NATS support by [@​hooksie1](https://github.com/hooksie1) in [https://github.com/spf13/viper/pull/1590](https://github.com/spf13/viper/pull/1590) - Add slog support by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1627](https://github.com/spf13/viper/pull/1627) ##### Enhancements 🚀 - chore: add local development environment using nix by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1572](https://github.com/spf13/viper/pull/1572) - feat: add func GetEnvPrefix by [@​baruchiro](https://github.com/baruchiro) in [https://github.com/spf13/viper/pull/1565](https://github.com/spf13/viper/pull/1565) - Improve dev env by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1575](https://github.com/spf13/viper/pull/1575) - fix: code optimization by [@​testwill](https://github.com/testwill) in [https://github.com/spf13/viper/pull/1557](https://github.com/spf13/viper/pull/1557) - test: remove not needed testutil.Setenv by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1610](https://github.com/spf13/viper/pull/1610) - new finder library based on afero by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1625](https://github.com/spf13/viper/pull/1625) - refactor: make use of `strings.Cut` by [@​scop](https://github.com/scop) in [https://github.com/spf13/viper/pull/1650](https://github.com/spf13/viper/pull/1650) ##### Breaking Changes 🛠 - feat: drop support for Go 1.17 by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1574](https://github.com/spf13/viper/pull/1574) ##### Dependency Updates ⬆️ - build(deps): bump mheap/github-action-required-labels from 4 to 5 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1563](https://github.com/spf13/viper/pull/1563) - build(deps): bump github.com/stretchr/testify from 1.8.3 to 1.8.4 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1558](https://github.com/spf13/viper/pull/1558) - build(deps): bump cachix/install-nix-action from 21 to 22 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1573](https://github.com/spf13/viper/pull/1573) - build(deps): bump github.com/pelletier/go-toml/v2 from 2.0.8 to 2.0.9 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1586](https://github.com/spf13/viper/pull/1586) - chore: upgrade crypt by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1589](https://github.com/spf13/viper/pull/1589) - build(deps): bump actions/checkout from 3.5.3 to 4.0.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1616](https://github.com/spf13/viper/pull/1616) - build(deps): bump github/codeql-action from 2.21.2 to 2.21.5 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1615](https://github.com/spf13/viper/pull/1615) - build(deps): bump github.com/pelletier/go-toml/v2 from 2.0.9 to 2.1.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1614](https://github.com/spf13/viper/pull/1614) - build(deps): bump actions/dependency-review-action from 3.0.6 to 3.0.8 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1605](https://github.com/spf13/viper/pull/1605) - build(deps): bump golangci/golangci-lint-action from 3.6.0 to 3.7.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1604](https://github.com/spf13/viper/pull/1604) - build(deps): bump actions/setup-go from 4.0.1 to 4.1.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1593](https://github.com/spf13/viper/pull/1593) - build(deps): bump github.com/subosito/gotenv from 1.4.2 to 1.6.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1603](https://github.com/spf13/viper/pull/1603) - build(deps): bump cachix/install-nix-action from 22 to 23 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1620](https://github.com/spf13/viper/pull/1620) - chore(deps): update crypt by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1621](https://github.com/spf13/viper/pull/1621) - build(deps): bump actions/dependency-review-action from 3.0.8 to 3.1.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1623](https://github.com/spf13/viper/pull/1623) - Bump minimum Go version to 1.19 by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1626](https://github.com/spf13/viper/pull/1626) - build(deps): bump github/codeql-action from 2.21.5 to 2.21.6 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1632](https://github.com/spf13/viper/pull/1632) - build(deps): bump github/codeql-action from 2.21.6 to 2.21.7 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1634](https://github.com/spf13/viper/pull/1634) - build(deps): bump actions/checkout from 4.0.0 to 4.1.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1641](https://github.com/spf13/viper/pull/1641) - build(deps): bump github.com/spf13/afero from 1.9.5 to 1.10.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1640](https://github.com/spf13/viper/pull/1640) - build(deps): bump github/codeql-action from 2.21.7 to 2.21.8 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1638](https://github.com/spf13/viper/pull/1638) - build(deps): bump github/codeql-action from 2.21.8 to 2.21.9 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1648](https://github.com/spf13/viper/pull/1648) - chore(deps): update crypt by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1652](https://github.com/spf13/viper/pull/1652) ##### Other Changes - \[StepSecurity] ci: Harden GitHub Actions by [@​step-security-bot](https://github.com/step-security-bot) in [https://github.com/spf13/viper/pull/1592](https://github.com/spf13/viper/pull/1592) - Add Vitess to list of projects using Viper by [@​systay](https://github.com/systay) in [https://github.com/spf13/viper/pull/1619](https://github.com/spf13/viper/pull/1619) - docs: fix typos in comments by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1609](https://github.com/spf13/viper/pull/1609) - ci: add Go 1.21 to the test matrix by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1622](https://github.com/spf13/viper/pull/1622) - Remove usages of deprecated io/ioutil; simplify viper tests by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1631](https://github.com/spf13/viper/pull/1631) - chore: remove deprecated build tags by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1630](https://github.com/spf13/viper/pull/1630) - refactor: replace 'interface{}' with 'any' by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1646](https://github.com/spf13/viper/pull/1646) - test: refactor asserts by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1644](https://github.com/spf13/viper/pull/1644) - docs: add set subset KV example by [@​yhliyr](https://github.com/yhliyr) in [https://github.com/spf13/viper/pull/1647](https://github.com/spf13/viper/pull/1647) - Make deps fixes by [@​bersace](https://github.com/bersace) in [https://github.com/spf13/viper/pull/1628](https://github.com/spf13/viper/pull/1628) #### New Contributors - [@​goldeneggg](https://github.com/goldeneggg) made their first contribution in [https://github.com/spf13/viper/pull/1561](https://github.com/spf13/viper/pull/1561) - [@​baruchiro](https://github.com/baruchiro) made their first contribution in [https://github.com/spf13/viper/pull/1565](https://github.com/spf13/viper/pull/1565) - [@​testwill](https://github.com/testwill) made their first contribution in [https://github.com/spf13/viper/pull/1557](https://github.com/spf13/viper/pull/1557) - [@​step-security-bot](https://github.com/step-security-bot) made their first contribution in [https://github.com/spf13/viper/pull/1592](https://github.com/spf13/viper/pull/1592) - [@​systay](https://github.com/systay) made their first contribution in [https://github.com/spf13/viper/pull/1619](https://github.com/spf13/viper/pull/1619) - [@​alexandear](https://github.com/alexandear) made their first contribution in [https://github.com/spf13/viper/pull/1609](https://github.com/spf13/viper/pull/1609) - [@​hooksie1](https://github.com/hooksie1) made their first contribution in [https://github.com/spf13/viper/pull/1590](https://github.com/spf13/viper/pull/1590) - [@​yhliyr](https://github.com/yhliyr) made their first contribution in [https://github.com/spf13/viper/pull/1647](https://github.com/spf13/viper/pull/1647) - [@​bersace](https://github.com/bersace) made their first contribution in [https://github.com/spf13/viper/pull/1628](https://github.com/spf13/viper/pull/1628) - [@​scop](https://github.com/scop) made their first contribution in [https://github.com/spf13/viper/pull/1650](https://github.com/spf13/viper/pull/1650) **Full Changelog**: spf13/viper@v1.16.0...v1.17.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "before 6am on Monday" in timezone Europe/Paris, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/cozy/cozy-stack). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44Ny4yIiwidXBkYXRlZEluVmVyIjoiMzcuODcuMiIsInRhcmdldEJyYW5jaCI6Im1hc3RlciJ9-->
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [github.com/spf13/viper](https://github.com/spf13/viper) | `v1.16.0` -> `v1.18.2` | [![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fspf13%2fviper/v1.18.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fspf13%2fviper/v1.18.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fspf13%2fviper/v1.16.0/v1.18.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fspf13%2fviper/v1.16.0/v1.18.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>spf13/viper (github.com/spf13/viper)</summary> ### [`v1.18.2`](https://github.com/spf13/viper/releases/tag/v1.18.2) [Compare Source](https://github.com/spf13/viper/compare/v1.18.1...v1.18.2) **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 🐛 - feat!: hide struct binding behind a feature flag by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1715](https://github.com/spf13/viper/pull/1715) **Full Changelog**: spf13/viper@v1.18.1...v1.18.2 ### [`v1.18.1`](https://github.com/spf13/viper/releases/tag/v1.18.1) [Compare Source](https://github.com/spf13/viper/compare/v1.18.0...v1.18.1) <!-- Release notes generated using configuration in .github/release.yml at v1.18.1 --> #### What's Changed ##### Bug Fixes 🐛 - Merge missing struct keys inside UnmarshalExact by [@​krakowski](https://github.com/krakowski) in [https://github.com/spf13/viper/pull/1704](https://github.com/spf13/viper/pull/1704) **Full Changelog**: spf13/viper@v1.18.0...v1.18.1 ### [`v1.18.0`](https://github.com/spf13/viper/releases/tag/v1.18.0) [Compare Source](https://github.com/spf13/viper/compare/v1.17.0...v1.18.0) #### 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](https://github.com/spf13/viper/issues/761)) [#​1429](https://github.com/spf13/viper/issues/1429) introduced a solution that solves that issue. #### What's Changed ##### Enhancements 🚀 - chore: rename files according to enabled build tags by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1642](https://github.com/spf13/viper/pull/1642) - test: replace ifs with asserts to simplify tests by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1656](https://github.com/spf13/viper/pull/1656) - ci: enable test shuffle and fix tests by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1643](https://github.com/spf13/viper/pull/1643) - fix: gocritic lint issues by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1696](https://github.com/spf13/viper/pull/1696) ##### Bug Fixes 🐛 - Implement viper.BindStruct for automatic unmarshalling from environment variables by [@​krakowski](https://github.com/krakowski) in [https://github.com/spf13/viper/pull/1429](https://github.com/spf13/viper/pull/1429) - fix isPathShadowedInFlatMap type cast bug by [@​linuxsong](https://github.com/linuxsong) in [https://github.com/spf13/viper/pull/1585](https://github.com/spf13/viper/pull/1585) ##### Dependency Updates ⬆️ - build(deps): bump github/codeql-action from 2.21.9 to 2.22.3 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1661](https://github.com/spf13/viper/pull/1661) - build(deps): bump golang.org/x/net from 0.15.0 to 0.17.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1659](https://github.com/spf13/viper/pull/1659) - build(deps): bump actions/checkout from 4.1.0 to 4.1.1 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1663](https://github.com/spf13/viper/pull/1663) - build(deps): bump actions/github-script from 6.4.1 to 7.0.1 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1686](https://github.com/spf13/viper/pull/1686) - build(deps): bump github/codeql-action from 2.22.3 to 2.22.8 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1688](https://github.com/spf13/viper/pull/1688) - build(deps): bump github.com/spf13/afero from 1.10.0 to 1.11.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1692](https://github.com/spf13/viper/pull/1692) - build(deps): bump actions/dependency-review-action from 3.1.0 to 3.1.4 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1690](https://github.com/spf13/viper/pull/1690) - build(deps): bump cachix/install-nix-action from 23 to 24 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1689](https://github.com/spf13/viper/pull/1689) - build(deps): bump github.com/nats-io/nkeys from 0.4.5 to 0.4.6 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1672](https://github.com/spf13/viper/pull/1672) - build(deps): bump github.com/spf13/cast from 1.5.1 to 1.6.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1691](https://github.com/spf13/viper/pull/1691) - build(deps): bump github.com/fsnotify/fsnotify from 1.6.0 to 1.7.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1668](https://github.com/spf13/viper/pull/1668) - chore: update dependencies by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1694](https://github.com/spf13/viper/pull/1694) - chore: update crypt by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1701](https://github.com/spf13/viper/pull/1701) ##### Other Changes - Add info about multiple hosts for remote config by [@​KaymeKaydex](https://github.com/KaymeKaydex) in [https://github.com/spf13/viper/pull/1684](https://github.com/spf13/viper/pull/1684) - refactor: drop fsonitfy wrapper by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1693](https://github.com/spf13/viper/pull/1693) - Note Get\* behavior on parse failure by [@​scop](https://github.com/scop) in [https://github.com/spf13/viper/pull/1687](https://github.com/spf13/viper/pull/1687) - fix: godot lint issues by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1657](https://github.com/spf13/viper/pull/1657) #### New Contributors - [@​KaymeKaydex](https://github.com/KaymeKaydex) made their first contribution in [https://github.com/spf13/viper/pull/1684](https://github.com/spf13/viper/pull/1684) - [@​krakowski](https://github.com/krakowski) made their first contribution in [https://github.com/spf13/viper/pull/1429](https://github.com/spf13/viper/pull/1429) - [@​linuxsong](https://github.com/linuxsong) made their first contribution in [https://github.com/spf13/viper/pull/1585](https://github.com/spf13/viper/pull/1585) **Full Changelog**: spf13/viper@v1.17.0...v1.18.0 ### [`v1.17.0`](https://github.com/spf13/viper/releases/tag/v1.17.0) [Compare Source](https://github.com/spf13/viper/compare/v1.16.0...v1.17.0) #### 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](https://github.com/spf13/viper/releases/tag/v1.11.0) added an experimental `Logger` interface to allow custom implementations (besides [jwalterweatherman](https://github.com/spf13/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](https://pkg.go.dev/log/slog) released in Go 1.21. > \[!WARNING] > `WithLogger` accepts an [\*slog.Logger](https://pkg.go.dev/log/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](https://pkg.go.dev/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](https://github.com/sagikazarmark/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 🎉 - Add NATS support by [@​hooksie1](https://github.com/hooksie1) in [https://github.com/spf13/viper/pull/1590](https://github.com/spf13/viper/pull/1590) - Add slog support by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1627](https://github.com/spf13/viper/pull/1627) ##### Enhancements 🚀 - chore: add local development environment using nix by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1572](https://github.com/spf13/viper/pull/1572) - feat: add func GetEnvPrefix by [@​baruchiro](https://github.com/baruchiro) in [https://github.com/spf13/viper/pull/1565](https://github.com/spf13/viper/pull/1565) - Improve dev env by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1575](https://github.com/spf13/viper/pull/1575) - fix: code optimization by [@​testwill](https://github.com/testwill) in [https://github.com/spf13/viper/pull/1557](https://github.com/spf13/viper/pull/1557) - test: remove not needed testutil.Setenv by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1610](https://github.com/spf13/viper/pull/1610) - new finder library based on afero by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1625](https://github.com/spf13/viper/pull/1625) - refactor: make use of `strings.Cut` by [@​scop](https://github.com/scop) in [https://github.com/spf13/viper/pull/1650](https://github.com/spf13/viper/pull/1650) ##### Breaking Changes 🛠 - feat: drop support for Go 1.17 by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1574](https://github.com/spf13/viper/pull/1574) ##### Dependency Updates ⬆️ - build(deps): bump mheap/github-action-required-labels from 4 to 5 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1563](https://github.com/spf13/viper/pull/1563) - build(deps): bump github.com/stretchr/testify from 1.8.3 to 1.8.4 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1558](https://github.com/spf13/viper/pull/1558) - build(deps): bump cachix/install-nix-action from 21 to 22 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1573](https://github.com/spf13/viper/pull/1573) - build(deps): bump github.com/pelletier/go-toml/v2 from 2.0.8 to 2.0.9 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1586](https://github.com/spf13/viper/pull/1586) - chore: upgrade crypt by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1589](https://github.com/spf13/viper/pull/1589) - build(deps): bump actions/checkout from 3.5.3 to 4.0.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1616](https://github.com/spf13/viper/pull/1616) - build(deps): bump github/codeql-action from 2.21.2 to 2.21.5 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1615](https://github.com/spf13/viper/pull/1615) - build(deps): bump github.com/pelletier/go-toml/v2 from 2.0.9 to 2.1.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1614](https://github.com/spf13/viper/pull/1614) - build(deps): bump actions/dependency-review-action from 3.0.6 to 3.0.8 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1605](https://github.com/spf13/viper/pull/1605) - build(deps): bump golangci/golangci-lint-action from 3.6.0 to 3.7.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1604](https://github.com/spf13/viper/pull/1604) - build(deps): bump actions/setup-go from 4.0.1 to 4.1.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1593](https://github.com/spf13/viper/pull/1593) - build(deps): bump github.com/subosito/gotenv from 1.4.2 to 1.6.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1603](https://github.com/spf13/viper/pull/1603) - build(deps): bump cachix/install-nix-action from 22 to 23 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1620](https://github.com/spf13/viper/pull/1620) - chore(deps): update crypt by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1621](https://github.com/spf13/viper/pull/1621) - build(deps): bump actions/dependency-review-action from 3.0.8 to 3.1.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1623](https://github.com/spf13/viper/pull/1623) - Bump minimum Go version to 1.19 by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1626](https://github.com/spf13/viper/pull/1626) - build(deps): bump github/codeql-action from 2.21.5 to 2.21.6 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1632](https://github.com/spf13/viper/pull/1632) - build(deps): bump github/codeql-action from 2.21.6 to 2.21.7 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1634](https://github.com/spf13/viper/pull/1634) - build(deps): bump actions/checkout from 4.0.0 to 4.1.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1641](https://github.com/spf13/viper/pull/1641) - build(deps): bump github.com/spf13/afero from 1.9.5 to 1.10.0 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1640](https://github.com/spf13/viper/pull/1640) - build(deps): bump github/codeql-action from 2.21.7 to 2.21.8 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1638](https://github.com/spf13/viper/pull/1638) - build(deps): bump github/codeql-action from 2.21.8 to 2.21.9 by [@​dependabot](https://github.com/dependabot) in [https://github.com/spf13/viper/pull/1648](https://github.com/spf13/viper/pull/1648) - chore(deps): update crypt by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1652](https://github.com/spf13/viper/pull/1652) ##### Other Changes - \[StepSecurity] ci: Harden GitHub Actions by [@​step-security-bot](https://github.com/step-security-bot) in [https://github.com/spf13/viper/pull/1592](https://github.com/spf13/viper/pull/1592) - Add Vitess to list of projects using Viper by [@​systay](https://github.com/systay) in [https://github.com/spf13/viper/pull/1619](https://github.com/spf13/viper/pull/1619) - docs: fix typos in comments by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1609](https://github.com/spf13/viper/pull/1609) - ci: add Go 1.21 to the test matrix by [@​sagikazarmark](https://github.com/sagikazarmark) in [https://github.com/spf13/viper/pull/1622](https://github.com/spf13/viper/pull/1622) - Remove usages of deprecated io/ioutil; simplify viper tests by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1631](https://github.com/spf13/viper/pull/1631) - chore: remove deprecated build tags by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1630](https://github.com/spf13/viper/pull/1630) - refactor: replace 'interface{}' with 'any' by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1646](https://github.com/spf13/viper/pull/1646) - test: refactor asserts by [@​alexandear](https://github.com/alexandear) in [https://github.com/spf13/viper/pull/1644](https://github.com/spf13/viper/pull/1644) - docs: add set subset KV example by [@​yhliyr](https://github.com/yhliyr) in [https://github.com/spf13/viper/pull/1647](https://github.com/spf13/viper/pull/1647) - Make deps fixes by [@​bersace](https://github.com/bersace) in [https://github.com/spf13/viper/pull/1628](https://github.com/spf13/viper/pull/1628) #### New Contributors - [@​goldeneggg](https://github.com/goldeneggg) made their first contribution in [https://github.com/spf13/viper/pull/1561](https://github.com/spf13/viper/pull/1561) - [@​baruchiro](https://github.com/baruchiro) made their first contribution in [https://github.com/spf13/viper/pull/1565](https://github.com/spf13/viper/pull/1565) - [@​testwill](https://github.com/testwill) made their first contribution in [https://github.com/spf13/viper/pull/1557](https://github.com/spf13/viper/pull/1557) - [@​step-security-bot](https://github.com/step-security-bot) made their first contribution in [https://github.com/spf13/viper/pull/1592](https://github.com/spf13/viper/pull/1592) - [@​systay](https://github.com/systay) made their first contribution in [https://github.com/spf13/viper/pull/1619](https://github.com/spf13/viper/pull/1619) - [@​alexandear](https://github.com/alexandear) made their first contribution in [https://github.com/spf13/viper/pull/1609](https://github.com/spf13/viper/pull/1609) - [@​hooksie1](https://github.com/hooksie1) made their first contribution in [https://github.com/spf13/viper/pull/1590](https://github.com/spf13/viper/pull/1590) - [@​yhliyr](https://github.com/yhliyr) made their first contribution in [https://github.com/spf13/viper/pull/1647](https://github.com/spf13/viper/pull/1647) - [@​bersace](https://github.com/bersace) made their first contribution in [https://github.com/spf13/viper/pull/1628](https://github.com/spf13/viper/pull/1628) - [@​scop](https://github.com/scop) made their first contribution in [https://github.com/spf13/viper/pull/1650](https://github.com/spf13/viper/pull/1650) **Full Changelog**: spf13/viper@v1.16.0...v1.17.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/infratographer/x). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4wLjMiLCJ1cGRhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
This PR extends
go test
with-shuffle
flag:Also, fix conflicting tests.