Open
Description
- I have looked at the documentation here first?
- I have looked at the examples provided that may showcase my question here?
Package version eg. v9, v10:
v10
Issue, Question or Enhancement:
When using bcp47_language_tag
for validation, some non-BCP47 tags such as "eng
" or "en_US
" are passing as valid.
isBCP47LanguageTag()
uses golang.org/x/text/language
's Parse
and its documentation says:
[snip]
It accepts tags in the BCP 47 format and extensions to this standard defined in https://www.unicode.org/reports/tr35/#Unicode_Language_and_Locale_Identifiers.
Code sample, to showcase or reproduce:
I expect both of these to fail, but they don't:
package main
import (
"fmt"
"github.com/go-playground/validator/v10"
)
func main() {
validate := validator.New()
err := validate.Var("en_US", "bcp47_language_tag")
if err != nil {
fmt.Println(err.Error())
return
}
err = validate.Var("eng", "bcp47_language_tag")
if err != nil {
fmt.Println(err.Error())
return
}
}