HCL is the HashiCorp configuration language.
(
and )
tokens when an expression is surrounded by parentheses. Previously it would incorrectly recognize those tokens as being extraneous tokens outside of the expression. (#426)!
(unary boolean "not") operator and its subsequent operand. (#403)null[*]
was previously always returning an unknown value, even though the rules for [*]
normally call for it to return an empty tuple when applied to a null. As well as being a surprising result, it was particularly problematic because it violated the rule that a calling application may assume that an expression result will always be known unless the application itself introduces unknown values via the evaluation context. null[*]
will now produce an empty tuple. (#416)ParseWithStartPos
, which allows overriding the starting position for parsing in case the given JSON bytes are a fragment of a larger document, such as might happen when decoding with encoding/json
into a json.RawMessage
. (#389)ParseExpression
, which allows parsing a JSON string directly in expression mode, whereas previously it was only possible to parse a JSON string in body mode. (#381)Block
type now supports SetType
and SetLabels
, allowing surgical changes to the type and labels of an existing block without having to reconstruct the entire block. (#340)