Skip to content

Releases: hashicorp/hcl

v2.24.0

07 Jul 13:02
6b50680
Compare
Choose a tag to compare

Enhancements

  • Add support for decoding block and attribute source ranges when using gohcl. (#703)
  • hclsyntax: Detect and reject invalid nested splat result. (#724)

Bugs Fixed

  • Correct handling of unknown objects in Index function. (#763)

v2.23.0

15 Nov 16:27
56a9aee
Compare
Choose a tag to compare

What's Changed

  • Preserve marks when traversing unknown values by @jbardin in #699
  • Better control of marks through conditional and for expressions by @jbardin in #710

Full Changelog: v2.22.0...v2.23.0

v2.22.0

26 Aug 12:46
2442aca
Compare
Choose a tag to compare

Enhancements

  • feat: return an ExprSyntaxError for invalid references that end in a dot (#692)

v2.21.0

19 Jun 11:38
360ae57
Compare
Choose a tag to compare

Enhancements

  • Introduce ParseTraversalPartial, which allows traversals that include the splat ([*]) index operator. (#673)
  • ext/dynblock: Now accepts marked values in for_each, and will transfer those marks (as much as technically possible) to values in the generated blocks. (#679)

Bugs Fixed

  • Expression evaluation will no longer panic if the splat operator is applied to an unknown value that has cty marks. (#678)

v2.20.1

26 Mar 14:55
303be61
Compare
Choose a tag to compare

Bugs Fixed

  • Return ExprSyntaxError when an invalid namespaced function is encountered during parsing (#668)

Internal

  • Standardize on only two value dumping/diffing libraries (#669)

v2.20.0

29 Feb 19:23
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v2.19.1...v2.20.0

v2.19.1

18 Oct 13:11
341ffa4
Compare
Choose a tag to compare

What's Changed

  • hcldec must use WithoutOptionalAttributesDeep by @jbardin in #635

Full Changelog: v2.19.0...v2.19.1

v2.18.1

06 Oct 01:46
a1178d2
Compare
Choose a tag to compare

Bugs Fixed

  • hclsyntax: Conditional expressions will no longer panic when one or both of their results are "marked", as is the case for situations like how HashiCorp Terraform tracks its concept of "sensitive values". (#630)

v2.18.0

30 Aug 16:52
Compare
Choose a tag to compare

Enhancements

  • HCL now uses the tables from Unicode 15 when performing string normalization and character segmentation. HCL was previously using the Unicode 13 tables.

    For calling applications where consistent Unicode support is important, consider also upgrading to Go 1.21 at the same time as adopting HCL v2.18.0 so that the standard library unicode tables (used for case folding, etc) will also be from Unicode 15.

v2.17.1

30 Aug 16:22
Compare
Choose a tag to compare

Enhancements

  • hclsyntax: When evaluating string templates that have a long known constant prefix, HCL will truncate the known prefix to avoid creating excessively-large refinements. String prefix refinements are intended primarily for relatively-short fixed prefixes, such as https:// at the start of a URL known to use that scheme. (#617)
  • ext/tryfunc: The "try" and "can" functions now handle unknown values slightly more precisely, and so can return known values in more situations when given expressions referring to unknown symbols. (#622)

Bugs Fixed

  • ext/typeexpr: Will no longer try to refine unknown values of unknown type when dealing with a user-specified type constraint containing the any keyword, avoiding an incorrect panic at runtime. (#625)
  • ext/typeexpr: Now correctly handles attempts to declare the same object type attribute multiple times by returning an error. Previously this could potentially panic by creating an incoherent internal state. (#624)