---
name: Terraform
slug: terraform-releases
type: github
source_url: https://github.com/hashicorp/terraform
changelog_url: https://github.com/hashicorp/terraform/blob/HEAD/CHANGELOG.md
organization: HashiCorp
organization_slug: hashicorp
total_releases: 55
latest_version: v1.16.5
latest_date: 2026-10-02
last_updated: 2026-10-08
tracking_since: 2024-06-26
canonical: https://releases.sh/hashicorp/terraform-releases
organization_url: https://releases.sh/hashicorp
---

<Release version="v1.16.5" date="October 2, 2026" published="2026-10-02T13:04:00.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.16.5">
## 1.16.5 (September 30, 2026)


BUG FIXES:

* Fixed a crash that happens when a tainted instance state is seen without a valid status ([#39287](https://github.com/hashicorp/terraform/issues/39287))

* resource-identity: fixed an issue where resource identity could be nil during delete ([#39285](https://github.com/hashicorp/terraform/issues/39285))



</Release>

<Release version="v1.16.4" date="September 23, 2026" published="2026-09-23T12:44:16.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.16.4">
## 1.16.4 (September 23, 2026)


BUG FIXES:

* Fixed an issue where Terraform fails when rendering policy evaluation outcomes for older versions of Terraform Enterprise ([#39095](https://github.com/hashicorp/terraform/issues/39095))

* stacks: Fix invalid deferred error triggered by provider returning a deferral when a resource also has an unknown count/for_each. ([#39237](https://github.com/hashicorp/terraform/issues/39237))



</Release>

<Release version="v1.16.3" date="September 16, 2026" published="2026-09-16T14:33:39.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.16.3">
## 1.16.3 (September 16, 2026)


BUG FIXES:

* Fix handling of destroy=false around create_before_destroy instances ([#39169](https://github.com/hashicorp/terraform/issues/39169))

* Fix function result comparison when there are multiple marks ([#39170](https://github.com/hashicorp/terraform/issues/39170))

* Filter logic for marks could cause values with multiple marks to erroneously fail validations ([#39171](https://github.com/hashicorp/terraform/issues/39171))

* Fix issue with import provider resolution ([#39185](https://github.com/hashicorp/terraform/issues/39185))



</Release>

<Release version="v1.16.2" date="September 9, 2026" published="2026-09-09T13:22:31.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.16.2">
## 1.16.2 (September 9, 2026)


BUG FIXES:

* Fix panic in module installation when encoutering invalid module calls ([#39129](https://github.com/hashicorp/terraform/issues/39129))



</Release>

<Release version="v1.16.1" date="September 2, 2026" published="2026-09-02T14:49:32.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.16.1">
## 1.16.1 (September 2, 2026)


BUG FIXES:

* cloud: Fixed a bug causing the CLI to pause indefinitely after a run task failure with pending policy evaluations ([#38751](https://github.com/hashicorp/terraform/issues/38751))

* Support referencing modules containing dynamic sources in Terraform Test ([#38950](https://github.com/hashicorp/terraform/issues/38950))

* stacks: Fixed validation to ensure the provider versions in the lock file and configuration are compatible. ([#38829](https://github.com/hashicorp/terraform/issues/38829))

* Fix panic when import identity references sensitive value ([#39013](https://github.com/hashicorp/terraform/issues/39013))

* import: Fixed a bug where import blocks would be ignored when multiple imports targeted different instances of a resource config using `for_each` or `count`. ([#39068](https://github.com/hashicorp/terraform/issues/39068))

* state show: Fix a panic when given an attribute path instead of a resource instance address ([#39087](https://github.com/hashicorp/terraform/issues/39087))

* Fix create_before_destroy ordering in some combinations of changes ([#39091](https://github.com/hashicorp/terraform/issues/39091))



</Release>

<Release version="v1.16.0" date="August 26, 2026" published="2026-08-26T13:05:28.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.16.0">
## 1.16.0 (August 26, 2026)


NEW FEATURES:

* Terraform now stores planned private data for providers, allowing provider-specific state to be preserved across plan and apply. ([#37986](https://github.com/hashicorp/terraform/issues/37986))

* `terraform_data`: The new `store` block can hold ephemeral and sensitive values across plan and apply. ([#38298](https://github.com/hashicorp/terraform/issues/38298))

* Providers can now use nested blocks as computed values ([#38305](https://github.com/hashicorp/terraform/issues/38305))

* import: `import` blocks inside modules are now supported. ([#38352](https://github.com/hashicorp/terraform/issues/38352))

* Terraform is now available as a pre-built binary for Linux s390x (zLinux). ([#38384](https://github.com/hashicorp/terraform/issues/38384))

* Resource action triggers can now use `on_failure` modes of `halt`, `taint`, or `continue`. ([#38722](https://github.com/hashicorp/terraform/issues/38722))


ENHANCEMENTS:

* state show: The `state show` command can now produce machine-readable output when supplied with the `-json` flag ([#23940](https://github.com/hashicorp/terraform/issues/23940))

* workspace: The `workspace list` command can now produce machine-readable output when supplied with the `-json` flag ([#38397](https://github.com/hashicorp/terraform/issues/38397))

* test: Terraform now reports which resources were left behind when `skip_cleanup` is set. ([#38449](https://github.com/hashicorp/terraform/issues/38449))

* stacks: Action configurations now have access to a `caller` symbol containing the object value of the calling resource. ([#38668](https://github.com/hashicorp/terraform/issues/38668))

* Actions can now use `before_destroy` and `after_destroy` events. ([#38668](https://github.com/hashicorp/terraform/issues/38668))

* cloud: Terraform now displays a summary of policy evaluation outcomes for `plan` and `apply` runs against HCP Terraform. ([#38715](https://github.com/hashicorp/terraform/issues/38715))

* policy: Terraform now resolves policy plugin credentials from the configured cloud or remote backend during `init`, `plan`, and `apply`, rather than requiring the plugin to read credentials itself. ([#38716](https://github.com/hashicorp/terraform/issues/38716))

* graph: The `terraform graph` command can now output graphs in Mermaid format using the `-format=mermaid` flag. ([#38719](https://github.com/hashicorp/terraform/issues/38719))

* Child module outputs with unreferenced deprecated nested attributes no longer return deprecation warnings. ([#38778](https://github.com/hashicorp/terraform/issues/38778))

* Resource `lifecycle` blocks now support `destroy = false` to prevent a resource from being destroyed. ([#38784](https://github.com/hashicorp/terraform/issues/38784))

* The `contains()` function can now test for `null` values. ([#38792](https://github.com/hashicorp/terraform/issues/38792))

* console: The `terraform console` command now accepts an optional `-scope=<module address>` flag, which can be used to evaluate expressions within the scope of a module or a specific module instance. ([#31861](https://github.com/hashicorp/terraform/issues/31861))

* `-invoke` can now be combined with `-target` to specify the calling resource instance when multiple resources trigger the same action. ([#38845](https://github.com/hashicorp/terraform/issues/38845))

* The `terraform stacks` command now automatically infers the target hostname from the local credentials file (`credentials.tfrc.json`) when neither `TF_STACKS_HOSTNAME` nor `TF_CLOUD_HOSTNAME` is set ([#38896](https://github.com/hashicorp/terraform/issues/38896))


BUG FIXES:

* `import` blocks now correctly respect provider local names. ([#38338](https://github.com/hashicorp/terraform/issues/38338))

* `terraform apply` no longer panics when the plan contains a no-op change for a deposed resource that has `lifecycle.precondition` or `lifecycle.postcondition` blocks. ([#38586](https://github.com/hashicorp/terraform/issues/38586))

* workspace: Terraform now raises an error if an invalid workspace name becomes selected due to out-of-band changes. ([#38594](https://github.com/hashicorp/terraform/issues/38594))

* test: Terraform now raises a warning when a file referenced via the `-filter` flag does not exist. ([#38603](https://github.com/hashicorp/terraform/issues/38603))

* init: Terraform no longer removes locks from the dependency lock file for providers configured as `dev_override`. ([#38634](https://github.com/hashicorp/terraform/issues/38634))

* init: Terraform now warns when unmanaged providers are in use and may impact provider installation. ([#38656](https://github.com/hashicorp/terraform/issues/38656))

* Actions are now invoked with respect to all resource dependencies. ([#38668](https://github.com/hashicorp/terraform/issues/38668))

* Terraform now returns the correct error when an `import` target exists in state but has no corresponding configuration. ([#38782](https://github.com/hashicorp/terraform/issues/38782))

* The `merge()` function no longer panics when passed `null` objects. ([#38792](https://github.com/hashicorp/terraform/issues/38792))

* Allow underscores in provider source address namespaces, so private registry provider addresses are no longer rejected as invalid ([#38894](https://github.com/hashicorp/terraform/issues/38894))

* test: Optional ephemeral values do not have to be set at plan time ([#38974](https://github.com/hashicorp/terraform/issues/38974))


NOTES:

* init: Errors due to incompatible `-upgrade` and `-lockfile=readonly` flags are now raised earlier in the init process. ([#38561](https://github.com/hashicorp/terraform/issues/38561))


UPGRADE NOTES:

* `bastion_host_key` is now correctly applied by provisioners. Review your provisioner configurations to verify the configured key is correct before upgrading. ([#38318](https://github.com/hashicorp/terraform/issues/38318))


## Previous Releases

For information on prior major and minor releases, refer to their changelogs:

- [v1.15](https://github.com/hashicorp/terraform/blob/v1.15/CHANGELOG.md)
- [v1.14](https://github.com/hashicorp/terraform/blob/v1.14/CHANGELOG.md)
- [v1.13](https://github.com/hashicorp/terraform/blob/v1.13/CHANGELOG.md)
- [v1.12](https://github.com/hashicorp/terraform/blob/v1.12/CHANGELOG.md)
- [v1.11](https://github.com/hashicorp/terraform/blob/v1.11/CHANGELOG.md)
- [v1.10](https://github.com/hashicorp/terraform/blob/v1.10/CHANGELOG.md)
- [v1.9](https://github.com/hashicorp/terraform/blob/v1.9/CHANGELOG.md)
- [v1.8](https://github.com/hashicorp/terraform/blob/v1.8/CHANGELOG.md)
- [v1.7](https://github.com/hashicorp/terraform/blob/v1.7/CHANGELOG.md)
- [v1.6](https://github.com/hashicorp/terraform/blob/v1.6/CHANGELOG.md)
- [v1.5](https://github.com/hashicorp/terraform/blob/v1.5/CHANGELOG.md)
- [v1.4](https://github.com/hashicorp/terraform/blob/v1.4/CHANGELOG.md)
- [v1.3](https://github.com/hashicorp/terraform/blob/v1.3/CHANGELOG.md)
- [v1.2](https://github.com/hashicorp/terraform/blob/v1.2/CHANGELOG.md)
- [v1.1](https://github.com/hashicorp/terraform/blob/v1.1/CHANGELOG.md)
- [v1.0](https://github.com/hashicorp/terraform/blob/v1.0/CHANGELOG.md)
- [v0.15](https://github.com/hashicorp/terraform/blob/v0.15/CHANGELOG.md)
- [v0.14](https://github.com/hashicorp/terraform/blob/v0.14/CHANGELOG.md)
- [v0.13](https://github.com/hashicorp/terraform/blob/v0.13/CHANGELOG.md)
- [v0.12](https://github.com/hashicorp/terraform/blob/v0.12/CHANGELOG.md)
- [v0.11 and earlier](https://github.com/hashicorp/terraform/blob/v0.11/CHANGELOG.md)

</Release>

<Release version="v1.15.9" date="August 19, 2026" published="2026-08-19T14:29:32.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.15.9">
## 1.15.9 (August 19, 2026)


BUG FIXES:

* validate: Child module validation has been fixed and will now raise errors or warning diagnostics for invalid blocks. (`list`, `import`, `backend`, and `cloud`) ([#38994](https://github.com/hashicorp/terraform/issues/38994))


NOTES:

* Update go-slug to v0.18.3 to mitigate CVE-2026-14978, which is a Unicode normalization issue that could lead to files not being correctly excluded via `.terraformignore` from upload to a Terraform Enterprise or HCP Terraform during a run ([#39036](https://github.com/hashicorp/terraform/issues/39036))



</Release>

<Release version="v1.15.8" date="July 8, 2026" published="2026-07-08T17:45:09.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.15.8">
## 1.15.8 (July 8, 2026)


BUG FIXES:

* Fix `terraform init` error when installing providers sourced from a service-discovery alias advertised by the configured backend (such as `localterraform.com`)


NOTES:

* command/init: Provider installation was changed to enable future enhancements in the area. This effectively reverses the log message changes from v1.15. `initializing_provider_plugin_message` is being re-introduced to replace the short-lived two message types `initializing_provider_plugin_from_config_message` & `initializing_provider_plugin_from_state_message`. The change should not have any significant end-user impact aside from the command output. ([#38838](https://github.com/hashicorp/terraform/issues/38838))

* command/init: Provider installation was changed to enable future enhancements in the area. This partially reverses the init event order changes from v1.15; module installation will now occur after the backend is initialized. The change should not have any significant end-user impact aside from the command output. ([#38838](https://github.com/hashicorp/terraform/issues/38838))



</Release>

<Release version="v1.15.7" date="June 24, 2026" published="2026-06-24T16:47:12.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.15.7">
## 1.15.7 (June 24, 2026)


BUG FIXES:

* Add concurrency safety to configs.Parser and SourceBundleParser ([#38745](https://github.com/hashicorp/terraform/issues/38745))

* Fix submodule variable validation during init ([#38770](https://github.com/hashicorp/terraform/issues/38770))



</Release>

<Release version="v1.15.6" date="June 10, 2026" published="2026-06-10T11:52:20.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.15.6">
## 1.15.6 (June 10, 2026)


BUG FIXES:

* Fixed an issue where resources being removed from state via `removed` block were incorrectly listed under `planned_values` in json representations of the plan file. ([#38665](https://github.com/hashicorp/terraform/issues/38665))

* console: Fixed a panic caused by evaluating an expression involving deprecated values ([#38676](https://github.com/hashicorp/terraform/issues/38676))

* Fix exit code for plan, query, and refresh commands for variable-related errors ([#38685](https://github.com/hashicorp/terraform/issues/38685))

* Fix two module installation edge cases with `null` and sensitive/ephemeral module sources ([#38704](https://github.com/hashicorp/terraform/issues/38704))



</Release>

<Release version="v1.15.5" date="May 27, 2026" published="2026-05-27T14:52:52.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.15.5">
## 1.15.5 (May 27, 2026)


ENHANCEMENTS:

* Support for module version evaluating to `null` (in the context of dynamic module sources) ([#38632](https://github.com/hashicorp/terraform/issues/38632))


BUG FIXES:

* Fix crash on `init` for modules with empty source ([#38628](https://github.com/hashicorp/terraform/issues/38628))



</Release>

<Release version="v1.15.4" date="May 20, 2026" published="2026-05-20T16:52:18.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.15.4">
## 1.15.4 (May 20, 2026)


NEW FEATURES:

* We now produce builds for Linux s390x (zLinux) ([#38615](https://github.com/hashicorp/terraform/issues/38615))


BUG FIXES:

* init: Prevent provider binaries from being installed into symlinked directories ([#38611](https://github.com/hashicorp/terraform/issues/38611))



</Release>

<Release version="v1.15.3" date="May 13, 2026" published="2026-05-13T09:58:43.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.15.3">
## 1.15.3 (May 13, 2026)


BUG FIXES:

* stacks: Fixed a bug that prevented migrating resources under multiple layers of module nesting with implicit provider configuration. ([#38528](https://github.com/hashicorp/terraform/issues/38528))

* cloud backend will now forward -generate-config-out flag usage to query create request ([#38539](https://github.com/hashicorp/terraform/issues/38539))

* Fix crash during provider installation when there is no config ([#38560](https://github.com/hashicorp/terraform/issues/38560))



</Release>

<Release version="v1.15.2" date="May 6, 2026" published="2026-05-06T13:56:22.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.15.2">
## 1.15.2 (May 6, 2026)


ENHANCEMENTS:

* stacks: add ouput values to plan component instance change description ([#38360](https://github.com/hashicorp/terraform/issues/38360))


BUG FIXES:

* Avoid printing warnings from 'terraform output -json' ([#38530](https://github.com/hashicorp/terraform/issues/38530))



</Release>

<Release version="v1.15.1" date="May 1, 2026" published="2026-05-01T16:43:30.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.15.1">
## 1.15.1 (May 1, 2026)


BUG FIXES:

* Fixed crash when configuration has an invalid `action_trigger` nested block in `data` or `ephemeral` lifecycle blocks ([#38402](https://github.com/hashicorp/terraform/issues/38402))

* validate: Removed validation of attributes inside `backend` blocks due to incompatibility with workflows using the `-backend-config` flag. ([#38466](https://github.com/hashicorp/terraform/issues/38466))

* Fix non-const variable checks on `init` ([#38470](https://github.com/hashicorp/terraform/issues/38470))

* Avoid warnings in 'terraform output -raw' ([#38487](https://github.com/hashicorp/terraform/issues/38487))

* Ignore undeclared variable values from the cloud backend ([#38490](https://github.com/hashicorp/terraform/issues/38490))

* Fix panic for types modules with no expanded instances ([#38491](https://github.com/hashicorp/terraform/issues/38491))

* Fixed "unknown provider function" errors occurring during init ([#38472](https://github.com/hashicorp/terraform/issues/38472))

* init: Fixed a bug that impacted use of provider pre-releases during init ([#38496](https://github.com/hashicorp/terraform/issues/38496))



</Release>

<Release version="v1.15.0" date="April 29, 2026" published="2026-04-29T14:05:34.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.15.0">
## 1.15.0 (April 29, 2026)


NEW FEATURES:

* We now produce builds for Windows ARM64 ([#32719](https://github.com/hashicorp/terraform/issues/32719))

* 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))

* backend/s3: Support authentication via `aws login` ([#37976](https://github.com/hashicorp/terraform/issues/37976))

* 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))

* `convert` function, which allows for precise inline type conversions ([#38160](https://github.com/hashicorp/terraform/issues/38160))

* Terraform now supports variables and locals in module source and version attributes ([#38217](https://github.com/hashicorp/terraform/issues/38217))


ENHANCEMENTS:

* config: `output` blocks now can have an explicit type constraints ([#36411](https://github.com/hashicorp/terraform/issues/36411))

* ssh-based provisioner (file + remote-exec): Re-enable support for PowerShell ([#37794](https://github.com/hashicorp/terraform/issues/37794))

* terraform init log timestamps include millisecond precision ([#37818](https://github.com/hashicorp/terraform/issues/37818))

* 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))

* Terraform Test: Allow functions within mock blocks ([#34672](https://github.com/hashicorp/terraform/issues/34672))

* improve detection of deprecated resource attributes / blocks ([#38077](https://github.com/hashicorp/terraform/issues/38077))

* Deprecation messages providers set on resources / blocks / attributes are now part of the deprecation warning ([#38135](https://github.com/hashicorp/terraform/issues/38135))

* Include which attribute paths are marked as sensitive in list_start JSON logs ([#38197](https://github.com/hashicorp/terraform/issues/38197))

* Add input variable validation for Stacks ([#38240](https://github.com/hashicorp/terraform/issues/38240))

* 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))

* As part of supporting variables in module sources, most commands now accept variable values ([#38276](https://github.com/hashicorp/terraform/issues/38276))


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](https://github.com/hashicorp/terraform/issues/37801))

* A refresh-only plan could result in a non-zero exit code with no changes ([#37406](https://github.com/hashicorp/terraform/issues/37406))

* cli: Fixed crash in `terraform show -json` when plan contains ephemeral resources with preconditions or postconditions ([#37834](https://github.com/hashicorp/terraform/issues/37834))

* 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))

* `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))

* 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))

* 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))

* backend: Fix nil pointer dereference crash during `terraform init` when the destination backend returns an error ([#38027](https://github.com/hashicorp/terraform/issues/38027))

* stacks: send progress events if the plan fails for better UI integration ([#38039](https://github.com/hashicorp/terraform/issues/38039))

* 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))

* 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))

* 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))

* 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))

* Enable formatting of `.tfquery.hcl` files by `terraform fmt` ([#38398](https://github.com/hashicorp/terraform/issues/38398))

* Fix `validate` not returning JSON for some early diagnostics ([#38400](https://github.com/hashicorp/terraform/issues/38400))

* Fix Terraform Stacks plugin installation error ([#38406](https://github.com/hashicorp/terraform/issues/38406))


NOTES:

* 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))


UPGRADE NOTES:

* 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))


## Previous Releases

For information on prior major and minor releases, refer to their changelogs:

- [v1.14](https://github.com/hashicorp/terraform/blob/v1.14/CHANGELOG.md)
- [v1.13](https://github.com/hashicorp/terraform/blob/v1.13/CHANGELOG.md)
- [v1.12](https://github.com/hashicorp/terraform/blob/v1.12/CHANGELOG.md)
- [v1.11](https://github.com/hashicorp/terraform/blob/v1.11/CHANGELOG.md)
- [v1.10](https://github.com/hashicorp/terraform/blob/v1.10/CHANGELOG.md)
- [v1.9](https://github.com/hashicorp/terraform/blob/v1.9/CHANGELOG.md)
- [v1.8](https://github.com/hashicorp/terraform/blob/v1.8/CHANGELOG.md)
- [v1.7](https://github.com/hashicorp/terraform/blob/v1.7/CHANGELOG.md)
- [v1.6](https://github.com/hashicorp/terraform/blob/v1.6/CHANGELOG.md)
- [v1.5](https://github.com/hashicorp/terraform/blob/v1.5/CHANGELOG.md)
- [v1.4](https://github.com/hashicorp/terraform/blob/v1.4/CHANGELOG.md)
- [v1.3](https://github.com/hashicorp/terraform/blob/v1.3/CHANGELOG.md)
- [v1.2](https://github.com/hashicorp/terraform/blob/v1.2/CHANGELOG.md)
- [v1.1](https://github.com/hashicorp/terraform/blob/v1.1/CHANGELOG.md)
- [v1.0](https://github.com/hashicorp/terraform/blob/v1.0/CHANGELOG.md)
- [v0.15](https://github.com/hashicorp/terraform/blob/v0.15/CHANGELOG.md)
- [v0.14](https://github.com/hashicorp/terraform/blob/v0.14/CHANGELOG.md)
- [v0.13](https://github.com/hashicorp/terraform/blob/v0.13/CHANGELOG.md)
- [v0.12](https://github.com/hashicorp/terraform/blob/v0.12/CHANGELOG.md)
- [v0.11 and earlier](https://github.com/hashicorp/terraform/blob/v0.11/CHANGELOG.md)

</Release>

<Release version="v1.14.9" date="April 20, 2026" published="2026-04-20T18:46:26.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.14.9">
## 1.14.9 (April 20, 2026)


BUG FIXES:

* Fix Terraform Stacks plugin installation error ([#38406](https://github.com/hashicorp/terraform/issues/38406))



</Release>

<Release version="v1.14.8" date="March 25, 2026" published="2026-03-25T07:56:42.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.14.8">
## 1.14.8 (March 25, 2026)


BUG FIXES:

* Prevent crash in the display of relevant attributes after provider upgrades ([#38264](https://github.com/hashicorp/terraform/issues/38264))



</Release>

<Release version="v1.14.7" date="March 11, 2026" published="2026-03-11T14:14:31.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.14.7">
## 1.14.7 (March 11, 2026)


NOTES:

* Bump Go version to 1.25.8 to suppress security scanner false positives ([#38249](https://github.com/hashicorp/terraform/issues/38249))



</Release>

<Release version="v1.14.6" date="February 25, 2026" published="2026-02-25T14:16:02.000Z" url="https://github.com/hashicorp/terraform/releases/tag/v1.14.6">
## 1.14.6 (February 25, 2026)


BUG FIXES:

* terraform test: return error when provider config is invalid ([#38084](https://github.com/hashicorp/terraform/issues/38084))



</Release>

<Pagination cursor="2026-02-25T14:16:02.000Z|2026-04-08T00:00:58.333Z|rel_bX7CHgQdvh1ijIecV-gpC" next="https://releases.sh/hashicorp/terraform-releases.md?cursor=2026-02-25T14%3A16%3A02.000Z%7C2026-04-08T00%3A00%3A58.333Z%7Crel_bX7CHgQdvh1ijIecV-gpC&limit=20" />
