1.15.0-alpha20260204 (February 04, 2026)
NEW FEATURES:
-
We now produce builds for Windows ARM64 (#32719)
-
You can set a
deprecatedattribute on variable and output blocks to indicate that they are deprecated. This will produce warnings when passing in a value for a deprecated variable or when referencing a deprecated output. (#38001) -
backend/s3: Support authentication via
aws login(#37967)
ENHANCEMENTS:
-
ssh-based provisioner (file + remote-exec): Re-enable support for PowerShell (#37794)
-
terraform init log timestamps include millisecond precision (#37818)
-
init: skip dependencies declared in development override. This allows you to use
terraform initwith developer overrides and install dependencies that are not declared in the override file. (#37884) -
Terraform Test: Allow functions within mock blocks (#34672)
-
improve detection of deprecated resource attributes / blocks (#38077)
BUG FIXES:
-
testing: File-level error diagnostics are now included in JUnit XML skipped test elements, ensuring CI/CD pipelines can detect validation failures (#37801)
-
A refresh-only plan could result in a non-zero exit code with no changes (#37406)
-
cli: Fixed crash in
terraform show -jsonwhen plan contains ephemeral resources with preconditions or postconditions (#37834) -
cli: Fixed
terraform init -jsonto properly format all backend configuration messages as JSON instead of plain text (#37911) -
state show: Thestate showcommand will now explicitly fail and return code 1 when it fails to render the named resources state (#37933) -
apply: Terraform will raise an explicit error if a plan file intended for one workspace is applied against another workspace (#37954)
-
lifecycle:
replace_triggered_bynow reports an error when given an invalid attribute reference that does not exist in the target resource (#36740) -
backend: Fix nil pointer dereference crash during
terraform initwhen the destination backend returns an error (#38027) -
stacks: send progress events if the plan fails for better UI integration (#38039)
-
cloud: terraform cloud and registry discovery network requests are now more resilient, making temporary network or service related errors less common (#38064)
-
stacks: component instances should report no-op plan/apply. This solves a UI inconsistency with convergence destroy plans (#38049)
UPGRADE NOTES:
- backend/s3: The
AWS_USE_FIPS_ENDPOINTandAWS_USE_DUALSTACK_ENDPOINTenvironment variables now only respecttrueorfalsevalues, aligning with the AWS SDK for Go. This replaces the previous behavior which treated any non-empty value astrue. (#37601)
EXPERIMENTS:
Experiments are only enabled in alpha releases of Terraform CLI. The following features are not yet available in stable releases.
- The experimental "deferred actions" feature, enabled by passing the
-allow-deferraloption toterraform plan, permitscountandfor_eacharguments inmodule,resource, anddatablocks to have unknown values and allows providers to react more flexibly to unknown values. terraform test cleanup: The experimentaltest cleanupcommand. In experimental builds of Terraform, a manifest file and state files for each failed cleanup operation during test operations are saved within the.terraformlocal directory. Thetest cleanupcommand will attempt to clean up the local state files left behind automatically, without requiring manual intervention.terraform test:backendblocks andskip_cleanupattributes:- Test authors can now specify
backendblocks withinrunblocks in Terraform Test files. Run blocks withbackendblocks will load state from the specified backend instead of starting from empty state on every execution. This allows test authors to keep long-running test infrastructure alive between test operations, saving time during regular test operations. - Test authors can now specify
skip_cleanupattributes within test files and within run blocks. Theskip_cleanupattribute tellsterraform testnot to clean up state files produced by run blocks with this attribute set to true. The state files for affected run blocks will be written to disk within the.terraformdirectory, where they can then be cleaned up manually using the also experimentalterraform test cleanupcommand.
- Test authors can now specify
Previous Releases
For information on prior major and minor releases, refer to their changelogs: