fix: Avoid casting settings before env var expansion #7294
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This fixes a regression in #7232. In that PR logic was added to cast settings within the setting store. This was needed because some settings were not retrieved through a settings service in order to avoid infinite regression (i.e. the
get
method in a setting service cannot generally call itself).A consequence of those changes was that now we are casting setting values before env var expansion has occurred. To address the regression, this PR makes the casting logic from #7232 disabled by default, and it is only enabled when accessing settings from within the
get
methods of a setting service (where we cannot rely on the regular setting casting).A cleaner approach would be preferable, but this should be sufficient to address the regression while preserving the bug fix that #7232 implemented.
Closes #7293