| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2026-09-28 | 9.3 kB | |
| v3.0.0 source code.tar.gz | 2026-09-28 | 315.6 kB | |
| v3.0.0 source code.zip | 2026-09-28 | 651.9 kB | |
| Totals: 3 Items | 976.7 kB | 0 | |
What's Changed
- Fix decoder error handling: Triple, BooleanArray, Regex by @sksamuel in https://github.com/sksamuel/hoplite/pull/520
- Add @ConfigEnumDefault for enum fallback values (#478) by @sksamuel in https://github.com/sksamuel/hoplite/pull/521
- Fix decoder bugs: BigInteger/BigDecimal precision and collection element type by @sksamuel in https://github.com/sksamuel/hoplite/pull/519
- Add tests confirming decoder bug fixes from [#519] by @sksamuel in https://github.com/sksamuel/hoplite/pull/523
- Don't crash on empty-key ${} placeholders (#469) by @sksamuel in https://github.com/sksamuel/hoplite/pull/522
- Allow negative endpoints in IntRange / LongRange decoders by @sksamuel in https://github.com/sksamuel/hoplite/pull/542
- Let arrow/vavr OptionDecoder accept MapNode and ArrayNode by @sksamuel in https://github.com/sksamuel/hoplite/pull/538
- Fix ${random.string(N)} never producing the letter 'z' by @sksamuel in https://github.com/sksamuel/hoplite/pull/531
- Fix ${{ hoplite:env }} returning the host CPU count by @sksamuel in https://github.com/sksamuel/hoplite/pull/529
- Fix ${random.double} returning a Long instead of a Double by @sksamuel in https://github.com/sksamuel/hoplite/pull/527
- Keep acronyms together in SnakeCase / KebabCase param mappers by @sksamuel in https://github.com/sksamuel/hoplite/pull/544
- Stop ConfigSource.fromPaths/fromClasspathResources leaking streams by @sksamuel in https://github.com/sksamuel/hoplite/pull/532
- Stop ConfigSource.fromResourcesOrFiles leaking the probe stream by @sksamuel in https://github.com/sksamuel/hoplite/pull/539
- Use string concatenation in MonthDayDecoder instead of prependIndent by @sksamuel in https://github.com/sksamuel/hoplite/pull/543
- Catch exceptions in hoplite-javax security decoders by @sksamuel in https://github.com/sksamuel/hoplite/pull/541
- Add SecretFilesPreprocessor to add secrets into configs referenced from a dir by @Bengreen in https://github.com/sksamuel/hoplite/pull/470
- Close the input stream in InputStreamPropertySource by @sksamuel in https://github.com/sksamuel/hoplite/pull/540
- Fix RandomContextResolver parameterised paths never matching by @sksamuel in https://github.com/sksamuel/hoplite/pull/528
- Stop SystemPropertyContextResolver crashing on empty-key placeholders by @sksamuel in https://github.com/sksamuel/hoplite/pull/537
- Fix env-var list elements coming out in HashMap iteration order by @sksamuel in https://github.com/sksamuel/hoplite/pull/530
- SecretFilesPreprocessor: switch placeholder format to ${secret:key} by @sksamuel in https://github.com/sksamuel/hoplite/pull/547
- SecretFilesPreprocessor: surface missing-file as a clean ConfigFailure by @sksamuel in https://github.com/sksamuel/hoplite/pull/581
- docs: fix JsonPropertySource example referencing the wrong class by @sksamuel in https://github.com/sksamuel/hoplite/pull/582
- Fix typos and one wrong-verb docstring by @sksamuel in https://github.com/sksamuel/hoplite/pull/580
- hoplite-aws2: use Locale.ROOT for RegionDecoder case folding by @sksamuel in https://github.com/sksamuel/hoplite/pull/564
- Fix typo in cascade error message: "overriden" -> "overridden" by @sksamuel in https://github.com/sksamuel/hoplite/pull/575
- addResourceOrFileSource: forward the optional flag in the filesystem branch by @sksamuel in https://github.com/sksamuel/hoplite/pull/571
- addResourceOrFileSource: stop dropping the leading slash before the file probe by @sksamuel in https://github.com/sksamuel/hoplite/pull/563
- IntDecoder/ByteDecoder/ShortDecoder: range-check LongNode instead of silently truncating by @sksamuel in https://github.com/sksamuel/hoplite/pull/579
- hoplite-toml: surface TOML parse errors instead of returning a partial result by @sksamuel in https://github.com/sksamuel/hoplite/pull/554
- Don't crash the loader on ${random.int(0)} and similar empty ranges by @sksamuel in https://github.com/sksamuel/hoplite/pull/569
- Fix typos: "Uknown", "seperated", "recursivel" by @sksamuel in https://github.com/sksamuel/hoplite/pull/556
- EnumDecoder: match against Enum.name, not toString() by @sksamuel in https://github.com/sksamuel/hoplite/pull/565
- Close input stream in ConfigFilePropertySource on the empty-file paths by @sksamuel in https://github.com/sksamuel/hoplite/pull/551
- hoplite-hdfs: catch IllegalArgumentException from Hadoop Path constructor by @sksamuel in https://github.com/sksamuel/hoplite/pull/562
- Fix paginated SSM parameter ordering: last page no longer comes first by @sksamuel in https://github.com/sksamuel/hoplite/pull/570
- Fix @Deprecated ReplaceWith pointing at the same misspelled method by @sksamuel in https://github.com/sksamuel/hoplite/pull/566
- Recognise Null / NULL / ~ as YAML null literals by @sksamuel in https://github.com/sksamuel/hoplite/pull/536
- hoplite-yaml / hoplite-hocon: pin reader charset to UTF-8 by @sksamuel in https://github.com/sksamuel/hoplite/pull/573
- AWS preprocessors: distinguish "secret is not JSON" from "key missing in secret JSON" by @sksamuel in https://github.com/sksamuel/hoplite/pull/559
- Render cascade override message in the correct direction by @sksamuel in https://github.com/sksamuel/hoplite/pull/578
- Close the InputStreamReader in PropsParser by @sksamuel in https://github.com/sksamuel/hoplite/pull/567
- SealedClassDecoder: align deriveInstance object lookup with java.simpleName by @sksamuel in https://github.com/sksamuel/hoplite/pull/576
- Lower-case file extensions so the parser registry lookup is case-insensitive by @sksamuel in https://github.com/sksamuel/hoplite/pull/574
- hoplite-aws2: AwsSecretsManagerSource null-checks secretString() by @sksamuel in https://github.com/sksamuel/hoplite/pull/568
- docs: addPathSource and PropertySource.path read from the filesystem, not classpath by @sksamuel in https://github.com/sksamuel/hoplite/pull/572
- hoplite-watch: stop FileWatcher spin-looping when the watch service is closed by @sksamuel in https://github.com/sksamuel/hoplite/pull/558
- hoplite-yaml: pass the error message to error() instead of a lambda by @sksamuel in https://github.com/sksamuel/hoplite/pull/553
- hoplite-aws-kotlin: paginate ParameterStorePathPreprocessor results by @sksamuel in https://github.com/sksamuel/hoplite/pull/552
- docs: add SecretFilesPreprocessor section to README by @sksamuel in https://github.com/sksamuel/hoplite/pull/550
- Make SystemPropertiesPropertySource prefix configurable (#545) by @sksamuel in https://github.com/sksamuel/hoplite/pull/546
- hoplite-watch: route FixedIntervalWatchable callback failures through errorHandler by @sksamuel in https://github.com/sksamuel/hoplite/pull/560
- ReloadableConfig: publish errorHandler safely to the watcher thread (@Volatile) by @sksamuel in https://github.com/sksamuel/hoplite/pull/588
- CommandLinePropertySource: don't crash when delimiter is a substring of the prefix by @sksamuel in https://github.com/sksamuel/hoplite/pull/584
- LookupPreprocessor: resolve cased/dashed paths when PathNormalizer is active (#503) by @sksamuel in https://github.com/sksamuel/hoplite/pull/591
- SealedClassDecoder: don't crash when no sealed subtype matches the node by @sksamuel in https://github.com/sksamuel/hoplite/pull/577
- HashObfuscator: emit the documented number of hash characters by @sksamuel in https://github.com/sksamuel/hoplite/pull/585
- Stop legacy preprocessors from mangling ${{...}} (#472) by @sksamuel in https://github.com/sksamuel/hoplite/pull/525
- Fix InformationUnit.Octets ratio (1 octet == 1 byte) by @sksamuel in https://github.com/sksamuel/hoplite/pull/549
- docs: document Spring-style env-var binding rules in the README by @sksamuel in https://github.com/sksamuel/hoplite/pull/548
- Random resolver/preprocessor: never return a negative int/long by @sksamuel in https://github.com/sksamuel/hoplite/pull/590
- Don't discard a scalar when a higher-precedence map shares its key (#592) by @sksamuel in https://github.com/sksamuel/hoplite/pull/594
- MapDecoder: mark key/value paths as used in array-of-objects form by @sksamuel in https://github.com/sksamuel/hoplite/pull/557
- Mark vavr Map entries as used so strict() doesn't flag them by @sksamuel in https://github.com/sksamuel/hoplite/pull/535
- Close the MANIFEST.MF input stream in ManifestContextResolver by @sksamuel in https://github.com/sksamuel/hoplite/pull/555
- Close internal stream wrappers in YAML / JSON / HOCON parsers by @sksamuel in https://github.com/sksamuel/hoplite/pull/561
- loadProps: preserve null elements in list values instead of dropping them by @sksamuel in https://github.com/sksamuel/hoplite/pull/589
- ContextResolver: split key/default on the first ':-' so defaults can contain ':-' by @sksamuel in https://github.com/sksamuel/hoplite/pull/587
- Mark LinkedHashMap entries as used so strict() doesn't flag them by @sksamuel in https://github.com/sksamuel/hoplite/pull/534
- Don't flag env vars or sysprops as unused in strict() mode (#505) by @sksamuel in https://github.com/sksamuel/hoplite/pull/524
New Contributors
- @Bengreen made their first contribution in https://github.com/sksamuel/hoplite/pull/470
Full Changelog: https://github.com/sksamuel/hoplite/compare/v3.0.0.RC3...v3.0.0