Signed-off-by: Andrew Thornton <art27@cantab.net>tags/v1.13.0-rc1
@@ -11,7 +11,7 @@ require ( | |||
gitea.com/macaron/cors v0.0.0-20190826180238-95aec09ea8b4 | |||
gitea.com/macaron/csrf v0.0.0-20190822024205-3dc5a4474439 | |||
gitea.com/macaron/gzip v0.0.0-20200827120000-efa5e8477cf5 | |||
gitea.com/macaron/i18n v0.0.0-20190822004228-474e714e2223 | |||
gitea.com/macaron/i18n v0.0.0-20200910171939-7bbf54aa4c76 | |||
gitea.com/macaron/inject v0.0.0-20190805023432-d4c86e31027a | |||
gitea.com/macaron/macaron v1.5.0 | |||
gitea.com/macaron/session v0.0.0-20200902202411-e3a87877db6e | |||
@@ -90,7 +90,7 @@ require ( | |||
github.com/tinylib/msgp v1.1.2 // indirect | |||
github.com/tstranex/u2f v1.0.0 | |||
github.com/unknwon/com v1.0.1 | |||
github.com/unknwon/i18n v0.0.0-20190805065654-5c6446a380b6 | |||
github.com/unknwon/i18n v0.0.0-20200823051745-09abd91c7f2c | |||
github.com/unknwon/paginater v0.0.0-20151104151617-7748a72e0141 | |||
github.com/urfave/cli v1.20.0 | |||
github.com/xanzy/go-gitlab v0.37.0 | |||
@@ -109,7 +109,7 @@ require ( | |||
gopkg.in/alexcesaro/quotedprintable.v3 v3.0.0-20150716171945-2caba252f4dc // indirect | |||
gopkg.in/asn1-ber.v1 v1.0.0-20150924051756-4e86f4367175 // indirect | |||
gopkg.in/gomail.v2 v2.0.0-20160411212932-81ebce5c23df | |||
gopkg.in/ini.v1 v1.60.2 | |||
gopkg.in/ini.v1 v1.61.0 | |||
gopkg.in/ldap.v3 v3.0.2 | |||
gopkg.in/yaml.v2 v2.3.0 | |||
mvdan.cc/xurls/v2 v2.1.0 |
@@ -30,8 +30,8 @@ gitea.com/macaron/csrf v0.0.0-20190822024205-3dc5a4474439 h1:88c34YM29a1GlWLrLBa | |||
gitea.com/macaron/csrf v0.0.0-20190822024205-3dc5a4474439/go.mod h1:IsQPHx73HnnqFBYiVHjg87q4XBZyGXXu77xANukvZuk= | |||
gitea.com/macaron/gzip v0.0.0-20200827120000-efa5e8477cf5 h1:6rbhThlqfOb+sSmhrsVFz3bZoAeoloe7TZqyeiPbbWI= | |||
gitea.com/macaron/gzip v0.0.0-20200827120000-efa5e8477cf5/go.mod h1:z8vCjuhqDfvzPUJDowGqbsgoeYBvDbl95S5k6y43Pxo= | |||
gitea.com/macaron/i18n v0.0.0-20190822004228-474e714e2223 h1:iZWwQif/LHMjBgfY/ua8CFVa4XMDfbbs7EZ0Q1dYguU= | |||
gitea.com/macaron/i18n v0.0.0-20190822004228-474e714e2223/go.mod h1:+qsc10s4hBsHKU/9luGGumFh4m5FFVc7uih+8/mM1NY= | |||
gitea.com/macaron/i18n v0.0.0-20200910171939-7bbf54aa4c76 h1:r+z4ExFB3GHAXaGfWz+TMGs5q/RuOzDsTCGiXiAk5AY= | |||
gitea.com/macaron/i18n v0.0.0-20200910171939-7bbf54aa4c76/go.mod h1:g5ope1b+iWhBdHzAn6EJ9u9Gp3FRESxpG+CDf7HYc/A= | |||
gitea.com/macaron/inject v0.0.0-20190803172902-8375ba841591/go.mod h1:h6E4kLao1Yko6DOU6QDnQPcuoNzvbZqzj2mtPcEn1aM= | |||
gitea.com/macaron/inject v0.0.0-20190805023432-d4c86e31027a h1:aOKEXkDTnh4euoH0so/THLXeHtQuqHmDPb1xEk6Ehok= | |||
gitea.com/macaron/inject v0.0.0-20190805023432-d4c86e31027a/go.mod h1:h6E4kLao1Yko6DOU6QDnQPcuoNzvbZqzj2mtPcEn1aM= | |||
@@ -882,6 +882,8 @@ github.com/unknwon/com v1.0.1 h1:3d1LTxD+Lnf3soQiD4Cp/0BRB+Rsa/+RTvz8GMMzIXs= | |||
github.com/unknwon/com v1.0.1/go.mod h1:tOOxU81rwgoCLoOVVPHb6T/wt8HZygqH5id+GNnlCXM= | |||
github.com/unknwon/i18n v0.0.0-20190805065654-5c6446a380b6 h1:sRrkJEHtNoaSvyXMbRgofEOX4/3gMiraevQKJdIBhYE= | |||
github.com/unknwon/i18n v0.0.0-20190805065654-5c6446a380b6/go.mod h1:+5rDk6sDGpl3azws3O+f+GpFSyN9GVr0K8cvQLQM2ZQ= | |||
github.com/unknwon/i18n v0.0.0-20200823051745-09abd91c7f2c h1:679/gJXwrsHC3RATr0YYjZvDMJPYN7W9FGSGNoLmKxM= | |||
github.com/unknwon/i18n v0.0.0-20200823051745-09abd91c7f2c/go.mod h1:+5rDk6sDGpl3azws3O+f+GpFSyN9GVr0K8cvQLQM2ZQ= | |||
github.com/unknwon/paginater v0.0.0-20151104151617-7748a72e0141 h1:Z79lyIznnziKADUf0J7EP8Z4ZL7YJDiPuaazlfUBSy4= | |||
github.com/unknwon/paginater v0.0.0-20151104151617-7748a72e0141/go.mod h1:TBwoao3Q4Eb/cp+dHbXDfRTrZSsj/k7kLr2j1oWRWC0= | |||
github.com/urfave/cli v1.20.0 h1:fDqGv3UG/4jbVl/QkFwEdddtEDjh/5Ov6X+0B/3bPaw= | |||
@@ -1187,8 +1189,8 @@ gopkg.in/ini.v1 v1.46.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= | |||
gopkg.in/ini.v1 v1.51.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= | |||
gopkg.in/ini.v1 v1.57.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= | |||
gopkg.in/ini.v1 v1.60.1/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= | |||
gopkg.in/ini.v1 v1.60.2 h1:7i8mqModL63zqi8nQn8Q3+0zvSCZy1AxhBgthKfi4WU= | |||
gopkg.in/ini.v1 v1.60.2/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= | |||
gopkg.in/ini.v1 v1.61.0 h1:LBCdW4FmFYL4s/vDZD1RQYX7oAR6IjujCYgMdbHBR10= | |||
gopkg.in/ini.v1 v1.61.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= | |||
gopkg.in/ldap.v3 v3.0.2 h1:R6RBtabK6e1GO0eQKtkyOFbAHO73QesLzI2w2DZ6b9w= | |||
gopkg.in/ldap.v3 v3.0.2/go.mod h1:oxD7NyBuxchC+SgJDE1Q5Od05eGt29SDQVBmV+HYbzw= | |||
gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo= |
@@ -0,0 +1 @@ | |||
/.idea |
@@ -3,9 +3,8 @@ module gitea.com/macaron/i18n | |||
go 1.11 | |||
require ( | |||
gitea.com/macaron/macaron v1.3.3-0.20190821202302-9646c0587edb | |||
github.com/smartystreets/goconvey v0.0.0-20190731233626-505e41936337 | |||
github.com/unknwon/com v0.0.0-20190804042917-757f69c95f3e | |||
gitea.com/macaron/macaron v1.5.0 | |||
github.com/stretchr/testify v1.4.0 | |||
github.com/unknwon/i18n v0.0.0-20190805065654-5c6446a380b6 | |||
golang.org/x/text v0.3.2 | |||
) |
@@ -1,21 +1,32 @@ | |||
gitea.com/macaron/inject v0.0.0-20190803172902-8375ba841591 h1:UbCTjPcLrNxR9LzKDjQBMT2zoxZuEnca1pZCpgeMuhQ= | |||
gitea.com/macaron/inject v0.0.0-20190803172902-8375ba841591/go.mod h1:h6E4kLao1Yko6DOU6QDnQPcuoNzvbZqzj2mtPcEn1aM= | |||
gitea.com/macaron/macaron v1.3.3-0.20190821202302-9646c0587edb h1:amL0md6orTj1tXY16ANzVU9FmzQB+W7aJwp8pVDbrmA= | |||
gitea.com/macaron/macaron v1.3.3-0.20190821202302-9646c0587edb/go.mod h1:0coI+mSPSwbsyAbOuFllVS38awuk9mevhLD52l50Gjs= | |||
gitea.com/macaron/inject v0.0.0-20190805023432-d4c86e31027a h1:aOKEXkDTnh4euoH0so/THLXeHtQuqHmDPb1xEk6Ehok= | |||
gitea.com/macaron/inject v0.0.0-20190805023432-d4c86e31027a/go.mod h1:h6E4kLao1Yko6DOU6QDnQPcuoNzvbZqzj2mtPcEn1aM= | |||
gitea.com/macaron/macaron v1.5.0 h1:TvWEcHw1/zaHlo0GTuKEukLh3A99+QsU2mjBrXLXjVQ= | |||
gitea.com/macaron/macaron v1.5.0/go.mod h1:P7hfDbQjcW22lkYkXlxdRIfWOXxH2+K4EogN4Q0UlLY= | |||
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= | |||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= | |||
github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= | |||
github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e h1:JKmoR8x90Iww1ks85zJ1lfDGgIiMDuIptTOhJq+zKyg= | |||
github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= | |||
github.com/jtolds/gls v4.2.1+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= | |||
github.com/jtolds/gls v4.20.0+incompatible h1:xdiiI2gbIgH/gLH7ADydsJ1uDOEzR8yvV7C0MuV77Wo= | |||
github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= | |||
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/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= | |||
github.com/smartystreets/assertions v0.0.0-20190116191733-b6c0e53d7304 h1:Jpy1PXuP99tXNrhbq2BaPz9B+jNAvH1JPQQpG/9GCXY= | |||
github.com/smartystreets/assertions v0.0.0-20190116191733-b6c0e53d7304/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= | |||
github.com/smartystreets/assertions v1.0.1 h1:voD4ITNjPL5jjBfgR/r8fPIIBrliWrWHeiJApdr3r4w= | |||
github.com/smartystreets/assertions v1.0.1/go.mod h1:kHHU4qYBaI3q23Pp3VPrmWhuIUrLW/7eUrw0BU5VaoM= | |||
github.com/smartystreets/goconvey v0.0.0-20181108003508-044398e4856c/go.mod h1:XDJAKZRPZ1CvBcN2aX5YOUTYGHki24fSF0Iv48Ibg0s= | |||
github.com/smartystreets/goconvey v0.0.0-20190731233626-505e41936337 h1:WN9BUFbdyOsSH/XohnWpXOlq9NBD5sGAB2FciQMUEe8= | |||
github.com/smartystreets/goconvey v0.0.0-20190731233626-505e41936337/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= | |||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= | |||
github.com/stretchr/testify v1.4.0 h1:2E4SXV/wtOkTonXsotYi4li6zVWxYlZuYNCXe9XRJyk= | |||
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= | |||
github.com/unknwon/com v0.0.0-20190804042917-757f69c95f3e h1:GSGeB9EAKY2spCABz6xOX5DbxZEXolK+nBSvmsQwRjM= | |||
github.com/unknwon/com v0.0.0-20190804042917-757f69c95f3e/go.mod h1:tOOxU81rwgoCLoOVVPHb6T/wt8HZygqH5id+GNnlCXM= | |||
github.com/unknwon/com v1.0.1 h1:3d1LTxD+Lnf3soQiD4Cp/0BRB+Rsa/+RTvz8GMMzIXs= | |||
github.com/unknwon/com v1.0.1/go.mod h1:tOOxU81rwgoCLoOVVPHb6T/wt8HZygqH5id+GNnlCXM= | |||
github.com/unknwon/i18n v0.0.0-20190805065654-5c6446a380b6 h1:sRrkJEHtNoaSvyXMbRgofEOX4/3gMiraevQKJdIBhYE= | |||
github.com/unknwon/i18n v0.0.0-20190805065654-5c6446a380b6/go.mod h1:+5rDk6sDGpl3azws3O+f+GpFSyN9GVr0K8cvQLQM2ZQ= | |||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= | |||
@@ -30,6 +41,12 @@ golang.org/x/text v0.3.2 h1:tW2bmiBqwgJj/UpqtC8EpXEZVYOwU0yG4iWbprSVAcs= | |||
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= | |||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= | |||
golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= | |||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= | |||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= | |||
gopkg.in/ini.v1 v1.44.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= | |||
gopkg.in/ini.v1 v1.46.0 h1:VeDZbLYGaupuvIrsYCEOe/L/2Pcs5n7hdO1ZTjporag= | |||
gopkg.in/ini.v1 v1.46.0 h1:VeDZbLYGaupuvIrsYCEOe/L/2Pcs5n7hdO1ZTjporag= | |||
gopkg.in/ini.v1 v1.46.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= | |||
gopkg.in/ini.v1 v1.46.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= | |||
gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw= | |||
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= |
@@ -12,16 +12,17 @@ | |||
// License for the specific language governing permissions and limitations | |||
// under the License. | |||
// Package i18n is a middleware that provides app Internationalization and Localization of Macaron. | |||
// Package i18n provides an Internationalization and Localization middleware for Macaron applications. | |||
package i18n | |||
import ( | |||
"fmt" | |||
"log" | |||
"os" | |||
"path" | |||
"strings" | |||
"gitea.com/macaron/macaron" | |||
"github.com/unknwon/com" | |||
"github.com/unknwon/i18n" | |||
"golang.org/x/text/language" | |||
) | |||
@@ -32,6 +33,16 @@ func Version() string { | |||
return _VERSION | |||
} | |||
// isFile returns true if given path is a file, | |||
// or returns false when it's a directory or does not exist. | |||
func isFile(filePath string) bool { | |||
f, e := os.Stat(filePath) | |||
if e != nil { | |||
return false | |||
} | |||
return !f.IsDir() | |||
} | |||
// initLocales initializes language type list and Accept-Language header matcher. | |||
func initLocales(opt Options) language.Matcher { | |||
tags := make([]language.Tag, len(opt.Langs)) | |||
@@ -41,7 +52,7 @@ func initLocales(opt Options) language.Matcher { | |||
// Append custom locale file. | |||
custom := []interface{}{} | |||
customPath := path.Join(opt.CustomDirectory, fname) | |||
if com.IsFile(customPath) { | |||
if isFile(customPath) { | |||
custom = append(custom, customPath) | |||
} | |||
@@ -54,7 +65,7 @@ func initLocales(opt Options) language.Matcher { | |||
err := i18n.SetMessageWithDesc(lang, opt.Names[i], locale, custom...) | |||
if err != nil && err != i18n.ErrLangAlreadyExist { | |||
panic(fmt.Errorf("fail to set message file(%s): %v", lang, err)) | |||
log.Printf("ERROR: failed to set message file(%s) for language %s: %v", lang, opt.Names[i], err) | |||
} | |||
} | |||
return language.NewMatcher(tags) | |||
@@ -98,6 +109,10 @@ type Options struct { | |||
Section string | |||
// Domain used for `lang` cookie. Default is "" | |||
CookieDomain string | |||
// Set the Secure flag on the `lang` cookie. Default is disabled. | |||
Secure bool | |||
// Set the HTTP Only flag on the `lang` cookie. Default is disabled. | |||
CookieHttpOnly bool | |||
} | |||
func prepareOptions(options []Options) Options { | |||
@@ -195,7 +210,7 @@ func I18n(options ...Options) macaron.Handler { | |||
// Save language information in cookies. | |||
if !hasCookie { | |||
ctx.SetCookie("lang", curLang.Lang, 1<<31-1, "/"+strings.TrimPrefix(opt.SubURL, "/"), opt.CookieDomain) | |||
ctx.SetCookie("lang", curLang.Lang, 1<<31-1, "/"+strings.TrimPrefix(opt.SubURL, "/"), opt.CookieDomain, opt.Secure, opt.CookieHttpOnly) | |||
} | |||
restLangs := make([]LangType, 0, i18n.Count()-1) | |||
@@ -210,7 +225,7 @@ func I18n(options ...Options) macaron.Handler { | |||
} | |||
// Set language properties. | |||
locale := Locale{i18n.Locale{lang}} | |||
locale := Locale{Locale: i18n.Locale{Lang: lang}} | |||
ctx.Map(locale) | |||
ctx.Locale = locale | |||
ctx.Data[opt.TmplName] = locale | |||
@@ -221,7 +236,7 @@ func I18n(options ...Options) macaron.Handler { | |||
ctx.Data["RestLangs"] = restLangs | |||
if opt.Redirect && isNeedRedir { | |||
ctx.Redirect(opt.SubURL + ctx.Req.RequestURI[:strings.Index(ctx.Req.RequestURI, "?")]) | |||
ctx.Redirect(opt.SubURL + path.Clean(ctx.Req.RequestURI[:strings.Index(ctx.Req.RequestURI, "?")])) | |||
} | |||
} | |||
} |
@@ -1,4 +1,9 @@ | |||
# i18n [![GoDoc](https://godoc.org/github.com/unknwon/i18n?status.svg)](https://godoc.org/github.com/unknwon/i18n) | |||
# i18n | |||
[![GitHub Workflow Status](https://img.shields.io/github/workflow/status/unknwon/i18n/Go?logo=github&style=for-the-badge)](https://github.com/unknwon/i18n/actions?query=workflow%3AGo) | |||
[![codecov](https://img.shields.io/codecov/c/github/unknwon/i18n/master?logo=codecov&style=for-the-badge)](https://codecov.io/gh/unknwon/i18n) | |||
[![GoDoc](https://img.shields.io/badge/GoDoc-Reference-blue?style=for-the-badge&logo=go)](https://pkg.go.dev/github.com/unknwon/i18n?tab=doc) | |||
[![Sourcegraph](https://img.shields.io/badge/view%20on-Sourcegraph-brightgreen.svg?style=for-the-badge&logo=sourcegraph)](https://sourcegraph.com/github.com/unknwon/i18n) | |||
Package i18n is for app Internationalization and Localization. | |||
@@ -124,7 +129,7 @@ Module i18n provides a command line helper tool beei18n for simplify steps of yo | |||
Command `sync` allows you use a exist local file as the template to create or sync other locale files: | |||
ui18n sync srouce_file.ini other1.ini other2.ini | |||
ui18n sync source_file.ini other1.ini other2.ini | |||
This command can operate 1 or more files in one command. | |||
@@ -0,0 +1,9 @@ | |||
coverage: | |||
range: "60...95" | |||
status: | |||
project: | |||
default: | |||
threshold: 1% | |||
comment: | |||
layout: 'diff, files' |
@@ -167,7 +167,7 @@ func SetMessageWithDesc(lang, langDesc string, localeFile interface{}, otherLoca | |||
lc.langDesc = langDesc | |||
lc.message = message | |||
if locales.Add(lc) == false { | |||
if !locales.Add(lc) { | |||
return ErrLangAlreadyExist | |||
} | |||
} |
@@ -302,6 +302,9 @@ func (f *File) Reload() (err error) { | |||
} | |||
return err | |||
} | |||
if f.options.ShortCircuit { | |||
return nil | |||
} | |||
} | |||
return nil | |||
} |
@@ -81,6 +81,8 @@ type LoadOptions struct { | |||
IgnoreInlineComment bool | |||
// SkipUnrecognizableLines indicates whether to skip unrecognizable lines that do not conform to key/value pairs. | |||
SkipUnrecognizableLines bool | |||
// ShortCircuit indicates whether to ignore other configuration sources after loaded the first available configuration source. | |||
ShortCircuit bool | |||
// AllowBooleanKeys indicates whether to allow boolean type keys or treat as value is missing. | |||
// This type of keys are mostly used in my.cnf. | |||
AllowBooleanKeys bool |
@@ -27,7 +27,7 @@ gitea.com/macaron/csrf | |||
# gitea.com/macaron/gzip v0.0.0-20200827120000-efa5e8477cf5 | |||
## explicit | |||
gitea.com/macaron/gzip | |||
# gitea.com/macaron/i18n v0.0.0-20190822004228-474e714e2223 | |||
# gitea.com/macaron/i18n v0.0.0-20200910171939-7bbf54aa4c76 | |||
## explicit | |||
gitea.com/macaron/i18n | |||
# gitea.com/macaron/inject v0.0.0-20190805023432-d4c86e31027a | |||
@@ -720,7 +720,7 @@ github.com/ulikunitz/xz/lzma | |||
# github.com/unknwon/com v1.0.1 | |||
## explicit | |||
github.com/unknwon/com | |||
# github.com/unknwon/i18n v0.0.0-20190805065654-5c6446a380b6 | |||
# github.com/unknwon/i18n v0.0.0-20200823051745-09abd91c7f2c | |||
## explicit | |||
github.com/unknwon/i18n | |||
# github.com/unknwon/paginater v0.0.0-20151104151617-7748a72e0141 | |||
@@ -934,7 +934,7 @@ gopkg.in/asn1-ber.v1 | |||
# gopkg.in/gomail.v2 v2.0.0-20160411212932-81ebce5c23df | |||
## explicit | |||
gopkg.in/gomail.v2 | |||
# gopkg.in/ini.v1 v1.60.2 | |||
# gopkg.in/ini.v1 v1.61.0 | |||
## explicit | |||
gopkg.in/ini.v1 | |||
# gopkg.in/ldap.v3 v3.0.2 |