Releases: carueda/tscfg
v0.9.982
Consistent formatter now used for the generated code
- Scala: scalafmt (v2.7.5)
- Java: google-java-format (v1.7, so tscfg can still run on JRE 8)
Ability to allow shared object inheritance
new `--withoutTimestamp` option
Scala: now targeting 2.13 by default, with new flag for 2.12
Many thanks to @johanneshiry for this contribution!
This new release only impacts the Scala generation: tscfg now targets 2.13 by default, with a new --scala:2.12
flag as a mechanism for any need for compatibility with 2.12 as in previous releases. In general, the distinction is only relevant for configuration specs involving lists.
See #59 for more details.
Bug fix release
Should fix this particular misbehavior: #54 (comment) (thanks @kirkbro for reporting).
Shared config objects #54
Bug fix release
Given config now fully validated at wrapper construction
Resolves #49 (which also supersedes #36).
For both java and scala, in case of any missing or incompatible types in the given configuration, wrapper construction will now throw a com.typesafe.config.ConfigException
with a summary of all the corresponding com.typesafe.config.ConfigException
's collected as the constructor traverses the configuration.
Example of such a summary:
Invalid configuration:
'service.poolSize': com.typesafe.config.ConfigException$Missing(No configuration setting found for key 'poolSize')
'service.url': com.typesafe.config.ConfigException$Missing(No configuration setting found for key 'url')
'service.debug': com.typesafe.config.ConfigException$WrongType(String: 5: debug has type NUMBER rather than BOOLEAN)
'service.doLog': com.typesafe.config.ConfigException$WrongType(String: 6: doLog has type STRING rather than BOOLEAN)
'service.factor': com.typesafe.config.ConfigException$WrongType(String: 7: factor has type BOOLEAN rather than NUMBER)
(Note: command-line option --scala:fp
is now obsolete, still accepted but ignored.)
New `--all-required` flag
The new --all-required
flag strictly forces all entries (even objects) to be required (even the @optional
annotation is ignored). Thanks @abonander for the suggestion (#47).