opentofu/CHANGELOG.md

3.7 KiB

1.6.0 (Unreleased)

UPGRADE NOTES:

  • The cloud and remote backends will no longer default to app.terraform.io hostname and will require the hostname to be explicitly specified (#291);
  • The login and logout commands will no longer default to app.terraform.io hostname and will require the hostname to be explicitly provided as a command-line argument (#291);
  • prevent future possible incompatibility with states that include unknown check block result kinds. (#355);

NEW FEATURES:

  • opentf test: The previously experimental opentf test command has been moved out of experimental. This comes with a significant change in how OpenTF tests are written and executed.

    OpenTF tests are written within .tftest.hcl files, controlled by a series of run blocks. Each run block will execute an OpenTF plan or apply command against the OpenTF configuration under test and can execute conditions against the resultant plan and state.

ENHANCEMENTS:

  • config: OpenTF can now track some additional detail about values that won't be known until the apply step, such as the range of possible lengths for a collection or whether an unknown value can possibly be null. When this information is available, Terraform can potentially generate known results for some operations on unknown values. This doesn't mean that Terraform can immediately track that detail in all cases, but the type system now contains the facility for that and so over time we will improve the level of detail generated by built-in functions, language operators, Terraform providers, etc. (#33234)
  • jsonplan: Added errored field to JSON plan output, indicating whether a plan errored. (#33372)
  • cloud: Remote plans on cloud backends can now be saved using the -out flag, referenced in the show command, and applied by specifying the plan file name. (#33492)
  • config: The import block id field now accepts an expression referencing other values such as resource attributes, as long as the value is a string known at plan time. (#33618)

BUG FIXES:

  • The upstream dependency that OpenTF uses for service discovery of OpenTF-native services such as cloud backend state storage was previously not concurrency-safe, but OpenTF was treating it as if it was in situations like when a configuration has multiple terraform_remote_state blocks all using the "remote" backend. OpenTF is now using a newer version of that library which updates its internal caches in a concurrency-safe way. (#33364)
  • Transitive dependencies were lost during apply when the referenced resource expanded into zero instances (#33403)
  • OpenTF will no longer override SSH settings in local git configuration when installing modules. (#33592)
  • Handle file-operation errors in internal/states/statemgr. (#278)
  • opentf init: OpenTF will no longer allow downloading remote modules to invalid paths. (#356)
  • opentf_remote_state: Fixed a potential unsafe read panic when reading from multiple opentf_remote_state data sources (#357)

Previous Releases

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

None yet