Skip to content

fix: support ${VAR:-default} parameter expansion#268

Open
leno23 wants to merge 1 commit into
joho:mainfrom
leno23:fix/var-default-substitution
Open

fix: support ${VAR:-default} parameter expansion#268
leno23 wants to merge 1 commit into
joho:mainfrom
leno23:fix/var-default-substitution

Conversation

@leno23

@leno23 leno23 commented May 25, 2026

Copy link
Copy Markdown

Summary

  • Adds support for bash-style default value expansion in braced variables
  • ${VAR:-default} uses the default when VAR is unset or empty
  • ${VAR-default} uses the default only when VAR is unset

Test plan

  • Added cases to TestExpanding for both syntaxes and existing-value behavior
  • go test ./...
  • Manual repro: VAR="${VAR:-default}" now resolves to default

Fixes #211

Parse bash-style default value syntax in braced variable expansions so
values like "${VAR:-default}" resolve to the default when VAR is unset
or empty, and "${VAR-default}" when VAR is unset.

Fixes joho#211
@leno23 leno23 force-pushed the fix/var-default-substitution branch from 7c6eca8 to 91e7bbd Compare May 26, 2026 04:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Variable in the form VAR="${VAR:-default}" does not parse correctly

1 participant