From 3722367fbb76743857d043ec9048b449b1b48a46 Mon Sep 17 00:00:00 2001 From: Mike Farah Date: Fri, 19 Mar 2021 12:40:34 +1100 Subject: [PATCH] Dont print doc separators for JSON (https://github.com/mikefarah/yq/issues/735) --- pkg/yqlib/printer.go | 2 +- pkg/yqlib/printer_test.go | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/pkg/yqlib/printer.go b/pkg/yqlib/printer.go index 361e302..b4d9b9f 100644 --- a/pkg/yqlib/printer.go +++ b/pkg/yqlib/printer.go @@ -34,7 +34,7 @@ func NewPrinter(writer io.Writer, outputToJSON bool, unwrapScalar bool, colorsEn unwrapScalar: unwrapScalar, colorsEnabled: colorsEnabled, indent: indent, - printDocSeparators: printDocSeparators, + printDocSeparators: !outputToJSON && printDocSeparators, firstTimePrinting: true, treeNavigator: NewDataTreeNavigator(), } diff --git a/pkg/yqlib/printer_test.go b/pkg/yqlib/printer_test.go index fdb5173..5bad9ff 100644 --- a/pkg/yqlib/printer_test.go +++ b/pkg/yqlib/printer_test.go @@ -130,7 +130,9 @@ func TestPrinterMultipleDocsInSinglePrint(t *testing.T) { func TestPrinterMultipleDocsJson(t *testing.T) { var output bytes.Buffer var writer = bufio.NewWriter(&output) - printer := NewPrinter(writer, true, true, false, 0, false) + // note printDocSeparators is true, it should still not print document separators + // when outputing JSON. + printer := NewPrinter(writer, true, true, false, 0, true) inputs, err := readDocuments(strings.NewReader(multiDocSample), "sample.yml", 0) if err != nil {