1.10.0-alpha20240828 (Aug 28, 2024)
BUG FIXES:
- The error message for an invalid default value for an input variable now indicates when the problem is with a nested value in a complex data type. (#35465)
- Sensitive marks could be incorrectly transferred to nested resource values, causing erroneous changes during a plan (#35501)
- Allow unknown
error_message
values to pass the core validate step, so variable validation can be completed later during plan
(#35537) - Unencoded slashes within GitHub module source refs were being truncated and incorrectly used as subdirectories in the request path (#35552)
ENHANCEMENTS:
- The
element
function now accepts negative indices (#35501) - Import block validation has been improved to provide more useful errors and catch more invalid cases during
terraform validate
(#35543)
- Performance enhancements for resource evaluation, especially when large numbers of resource instances are involved (#35558)
EXPERIMENTS:
Experiments are only enabled in alpha releases of Terraform CLI. The following features are not yet available in stable releases.
ephemeral_values
: This language experiment introduces a new special kind of value which Terraform allows to change between the plan phase and the apply phase, and between plan/apply rounds. Ephemeral values are never persisted in saved plan files or state snapshots, and so can only be used in parts of the language that don't require values to persist in those artifacts. Ephemeral input values are the main initial example of this concept, allowing the use of input variables to provide dynamic credentials that must change between plan and apply.terraform test
accepts a new option-junit-xml=FILENAME
. If specified, and if the test configuration is valid enough to begin executing, then Terraform writes a JUnit XML test result report to the given filename, describing similar information as included in the normal test output. (#34291)- The new command
terraform rpcapi
exposes some Terraform Core functionality through an RPC interface compatible withgo-plugin
. The exact RPC API exposed here is currently subject to change at any time, because it's here primarily as a vehicle to support the Terraform Stacks private preview and so will be broken if necessary to respond to feedback from private preview participants, or possibly for other reasons. Do not use this mechanism yet outside of Terraform Stacks private preview. - The experimental "deferred actions" feature, enabled by passing the
-allow-deferral
option toterraform plan
, permitscount
andfor_each
arguments inmodule
,resource
, anddata
blocks to have unknown values and allows providers to react more flexibly to unknown values. This experiment is under active development, and so it's not yet useful to participate in this experiment
Previous Releases
For information on prior major and minor releases, refer to their changelogs: