Commits
Tarun Sukhani authored 534d700a5e0
fix(config): take a resolved ${VAR} value literally
A value substituted for a placeholder in application.conf was handed to
Matcher.appendReplacement with only its backslashes escaped, so a "$"
in it was read as a group reference. A variable holding "pa$$word" or
"Hello ${name}" aborted the whole configuration read with an
IllegalArgumentException, and "$1" was replaced by the placeholder's
own name. Generated passwords are where a "$" turns up.
Matcher.quoteReplacement escapes both characters.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KDUoh3KhBpfjXn4rV6H356