opentofu/CHANGELOG.md
James Humphries 16f6b2d119
Some checks are pending
build / Build for linux_386 (push) Waiting to run
build / Build for openbsd_386 (push) Waiting to run
build / Build for windows_386 (push) Waiting to run
build / Build for freebsd_amd64 (push) Waiting to run
build / Build for solaris_amd64 (push) Waiting to run
build / Build for windows_amd64 (push) Waiting to run
build / Build for freebsd_386 (push) Waiting to run
build / End-to-end Tests for linux_386 (push) Waiting to run
build / End-to-end Tests for windows_386 (push) Waiting to run
build / End-to-end Tests for linux_amd64 (push) Waiting to run
Website checks / Test Installation Instructions (push) Blocked by required conditions
Website checks / List files changed for pull request (push) Waiting to run
Website checks / Build (push) Blocked by required conditions
build / Build for linux_amd64 (push) Waiting to run
build / Build for openbsd_amd64 (push) Waiting to run
build / Build for freebsd_arm (push) Waiting to run
build / Build for linux_arm (push) Waiting to run
build / Build for linux_arm64 (push) Waiting to run
build / Build for darwin_amd64 (push) Waiting to run
build / End-to-end Tests for darwin_amd64 (push) Waiting to run
build / End-to-end Tests for windows_amd64 (push) Waiting to run
build / Build for darwin_arm64 (push) Waiting to run
Quick Checks / List files changed for pull request (push) Waiting to run
Quick Checks / Unit tests for linux_386 (push) Blocked by required conditions
Quick Checks / Unit tests for linux_amd64 (push) Blocked by required conditions
Quick Checks / Unit tests for windows_amd64 (push) Blocked by required conditions
Quick Checks / Unit tests for linux_arm (push) Blocked by required conditions
Quick Checks / Unit tests for darwin_arm64 (push) Blocked by required conditions
Quick Checks / Unit tests for linux_arm64 (push) Blocked by required conditions
Quick Checks / Race Tests (push) Blocked by required conditions
Quick Checks / End-to-end Tests (push) Blocked by required conditions
Quick Checks / Code Consistency Checks (push) Blocked by required conditions
Quick Checks / License Checks (push) Waiting to run
Handle ignoring computed fields in ignore_changes blocks for testing (#3646)
Signed-off-by: James Humphries <james@james-humphries.co.uk>
2026-01-08 10:51:40 +00:00

3.8 KiB

1.12.0 (Unreleased)

UPGRADE NOTES:

  • This is the last OpenTofu release series that will support macOS 12 Monterey. We expect that OpenTofu v1.13 will require macOS 13 Ventura or later.

  • On Unix systems OpenTofu now considers the BROWSER environment variable as a possible override for the default behavior for launching a web browser.

    If you run OpenTofu in a context where an environment variable of that name is already set, it may cause OpenTofu to now open a web browser in a different way than previous versions would have. Unsetting that environment variable will restore the previous platform-specific behavior.

ENHANCEMENTS:

  • prevent_destroy arguments in the lifecycle block for managed resources can now use references to other symbols in the same module, such as to a module's input variables. (#3474, #3507)
  • New lifecycle meta-argument destroy for altering resource destruction behavior. When set to false OpenTofu will not retain resources when they are planned for destruction. (#3409)
  • New -suppress-forget-errors flag for the tofu destroy command to suppress errors and exit with a zero status code when resources are forgotten during destroy operations. (#3588)
  • OpenTofu now uses the BROWSER environment variable when launching a web browser on Unix platforms, as long as it's set to a single command that can accept a URL to open as its first and only argument. (#3456)
  • Improve performance around provider checking and schema management. (#2730)
  • tofu init now fetches providers and their metadata in parallel. Depending on provider size and network properties, this can reduce provider installation and checking time. (#2729)
  • The yamldecode function now supports the "merge" tag, most commonly written as << where a map key would be expected, with sequences of mappings rather than just individual mappings. (#3607)

BUG FIXES:

  • Fixed state lock not being released when tofu apply is interrupted with Ctrl+C while using the HTTP backend. (#3624)
  • for_each inside dynamic blocks can now call provider-defined functions. (#3429)
  • In the unlikely event that text included in a diagnostic message includes C0 control characters (e.g. terminal escape sequences), OpenTofu will now replace them with printable characters to avoid the risk of inadvertently changing terminal state when stdout or stderr is a terminal. (#3479)
  • Fixed length(module.foo) returning 0 for module instances without outputs, even when count or for_each is set. (#3067)
  • Fixed tofu test with mock_provider failing during cleanup when lifecycle { ignore_changes } references a block. (#3644)

Previous Releases

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