🛠️ Breaking Changes
Default variables no longer prompt for values by default in interactive mode
Variables with default values no longer prompt users for interactive input unless using the new confirm attribute.
variables:
- name: AppName
type: string
default: "my-app"
confirm: true # User will be prompted, with "my-app" as the default
- name: ContainerName
type: string
default: "container"
# No confirm — silently uses the computed defaultThis ensures that dynamically determined values for variables won't cause errors during interactive generation and reduces the number of prompts users encounter while generating from a template interactively.
Validation length uses functional form now
The length validation now uses the functional form length(min, max) instead of the previous length-min-max form.
All validations with parameters will use this functional form going forward.
✨ New Features
New validation type regex(pattern) supported.
The validation type regex(pattern) is now supported to validate variable values against regex patterns.
e.g.
- name: SlugName
type: string
description: URL-friendly project slug
validations:
- required
- length(3, 30)
- regex("^[a-z0-9-]+$")⚙️ Process Updates
WASM build target added
Releases now support JavaScript runtimes through compiled WASM build targets.
📖 Documentation Updates
Boilerplate website created
Boilerplate now has a dedicated website at https://boilerplate.gruntwork.io to document the behavior of Boilerplate.
What's Changed
- feat: Add regex(pattern) validation type by @josh-padnick in #272
- feat: Adding WASM build target by @yhakbar in #277
- feat: Avoiding prompt for defaults in non-interactive mode unless users ask for it by @yhakbar in #280
- fix: Fix flaky TestExamplesShell by isolating parallel sub-test output directories by @josh-padnick in #274
- docs: Add boilerplate docs site by @josh-padnick in #273
- chore: update to Go 1.26 by @denis256 in #271
Full Changelog: v0.11.1...v0.12.0