Change8

v1.17.0-alpha20260812

📦 terraformView on GitHub →
5 features🐛 2 fixes🔧 9 symbols

Summary

This release enhances logging for provider versions and fixes panics in `pow` and `log` functions. It also introduces several experimental features for deferred actions, test cleanup, backend configurations in tests, and policy evaluation in queries.

Migration Steps

  1. Consumers of Terraform's JSON output should pay attention to the new `format_version` field in future releases or use the latest versions of `hashicorp/terraform-json` & `hashicorp/terraform-exec`.

✨ New Features

  • The experimental "deferred actions" feature allows `count` and `for_each` arguments in `module`, `resource`, and `data` blocks to have unknown values and enables providers to react more flexibly to unknown values when the `-allow-deferral` option is passed to `terraform plan`.
  • The experimental `terraform test cleanup` command is introduced to automatically clean up local state files left behind by failed cleanup operations during test executions.
  • Test authors can now specify `backend` blocks within `run` blocks in Terraform Test files, allowing state to be loaded from a specified backend instead of starting from empty state.
  • Test authors can now specify `skip_cleanup` attributes within test files and `run` blocks to prevent `terraform test` from cleaning up state files, which will then be written to the `.terraform` directory for manual cleanup.
  • The experimental `-policies` flag for `terraform query` allows specifying policy set directory paths to evaluate policies against resources discovered by list blocks.

🐛 Bug Fixes

  • The `pow` and `log` functions no longer panic when the result is not a number.
  • Terraform now uses and displays diagnostics raised when renewing an ephemeral resource, which may cause previously lost warnings to appear. This is not expected to be breaking as lost errors would have caused confusing downstream issues.

Affected Symbols