Change8

v1.15.0-alpha20260204

Breaking Changes
📦 terraformView on GitHub →
1 breaking3 features🐛 11 fixes🔧 7 symbols

Summary

This alpha release introduces Windows ARM64 builds, deprecation warnings for variables/outputs, and S3 authentication via `aws login`. It also includes numerous bug fixes across CLI commands, testing, and backend operations.

⚠️ Breaking Changes

  • The `AWS_USE_FIPS_ENDPOINT` and `AWS_USE_DUALSTACK_ENDPOINT` environment variables now only respect `true` or `false` values for the S3 backend, replacing the previous behavior which treated any non-empty value as `true`.Fix: Ensure these environment variables are explicitly set to "true" or "false" if you rely on their previous behavior.

Migration Steps

  1. If you rely on `AWS_USE_FIPS_ENDPOINT` or `AWS_USE_DUALSTACK_ENDPOINT` for the S3 backend, ensure they are explicitly set to the string "true" or "false" instead of relying on any non-empty value being interpreted as true.

✨ New Features

  • Added support for Windows ARM64 builds.
  • Introduced the ability to mark variable and output blocks as deprecated using a `deprecated` attribute, which generates warnings.
  • S3 backend now supports authentication via `aws login`.

🐛 Bug Fixes

  • File-level error diagnostics are now included in JUnit XML skipped test elements during testing.
  • Fixed an issue where a refresh-only plan could result in a non-zero exit code when no changes were present.
  • Fixed a crash in `terraform show -json` when the plan contained ephemeral resources with preconditions or postconditions.
  • Fixed `terraform init -json` to correctly format all backend configuration messages as JSON instead of plain text.
  • The `state show` command will now explicitly fail with exit code 1 if it cannot render the named resource's state.
  • Terraform now raises an explicit error if a plan file intended for one workspace is applied against a different workspace.
  • The `lifecycle` block's `replace_triggered_by` now correctly reports an error if given an invalid attribute reference that does not exist in the target resource.
  • Fixed a nil pointer dereference crash during `terraform init` when the destination backend returns an error.
  • Progress events are now sent if the plan fails during stacks operations, improving UI integration.
  • Terraform Cloud and registry discovery network requests are more resilient against temporary network or service errors.
  • Component instances in stacks now correctly report no-op plan/apply, resolving a UI inconsistency with convergence destroy plans.

Affected Symbols