Skip to content

Commit

Permalink
langs/i18n: Fix for bare TOML keys
Browse files Browse the repository at this point in the history
Hugo 0.76.0 updated go-i18n from v1 to v2. This allowed us to set the TOML unmarshaler to use, so we set the one we use in other places in Hugo.

But that does not support dotted bare keys, which caused some breakage in the wild.

This commit fixes that by:

* Using go-toml for language files
* Updating go-toml to the latest version
  • Loading branch information
bep committed Oct 8, 2020
1 parent 18ed22b commit fc6abc3
Show file tree
Hide file tree
Showing 4 changed files with 18 additions and 2 deletions.
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ require (
github.com/nicksnyder/go-i18n/v2 v2.1.1
github.com/niklasfasching/go-org v1.3.2
github.com/olekukonko/tablewriter v0.0.4
github.com/pelletier/go-toml v1.6.0 // indirect
github.com/pelletier/go-toml v1.8.1
github.com/pkg/errors v0.9.1
github.com/rogpeppe/go-internal v1.6.2
github.com/russross/blackfriday v1.5.3-0.20200218234912-41c5fccfd6f6
Expand Down
2 changes: 2 additions & 0 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -387,6 +387,8 @@ github.com/pelletier/go-toml v1.2.0 h1:T5zMGML61Wp+FlcbWjRDT7yAxhJNAiPPLOFECq181
github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic=
github.com/pelletier/go-toml v1.6.0 h1:aetoXYr0Tv7xRU/V4B4IZJ2QcbtMUFoNb3ORp7TzIK4=
github.com/pelletier/go-toml v1.6.0/go.mod h1:5N711Q9dKgbdkxHL+MEfF31hpT7l0S0s/t2kKREewys=
github.com/pelletier/go-toml v1.8.1 h1:1Nf83orprkJyknT6h7zbuEGUEjcyVlCxSUGTENmNCRM=
github.com/pelletier/go-toml v1.8.1/go.mod h1:T2/BmBdy8dvIRq1a/8aqjN41wvWlN4lrapLU/GW4pbc=
github.com/pierrec/lz4 v2.0.5+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY=
github.com/pkg/errors v0.8.0 h1:WdK/asTD0HN+q6hsWO3/vpuAkAr+tw6aNJNDFFf0+qw=
github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
Expand Down
14 changes: 14 additions & 0 deletions langs/i18n/i18n_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -199,6 +199,20 @@ other = "{{ .Count }} minuttar lesing"`),
expected: "3 minuttar lesing",
expectedFlag: "3 minuttar lesing",
},
// https://github.com/gohugoio/hugo/issues/7794
{
name: "dotted-bare-key",
data: map[string][]byte{
"en.toml": []byte(`"shop_nextPage.one" = "Show Me The Money"
`),
},
args: nil,
lang: "en",
id: "shop_nextPage.one",
expected: "Show Me The Money",
expectedFlag: "Show Me The Money",
},
}

func doTestI18nTranslate(t testing.TB, test i18nTest, cfg config.Provider) string {
Expand Down
2 changes: 1 addition & 1 deletion langs/i18n/translationProvider.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,9 @@ import (
"golang.org/x/text/language"
yaml "gopkg.in/yaml.v2"

"github.com/BurntSushi/toml"
"github.com/gohugoio/hugo/helpers"
"github.com/nicksnyder/go-i18n/v2/i18n"
toml "github.com/pelletier/go-toml"

"github.com/gohugoio/hugo/deps"
"github.com/gohugoio/hugo/hugofs"
Expand Down

0 comments on commit fc6abc3

Please sign in to comment.