Releases: gestalt-config/gestalt
Default and Predefined Tags
What's Changed
- Support a default tag that you can set in the builder and will be applied to all calls to gestalt that do not include tags. #109
- Utility methods to create a profile and environment tags. #108
- feat: Additional module tests. by @credmond-git in #105
- Feat/code cleanup by @credmond-git in #112
Full Changelog: v0.23.0...v0.23.1
JPMS fixs, change JPMS package for Gestalt Kotlin
What's Changed
-
Feat/java modules by @credmond-git in #104
-
fix: changed kotlin jpms to module org.github.gestalt.config.kotlin to align with kotlin docs https://kotlinlang.org/docs/gradle-configure-project.html#configure-with-java-modules-jpms-enabled
-
fix: expose dependencies as api instead of implementations so you dont need to include sub-dependencies.
-
fix: made most jpms dependencies transitive.
-
feat: update to gradle 8.3
-
feat: add git sample.
-
update dependencies.
Full Changelog: v0.22.1...v0.23.0
Vault and Better Map Decoder support
What's Changed
- feat: Map decoder supports flattening maps and arrays. https://github… by @credmond-git in #101
- feat: Vault secrets substitution by @credmond-git in #103
Full Changelog: v0.22.0...v0.22.1
AWS and GCP secret substitution
Inject an AWS Secret by using String Substitution with ${awsSecret:secretName:secretKey}
Inject a GCP Secret by using String Substitution with ${gcpSecret:secretKey}
Load a config file from Google Cloud Storage.
BREAKING CHANGE gestalt-S3 module was renamed gestalt-aws, to include the secret functionality.
base 64, url encoders and file string stubstitution
Support Snake and Kebab case mappings
Support Snake and Kebab case mappings
Allow the use of Snake and Kebab case for configuration values.
Rename the CamelCase path mapper to Dot Notation, as that is the output.
Gestalt Cache behaves more like Gestalt. If the value doesnt exist and you call the default with different values, you should get the default called with back. Not cache the first default seen.
Allow for custom logging levels when returning a default or optional value
Allow for custom logging levels when returning a default or optional value. It was too spammy for some.
Default for Substitutions
You can provide a default for the substitution in the format ${transform:key:=default}
or ${key:=default}
. If you provide a default it will use the default value in the event that the key provided cant be found
Nested and Recursive Substitutions
Gestalt supports nested and recursive substitutions. Where a substitution can happen inside another substitution and the results could trigger another substitution.
Fix a bug with escaping string substitution
Substitution can be escaped with ("", double "\" for property file-based sources, but it was leaving the escaped character in the result.
Now it will remove the escape characters.
So ${name} will output ${name} in the properties.