From 862d17b314ef2c6f66373bfe687c58d34910b2d1 Mon Sep 17 00:00:00 2001 From: GreyXor Date: Thu, 18 Jun 2026 09:19:49 +0200 Subject: [PATCH 1/4] deps: upgrade go-toml to v2.4.0 --- parsers/toml/go.mod | 2 +- parsers/toml/go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/parsers/toml/go.mod b/parsers/toml/go.mod index 588f52e..e536d65 100644 --- a/parsers/toml/go.mod +++ b/parsers/toml/go.mod @@ -3,7 +3,7 @@ module github.com/knadh/koanf/parsers/toml/v2 go 1.23.0 require ( - github.com/pelletier/go-toml/v2 v2.3.1 + github.com/pelletier/go-toml/v2 v2.4.0 github.com/stretchr/testify v1.9.0 ) diff --git a/parsers/toml/go.sum b/parsers/toml/go.sum index bb04a2e..31d6749 100644 --- a/parsers/toml/go.sum +++ b/parsers/toml/go.sum @@ -1,7 +1,7 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/pelletier/go-toml/v2 v2.3.1 h1:MYEvvGnQjeNkRF1qUuGolNtNExTDwct51yp7olPtrEc= -github.com/pelletier/go-toml/v2 v2.3.1/go.mod h1:2gIqNv+qfxSVS7cM2xJQKtLSTLUE9V8t9Stt+h56mCY= +github.com/pelletier/go-toml/v2 v2.4.0 h1:Mwu0mAkUKbittDs3/ADDWXqMmq3EOK2VHiuCkV00Row= +github.com/pelletier/go-toml/v2 v2.4.0/go.mod h1:2gIqNv+qfxSVS7cM2xJQKtLSTLUE9V8t9Stt+h56mCY= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= From a36deddccc814ef840f6240cec9a71de8442f155 Mon Sep 17 00:00:00 2001 From: GreyXor Date: Fri, 19 Jun 2026 14:01:15 +0200 Subject: [PATCH 2/4] tests: update test for new go-toml version --- parsers/toml/toml_test.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/parsers/toml/toml_test.go b/parsers/toml/toml_test.go index 7e79309..0d9c5b9 100644 --- a/parsers/toml/toml_test.go +++ b/parsers/toml/toml_test.go @@ -16,7 +16,7 @@ func TestTOML_Unmarshal(t *testing.T) { { name: "Empty TOML", input: []byte(``), - output: map[string]any(nil), + output: map[string]any{}, }, { name: "Valid TOML", @@ -86,7 +86,7 @@ func TestTOML_Marshal(t *testing.T) { { name: "Empty TOML", input: map[string]any{}, - output: []byte(nil), + output: []byte{}, }, { name: "Valid TOML", From bd2577c0ba25f6f9fdad1b3088b9a5d123d911e3 Mon Sep 17 00:00:00 2001 From: GreyXor Date: Wed, 1 Jul 2026 13:05:49 +0200 Subject: [PATCH 3/4] update go-toml v2.4.2 --- parsers/toml/go.mod | 2 +- parsers/toml/go.sum | 4 ++-- parsers/toml/toml.go | 8 ++++++++ parsers/toml/toml_test.go | 4 ++-- 4 files changed, 13 insertions(+), 5 deletions(-) diff --git a/parsers/toml/go.mod b/parsers/toml/go.mod index e536d65..ae26d54 100644 --- a/parsers/toml/go.mod +++ b/parsers/toml/go.mod @@ -3,7 +3,7 @@ module github.com/knadh/koanf/parsers/toml/v2 go 1.23.0 require ( - github.com/pelletier/go-toml/v2 v2.4.0 + github.com/pelletier/go-toml/v2 v2.4.2 github.com/stretchr/testify v1.9.0 ) diff --git a/parsers/toml/go.sum b/parsers/toml/go.sum index 31d6749..1dff9b2 100644 --- a/parsers/toml/go.sum +++ b/parsers/toml/go.sum @@ -1,7 +1,7 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/pelletier/go-toml/v2 v2.4.0 h1:Mwu0mAkUKbittDs3/ADDWXqMmq3EOK2VHiuCkV00Row= -github.com/pelletier/go-toml/v2 v2.4.0/go.mod h1:2gIqNv+qfxSVS7cM2xJQKtLSTLUE9V8t9Stt+h56mCY= +github.com/pelletier/go-toml/v2 v2.4.2 h1:M2fKKbmyvI+hGId/D0W64qDBMVhJnNR10O5gIbMc//Q= +github.com/pelletier/go-toml/v2 v2.4.2/go.mod h1:2gIqNv+qfxSVS7cM2xJQKtLSTLUE9V8t9Stt+h56mCY= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= diff --git a/parsers/toml/toml.go b/parsers/toml/toml.go index 7efb6d0..af770ac 100644 --- a/parsers/toml/toml.go +++ b/parsers/toml/toml.go @@ -21,11 +21,19 @@ func (p *TOML) Unmarshal(b []byte) (map[string]any, error) { return nil, err } + if len(outMap) == 0 { + return nil, nil + } + return outMap, nil } // Marshal marshals the given config map to TOML bytes. func (p *TOML) Marshal(o map[string]any) ([]byte, error) { + if len(o) == 0 { + return nil, nil + } + out, err := toml.Marshal(&o) if err != nil { return nil, err diff --git a/parsers/toml/toml_test.go b/parsers/toml/toml_test.go index 0d9c5b9..7e79309 100644 --- a/parsers/toml/toml_test.go +++ b/parsers/toml/toml_test.go @@ -16,7 +16,7 @@ func TestTOML_Unmarshal(t *testing.T) { { name: "Empty TOML", input: []byte(``), - output: map[string]any{}, + output: map[string]any(nil), }, { name: "Valid TOML", @@ -86,7 +86,7 @@ func TestTOML_Marshal(t *testing.T) { { name: "Empty TOML", input: map[string]any{}, - output: []byte{}, + output: []byte(nil), }, { name: "Valid TOML", From a2f6886da9470569cbd8e50e7df5bfdf99d9ee5c Mon Sep 17 00:00:00 2001 From: GreyXor Date: Sun, 5 Jul 2026 13:14:09 +0200 Subject: [PATCH 4/4] update go-toml v2.4.3 --- parsers/toml/go.mod | 2 +- parsers/toml/go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/parsers/toml/go.mod b/parsers/toml/go.mod index ae26d54..a0931b9 100644 --- a/parsers/toml/go.mod +++ b/parsers/toml/go.mod @@ -3,7 +3,7 @@ module github.com/knadh/koanf/parsers/toml/v2 go 1.23.0 require ( - github.com/pelletier/go-toml/v2 v2.4.2 + github.com/pelletier/go-toml/v2 v2.4.3 github.com/stretchr/testify v1.9.0 ) diff --git a/parsers/toml/go.sum b/parsers/toml/go.sum index 1dff9b2..ec194fa 100644 --- a/parsers/toml/go.sum +++ b/parsers/toml/go.sum @@ -1,7 +1,7 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/pelletier/go-toml/v2 v2.4.2 h1:M2fKKbmyvI+hGId/D0W64qDBMVhJnNR10O5gIbMc//Q= -github.com/pelletier/go-toml/v2 v2.4.2/go.mod h1:2gIqNv+qfxSVS7cM2xJQKtLSTLUE9V8t9Stt+h56mCY= +github.com/pelletier/go-toml/v2 v2.4.3 h1:GTRvJQutkOSftxIFD5xw9aepkYNuPWmVJpffdDPYVpY= +github.com/pelletier/go-toml/v2 v2.4.3/go.mod h1:2gIqNv+qfxSVS7cM2xJQKtLSTLUE9V8t9Stt+h56mCY= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg=