v1.14.0
Breaking Changes📦 terraform
⚠ 2 breaking✨ 4 features🐛 7 fixes🔧 8 symbols
Summary
Terraform 1.14 introduces infrastructure querying capabilities via .tfquery.hcl and a new 'Actions' block for imperative provider operations. It also updates the build requirement to Go 1.25, impacting macOS compatibility.
⚠️ Breaking Changes
- Building Terraform 1.14 now requires macOS Monterey or later due to the Go 1.25 toolchain requirement.
- Operation parallelism in container runtimes may be reduced based on CPU bandwidth limit settings.
Migration Steps
- Ensure build environments on macOS are running Monterey or later.
- Review container CPU bandwidth limits if performance degradation is observed during parallel operations.
✨ New Features
- List Resources: Define list resources in *.tfquery.hcl files to query and filter existing infrastructure.
- New 'terraform query' command: Executes list operations and can generate import configurations.
- GenerateResourceConfiguration RPC: Allows providers to create precise configuration values during import.
- Top-level Actions block: Codifies imperative use cases (e.g., aws_lambda_invoke) outside the standard CRUD model, triggered via lifecycle or the -invoke flag.
🐛 Bug Fixes
- Retrieve all workspace variables during 'terraform import', including inherited variables from variable sets.
- Fixed OSS backend proxy support by adding a proxy layer for operations.
- Improved diagnostics in 'console' and 'test' when referencing resources not included in the recent operation.
- Generated unique resource identifiers for expanded list resources in queries.
- CLI now summarizes the number of actions invoked during 'terraform apply'.
- Allowed filesystem functions to return inconsistent results within provider configuration.
- Improved error handling for missing identity schemas in queries.
🔧 Affected Symbols
terraform queryterraform testterraform stacksterraform validateGenerateResourceConfigurationActions block*.tfquery.hclterraform import