Change8

v1.15.0-alpha20260218

📦 terraformView on GitHub →
9 features🐛 11 fixes🔧 11 symbols

Summary

This release introduces Windows ARM64 builds, adds a `deprecated` attribute for variables and outputs, and enhances the `validate` command and S3 backend authentication. Several bug fixes and improvements to logging and testing are also included.

Migration Steps

  1. For the S3 backend, `AWS_USE_FIPS_ENDPOINT` and `AWS_USE_DUALSTACK_ENDPOINT` environment variables will now only accept `true` or `false`. Ensure your environment variables are set to these exact values if you were previously using other non-empty values to indicate true.

✨ New Features

  • Production builds for Windows ARM64 are now available.
  • Introduced a `deprecated` attribute for variable and output blocks to signal deprecation and generate warnings.
  • The S3 backend now supports authentication via `aws login`.
  • The `validate` command now checks the `backend` block for existence, required attributes, and validation logic.
  • Re-enabled support for PowerShell in the ssh-based provisioner (file + remote-exec).
  • Terraform init log timestamps now include millisecond precision.
  • The `init` command now skips dependencies declared in development overrides, allowing for more flexible dependency management with developer overrides.
  • Terraform Test now allows functions within mock blocks.
  • Improved detection of deprecated resource attributes and blocks.

🐛 Bug Fixes

  • File-level error diagnostics are now included in JUnit XML skipped test elements for better CI/CD pipeline failure detection.
  • A refresh-only plan no longer results in a non-zero exit code when there are no changes.
  • Fixed a crash in `terraform show -json` when the plan contains ephemeral resources with preconditions or postconditions.
  • Fixed `terraform init -json` to correctly format all backend configuration messages as
  • The `state show` command now explicitly fails with exit code 1 when it cannot render the named resource state.
  • Terraform now raises an explicit error if a plan file intended for one workspace is applied to a different workspace.
  • The `replace_triggered_by` lifecycle argument now reports an error for invalid attribute references that do not exist on the target resource.
  • Fixed a nil pointer dereference crash during `terraform init` when the destination backend returns an error.
  • Stacks now send progress events if the plan fails, improving UI integration.
  • Component instances in stacks now correctly report no-op plan/apply, resolving a UI inconsistency with convergence destroy plans.
  • Fixed a bug where Terraform could not identify differences in output values between two states, which could affect operations like backend migrations.

Affected Symbols