From 58d14f7ea983cd49538ea38f6c723b08c38209d6 Mon Sep 17 00:00:00 2001 From: Kim Alvefur Date: Wed, 2 Aug 2023 12:20:07 +0200 Subject: [PATCH] Return error instead of panic in Lua encoder --- pkg/yqlib/encoder_lua.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pkg/yqlib/encoder_lua.go b/pkg/yqlib/encoder_lua.go index b79d18e8..8ed11d28 100644 --- a/pkg/yqlib/encoder_lua.go +++ b/pkg/yqlib/encoder_lua.go @@ -1,6 +1,7 @@ package yqlib import ( + "fmt" "io" "strings" @@ -183,7 +184,7 @@ func (le *luaEncoder) encodeAny(writer io.Writer, node *yaml.Node) error { return writeString(writer, strings.ToLower(node.Value)) case "!!int": if strings.HasPrefix(node.Value, "0o") { - panic("Lua encoder NYI -- octal") // FIXME + return fmt.Errorf("Lua encoder NYI -- octal") // FIXME } return writeString(writer, strings.ToLower(node.Value)) case "!!float": @@ -198,7 +199,7 @@ func (le *luaEncoder) encodeAny(writer io.Writer, node *yaml.Node) error { return writeString(writer, node.Value) } default: - panic("Lua encoder NYI -- " + node.ShortTag()) + return fmt.Errorf("Lua encoder NYI -- %s", node.ShortTag()) } case yaml.DocumentNode: err := writeString(writer, le.docPrefix) @@ -211,7 +212,7 @@ func (le *luaEncoder) encodeAny(writer io.Writer, node *yaml.Node) error { } return writeString(writer, le.docSuffix) default: - panic("Lua encoder NYI -- " + node.ShortTag()) + return fmt.Errorf("Lua encoder NYI -- %s", node.ShortTag()) } }