diff --git a/vendor/github.com/hashicorp/hcl/hcl/parser/parser.go b/vendor/github.com/hashicorp/hcl/hcl/parser/parser.go index 8dd73e0c3f..6e54bed974 100644 --- a/vendor/github.com/hashicorp/hcl/hcl/parser/parser.go +++ b/vendor/github.com/hashicorp/hcl/hcl/parser/parser.go @@ -389,9 +389,15 @@ func (p *Parser) listType() (*ast.ListType, error) { l.Add(node) needComma = true case token.LBRACK: - // TODO(arslan) should we support nested lists? Even though it's - // written in README of HCL, it's not a part of the grammar - // (not defined in parse.y) + node, err := p.listType() + if err != nil { + return nil, &PosError{ + Pos: tok.Pos, + Err: fmt.Errorf( + "error while trying to parse list within list: %s", err), + } + } + l.Add(node) case token.RBRACK: // finished l.Rbrack = p.tok.Pos diff --git a/vendor/github.com/hashicorp/hcl/hcl/printer/nodes.go b/vendor/github.com/hashicorp/hcl/hcl/printer/nodes.go index a73315979f..35a46fc72e 100644 --- a/vendor/github.com/hashicorp/hcl/hcl/printer/nodes.go +++ b/vendor/github.com/hashicorp/hcl/hcl/printer/nodes.go @@ -134,6 +134,7 @@ func (p *printer) output(n interface{}) []byte { // Go through all the comments in the group. The group // should be printed together, not separated by double newlines. printed := false + newlinePrinted := false for _, comment := range c.List { // We only care about comments after the previous item // we've printed so that comments are printed in the @@ -144,8 +145,9 @@ func (p *printer) output(n interface{}) []byte { // we don't do this if prev is invalid which means the // beginning of the file since the first comment should // be at the first line. - if p.prev.IsValid() && index == len(t.Items) { + if !newlinePrinted && p.prev.IsValid() && index == len(t.Items) { buf.Write([]byte{newline, newline}) + newlinePrinted = true } // Write the actual comment. diff --git a/vendor/vendor.json b/vendor/vendor.json index 02f037f145..5c024a4cd4 100644 --- a/vendor/vendor.json +++ b/vendor/vendor.json @@ -1688,68 +1688,68 @@ { "checksumSHA1": "Ok3Csn6Voou7pQT6Dv2mkwpqFtw=", "path": "github.com/hashicorp/hcl", - "revision": "db4f0768927a665a06c32855186e1bc762bcc8f5", - "revisionTime": "2017-01-25T01:06:35Z" + "revision": "372e8ddaa16fd67e371e9323807d056b799360af", + "revisionTime": "2017-02-02T00:05:34Z" }, { "checksumSHA1": "XQmjDva9JCGGkIecOgwtBEMCJhU=", "path": "github.com/hashicorp/hcl/hcl/ast", - "revision": "db4f0768927a665a06c32855186e1bc762bcc8f5", - "revisionTime": "2017-01-25T01:06:35Z" + "revision": "372e8ddaa16fd67e371e9323807d056b799360af", + "revisionTime": "2017-02-02T00:05:34Z" }, { "checksumSHA1": "DaQmLi48oUAwctWcX6A6DNN61UY=", "path": "github.com/hashicorp/hcl/hcl/fmtcmd", - "revision": "db4f0768927a665a06c32855186e1bc762bcc8f5", - "revisionTime": "2017-01-25T01:06:35Z" + "revision": "372e8ddaa16fd67e371e9323807d056b799360af", + "revisionTime": "2017-02-02T00:05:34Z" }, { - "checksumSHA1": "MPz4qnNmoYHHUXDhHj0TpJk4LHk=", + "checksumSHA1": "MGYzZActhzSs9AnCx3wrEYVbKFg=", "path": "github.com/hashicorp/hcl/hcl/parser", - "revision": "db4f0768927a665a06c32855186e1bc762bcc8f5", - "revisionTime": "2017-01-25T01:06:35Z" + "revision": "372e8ddaa16fd67e371e9323807d056b799360af", + "revisionTime": "2017-02-02T00:05:34Z" }, { - "checksumSHA1": "J5zAZ+tMBDPRJ8A07742Pl/c++w=", + "checksumSHA1": "/cGXzX8tBvN1mu0mNvGzURdiqHU=", "path": "github.com/hashicorp/hcl/hcl/printer", - "revision": "db4f0768927a665a06c32855186e1bc762bcc8f5", - "revisionTime": "2017-01-25T01:06:35Z" + "revision": "372e8ddaa16fd67e371e9323807d056b799360af", + "revisionTime": "2017-02-02T00:05:34Z" }, { "checksumSHA1": "z6wdP4mRw4GVjShkNHDaOWkbxS0=", "path": "github.com/hashicorp/hcl/hcl/scanner", - "revision": "db4f0768927a665a06c32855186e1bc762bcc8f5", - "revisionTime": "2017-01-25T01:06:35Z" + "revision": "372e8ddaa16fd67e371e9323807d056b799360af", + "revisionTime": "2017-02-02T00:05:34Z" }, { "checksumSHA1": "oS3SCN9Wd6D8/LG0Yx1fu84a7gI=", "path": "github.com/hashicorp/hcl/hcl/strconv", - "revision": "db4f0768927a665a06c32855186e1bc762bcc8f5", - "revisionTime": "2017-01-25T01:06:35Z" + "revision": "372e8ddaa16fd67e371e9323807d056b799360af", + "revisionTime": "2017-02-02T00:05:34Z" }, { "checksumSHA1": "c6yprzj06ASwCo18TtbbNNBHljA=", "path": "github.com/hashicorp/hcl/hcl/token", - "revision": "db4f0768927a665a06c32855186e1bc762bcc8f5", - "revisionTime": "2017-01-25T01:06:35Z" + "revision": "372e8ddaa16fd67e371e9323807d056b799360af", + "revisionTime": "2017-02-02T00:05:34Z" }, { "checksumSHA1": "138aCV5n8n7tkGYMsMVQQnnLq+0=", "path": "github.com/hashicorp/hcl/json/parser", - "revision": "db4f0768927a665a06c32855186e1bc762bcc8f5", - "revisionTime": "2017-01-25T01:06:35Z" + "revision": "372e8ddaa16fd67e371e9323807d056b799360af", + "revisionTime": "2017-02-02T00:05:34Z" }, { "checksumSHA1": "YdvFsNOMSWMLnY6fcliWQa0O5Fw=", "path": "github.com/hashicorp/hcl/json/scanner", - "revision": "db4f0768927a665a06c32855186e1bc762bcc8f5", - "revisionTime": "2017-01-25T01:06:35Z" + "revision": "372e8ddaa16fd67e371e9323807d056b799360af", + "revisionTime": "2017-02-02T00:05:34Z" }, { "checksumSHA1": "fNlXQCQEnb+B3k5UDL/r15xtSJY=", "path": "github.com/hashicorp/hcl/json/token", - "revision": "db4f0768927a665a06c32855186e1bc762bcc8f5", - "revisionTime": "2017-01-25T01:06:35Z" + "revision": "372e8ddaa16fd67e371e9323807d056b799360af", + "revisionTime": "2017-02-02T00:05:34Z" }, { "checksumSHA1": "2Nrl/YKrmowkRgCDLhA6UTFgYEY=",