{"id":"src_nRl7c7NAj2eo3oVTMMaIz","slug":"terraform","name":"Terraform","type":"github","url":"https://github.com/hashicorp/terraform","orgId":"org_Yj55_xJFX2PSbzXjXof_V","org":{"slug":"hashicorp","name":"HashiCorp"},"isPrimary":false,"metadata":"{\"evaluatedMethod\":\"github\",\"evaluatedAt\":\"2026-04-07T23:43:08.500Z\",\"changelogUrl\":\"https://github.com/hashicorp/terraform/blob/HEAD/CHANGELOG.md\",\"changelogDetectedAt\":\"2026-04-08T00:16:40.433Z\"}","releaseCount":102,"releasesLast30Days":4,"avgReleasesPerWeek":0.9,"latestVersion":"v1.15.0-rc2","latestDate":"2026-04-15T12:30:45.000Z","changelogUrl":"https://github.com/hashicorp/terraform/blob/HEAD/CHANGELOG.md","hasChangelogFile":true,"lastFetchedAt":"2026-04-19T07:02:13.306Z","trackingSince":"2024-06-19T06:58:26.000Z","releases":[{"id":"rel_VwFWSnrfCQhj8iNVMamQt","version":"v1.15.0-rc2","title":"v1.15.0-rc2","summary":"## 1.15.0-rc2 (April 15, 2026)\n\n\nNEW FEATURES:\n\n* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/terraform/issues/3271...","content":"## 1.15.0-rc2 (April 15, 2026)\n\n\nNEW FEATURES:\n\n* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/terraform/issues/32719))\n\n* You can set a `deprecated` attribute 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](https://github.com/hashicorp/terraform/issues/38001))\n\n* backend/s3: Support authentication via `aws login` ([#37976](https://github.com/hashicorp/terraform/issues/37976))\n\n* validate: The validate command now checks the `backend` block. This ensures the backend type exists, that all required attributes are present, and that the backend's own validation logic passes. ([#38021](https://github.com/hashicorp/terraform/issues/38021))\n\n* `convert` function, which allows for precise inline type conversions ([#38160](https://github.com/hashicorp/terraform/issues/38160))\n\n* Terraform now supports variables and locals in module source and version attributes ([#38217](https://github.com/hashicorp/terraform/issues/38217))\n\n\nENHANCEMENTS:\n\n* config: `output` blocks now can have an explicit type constraints ([#36411](https://github.com/hashicorp/terraform/issues/36411))\n\n* ssh-based provisioner (file + remote-exec): Re-enable support for PowerShell ([#37794](https://github.com/hashicorp/terraform/issues/37794))\n\n* terraform init log timestamps include millisecond precision ([#37818](https://github.com/hashicorp/terraform/issues/37818))\n\n* init: skip dependencies declared in development override. This allows you to use `terraform init` with developer overrides and install dependencies that are not declared in the override file. ([#37884](https://github.com/hashicorp/terraform/issues/37884))\n\n* Terraform Test: Allow functions within mock blocks ([#34672](https://github.com/hashicorp/terraform/issues/34672))\n\n* improve detection of deprecated resource attributes / blocks ([#38077](https://github.com/hashicorp/terraform/issues/38077))\n\n* Deprecation messages providers set on resources / blocks / attributes are now part of the deprecation warning ([#38135](https://github.com/hashicorp/terraform/issues/38135))\n\n* Include which attribute paths are marked as sensitive in list_start JSON logs ([#38197](https://github.com/hashicorp/terraform/issues/38197))\n\n* Add input variable validation for Stacks ([#38240](https://github.com/hashicorp/terraform/issues/38240))\n\n* When comparing a container value to null, only top level marks are now considered for the result. ([#38270](https://github.com/hashicorp/terraform/issues/38270))\n\n* As part of supporting variables in module sources, most commands now accept variable values ([#38276](https://github.com/hashicorp/terraform/issues/38276))\n\n\nBUG FIXES:\n\n* testing: File-level error diagnostics are now included in JUnit XML skipped test elements, ensuring CI/CD pipelines can detect validation failures ([#37801](https://github.com/hashicorp/terraform/issues/37801))\n\n* A refresh-only plan could result in a non-zero exit code with no changes ([#37406](https://github.com/hashicorp/terraform/issues/37406))\n\n* cli: Fixed crash in `terraform show -json` when plan contains ephemeral resources with preconditions or postconditions ([#37834](https://github.com/hashicorp/terraform/issues/37834))\n\n* cli: Fixed `terraform init -json` to properly format all backend configuration messages as JSON instead of plain text ([#37911](https://github.com/hashicorp/terraform/issues/37911))\n\n* `state show`: The `state show` command will now explicitly fail and return code 1 when it fails to render the named resources state ([#37933](https://github.com/hashicorp/terraform/issues/37933))\n\n* apply: Terraform will raise an explicit error if a plan file intended for one workspace is applied against another workspace ([#37954](https://github.com/hashicorp/terraform/issues/37954))\n\n* lifecycle: `replace_triggered_by` now reports an error when given an invalid attribute reference that does not exist in the target resource ([#36740](https://github.com/hashicorp/terraform/issues/36740))\n\n* backend: Fix nil pointer dereference crash during `terraform init` when the destination backend returns an error ([#38027](https://github.com/hashicorp/terraform/issues/38027))\n\n* stacks: send progress events if the plan fails for better UI integration ([#38039](https://github.com/hashicorp/terraform/issues/38039))\n\n* stacks: component instances should report no-op plan/apply. This solves a UI inconsistency with convergence destroy plans  ([#38049](https://github.com/hashicorp/terraform/issues/38049))\n\n* backend/http: Return conflicting lock info from HTTP backend instead of the lock that failed to be taken ([#38144](https://github.com/hashicorp/terraform/issues/38144))\n\n* states: fixed a bug that caused Terraform to be unable to identify when two states had different output values. This may have caused issues in specific circumstances like backend migrations. ([#38181](https://github.com/hashicorp/terraform/issues/38181))\n\n* cloud: terraform cloud and registry discovery network requests are now more resilient, making temporary network or service related errors less common ([#38064](https://github.com/hashicorp/terraform/issues/38064))\n\n\nNOTES:\n\n* command/init: Provider installation was refactored to enable future enhancements in the area. This results in different order of operations during init and 2 new log messages replacing one (`initializing_provider_plugin_message`). The change should not have any end-user impact aside from the `init` command output. ([#38227](https://github.com/hashicorp/terraform/issues/38227))\n\n\nUPGRADE NOTES:\n\n* backend/s3: The `AWS_USE_FIPS_ENDPOINT` and `AWS_USE_DUALSTACK_ENDPOINT` environment variables now only respect `true` or `false` values, aligning with the AWS SDK for Go. This replaces the previous behavior which treated any non-empty value as `true`. ([#37601](https://github.com/hashicorp/terraform/issues/37601))\n\n\n## Previous Releases\n\nFor information on prior major and minor releases, refer to their changelogs:\n\n- [v1.14](https://github.com/hashicorp/terraform/blob/v1.14/CHANGELOG.md)\n- [v1.13](https://github.com/hashicorp/terraform/blob/v1.13/CHANGELOG.md)\n- [v1.12](https://github.com/hashicorp/terraform/blob/v1.12/CHANGELOG.md)\n- [v1.11](https://github.com/hashicorp/terraform/blob/v1.11/CHANGELOG.md)\n- [v1.10](https://github.com/hashicorp/terraform/blob/v1.10/CHANGELOG.md)\n- [v1.9](https://github.com/hashicorp/terraform/blob/v1.9/CHANGELOG.md)\n- [v1.8](https://github.com/hashicorp/terraform/blob/v1.8/CHANGELOG.md)\n- [v1.7](https://github.com/hashicorp/terraform/blob/v1.7/CHANGELOG.md)\n- [v1.6](https://github.com/hashicorp/terraform/blob/v1.6/CHANGELOG.md)\n- [v1.5](https://github.com/hashicorp/terraform/blob/v1.5/CHANGELOG.md)\n- [v1.4](https://github.com/hashicorp/terraform/blob/v1.4/CHANGELOG.md)\n- [v1.3](https://github.com/hashicorp/terraform/blob/v1.3/CHANGELOG.md)\n- [v1.2](https://github.com/hashicorp/terraform/blob/v1.2/CHANGELOG.md)\n- [v1.1](https://github.com/hashicorp/terraform/blob/v1.1/CHANGELOG.md)\n- [v1.0](https://github.com/hashicorp/terraform/blob/v1.0/CHANGELOG.md)\n- [v0.15](https://github.com/hashicorp/terraform/blob/v0.15/CHANGELOG.md)\n- [v0.14](https://github.com/hashicorp/terraform/blob/v0.14/CHANGELOG.md)\n- [v0.13](https://github.com/hashicorp/terraform/blob/v0.13/CHANGELOG.md)\n- [v0.12](https://github.com/hashicorp/terraform/blob/v0.12/CHANGELOG.md)\n- [v0.11 and earlier](https://github.com/hashicorp/terraform/blob/v0.11/CHANGELOG.md)\n","publishedAt":"2026-04-15T12:30:45.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.15.0-rc2","media":[]},{"id":"rel_8gleA7PPN2gQmZzbhMw5u","version":"v1.15.0-rc1","title":"v1.15.0-rc1","summary":"## 1.15.0-rc1 (April 09, 2026)\n\n\nNEW FEATURES:\n\n* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/terraform/issues/3271...","content":"## 1.15.0-rc1 (April 09, 2026)\n\n\nNEW FEATURES:\n\n* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/terraform/issues/32719))\n\n* You can set a `deprecated` attribute 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](https://github.com/hashicorp/terraform/issues/38001))\n\n* backend/s3: Support authentication via `aws login` ([#37976](https://github.com/hashicorp/terraform/issues/37976))\n\n* validate: The validate command now checks the `backend` block. This ensures the backend type exists, that all required attributes are present, and that the backend's own validation logic passes. ([#38021](https://github.com/hashicorp/terraform/issues/38021))\n\n* `convert` function, which allows for precise inline type conversions ([#38160](https://github.com/hashicorp/terraform/issues/38160))\n\n* Terraform now supports variables and locals in module source and version attributes ([#38217](https://github.com/hashicorp/terraform/issues/38217))\n\n\nENHANCEMENTS:\n\n* config: `output` blocks now can have an explicit type constraints ([#36411](https://github.com/hashicorp/terraform/issues/36411))\n\n* ssh-based provisioner (file + remote-exec): Re-enable support for PowerShell ([#37794](https://github.com/hashicorp/terraform/issues/37794))\n\n* terraform init log timestamps include millisecond precision ([#37818](https://github.com/hashicorp/terraform/issues/37818))\n\n* init: skip dependencies declared in development override. This allows you to use `terraform init` with developer overrides and install dependencies that are not declared in the override file. ([#37884](https://github.com/hashicorp/terraform/issues/37884))\n\n* Terraform Test: Allow functions within mock blocks ([#34672](https://github.com/hashicorp/terraform/issues/34672))\n\n* improve detection of deprecated resource attributes / blocks ([#38077](https://github.com/hashicorp/terraform/issues/38077))\n\n* Deprecation messages providers set on resources / blocks / attributes are now part of the deprecation warning ([#38135](https://github.com/hashicorp/terraform/issues/38135))\n\n* Include which attribute paths are marked as sensitive in list_start JSON logs ([#38197](https://github.com/hashicorp/terraform/issues/38197))\n\n* Add input variable validation for Stacks ([#38240](https://github.com/hashicorp/terraform/issues/38240))\n\n* When comparing a container value to null, only top level marks are now considered for the result. ([#38270](https://github.com/hashicorp/terraform/issues/38270))\n\n* As part of supporting variables in module sources, most commands now accept variable values ([#38276](https://github.com/hashicorp/terraform/issues/38276))\n\n\nBUG FIXES:\n\n* testing: File-level error diagnostics are now included in JUnit XML skipped test elements, ensuring CI/CD pipelines can detect validation failures ([#37801](https://github.com/hashicorp/terraform/issues/37801))\n\n* A refresh-only plan could result in a non-zero exit code with no changes ([#37406](https://github.com/hashicorp/terraform/issues/37406))\n\n* cli: Fixed crash in `terraform show -json` when plan contains ephemeral resources with preconditions or postconditions ([#37834](https://github.com/hashicorp/terraform/issues/37834))\n\n* cli: Fixed `terraform init -json` to properly format all backend configuration messages as JSON instead of plain text ([#37911](https://github.com/hashicorp/terraform/issues/37911))\n\n* `state show`: The `state show` command will now explicitly fail and return code 1 when it fails to render the named resources state ([#37933](https://github.com/hashicorp/terraform/issues/37933))\n\n* apply: Terraform will raise an explicit error if a plan file intended for one workspace is applied against another workspace ([#37954](https://github.com/hashicorp/terraform/issues/37954))\n\n* lifecycle: `replace_triggered_by` now reports an error when given an invalid attribute reference that does not exist in the target resource ([#36740](https://github.com/hashicorp/terraform/issues/36740))\n\n* backend: Fix nil pointer dereference crash during `terraform init` when the destination backend returns an error ([#38027](https://github.com/hashicorp/terraform/issues/38027))\n\n* stacks: send progress events if the plan fails for better UI integration ([#38039](https://github.com/hashicorp/terraform/issues/38039))\n\n* stacks: component instances should report no-op plan/apply. This solves a UI inconsistency with convergence destroy plans  ([#38049](https://github.com/hashicorp/terraform/issues/38049))\n\n* backend/http: Return conflicting lock info from HTTP backend instead of the lock that failed to be taken ([#38144](https://github.com/hashicorp/terraform/issues/38144))\n\n* states: fixed a bug that caused Terraform to be unable to identify when two states had different output values. This may have caused issues in specific circumstances like backend migrations. ([#38181](https://github.com/hashicorp/terraform/issues/38181))\n\n* cloud: terraform cloud and registry discovery network requests are now more resilient, making temporary network or service related errors less common ([#38064](https://github.com/hashicorp/terraform/issues/38064))\n\n\nNOTES:\n\n* command/init: Provider installation was refactored to enable future enhancements in the area. This results in different order of operations during init and 2 new log messages replacing one (`initializing_provider_plugin_message`). The change should not have any end-user impact aside from the `init` command output. ([#38227](https://github.com/hashicorp/terraform/issues/38227))\n\n\nUPGRADE NOTES:\n\n* backend/s3: The `AWS_USE_FIPS_ENDPOINT` and `AWS_USE_DUALSTACK_ENDPOINT` environment variables now only respect `true` or `false` values, aligning with the AWS SDK for Go. This replaces the previous behavior which treated any non-empty value as `true`. ([#37601](https://github.com/hashicorp/terraform/issues/37601))\n\n\n## Previous Releases\n\nFor information on prior major and minor releases, refer to their changelogs:\n\n- [v1.14](https://github.com/hashicorp/terraform/blob/v1.14/CHANGELOG.md)\n- [v1.13](https://github.com/hashicorp/terraform/blob/v1.13/CHANGELOG.md)\n- [v1.12](https://github.com/hashicorp/terraform/blob/v1.12/CHANGELOG.md)\n- [v1.11](https://github.com/hashicorp/terraform/blob/v1.11/CHANGELOG.md)\n- [v1.10](https://github.com/hashicorp/terraform/blob/v1.10/CHANGELOG.md)\n- [v1.9](https://github.com/hashicorp/terraform/blob/v1.9/CHANGELOG.md)\n- [v1.8](https://github.com/hashicorp/terraform/blob/v1.8/CHANGELOG.md)\n- [v1.7](https://github.com/hashicorp/terraform/blob/v1.7/CHANGELOG.md)\n- [v1.6](https://github.com/hashicorp/terraform/blob/v1.6/CHANGELOG.md)\n- [v1.5](https://github.com/hashicorp/terraform/blob/v1.5/CHANGELOG.md)\n- [v1.4](https://github.com/hashicorp/terraform/blob/v1.4/CHANGELOG.md)\n- [v1.3](https://github.com/hashicorp/terraform/blob/v1.3/CHANGELOG.md)\n- [v1.2](https://github.com/hashicorp/terraform/blob/v1.2/CHANGELOG.md)\n- [v1.1](https://github.com/hashicorp/terraform/blob/v1.1/CHANGELOG.md)\n- [v1.0](https://github.com/hashicorp/terraform/blob/v1.0/CHANGELOG.md)\n- [v0.15](https://github.com/hashicorp/terraform/blob/v0.15/CHANGELOG.md)\n- [v0.14](https://github.com/hashicorp/terraform/blob/v0.14/CHANGELOG.md)\n- [v0.13](https://github.com/hashicorp/terraform/blob/v0.13/CHANGELOG.md)\n- [v0.12](https://github.com/hashicorp/terraform/blob/v0.12/CHANGELOG.md)\n- [v0.11 and earlier](https://github.com/hashicorp/terraform/blob/v0.11/CHANGELOG.md)\n","publishedAt":"2026-04-09T13:59:34.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.15.0-rc1","media":[]},{"id":"rel_mEiHhNIm2Wly4WGvRP83x","version":"v1.15.0-beta2","title":"v1.15.0-beta2","summary":"## 1.15.0-beta2 (April 01, 2026)\n\n\nNEW FEATURES:\n\n* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/terraform/issues/32...","content":"## 1.15.0-beta2 (April 01, 2026)\n\n\nNEW FEATURES:\n\n* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/terraform/issues/32719))\n\n* You can set a `deprecated` attribute 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](https://github.com/hashicorp/terraform/issues/38001))\n\n* backend/s3: Support authentication via `aws login` ([#37976](https://github.com/hashicorp/terraform/issues/37976))\n\n* validate: The validate command now checks the `backend` block. This ensures the backend type exists, that all required attributes are present, and that the backend's own validation logic passes. ([#38021](https://github.com/hashicorp/terraform/issues/38021))\n\n* `convert` function, which allows for precise inline type conversions ([#38160](https://github.com/hashicorp/terraform/issues/38160))\n\n* Terraform now supports variables and locals in module source and version attributes ([#38217](https://github.com/hashicorp/terraform/issues/38217))\n\n\nENHANCEMENTS:\n\n* config: `output` blocks now can have an explicit type constraints ([#36411](https://github.com/hashicorp/terraform/issues/36411))\n\n* ssh-based provisioner (file + remote-exec): Re-enable support for PowerShell ([#37794](https://github.com/hashicorp/terraform/issues/37794))\n\n* terraform init log timestamps include millisecond precision ([#37818](https://github.com/hashicorp/terraform/issues/37818))\n\n* init: skip dependencies declared in development override. This allows you to use `terraform init` with developer overrides and install dependencies that are not declared in the override file. ([#37884](https://github.com/hashicorp/terraform/issues/37884))\n\n* Terraform Test: Allow functions within mock blocks ([#34672](https://github.com/hashicorp/terraform/issues/34672))\n\n* improve detection of deprecated resource attributes / blocks ([#38077](https://github.com/hashicorp/terraform/issues/38077))\n\n* Deprecation messages providers set on resources / blocks / attributes are now part of the deprecation warning ([#38135](https://github.com/hashicorp/terraform/issues/38135))\n\n* Include which attribute paths are marked as sensitive in list_start JSON logs ([#38197](https://github.com/hashicorp/terraform/issues/38197))\n\n* Add input variable validation for Stacks ([#38240](https://github.com/hashicorp/terraform/issues/38240))\n\n* When comparing a container value to null, only top level marks are now considered for the result. ([#38270](https://github.com/hashicorp/terraform/issues/38270))\n\n* As part of supporting variables in module sources, most commands now accept variable values ([#38276](https://github.com/hashicorp/terraform/issues/38276))\n\n\nBUG FIXES:\n\n* testing: File-level error diagnostics are now included in JUnit XML skipped test elements, ensuring CI/CD pipelines can detect validation failures ([#37801](https://github.com/hashicorp/terraform/issues/37801))\n\n* A refresh-only plan could result in a non-zero exit code with no changes ([#37406](https://github.com/hashicorp/terraform/issues/37406))\n\n* cli: Fixed crash in `terraform show -json` when plan contains ephemeral resources with preconditions or postconditions ([#37834](https://github.com/hashicorp/terraform/issues/37834))\n\n* cli: Fixed `terraform init -json` to properly format all backend configuration messages as JSON instead of plain text ([#37911](https://github.com/hashicorp/terraform/issues/37911))\n\n* `state show`: The `state show` command will now explicitly fail and return code 1 when it fails to render the named resources state ([#37933](https://github.com/hashicorp/terraform/issues/37933))\n\n* apply: Terraform will raise an explicit error if a plan file intended for one workspace is applied against another workspace ([#37954](https://github.com/hashicorp/terraform/issues/37954))\n\n* lifecycle: `replace_triggered_by` now reports an error when given an invalid attribute reference that does not exist in the target resource ([#36740](https://github.com/hashicorp/terraform/issues/36740))\n\n* backend: Fix nil pointer dereference crash during `terraform init` when the destination backend returns an error ([#38027](https://github.com/hashicorp/terraform/issues/38027))\n\n* stacks: send progress events if the plan fails for better UI integration ([#38039](https://github.com/hashicorp/terraform/issues/38039))\n\n* stacks: component instances should report no-op plan/apply. This solves a UI inconsistency with convergence destroy plans  ([#38049](https://github.com/hashicorp/terraform/issues/38049))\n\n* backend/http: Return conflicting lock info from HTTP backend instead of the lock that failed to be taken ([#38144](https://github.com/hashicorp/terraform/issues/38144))\n\n* states: fixed a bug that caused Terraform to be unable to identify when two states had different output values. This may have caused issues in specific circumstances like backend migrations. ([#38181](https://github.com/hashicorp/terraform/issues/38181))\n\n* cloud: terraform cloud and registry discovery network requests are now more resilient, making temporary network or service related errors less common ([#38064](https://github.com/hashicorp/terraform/issues/38064))\n\n\nNOTES:\n\n* command/init: Provider installation was refactored to enable future enhancements in the area. This results in different order of operations during init and 2 new log messages replacing one (`initializing_provider_plugin_message`). The change should not have any end-user impact aside from the `init` command output. ([#38227](https://github.com/hashicorp/terraform/issues/38227))\n\n\nUPGRADE NOTES:\n\n* backend/s3: The `AWS_USE_FIPS_ENDPOINT` and `AWS_USE_DUALSTACK_ENDPOINT` environment variables now only respect `true` or `false` values, aligning with the AWS SDK for Go. This replaces the previous behavior which treated any non-empty value as `true`. ([#37601](https://github.com/hashicorp/terraform/issues/37601))\n\n\n## Previous Releases\n\nFor information on prior major and minor releases, refer to their changelogs:\n\n- [v1.14](https://github.com/hashicorp/terraform/blob/v1.14/CHANGELOG.md)\n- [v1.13](https://github.com/hashicorp/terraform/blob/v1.13/CHANGELOG.md)\n- [v1.12](https://github.com/hashicorp/terraform/blob/v1.12/CHANGELOG.md)\n- [v1.11](https://github.com/hashicorp/terraform/blob/v1.11/CHANGELOG.md)\n- [v1.10](https://github.com/hashicorp/terraform/blob/v1.10/CHANGELOG.md)\n- [v1.9](https://github.com/hashicorp/terraform/blob/v1.9/CHANGELOG.md)\n- [v1.8](https://github.com/hashicorp/terraform/blob/v1.8/CHANGELOG.md)\n- [v1.7](https://github.com/hashicorp/terraform/blob/v1.7/CHANGELOG.md)\n- [v1.6](https://github.com/hashicorp/terraform/blob/v1.6/CHANGELOG.md)\n- [v1.5](https://github.com/hashicorp/terraform/blob/v1.5/CHANGELOG.md)\n- [v1.4](https://github.com/hashicorp/terraform/blob/v1.4/CHANGELOG.md)\n- [v1.3](https://github.com/hashicorp/terraform/blob/v1.3/CHANGELOG.md)\n- [v1.2](https://github.com/hashicorp/terraform/blob/v1.2/CHANGELOG.md)\n- [v1.1](https://github.com/hashicorp/terraform/blob/v1.1/CHANGELOG.md)\n- [v1.0](https://github.com/hashicorp/terraform/blob/v1.0/CHANGELOG.md)\n- [v0.15](https://github.com/hashicorp/terraform/blob/v0.15/CHANGELOG.md)\n- [v0.14](https://github.com/hashicorp/terraform/blob/v0.14/CHANGELOG.md)\n- [v0.13](https://github.com/hashicorp/terraform/blob/v0.13/CHANGELOG.md)\n- [v0.12](https://github.com/hashicorp/terraform/blob/v0.12/CHANGELOG.md)\n- [v0.11 and earlier](https://github.com/hashicorp/terraform/blob/v0.11/CHANGELOG.md)\n","publishedAt":"2026-04-01T13:26:31.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.15.0-beta2","media":[]},{"id":"rel_ehEeqap82eB4NvrJiGvNm","version":"v1.14.8","title":"v1.14.8","summary":"## 1.14.8 (March 25, 2026)\n\n\nBUG FIXES:\n\n* Prevent crash in the display of relevant attributes after provider upgrades ([#38264](https://github.com/ha...","content":"## 1.14.8 (March 25, 2026)\n\n\nBUG FIXES:\n\n* Prevent crash in the display of relevant attributes after provider upgrades ([#38264](https://github.com/hashicorp/terraform/issues/38264))\n\n\n","publishedAt":"2026-03-25T07:56:42.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.14.8","media":[]},{"id":"rel_saKtH3w6XiHb-w1Qtgoq4","version":"v1.15.0-beta1","title":"v1.15.0-beta1","summary":"## 1.15.0-beta1 (March 18, 2026)\n\n\nNEW FEATURES:\n\n* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/terraform/issues/32...","content":"## 1.15.0-beta1 (March 18, 2026)\n\n\nNEW FEATURES:\n\n* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/terraform/issues/32719))\n\n* You can set a `deprecated` attribute 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](https://github.com/hashicorp/terraform/issues/38001))\n\n* backend/s3: Support authentication via `aws login` ([#37976](https://github.com/hashicorp/terraform/issues/37976))\n\n* validate: The validate command now checks the `backend` block. This ensures the backend type exists, that all required attributes are present, and that the backend's own validation logic passes. ([#38021](https://github.com/hashicorp/terraform/issues/38021))\n\n* `convert` function, which allows for precise inline type conversions ([#38160](https://github.com/hashicorp/terraform/issues/38160))\n\n* Terraform now supports variables and locals in module source and version attributes ([#38217](https://github.com/hashicorp/terraform/issues/38217))\n\n\nENHANCEMENTS:\n\n* config: `output` blocks now can have an explicit type constraints ([#36411](https://github.com/hashicorp/terraform/issues/36411))\n\n* ssh-based provisioner (file + remote-exec): Re-enable support for PowerShell ([#37794](https://github.com/hashicorp/terraform/issues/37794))\n\n* terraform init log timestamps include millisecond precision ([#37818](https://github.com/hashicorp/terraform/issues/37818))\n\n* init: skip dependencies declared in development override. This allows you to use `terraform init` with developer overrides and install dependencies that are not declared in the override file. ([#37884](https://github.com/hashicorp/terraform/issues/37884))\n\n* Terraform Test: Allow functions within mock blocks ([#34672](https://github.com/hashicorp/terraform/issues/34672))\n\n* improve detection of deprecated resource attributes / blocks ([#38077](https://github.com/hashicorp/terraform/issues/38077))\n\n* Deprecation messages providers set on resources / blocks / attributes are now part of the deprecation warning ([#38135](https://github.com/hashicorp/terraform/issues/38135))\n\n* Include which attribute paths are marked as sensitive in list_start JSON logs ([#38197](https://github.com/hashicorp/terraform/issues/38197))\n\n* Add input variable validation for Stacks ([#38240](https://github.com/hashicorp/terraform/issues/38240))\n\n* When comparing a container value to null, only top level marks are now considered for the result. ([#38270](https://github.com/hashicorp/terraform/issues/38270))\n\n* As part of supporting variables in module sources, most commands now accept variable values ([#38276](https://github.com/hashicorp/terraform/issues/38276))\n\n\nBUG FIXES:\n\n* testing: File-level error diagnostics are now included in JUnit XML skipped test elements, ensuring CI/CD pipelines can detect validation failures ([#37801](https://github.com/hashicorp/terraform/issues/37801))\n\n* A refresh-only plan could result in a non-zero exit code with no changes ([#37406](https://github.com/hashicorp/terraform/issues/37406))\n\n* cli: Fixed crash in `terraform show -json` when plan contains ephemeral resources with preconditions or postconditions ([#37834](https://github.com/hashicorp/terraform/issues/37834))\n\n* cli: Fixed `terraform init -json` to properly format all backend configuration messages as JSON instead of plain text ([#37911](https://github.com/hashicorp/terraform/issues/37911))\n\n* `state show`: The `state show` command will now explicitly fail and return code 1 when it fails to render the named resources state ([#37933](https://github.com/hashicorp/terraform/issues/37933))\n\n* apply: Terraform will raise an explicit error if a plan file intended for one workspace is applied against another workspace ([#37954](https://github.com/hashicorp/terraform/issues/37954))\n\n* lifecycle: `replace_triggered_by` now reports an error when given an invalid attribute reference that does not exist in the target resource ([#36740](https://github.com/hashicorp/terraform/issues/36740))\n\n* backend: Fix nil pointer dereference crash during `terraform init` when the destination backend returns an error ([#38027](https://github.com/hashicorp/terraform/issues/38027))\n\n* stacks: send progress events if the plan fails for better UI integration ([#38039](https://github.com/hashicorp/terraform/issues/38039))\n\n* stacks: component instances should report no-op plan/apply. This solves a UI inconsistency with convergence destroy plans  ([#38049](https://github.com/hashicorp/terraform/issues/38049))\n\n* backend/http: Return conflicting lock info from HTTP backend instead of the lock that failed to be taken ([#38144](https://github.com/hashicorp/terraform/issues/38144))\n\n* states: fixed a bug that caused Terraform to be unable to identify when two states had different output values. This may have caused issues in specific circumstances like backend migrations. ([#38181](https://github.com/hashicorp/terraform/issues/38181))\n\n\nNOTES:\n\n* command/init: Provider installation was refactored to enable future enhancements in the area. This results in different order of operations during init and 2 new log messages replacing one (`initializing_provider_plugin_message`). The change should not have any end-user impact aside from the `init` command output. ([#38227](https://github.com/hashicorp/terraform/issues/38227))\n\n\nUPGRADE NOTES:\n\n* backend/s3: The `AWS_USE_FIPS_ENDPOINT` and `AWS_USE_DUALSTACK_ENDPOINT` environment variables now only respect `true` or `false` values, aligning with the AWS SDK for Go. This replaces the previous behavior which treated any non-empty value as `true`. ([#37601](https://github.com/hashicorp/terraform/issues/37601))\n\n\n## Previous Releases\n\nFor information on prior major and minor releases, refer to their changelogs:\n\n- [v1.14](https://github.com/hashicorp/terraform/blob/v1.14/CHANGELOG.md)\n- [v1.13](https://github.com/hashicorp/terraform/blob/v1.13/CHANGELOG.md)\n- [v1.12](https://github.com/hashicorp/terraform/blob/v1.12/CHANGELOG.md)\n- [v1.11](https://github.com/hashicorp/terraform/blob/v1.11/CHANGELOG.md)\n- [v1.10](https://github.com/hashicorp/terraform/blob/v1.10/CHANGELOG.md)\n- [v1.9](https://github.com/hashicorp/terraform/blob/v1.9/CHANGELOG.md)\n- [v1.8](https://github.com/hashicorp/terraform/blob/v1.8/CHANGELOG.md)\n- [v1.7](https://github.com/hashicorp/terraform/blob/v1.7/CHANGELOG.md)\n- [v1.6](https://github.com/hashicorp/terraform/blob/v1.6/CHANGELOG.md)\n- [v1.5](https://github.com/hashicorp/terraform/blob/v1.5/CHANGELOG.md)\n- [v1.4](https://github.com/hashicorp/terraform/blob/v1.4/CHANGELOG.md)\n- [v1.3](https://github.com/hashicorp/terraform/blob/v1.3/CHANGELOG.md)\n- [v1.2](https://github.com/hashicorp/terraform/blob/v1.2/CHANGELOG.md)\n- [v1.1](https://github.com/hashicorp/terraform/blob/v1.1/CHANGELOG.md)\n- [v1.0](https://github.com/hashicorp/terraform/blob/v1.0/CHANGELOG.md)\n- [v0.15](https://github.com/hashicorp/terraform/blob/v0.15/CHANGELOG.md)\n- [v0.14](https://github.com/hashicorp/terraform/blob/v0.14/CHANGELOG.md)\n- [v0.13](https://github.com/hashicorp/terraform/blob/v0.13/CHANGELOG.md)\n- [v0.12](https://github.com/hashicorp/terraform/blob/v0.12/CHANGELOG.md)\n- [v0.11 and earlier](https://github.com/hashicorp/terraform/blob/v0.11/CHANGELOG.md)\n","publishedAt":"2026-03-18T17:26:18.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.15.0-beta1","media":[]},{"id":"rel_6oZz4SEb0ssKO0io8LJsv","version":"v1.14.7","title":"v1.14.7","summary":"## 1.14.7 (March 11, 2026)\n\n\nNOTES:\n\n* Bump Go version to 1.25.8 to suppress security scanner false positives ([#38249](https://github.com/hashicorp/t...","content":"## 1.14.7 (March 11, 2026)\n\n\nNOTES:\n\n* Bump Go version to 1.25.8 to suppress security scanner false positives ([#38249](https://github.com/hashicorp/terraform/issues/38249))\n\n\n","publishedAt":"2026-03-11T14:14:31.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.14.7","media":[]},{"id":"rel_MRgf4KLe5TRzIY5B1mOPS","version":"v1.15.0-alpha20260304","title":"v1.15.0-alpha20260304","summary":"## 1.15.0-alpha20260304 (March 04, 2026)\n\n\nNEW FEATURES:\n\n* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/terraform/i...","content":"## 1.15.0-alpha20260304 (March 04, 2026)\n\n\nNEW FEATURES:\n\n* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/terraform/issues/32719))\n\n* You can set a `deprecated` attribute 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](https://github.com/hashicorp/terraform/issues/38001))\n\n* backend/s3: Support authentication via `aws login` ([#37976](https://github.com/hashicorp/terraform/issues/37976))\n\n* validate: The validate command now checks the `backend` block. This ensures the backend type exists, that all required attributes are present, and that the backend's own validation logic passes. ([#38021](https://github.com/hashicorp/terraform/issues/38021))\n\n* `convert` function, which allows for precise inline type conversions ([#38160](https://github.com/hashicorp/terraform/issues/38160))\n\n* Terraform now supports variables and locals in module source and version attributes ([#38217](https://github.com/hashicorp/terraform/issues/38217))\n\n\nENHANCEMENTS:\n\n* ssh-based provisioner (file + remote-exec): Re-enable support for PowerShell ([#37794](https://github.com/hashicorp/terraform/issues/37794))\n\n* terraform init log timestamps include millisecond precision ([#37818](https://github.com/hashicorp/terraform/issues/37818))\n\n* init: skip dependencies declared in development override. This allows you to use `terraform init` with developer overrides and install dependencies that are not declared in the override file. ([#37884](https://github.com/hashicorp/terraform/issues/37884))\n\n* Terraform Test: Allow functions within mock blocks ([#34672](https://github.com/hashicorp/terraform/issues/34672))\n\n* improve detection of deprecated resource attributes / blocks ([#38077](https://github.com/hashicorp/terraform/issues/38077))\n\n* Deprecation messages providers set on resources / blocks / attributes are now part of the deprecation warning ([#38135](https://github.com/hashicorp/terraform/issues/38135))\n\n* Include which attribute paths are marked as sensitive in list_start JSON logs ([#38197](https://github.com/hashicorp/terraform/issues/38197))\n\n\nBUG FIXES:\n\n* testing: File-level error diagnostics are now included in JUnit XML skipped test elements, ensuring CI/CD pipelines can detect validation failures ([#37801](https://github.com/hashicorp/terraform/issues/37801))\n\n* A refresh-only plan could result in a non-zero exit code with no changes ([#37406](https://github.com/hashicorp/terraform/issues/37406))\n\n* cli: Fixed crash in `terraform show -json` when plan contains ephemeral resources with preconditions or postconditions ([#37834](https://github.com/hashicorp/terraform/issues/37834))\n\n* cli: Fixed `terraform init -json` to properly format all backend configuration messages as JSON instead of plain text ([#37911](https://github.com/hashicorp/terraform/issues/37911))\n\n* `state show`: The `state show` command will now explicitly fail and return code 1 when it fails to render the named resources state ([#37933](https://github.com/hashicorp/terraform/issues/37933))\n\n* apply: Terraform will raise an explicit error if a plan file intended for one workspace is applied against another workspace ([#37954](https://github.com/hashicorp/terraform/issues/37954))\n\n* lifecycle: `replace_triggered_by` now reports an error when given an invalid attribute reference that does not exist in the target resource ([#36740](https://github.com/hashicorp/terraform/issues/36740))\n\n* backend: Fix nil pointer dereference crash during `terraform init` when the destination backend returns an error ([#38027](https://github.com/hashicorp/terraform/issues/38027))\n\n* stacks: send progress events if the plan fails for better UI integration ([#38039](https://github.com/hashicorp/terraform/issues/38039))\n\n* stacks: component instances should report no-op plan/apply. This solves a UI inconsistency with convergence destroy plans  ([#38049](https://github.com/hashicorp/terraform/issues/38049))\n\n* backend/http: Return conflicting lock info from HTTP backend instead of the lock that failed to be taken ([#38144](https://github.com/hashicorp/terraform/issues/38144))\n\n* states: fixed a bug that caused Terraform to be unable to identify when two states had different output values. This may have caused issues in specific circumstances like backend migrations. ([#38181](https://github.com/hashicorp/terraform/issues/38181))\n\n\nNOTES:\n\n* command/init: Provider installation was refactored to enable future enhancements in the area. This results in different order of operations during init and 2 new log messages replacing one (`initializing_provider_plugin_message`). The change should not have any end-user impact aside from the `init` command output. ([#38227](https://github.com/hashicorp/terraform/issues/38227))\n\n\nUPGRADE NOTES:\n\n* backend/s3: The `AWS_USE_FIPS_ENDPOINT` and `AWS_USE_DUALSTACK_ENDPOINT` environment variables now only respect `true` or `false` values, aligning with the AWS SDK for Go. This replaces the previous behavior which treated any non-empty value as `true`. ([#37601](https://github.com/hashicorp/terraform/issues/37601))\n\n\nEXPERIMENTS:\n\nExperiments are only enabled in alpha releases of Terraform CLI. The following features are not yet available in stable releases.\n\n- The experimental \"deferred actions\" feature, enabled by passing the `-allow-deferral` option to `terraform plan`, permits `count` and `for_each` arguments in `module`, `resource`, and `data` blocks to have unknown values and allows providers to react more flexibly to unknown values.\n- `terraform test cleanup`: The experimental `test cleanup` command. In experimental builds of Terraform, a manifest file and state files for each failed cleanup operation during test operations are saved within the `.terraform` local directory. The `test cleanup` command will attempt to clean up the local state files left behind automatically, without requiring manual intervention.\n- `terraform test`: `backend` blocks and `skip_cleanup` attributes:\n  - Test authors can now specify `backend` blocks within `run` blocks in Terraform Test files. Run blocks with `backend` blocks 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.\n  - Test authors can now specify `skip_cleanup` attributes within test files and within run blocks. The `skip_cleanup` attribute tells `terraform test` not 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 `.terraform` directory, where they can then be cleaned up manually using the also experimental `terraform test cleanup` command.\n\n## Previous Releases\n\nFor information on prior major and minor releases, refer to their changelogs:\n\n- [v1.14](https://github.com/hashicorp/terraform/blob/v1.14/CHANGELOG.md)\n- [v1.13](https://github.com/hashicorp/terraform/blob/v1.13/CHANGELOG.md)\n- [v1.12](https://github.com/hashicorp/terraform/blob/v1.12/CHANGELOG.md)\n- [v1.11](https://github.com/hashicorp/terraform/blob/v1.11/CHANGELOG.md)\n- [v1.10](https://github.com/hashicorp/terraform/blob/v1.10/CHANGELOG.md)\n- [v1.9](https://github.com/hashicorp/terraform/blob/v1.9/CHANGELOG.md)\n- [v1.8](https://github.com/hashicorp/terraform/blob/v1.8/CHANGELOG.md)\n- [v1.7](https://github.com/hashicorp/terraform/blob/v1.7/CHANGELOG.md)\n- [v1.6](https://github.com/hashicorp/terraform/blob/v1.6/CHANGELOG.md)\n- [v1.5](https://github.com/hashicorp/terraform/blob/v1.5/CHANGELOG.md)\n- [v1.4](https://github.com/hashicorp/terraform/blob/v1.4/CHANGELOG.md)\n- [v1.3](https://github.com/hashicorp/terraform/blob/v1.3/CHANGELOG.md)\n- [v1.2](https://github.com/hashicorp/terraform/blob/v1.2/CHANGELOG.md)\n- [v1.1](https://github.com/hashicorp/terraform/blob/v1.1/CHANGELOG.md)\n- [v1.0](https://github.com/hashicorp/terraform/blob/v1.0/CHANGELOG.md)\n- [v0.15](https://github.com/hashicorp/terraform/blob/v0.15/CHANGELOG.md)\n- [v0.14](https://github.com/hashicorp/terraform/blob/v0.14/CHANGELOG.md)\n- [v0.13](https://github.com/hashicorp/terraform/blob/v0.13/CHANGELOG.md)\n- [v0.12](https://github.com/hashicorp/terraform/blob/v0.12/CHANGELOG.md)\n- [v0.11 and earlier](https://github.com/hashicorp/terraform/blob/v0.11/CHANGELOG.md)\n","publishedAt":"2026-03-04T13:01:42.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.15.0-alpha20260304","media":[]},{"id":"rel_bX7CHgQdvh1ijIecV-gpC","version":"v1.14.6","title":"v1.14.6","summary":"## 1.14.6 (February 25, 2026)\n\n\nBUG FIXES:\n\n* terraform test: return error when provider config is invalid ([#38084](https://github.com/hashicorp/terr...","content":"## 1.14.6 (February 25, 2026)\n\n\nBUG FIXES:\n\n* terraform test: return error when provider config is invalid ([#38084](https://github.com/hashicorp/terraform/issues/38084))\n\n\n","publishedAt":"2026-02-25T14:16:02.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.14.6","media":[]},{"id":"rel_4-x_h3avf_jz5Nsg2PjFj","version":"v1.15.0-alpha20260218","title":"v1.15.0-alpha20260218","summary":"## 1.15.0-alpha20260218 (February 18, 2026)\r\n\r\n\r\nNEW FEATURES:\r\n\r\n* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/ter...","content":"## 1.15.0-alpha20260218 (February 18, 2026)\r\n\r\n\r\nNEW FEATURES:\r\n\r\n* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/terraform/issues/32719))\r\n\r\n* You can set a `deprecated` attribute 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](https://github.com/hashicorp/terraform/issues/38001))\r\n\r\n* backend/s3: Support authentication via `aws login` ([#37976](https://github.com/hashicorp/terraform/issues/37976))\r\n\r\n* validate: The validate command now checks the `backend` block. This ensures the backend type exists, that all required attributes are present, and that the backend's own validation logic passes. ([#38021](https://github.com/hashicorp/terraform/issues/38021))\r\n\r\n\r\nENHANCEMENTS:\r\n\r\n* ssh-based provisioner (file + remote-exec): Re-enable support for PowerShell ([#37794](https://github.com/hashicorp/terraform/issues/37794))\r\n\r\n* terraform init log timestamps include millisecond precision ([#37818](https://github.com/hashicorp/terraform/issues/37818))\r\n\r\n* init: skip dependencies declared in development override. This allows you to use `terraform init` with developer overrides and install dependencies that are not declared in the override file. ([#37884](https://github.com/hashicorp/terraform/issues/37884))\r\n\r\n* Terraform Test: Allow functions within mock blocks ([#34672](https://github.com/hashicorp/terraform/issues/34672))\r\n\r\n* improve detection of deprecated resource attributes / blocks ([#38077](https://github.com/hashicorp/terraform/issues/38077))\r\n\r\n\r\nBUG FIXES:\r\n\r\n* testing: File-level error diagnostics are now included in JUnit XML skipped test elements, ensuring CI/CD pipelines can detect validation failures ([#37801](https://github.com/hashicorp/terraform/issues/37801))\r\n\r\n* A refresh-only plan could result in a non-zero exit code with no changes ([#37406](https://github.com/hashicorp/terraform/issues/37406))\r\n\r\n* cli: Fixed crash in `terraform show -json` when plan contains ephemeral resources with preconditions or postconditions ([#37834](https://github.com/hashicorp/terraform/issues/37834))\r\n\r\n* cli: Fixed `terraform init -json` to properly format all backend configuration messages as JSON instead of plain text ([#37911](https://github.com/hashicorp/terraform/issues/37911))\r\n\r\n* `state show`: The `state show` command will now explicitly fail and return code 1 when it fails to render the named resources state ([#37933](https://github.com/hashicorp/terraform/issues/37933))\r\n\r\n* apply: Terraform will raise an explicit error if a plan file intended for one workspace is applied against another workspace ([#37954](https://github.com/hashicorp/terraform/issues/37954))\r\n\r\n* lifecycle: `replace_triggered_by` now reports an error when given an invalid attribute reference that does not exist in the target resource ([#36740](https://github.com/hashicorp/terraform/issues/36740))\r\n\r\n* backend: Fix nil pointer dereference crash during `terraform init` when the destination backend returns an error ([#38027](https://github.com/hashicorp/terraform/issues/38027))\r\n\r\n* stacks: send progress events if the plan fails for better UI integration ([#38039](https://github.com/hashicorp/terraform/issues/38039))\r\n\r\n* stacks: component instances should report no-op plan/apply. This solves a UI inconsistency with convergence destroy plans  ([#38049](https://github.com/hashicorp/terraform/issues/38049))\r\n\r\n* states: fixed a bug that caused Terraform to be unable to identify when two states had different output values. This may have caused issues in specific circumstances like backend migrations. ([#38181](https://github.com/hashicorp/terraform/issues/38181))\r\n\r\n\r\nUPGRADE NOTES:\r\n\r\n* backend/s3: The `AWS_USE_FIPS_ENDPOINT` and `AWS_USE_DUALSTACK_ENDPOINT` environment variables now only respect `true` or `false` values, aligning with the AWS SDK for Go. This replaces the previous behavior which treated any non-empty value as `true`. ([#37601](https://github.com/hashicorp/terraform/issues/37601))\r\n\r\n\r\nEXPERIMENTS:\r\n\r\nExperiments are only enabled in alpha releases of Terraform CLI. The following features are not yet available in stable releases.\r\n\r\n- The experimental \"deferred actions\" feature, enabled by passing the `-allow-deferral` option to `terraform plan`, permits `count` and `for_each` arguments in `module`, `resource`, and `data` blocks to have unknown values and allows providers to react more flexibly to unknown values.\r\n- `terraform test cleanup`: The experimental `test cleanup` command. In experimental builds of Terraform, a manifest file and state files for each failed cleanup operation during test operations are saved within the `.terraform` local directory. The `test cleanup` command will attempt to clean up the local state files left behind automatically, without requiring manual intervention.\r\n- `terraform test`: `backend` blocks and `skip_cleanup` attributes:\r\n  - Test authors can now specify `backend` blocks within `run` blocks in Terraform Test files. Run blocks with `backend` blocks 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.\r\n  - Test authors can now specify `skip_cleanup` attributes within test files and within run blocks. The `skip_cleanup` attribute tells `terraform test` not 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 `.terraform` directory, where they can then be cleaned up manually using the also experimental `terraform test cleanup` command.\r\n\r\n## Previous Releases\r\n\r\nFor information on prior major and minor releases, refer to their changelogs:\r\n\r\n- [v1.14](https://github.com/hashicorp/terraform/blob/v1.14/CHANGELOG.md)\r\n- [v1.13](https://github.com/hashicorp/terraform/blob/v1.13/CHANGELOG.md)\r\n- [v1.12](https://github.com/hashicorp/terraform/blob/v1.12/CHANGELOG.md)\r\n- [v1.11](https://github.com/hashicorp/terraform/blob/v1.11/CHANGELOG.md)\r\n- [v1.10](https://github.com/hashicorp/terraform/blob/v1.10/CHANGELOG.md)\r\n- [v1.9](https://github.com/hashicorp/terraform/blob/v1.9/CHANGELOG.md)\r\n- [v1.8](https://github.com/hashicorp/terraform/blob/v1.8/CHANGELOG.md)\r\n- [v1.7](https://github.com/hashicorp/terraform/blob/v1.7/CHANGELOG.md)\r\n- [v1.6](https://github.com/hashicorp/terraform/blob/v1.6/CHANGELOG.md)\r\n- [v1.5](https://github.com/hashicorp/terraform/blob/v1.5/CHANGELOG.md)\r\n- [v1.4](https://github.com/hashicorp/terraform/blob/v1.4/CHANGELOG.md)\r\n- [v1.3](https://github.com/hashicorp/terraform/blob/v1.3/CHANGELOG.md)\r\n- [v1.2](https://github.com/hashicorp/terraform/blob/v1.2/CHANGELOG.md)\r\n- [v1.1](https://github.com/hashicorp/terraform/blob/v1.1/CHANGELOG.md)\r\n- [v1.0](https://github.com/hashicorp/terraform/blob/v1.0/CHANGELOG.md)\r\n- [v0.15](https://github.com/hashicorp/terraform/blob/v0.15/CHANGELOG.md)\r\n- [v0.14](https://github.com/hashicorp/terraform/blob/v0.14/CHANGELOG.md)\r\n- [v0.13](https://github.com/hashicorp/terraform/blob/v0.13/CHANGELOG.md)\r\n- [v0.12](https://github.com/hashicorp/terraform/blob/v0.12/CHANGELOG.md)\r\n- [v0.11 and earlier](https://github.com/hashicorp/terraform/blob/v0.11/CHANGELOG.md)\r\n","publishedAt":"2026-02-18T15:05:59.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.15.0-alpha20260218","media":[]},{"id":"rel_IbfkR0OVsEnuAhP2TFxCM","version":"v1.14.5","title":"v1.14.5","summary":"## 1.14.5 (February 11, 2026)\n\n\nBUG FIXES:\n\n* Fixed an issue where terraform stacks validate was failing to resolve relative paths for modules ([#3802...","content":"## 1.14.5 (February 11, 2026)\n\n\nBUG FIXES:\n\n* Fixed an issue where terraform stacks validate was failing to resolve relative paths for modules ([#38025](https://github.com/hashicorp/terraform/issues/38025))\n\n\n","publishedAt":"2026-02-11T15:57:11.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.14.5","media":[]},{"id":"rel_pB0dfP2HZFJUbTDb6vdnu","version":"v1.15.0-alpha20260204","title":"v1.15.0-alpha20260204","summary":"## 1.15.0-alpha20260204 (February 04, 2026)\n\n\nNEW FEATURES:\n\n* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/terrafor...","content":"## 1.15.0-alpha20260204 (February 04, 2026)\n\n\nNEW FEATURES:\n\n* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/terraform/issues/32719))\n\n* You can set a `deprecated` attribute 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](https://github.com/hashicorp/terraform/issues/38001))\n\n* backend/s3: Support authentication via `aws login` ([#37967](https://github.com/hashicorp/terraform/issues/37967))\n\n\nENHANCEMENTS:\n\n* ssh-based provisioner (file + remote-exec): Re-enable support for PowerShell ([#37794](https://github.com/hashicorp/terraform/issues/37794))\n\n* terraform init log timestamps include millisecond precision ([#37818](https://github.com/hashicorp/terraform/issues/37818))\n\n* init: skip dependencies declared in development override. This allows you to use `terraform init` with developer overrides and install dependencies that are not declared in the override file. ([#37884](https://github.com/hashicorp/terraform/issues/37884))\n\n* Terraform Test: Allow functions within mock blocks ([#34672](https://github.com/hashicorp/terraform/issues/34672))\n\n* improve detection of deprecated resource attributes / blocks ([#38077](https://github.com/hashicorp/terraform/issues/38077))\n\n\nBUG FIXES:\n\n* testing: File-level error diagnostics are now included in JUnit XML skipped test elements, ensuring CI/CD pipelines can detect validation failures ([#37801](https://github.com/hashicorp/terraform/issues/37801))\n\n* A refresh-only plan could result in a non-zero exit code with no changes ([#37406](https://github.com/hashicorp/terraform/issues/37406))\n\n* cli: Fixed crash in `terraform show -json` when plan contains ephemeral resources with preconditions or postconditions ([#37834](https://github.com/hashicorp/terraform/issues/37834))\n\n* cli: Fixed `terraform init -json` to properly format all backend configuration messages as JSON instead of plain text ([#37911](https://github.com/hashicorp/terraform/issues/37911))\n\n* `state show`: The `state show` command will now explicitly fail and return code 1 when it fails to render the named resources state ([#37933](https://github.com/hashicorp/terraform/issues/37933))\n\n* apply: Terraform will raise an explicit error if a plan file intended for one workspace is applied against another workspace ([#37954](https://github.com/hashicorp/terraform/issues/37954))\n\n* lifecycle: `replace_triggered_by` now reports an error when given an invalid attribute reference that does not exist in the target resource ([#36740](https://github.com/hashicorp/terraform/issues/36740))\n\n* backend: Fix nil pointer dereference crash during `terraform init` when the destination backend returns an error ([#38027](https://github.com/hashicorp/terraform/issues/38027))\n\n* stacks: send progress events if the plan fails for better UI integration ([#38039](https://github.com/hashicorp/terraform/issues/38039))\n\n* cloud: terraform cloud and registry discovery network requests are now more resilient, making temporary network or service related errors less common ([#38064](https://github.com/hashicorp/terraform/issues/38064))\n\n* stacks: component instances should report no-op plan/apply. This solves a UI inconsistency with convergence destroy plans  ([#38049](https://github.com/hashicorp/terraform/issues/38049))\n\n\nUPGRADE NOTES:\n\n* backend/s3: The `AWS_USE_FIPS_ENDPOINT` and `AWS_USE_DUALSTACK_ENDPOINT` environment variables now only respect `true` or `false` values, aligning with the AWS SDK for Go. This replaces the previous behavior which treated any non-empty value as `true`. ([#37601](https://github.com/hashicorp/terraform/issues/37601))\n\n\nEXPERIMENTS:\n\nExperiments are only enabled in alpha releases of Terraform CLI. The following features are not yet available in stable releases.\n\n- The experimental \"deferred actions\" feature, enabled by passing the `-allow-deferral` option to `terraform plan`, permits `count` and `for_each` arguments in `module`, `resource`, and `data` blocks to have unknown values and allows providers to react more flexibly to unknown values.\n- `terraform test cleanup`: The experimental `test cleanup` command. In experimental builds of Terraform, a manifest file and state files for each failed cleanup operation during test operations are saved within the `.terraform` local directory. The `test cleanup` command will attempt to clean up the local state files left behind automatically, without requiring manual intervention.\n- `terraform test`: `backend` blocks and `skip_cleanup` attributes:\n  - Test authors can now specify `backend` blocks within `run` blocks in Terraform Test files. Run blocks with `backend` blocks 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.\n  - Test authors can now specify `skip_cleanup` attributes within test files and within run blocks. The `skip_cleanup` attribute tells `terraform test` not 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 `.terraform` directory, where they can then be cleaned up manually using the also experimental `terraform test cleanup` command.\n\n## Previous Releases\n\nFor information on prior major and minor releases, refer to their changelogs:\n\n- [v1.14](https://github.com/hashicorp/terraform/blob/v1.14/CHANGELOG.md)\n- [v1.13](https://github.com/hashicorp/terraform/blob/v1.13/CHANGELOG.md)\n- [v1.12](https://github.com/hashicorp/terraform/blob/v1.12/CHANGELOG.md)\n- [v1.11](https://github.com/hashicorp/terraform/blob/v1.11/CHANGELOG.md)\n- [v1.10](https://github.com/hashicorp/terraform/blob/v1.10/CHANGELOG.md)\n- [v1.9](https://github.com/hashicorp/terraform/blob/v1.9/CHANGELOG.md)\n- [v1.8](https://github.com/hashicorp/terraform/blob/v1.8/CHANGELOG.md)\n- [v1.7](https://github.com/hashicorp/terraform/blob/v1.7/CHANGELOG.md)\n- [v1.6](https://github.com/hashicorp/terraform/blob/v1.6/CHANGELOG.md)\n- [v1.5](https://github.com/hashicorp/terraform/blob/v1.5/CHANGELOG.md)\n- [v1.4](https://github.com/hashicorp/terraform/blob/v1.4/CHANGELOG.md)\n- [v1.3](https://github.com/hashicorp/terraform/blob/v1.3/CHANGELOG.md)\n- [v1.2](https://github.com/hashicorp/terraform/blob/v1.2/CHANGELOG.md)\n- [v1.1](https://github.com/hashicorp/terraform/blob/v1.1/CHANGELOG.md)\n- [v1.0](https://github.com/hashicorp/terraform/blob/v1.0/CHANGELOG.md)\n- [v0.15](https://github.com/hashicorp/terraform/blob/v0.15/CHANGELOG.md)\n- [v0.14](https://github.com/hashicorp/terraform/blob/v0.14/CHANGELOG.md)\n- [v0.13](https://github.com/hashicorp/terraform/blob/v0.13/CHANGELOG.md)\n- [v0.12](https://github.com/hashicorp/terraform/blob/v0.12/CHANGELOG.md)\n- [v0.11 and earlier](https://github.com/hashicorp/terraform/blob/v0.11/CHANGELOG.md)\n","publishedAt":"2026-02-04T11:09:29.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.15.0-alpha20260204","media":[]},{"id":"rel_3Hr_Jfw7bBoGxwGW8Llr6","version":"v1.14.4","title":"v1.14.4","summary":"## 1.14.4 (January 28, 2026)\n\n\nBUG FIXES:\n\n* backend: Fix nil pointer dereference crash during `terraform init` when the destination backend returns a...","content":"## 1.14.4 (January 28, 2026)\n\n\nBUG FIXES:\n\n* backend: Fix nil pointer dereference crash during `terraform init` when the destination backend returns an error ([#38027](https://github.com/hashicorp/terraform/issues/38027))\n\n* Fixes an issue where any warning diagnostics generated during terraform query execution failed to render in the cloud backend session ([#38040](https://github.com/hashicorp/terraform/issues/38040))\n\n* actions in modules without instances failed the plan graph ([#38089](https://github.com/hashicorp/terraform/issues/38089))\n\n\n","publishedAt":"2026-01-28T11:07:12.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.14.4","media":[]},{"id":"rel_6iZCebOLedBhMQR59iPBo","version":"v1.14.3","title":"v1.14.3","summary":"## 1.14.3 (December 17, 2025)\n\n\nBUG FIXES:\n\n* stacks: change absolute paths in path.module/path.root to be relative, as documented ([#37982](https://g...","content":"## 1.14.3 (December 17, 2025)\n\n\nBUG FIXES:\n\n* stacks: change absolute paths in path.module/path.root to be relative, as documented ([#37982](https://github.com/hashicorp/terraform/issues/37982))\n\n\n","publishedAt":"2025-12-17T11:53:08.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.14.3","media":[]},{"id":"rel_ZlvnOKbHEAAeaKiyOp5xX","version":"v1.14.2","title":"v1.14.2","summary":"## 1.14.2 (December 11, 2025)\n\n\nENHANCEMENTS:\n\n* Add component registry source resolution support to Terraform Stacks ([#37888](https://github.com/has...","content":"## 1.14.2 (December 11, 2025)\n\n\nENHANCEMENTS:\n\n* Add component registry source resolution support to Terraform Stacks ([#37888](https://github.com/hashicorp/terraform/issues/37888))\n\n\nBUG FIXES:\n\n* stacks: surface runtime issues with local values to user during plan ([#37980](https://github.com/hashicorp/terraform/issues/37980))\n\n* resource instance apply failures should not cause the resource instance state to be empty. ([#37981](https://github.com/hashicorp/terraform/issues/37981))\n\n\n","publishedAt":"2025-12-11T12:47:33.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.14.2","media":[]},{"id":"rel_TzBZhqq74Mp3UmHi1P4qh","version":"v1.15.0-alpha20251203","title":"v1.15.0-alpha20251203","summary":"## 1.15.0-alpha20251203 (December 03, 2025)\n\n\nNEW FEATURES:\n\n* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/terrafor...","content":"## 1.15.0-alpha20251203 (December 03, 2025)\n\n\nNEW FEATURES:\n\n* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/terraform/issues/32719))\n\n\nENHANCEMENTS:\n\n* ssh-based provisioner (file + remote-exec): Re-enable support for PowerShell ([#37794](https://github.com/hashicorp/terraform/issues/37794))\n\n* terraform init log timestamps include millisecond precision ([#37818](https://github.com/hashicorp/terraform/issues/37818))\n\n* init: skip dependencies declared in development override. This allows you to use `terraform init` with developer overrides and install dependencies that are not declared in the override file. ([#37884](https://github.com/hashicorp/terraform/issues/37884))\n\n\nBUG FIXES:\n\n* testing: File-level error diagnostics are now included in JUnit XML skipped test elements, ensuring CI/CD pipelines can detect validation failures ([#37801](https://github.com/hashicorp/terraform/issues/37801))\n\n* A refresh-only plan could result in a non-zero exit code with no changes ([#37406](https://github.com/hashicorp/terraform/issues/37406))\n\n* cli: Fixed crash in `terraform show -json` when plan contains ephemeral resources with preconditions or postconditions ([#37834](https://github.com/hashicorp/terraform/issues/37834))\n\n* cli: Fixed `terraform init -json` to properly format all backend configuration messages as JSON instead of plain text ([#37911](https://github.com/hashicorp/terraform/issues/37911))\n\n* `state show`: The `state show` command will now explicitly fail and return code 1 when it fails to render the named resources state ([#37933](https://github.com/hashicorp/terraform/issues/37933))\n\n\nEXPERIMENTS:\n\nExperiments are only enabled in alpha releases of Terraform CLI. The following features are not yet available in stable releases.\n\n- The experimental \"deferred actions\" feature, enabled by passing the `-allow-deferral` option to `terraform plan`, permits `count` and `for_each` arguments in `module`, `resource`, and `data` blocks to have unknown values and allows providers to react more flexibly to unknown values.\n- `terraform test cleanup`: The experimental `test cleanup` command. In experimental builds of Terraform, a manifest file and state files for each failed cleanup operation during test operations are saved within the `.terraform` local directory. The `test cleanup` command will attempt to clean up the local state files left behind automatically, without requiring manual intervention.\n- `terraform test`: `backend` blocks and `skip_cleanup` attributes:\n  - Test authors can now specify `backend` blocks within `run` blocks in Terraform Test files. Run blocks with `backend` blocks 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.\n  - Test authors can now specify `skip_cleanup` attributes within test files and within run blocks. The `skip_cleanup` attribute tells `terraform test` not 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 `.terraform` directory, where they can then be cleaned up manually using the also experimental `terraform test cleanup` command.\n\n## Previous Releases\n\nFor information on prior major and minor releases, refer to their changelogs:\n\n- [v1.14](https://github.com/hashicorp/terraform/blob/v1.14/CHANGELOG.md)\n- [v1.13](https://github.com/hashicorp/terraform/blob/v1.13/CHANGELOG.md)\n- [v1.12](https://github.com/hashicorp/terraform/blob/v1.12/CHANGELOG.md)\n- [v1.11](https://github.com/hashicorp/terraform/blob/v1.11/CHANGELOG.md)\n- [v1.10](https://github.com/hashicorp/terraform/blob/v1.10/CHANGELOG.md)\n- [v1.9](https://github.com/hashicorp/terraform/blob/v1.9/CHANGELOG.md)\n- [v1.8](https://github.com/hashicorp/terraform/blob/v1.8/CHANGELOG.md)\n- [v1.7](https://github.com/hashicorp/terraform/blob/v1.7/CHANGELOG.md)\n- [v1.6](https://github.com/hashicorp/terraform/blob/v1.6/CHANGELOG.md)\n- [v1.5](https://github.com/hashicorp/terraform/blob/v1.5/CHANGELOG.md)\n- [v1.4](https://github.com/hashicorp/terraform/blob/v1.4/CHANGELOG.md)\n- [v1.3](https://github.com/hashicorp/terraform/blob/v1.3/CHANGELOG.md)\n- [v1.2](https://github.com/hashicorp/terraform/blob/v1.2/CHANGELOG.md)\n- [v1.1](https://github.com/hashicorp/terraform/blob/v1.1/CHANGELOG.md)\n- [v1.0](https://github.com/hashicorp/terraform/blob/v1.0/CHANGELOG.md)\n- [v0.15](https://github.com/hashicorp/terraform/blob/v0.15/CHANGELOG.md)\n- [v0.14](https://github.com/hashicorp/terraform/blob/v0.14/CHANGELOG.md)\n- [v0.13](https://github.com/hashicorp/terraform/blob/v0.13/CHANGELOG.md)\n- [v0.12](https://github.com/hashicorp/terraform/blob/v0.12/CHANGELOG.md)\n- [v0.11 and earlier](https://github.com/hashicorp/terraform/blob/v0.11/CHANGELOG.md)\n","publishedAt":"2025-12-03T15:05:36.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.15.0-alpha20251203","media":[]},{"id":"rel_o-A3lLmvsdSOwfNnO_y7H","version":"v1.14.1","title":"v1.14.1","summary":"## 1.14.1 (December 3, 2025)\n\n\nBUG FIXES:\n\n* test: allow ephemeral outputs in root modules ([#37813](https://github.com/hashicorp/terraform/issues/378...","content":"## 1.14.1 (December 3, 2025)\n\n\nBUG FIXES:\n\n* test: allow ephemeral outputs in root modules ([#37813](https://github.com/hashicorp/terraform/issues/37813))\n\n* Combinations of replace_triggered_by and -replace could result in some instances not being replaced ([#37833](https://github.com/hashicorp/terraform/issues/37833))\n\n* providers lock: include providers required by terraform test ([#37851](https://github.com/hashicorp/terraform/issues/37851))\n\n* Set state information in the proto request for the `GenerateResourceConfig` RPC ([#37896](https://github.com/hashicorp/terraform/issues/37896))\n\n* actions: make after_create & after_update actions run after the resource has applied ([#37936](https://github.com/hashicorp/terraform/issues/37936))\n\n\n","publishedAt":"2025-12-03T11:58:24.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.14.1","media":[]},{"id":"rel_iwUfuA_3wqNW5P_tvXK_V","version":"v1.15.0-alpha20251119","title":"v1.15.0-alpha20251119","summary":"## 1.15.0-alpha20251119 (November 19, 2025)\n\n\nNEW FEATURES:\n\n* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/terrafor...","content":"## 1.15.0-alpha20251119 (November 19, 2025)\n\n\nNEW FEATURES:\n\n* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/terraform/issues/32719))\n\n\nENHANCEMENTS:\n\n* ssh-based provisioner (file + remote-exec): Re-enable support for PowerShell ([#37794](https://github.com/hashicorp/terraform/issues/37794))\n\n* init: skip dependencies declared in development override. This allows you to use `terraform init` with developer overrides and install dependencies that are not declared in the override file. ([#37884](https://github.com/hashicorp/terraform/issues/37884))\n\n\nBUG FIXES:\n\n* testing: File-level error diagnostics are now included in JUnit XML skipped test elements, ensuring CI/CD pipelines can detect validation failures ([#37801](https://github.com/hashicorp/terraform/issues/37801))\n\n* A refresh-only plan could result in a non-zero exit code with no changes ([#37406](https://github.com/hashicorp/terraform/issues/37406))\n\n* cli: Fixed crash in `terraform show -json` when plan contains ephemeral resources with preconditions or postconditions ([#37834](https://github.com/hashicorp/terraform/issues/37834))\n\n\nEXPERIMENTS:\n\nExperiments are only enabled in alpha releases of Terraform CLI. The following features are not yet available in stable releases.\n\n- The experimental \"deferred actions\" feature, enabled by passing the `-allow-deferral` option to `terraform plan`, permits `count` and `for_each` arguments in `module`, `resource`, and `data` blocks to have unknown values and allows providers to react more flexibly to unknown values.\n- `terraform test cleanup`: The experimental `test cleanup` command. In experimental builds of Terraform, a manifest file and state files for each failed cleanup operation during test operations are saved within the `.terraform` local directory. The `test cleanup` command will attempt to clean up the local state files left behind automatically, without requiring manual intervention.\n- `terraform test`: `backend` blocks and `skip_cleanup` attributes:\n  - Test authors can now specify `backend` blocks within `run` blocks in Terraform Test files. Run blocks with `backend` blocks 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.\n  - Test authors can now specify `skip_cleanup` attributes within test files and within run blocks. The `skip_cleanup` attribute tells `terraform test` not 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 `.terraform` directory, where they can then be cleaned up manually using the also experimental `terraform test cleanup` command.\n\n## Previous Releases\n\nFor information on prior major and minor releases, refer to their changelogs:\n\n- [v1.14](https://github.com/hashicorp/terraform/blob/v1.14/CHANGELOG.md)\n- [v1.13](https://github.com/hashicorp/terraform/blob/v1.13/CHANGELOG.md)\n- [v1.12](https://github.com/hashicorp/terraform/blob/v1.12/CHANGELOG.md)\n- [v1.11](https://github.com/hashicorp/terraform/blob/v1.11/CHANGELOG.md)\n- [v1.10](https://github.com/hashicorp/terraform/blob/v1.10/CHANGELOG.md)\n- [v1.9](https://github.com/hashicorp/terraform/blob/v1.9/CHANGELOG.md)\n- [v1.8](https://github.com/hashicorp/terraform/blob/v1.8/CHANGELOG.md)\n- [v1.7](https://github.com/hashicorp/terraform/blob/v1.7/CHANGELOG.md)\n- [v1.6](https://github.com/hashicorp/terraform/blob/v1.6/CHANGELOG.md)\n- [v1.5](https://github.com/hashicorp/terraform/blob/v1.5/CHANGELOG.md)\n- [v1.4](https://github.com/hashicorp/terraform/blob/v1.4/CHANGELOG.md)\n- [v1.3](https://github.com/hashicorp/terraform/blob/v1.3/CHANGELOG.md)\n- [v1.2](https://github.com/hashicorp/terraform/blob/v1.2/CHANGELOG.md)\n- [v1.1](https://github.com/hashicorp/terraform/blob/v1.1/CHANGELOG.md)\n- [v1.0](https://github.com/hashicorp/terraform/blob/v1.0/CHANGELOG.md)\n- [v0.15](https://github.com/hashicorp/terraform/blob/v0.15/CHANGELOG.md)\n- [v0.14](https://github.com/hashicorp/terraform/blob/v0.14/CHANGELOG.md)\n- [v0.13](https://github.com/hashicorp/terraform/blob/v0.13/CHANGELOG.md)\n- [v0.12](https://github.com/hashicorp/terraform/blob/v0.12/CHANGELOG.md)\n- [v0.11 and earlier](https://github.com/hashicorp/terraform/blob/v0.11/CHANGELOG.md)\n","publishedAt":"2025-11-19T19:06:41.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.15.0-alpha20251119","media":[]},{"id":"rel_hqrxuuDHQlN4lNn6YIpvo","version":"v1.14.0","title":"v1.14.0","summary":"## 1.14.0 (November 19, 2025)\n\n\nNEW FEATURES:\n\n* **List Resources**: List resources can be defined in `*.tfquery.hcl` files and allow querying and fil...","content":"## 1.14.0 (November 19, 2025)\n\n\nNEW FEATURES:\n\n* **List Resources**: List resources can be defined in `*.tfquery.hcl` files and allow querying and filterting existing infrastructure.\n\n* A new Terraform command `terraform query`: Executes list operations against existing infrastructure and displays the results. The command can optionally generate configuration for importing results into Terraform.\n\n* A new GenerateResourceConfiguration RPC allows providers to create more precise configuration values during import. ([#37515](https://github.com/hashicorp/terraform/issues/37515))\n\n* New top-level Actions block: Actions are provider defined and meant to codify use cases outside the normal CRUD model in your Terraform configuration. Providers can define Actions like `aws_lambda_invoke` or `aws_cloudfront_create_invalidation` that do something imparative outside of Terraforms normal CRUD model. You can configure such a side-effect with an action block and have actions triggered through the lifecycle of a resource or through passing the `-invoke` CLI flag. ([#37553](https://github.com/hashicorp/terraform/issues/37553))\n\n\nENHANCEMENTS:\n\n* terraform test: expected diagnostics will be included in test output when running in verbose mode\" ([#37362](https://github.com/hashicorp/terraform/issues/37362))\n\n* terraform test: ignore prevent_destroy attribute during when cleaning up tests\" ([#37364](https://github.com/hashicorp/terraform/issues/37364))\n\n* `terraform stacks` command support for `-help` flag ([#37645](https://github.com/hashicorp/terraform/issues/37645))\n\n* query: support offline validation of query files via -query flag in the validate command ([#37671](https://github.com/hashicorp/terraform/issues/37671))\n\n* Updates to support the AWS European Sovereign Cloud ([#37721](https://github.com/hashicorp/terraform/issues/37721))\n\n\nBUG FIXES:\n\n* Retrieve all workspace variables while doing a `terraform import`, include variables inherited from variable sets but not overwritten by the workspace. ([#37241](https://github.com/hashicorp/terraform/issues/37241))\n\n* Fix OSS backend proxy support by adding a proxy layer for OSS backend operations. Resolves hashicorp/terraform#36897. ([#36897](https://github.com/hashicorp/terraform/issues/36897))\n\n* console and test: return explicit diagnostics when referencing resources that were not included in the most recent operation. ([#37663](https://github.com/hashicorp/terraform/issues/37663))\n\n* query: generate unique resource identifiers for results of expanded list resources ([#37681](https://github.com/hashicorp/terraform/issues/37681))\n\n* The CLI now summarizes the number of actions invoked during `terraform apply`, matching the plan output. ([#37689](https://github.com/hashicorp/terraform/issues/37689))\n\n* Allow filesystem functions to return inconsistent results when evaluated within provider configuration ([#37854](https://github.com/hashicorp/terraform/issues/37854))\n\n* query: improve error handling for missing identity schemas ([#37863](https://github.com/hashicorp/terraform/issues/37863))\n\n\nUPGRADE NOTES:\n\n* The parallelism of Terraform operations within container runtimes may be reduced depending on the CPU bandwidth limit setting. ([#37436](https://github.com/hashicorp/terraform/issues/37436))\n\n* Building Terraform 1.14 requires macOS Monterey or later (due to being built on Go 1.25 which imposes these requirements) ([#37436](https://github.com/hashicorp/terraform/issues/37436))\n\n\n## Previous Releases\n\nFor information on prior major and minor releases, refer to their changelogs:\n\n- [v1.13](https://github.com/hashicorp/terraform/blob/v1.13/CHANGELOG.md)\n- [v1.12](https://github.com/hashicorp/terraform/blob/v1.12/CHANGELOG.md)\n- [v1.11](https://github.com/hashicorp/terraform/blob/v1.11/CHANGELOG.md)\n- [v1.10](https://github.com/hashicorp/terraform/blob/v1.10/CHANGELOG.md)\n- [v1.9](https://github.com/hashicorp/terraform/blob/v1.9/CHANGELOG.md)\n- [v1.8](https://github.com/hashicorp/terraform/blob/v1.8/CHANGELOG.md)\n- [v1.7](https://github.com/hashicorp/terraform/blob/v1.7/CHANGELOG.md)\n- [v1.6](https://github.com/hashicorp/terraform/blob/v1.6/CHANGELOG.md)\n- [v1.5](https://github.com/hashicorp/terraform/blob/v1.5/CHANGELOG.md)\n- [v1.4](https://github.com/hashicorp/terraform/blob/v1.4/CHANGELOG.md)\n- [v1.3](https://github.com/hashicorp/terraform/blob/v1.3/CHANGELOG.md)\n- [v1.2](https://github.com/hashicorp/terraform/blob/v1.2/CHANGELOG.md)\n- [v1.1](https://github.com/hashicorp/terraform/blob/v1.1/CHANGELOG.md)\n- [v1.0](https://github.com/hashicorp/terraform/blob/v1.0/CHANGELOG.md)\n- [v0.15](https://github.com/hashicorp/terraform/blob/v0.15/CHANGELOG.md)\n- [v0.14](https://github.com/hashicorp/terraform/blob/v0.14/CHANGELOG.md)\n- [v0.13](https://github.com/hashicorp/terraform/blob/v0.13/CHANGELOG.md)\n- [v0.12](https://github.com/hashicorp/terraform/blob/v0.12/CHANGELOG.md)\n- [v0.11 and earlier](https://github.com/hashicorp/terraform/blob/v0.11/CHANGELOG.md)\n","publishedAt":"2025-11-19T14:17:22.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.14.0","media":[]},{"id":"rel_s-YIaVxH9wJsb9dewx-0c","version":"v1.14.0-rc2","title":"v1.14.0-rc2","summary":"## 1.14.0-rc2 (November 05, 2025)\n\n\nNEW FEATURES:\n\n* **List Resources**: List resources can be defined in `*.tfquery.hcl` files and allow querying and...","content":"## 1.14.0-rc2 (November 05, 2025)\n\n\nNEW FEATURES:\n\n* **List Resources**: List resources can be defined in `*.tfquery.hcl` files and allow querying and filterting existing infrastructure.\n\n* A new Terraform command `terraform query`: Executes list operations against existing infrastructure and displays the results. The command can optionally generate configuration for importing results into Terraform.\n\n* A new GenerateResourceConfiguration RPC allows providers to create more precise configuration values during import. ([#37515](https://github.com/hashicorp/terraform/issues/37515))\n\n* New top-level Actions block: Actions are provider defined and meant to codify use cases outside the normal CRUD model in your Terraform configuration. Providers can define Actions like `aws_lambda_invoke` or `aws_cloudfront_create_invalidation` that do something imparative outside of Terraforms normal CRUD model. You can configure such a side-effect with an action block and have actions triggered through the lifecycle of a resource or through passing the `-invoke` CLI flag. ([#37553](https://github.com/hashicorp/terraform/issues/37553))\n\n\nENHANCEMENTS:\n\n* terraform test: expected diagnostics will be included in test output when running in verbose mode\" ([#37362](https://github.com/hashicorp/terraform/issues/37362))\n\n* terraform test: ignore prevent_destroy attribute during when cleaning up tests\" ([#37364](https://github.com/hashicorp/terraform/issues/37364))\n\n* `terraform stacks` command support for `-help` flag ([#37645](https://github.com/hashicorp/terraform/issues/37645))\n\n* query: support offline validation of query files via -query flag in the validate command ([#37671](https://github.com/hashicorp/terraform/issues/37671))\n\n* Updates to support the AWS European Sovereign Cloud ([#37721](https://github.com/hashicorp/terraform/issues/37721))\n\n\nBUG FIXES:\n\n* Retrieve all workspace variables while doing a `terraform import`, include variables inherited from variable sets but not overwritten by the workspace. ([#37241](https://github.com/hashicorp/terraform/issues/37241))\n\n* Fix OSS backend proxy support by adding a proxy layer for OSS backend operations. Resolves hashicorp/terraform#36897. ([#36897](https://github.com/hashicorp/terraform/issues/36897))\n\n* console and test: return explicit diagnostics when referencing resources that were not included in the most recent operation. ([#37663](https://github.com/hashicorp/terraform/issues/37663))\n\n* query: generate unique resource identifiers for results of expanded list resources ([#37681](https://github.com/hashicorp/terraform/issues/37681))\n\n* The CLI now summarizes the number of actions invoked during `terraform apply`, matching the plan output. ([#37689](https://github.com/hashicorp/terraform/issues/37689))\n\n* Allow filesystem functions to return inconsistent results when evaluated within provider configuration ([#37854](https://github.com/hashicorp/terraform/issues/37854))\n\n* query: improve error handling for missing identity schemas ([#37863](https://github.com/hashicorp/terraform/issues/37863))\n\n\nUPGRADE NOTES:\n\n* The parallelism of Terraform operations within container runtimes may be reduced depending on the CPU bandwidth limit setting. ([#37436](https://github.com/hashicorp/terraform/issues/37436))\n\n* Building Terraform 1.14 requires macOS Monterey or later (due to being built on Go 1.25 which imposes these requirements) ([#37436](https://github.com/hashicorp/terraform/issues/37436))\n\n\n## Previous Releases\n\nFor information on prior major and minor releases, refer to their changelogs:\n\n- [v1.13](https://github.com/hashicorp/terraform/blob/v1.13/CHANGELOG.md)\n- [v1.12](https://github.com/hashicorp/terraform/blob/v1.12/CHANGELOG.md)\n- [v1.11](https://github.com/hashicorp/terraform/blob/v1.11/CHANGELOG.md)\n- [v1.10](https://github.com/hashicorp/terraform/blob/v1.10/CHANGELOG.md)\n- [v1.9](https://github.com/hashicorp/terraform/blob/v1.9/CHANGELOG.md)\n- [v1.8](https://github.com/hashicorp/terraform/blob/v1.8/CHANGELOG.md)\n- [v1.7](https://github.com/hashicorp/terraform/blob/v1.7/CHANGELOG.md)\n- [v1.6](https://github.com/hashicorp/terraform/blob/v1.6/CHANGELOG.md)\n- [v1.5](https://github.com/hashicorp/terraform/blob/v1.5/CHANGELOG.md)\n- [v1.4](https://github.com/hashicorp/terraform/blob/v1.4/CHANGELOG.md)\n- [v1.3](https://github.com/hashicorp/terraform/blob/v1.3/CHANGELOG.md)\n- [v1.2](https://github.com/hashicorp/terraform/blob/v1.2/CHANGELOG.md)\n- [v1.1](https://github.com/hashicorp/terraform/blob/v1.1/CHANGELOG.md)\n- [v1.0](https://github.com/hashicorp/terraform/blob/v1.0/CHANGELOG.md)\n- [v0.15](https://github.com/hashicorp/terraform/blob/v0.15/CHANGELOG.md)\n- [v0.14](https://github.com/hashicorp/terraform/blob/v0.14/CHANGELOG.md)\n- [v0.13](https://github.com/hashicorp/terraform/blob/v0.13/CHANGELOG.md)\n- [v0.12](https://github.com/hashicorp/terraform/blob/v0.12/CHANGELOG.md)\n- [v0.11 and earlier](https://github.com/hashicorp/terraform/blob/v0.11/CHANGELOG.md)\n","publishedAt":"2025-11-05T13:51:00.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.14.0-rc2","media":[]},{"id":"rel_59EPky1dAmoQxaotBVisQ","version":"v1.13.5","title":"v1.13.5","summary":"## 1.13.5 (November 5, 2025)\n\n\nBUG FIXES:\n\n* impure functions could cause templatefile to incorrectly fail consistency checks ([#37807](https://github...","content":"## 1.13.5 (November 5, 2025)\n\n\nBUG FIXES:\n\n* impure functions could cause templatefile to incorrectly fail consistency checks ([#37807](https://github.com/hashicorp/terraform/issues/37807))\n\n* Allow filesystem functions to return inconsistent results when evaluated within provider configuration ([#37854](https://github.com/hashicorp/terraform/issues/37854))\n\n\n","publishedAt":"2025-11-05T11:42:10.000Z","url":"https://github.com/hashicorp/terraform/releases/tag/v1.13.5","media":[]}],"pagination":{"page":1,"pageSize":20,"totalPages":6,"totalItems":102},"summaries":{"rolling":null,"monthly":[]}}