v1.16.0-beta1
📦 terraformView on GitHub →
✨ 6 features🐛 9 fixes🔧 14 symbols
Summary
This release introduces new features for provider data storage, module import support, and enhanced resource action triggers. It also includes several bug fixes and improvements to existing commands like `state show` and `terraform graph`.
Migration Steps
- Review your provisioner configurations to verify the configured `bastion_host_key` is correct before upgrading.
✨ New Features
- Terraform now stores planned private data for providers, allowing provider-specific state to be preserved across plan and apply.
- The new `store` block in `terraform_data` can hold ephemeral and sensitive values across plan and apply.
- Providers can now use nested blocks as computed values.
- `import` blocks inside modules are now supported.
- Terraform is now available as a pre-built binary for Linux s390x (zLinux).
- Resource action triggers can now use `on_failure` modes of `halt`, `taint`, or `continue`.
🐛 Bug Fixes
- `import` blocks now correctly respect provider local names.
- `terraform apply` no longer panics when the plan contains a no-op change for a deposed resource that has `lifecycle.precondition` or `lifecycle.postcondition` blocks.
- Terraform now raises an error if an invalid workspace name becomes selected due to out-of-band changes.
- Terraform now raises a warning when a file referenced via the `-filter` flag does not exist.
- Terraform no longer removes locks from the dependency lock file for providers configured as `dev_override`.
- Terraform now warns when unmanaged providers are in use and may impact provider installation.
- Actions are now invoked with respect to all resource dependencies.
- Terraform now returns the correct error when an `import` target exists in state but has no corresponding configuration.
- The `merge()` function no longer panics when passed `null` objects.