Skip to content

Latest commit

 

History

History
37 lines (25 loc) · 1.73 KB

CHANGELOG.md

File metadata and controls

37 lines (25 loc) · 1.73 KB

HCL Changelog

v2.2.0 (Unreleased)

v2.1.0 (Nov 19, 2019)

Enhancements

  • gohcl: When decoding into a struct value with some fields already populated, those values will be retained if not explicitly overwritten in the given HCL body, with similar overriding/merging behavior as json.Unmarshal in the Go standard library.
  • hclwrite: New interface to set the expression for an attribute to be a raw token sequence, with no special processing. This has some caveats, so if you intend to use it please refer to the godoc comments. (#320)

Bugs Fixed

  • hclwrite: The Body.Blocks method was returing the blocks in an indefined order, rather than preserving the order of declaration in the source input. (#313)
  • hclwrite: The TokensForTraversal function (and thus in turn the Body.SetAttributeTraversal method) was not correctly handling index steps in traversals, and thus producing invalid results. (#319)

v2.0.0 (Oct 2, 2019)

Initial release of HCL 2, which is a new implementating combining the HCL 1 language with the HIL expression language to produce a single language supporting both nested configuration structures and arbitrary expressions.

HCL 2 has an entirely new Go library API and so is not a drop-in upgrade relative to HCL 1. It's possible to import both versions of HCL into a single program using Go's semantic import versioning mechanism:

import (
    hcl1 "github.com/hashicorp/hcl"
    hcl2 "github.com/hashicorp/hcl/v2"
)

Prior to v2.0.0 there was not a curated changelog. Consult the git history from the latest v1.x.x tag for information on the changes to HCL 1.