Files
opentf/CHANGELOG.md
Martin Atkins fefddbc915 CHANGELOG: Entry for opentofu/opentofu#3607
Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
2025-12-18 08:19:21 -08:00

3.3 KiB

1.12.0 (Unreleased)

UPGRADE NOTES:

  • 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:

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

Previous Releases

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