Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions cspell.json
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,10 @@
"**/*.lock",
"**/go*.mod",
"**/go*.sum",
"**/node_modules/**",
"cspell.json",
"CODEOWNERS",
"bin/**",
"docs/assets/**",
"**/testdata/**",
"pkg/rules/string_test.go",
"context7.json"
],
Expand All @@ -38,6 +37,8 @@
"Fset",
"Messagef",
"Skłodowska",
"UNECE",
"UNSD",
"UUIDRFC",
"afbf",
"atoi",
Expand All @@ -61,12 +62,14 @@
"govytest",
"issn",
"ldflags",
"Leonean",
"luhn",
"mypkg",
"nobl",
"pkgs",
"println",
"rtmp",
"renminbi",
"sloctl",
"strconv",
"structs",
Expand Down
5 changes: 4 additions & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,10 @@ module github.com/nobl9/govy

go 1.25.5

require golang.org/x/tools v0.48.0
require (
golang.org/x/text v0.38.0
golang.org/x/tools v0.48.0
)

require (
golang.org/x/mod v0.38.0 // indirect
Expand Down
2 changes: 2 additions & 0 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,7 @@ golang.org/x/mod v0.38.0 h1:MECBjubtXD7yj4HrhIUcywNaGeNVUdfVnxmPajOk4yk=
golang.org/x/mod v0.38.0/go.mod h1:V6Xz0pq8TQ3dGqVQ1FVHuelZpAL0uNhSkk9ogYP3c40=
golang.org/x/sync v0.22.0 h1:SZjpbeLmrCk4xhRSZFNZW5gFUeCeFgjekvI/+gfScek=
golang.org/x/sync v0.22.0/go.mod h1:9xrNwdLfx4jkKbNva9FpL6vEN7evnE43NNNJQ2LF3+0=
golang.org/x/text v0.38.0 h1:sXmwo9DwP3OK9EZ7PqAdaooSGozfl/3a6/xJcbzPRhE=
golang.org/x/text v0.38.0/go.mod h1:YXZt3QhHUKYT53r2lLKFIVi6Ao1jdzrTR/KQ09qyxF4=
golang.org/x/tools v0.48.0 h1:3+hClM1aLL5mjMKm5ovokw9epgRXPuu2tILgismM6RE=
golang.org/x/tools v0.48.0/go.mod h1:08xX0orndb/F7jJxGDicx061tyd5pcMto75YMAXr6lk=
3 changes: 2 additions & 1 deletion go.work.sum
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ golang.org/x/mod v0.28.0/go.mod h1:yfB/L0NOf/kmEbXjzCPOx1iK1fRutOydrCMsqRhEBxI=
golang.org/x/mod v0.30.0/go.mod h1:lAsf5O2EvJeSFMiBxXDki7sCgAxEUcZHXoXMKT4GJKc=
golang.org/x/mod v0.31.0/go.mod h1:43JraMp9cGx1Rx3AqioxrbrhNsLl2l/iNAvuBkrezpg=
golang.org/x/mod v0.32.0/go.mod h1:SgipZ/3h2Ci89DlEtEXWUk/HteuRin+HHhN+WbNhguU=
golang.org/x/mod v0.37.0/go.mod h1:m8S8VeM9r4dzDwjrKO0a1sZP3YjeMamRRlD+fmR2Q/0=
golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44=
golang.org/x/net v0.39.0 h1:ZCu7HMWDxpXpaiKdhzIfaltL9Lp31x/3fCP11bc6/fY=
golang.org/x/net v0.39.0/go.mod h1:X7NRbYVEA+ewNkCNyJ513WmMdQ3BineSwVtN2zD/d+E=
Expand Down Expand Up @@ -83,11 +84,11 @@ golang.org/x/text v0.32.0/go.mod h1:o/rUWzghvpD5TXrTIBuJU77MTaN0ljMWE47kxGJQ7jY=
golang.org/x/text v0.34.0 h1:oL/Qq0Kdaqxa1KbNeMKwQq0reLCCaFtqu2eNuSeNHbk=
golang.org/x/text v0.34.0/go.mod h1:homfLqTYRFyVYemLBFl5GgL/DWEiH5wcsQ5gSh1yziA=
golang.org/x/text v0.37.0/go.mod h1:a5sjxXGs9hsn/AJVwuElvCAo9v8QYLzvavO5z2PiM38=
golang.org/x/text v0.38.0/go.mod h1:YXZt3QhHUKYT53r2lLKFIVi6Ao1jdzrTR/KQ09qyxF4=
golang.org/x/text v0.40.0/go.mod h1:hpnzDAfGV753zIKo+wk3u1bVKCGPbrnF7+7LBF/UHVY=
golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58=
golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk=
golang.org/x/tools v0.37.0/go.mod h1:MBN5QPQtLMHVdvsbtarmTNukZDdgwdwlO5qGacAzF0w=
golang.org/x/tools v0.39.0/go.mod h1:JnefbkDPyD8UU2kI5fuf8ZX4/yUeh9W877ZeBONxUqQ=
golang.org/x/tools v0.40.0/go.mod h1:Ik/tzLRlbscWpqqMRjyWYDisX8bG13FrdXp3o4Sr9lc=
golang.org/x/tools v0.41.0/go.mod h1:XSY6eDqxVNiYgezAVqqCeihT4j1U2CCsqvH3WhQpnlg=
golang.org/x/tools v0.47.0/go.mod h1:dFHnyTvFWY212G+h7ZY4Vsp/K3U4/7W9TyVaAul8uCA=
23 changes: 16 additions & 7 deletions internal/messagetemplates/templatekey_string.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

34 changes: 26 additions & 8 deletions internal/messagetemplates/templates.go
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,15 @@ const (
StringCrontabTemplate
StringDateTimeTemplate
StringTimeZoneTemplate
StringBCP47LanguageTagTemplate
StringBCP47StrictLanguageTagTemplate
StringISO3166Alpha2Template
StringISO3166Alpha3Template
StringISO3166NumericTemplate
StringISO31662Template
StringISO4217Template
StringLatitudeTemplate
StringLongitudeTemplate
StringKubernetesQualifiedNameTemplate
StringMongoDBObjectIDTemplate
URLTemplate
Expand Down Expand Up @@ -211,14 +220,23 @@ var rawMessageTemplates = map[templateKey]string{
string must be a valid git reference
{{- end }}
`,
StringFileSystemPathTemplate: "string must be an existing file system path{{- if .Error }}: {{ .Error }}{{- end }}",
StringFilePathTemplate: "string must be a file system path to an existing file{{- if .Error }}: {{ .Error }}{{- end }}",
StringDirPathTemplate: "string must be a file system path to an existing directory{{- if .Error }}: {{ .Error }}{{- end }}",
StringMatchFileSystemPathTemplate: "string must match file path pattern: '{{ .ComparisonValue }}'{{- if .Error }}: {{ .Error }}{{- end }}",
StringRegexpTemplate: "string must be a valid regular expression{{- if .Error }}: {{ .Error }}{{- end }}",
StringCrontabTemplate: "string must be a valid cron schedule expression",
StringDateTimeTemplate: "string must be a valid date and time in '{{ .ComparisonValue }}' format{{- if .Error }}: {{ .Error }}{{- end }}",
StringTimeZoneTemplate: "string must be a valid IANA Time Zone Database code{{- if .Error }}: {{ .Error }}{{- end }}",
StringFileSystemPathTemplate: "string must be an existing file system path{{- if .Error }}: {{ .Error }}{{- end }}",
StringFilePathTemplate: "string must be a file system path to an existing file{{- if .Error }}: {{ .Error }}{{- end }}",
StringDirPathTemplate: "string must be a file system path to an existing directory{{- if .Error }}: {{ .Error }}{{- end }}",
StringMatchFileSystemPathTemplate: "string must match file path pattern: '{{ .ComparisonValue }}'{{- if .Error }}: {{ .Error }}{{- end }}",
StringRegexpTemplate: "string must be a valid regular expression{{- if .Error }}: {{ .Error }}{{- end }}",
StringCrontabTemplate: "string must be a valid cron schedule expression",
StringDateTimeTemplate: "string must be a valid date and time in '{{ .ComparisonValue }}' format{{- if .Error }}: {{ .Error }}{{- end }}",
StringTimeZoneTemplate: "string must be a valid IANA Time Zone Database code{{- if .Error }}: {{ .Error }}{{- end }}",
StringBCP47LanguageTagTemplate: "string must be a valid BCP 47 language tag",
StringBCP47StrictLanguageTagTemplate: "string must be a valid canonical BCP 47 language tag",
StringISO3166Alpha2Template: "string must be a valid ISO 3166-1 alpha-2 country code",
StringISO3166Alpha3Template: "string must be a valid ISO 3166-1 alpha-3 country code",
StringISO3166NumericTemplate: "string must be a valid ISO 3166-1 numeric-3 country code",
StringISO31662Template: "string must be a valid ISO 3166-2 country subdivision code",
StringISO4217Template: "string must be a valid ISO 4217 three-letter alphabetic currency code",
StringLatitudeTemplate: "string must be a valid latitude coordinate",
StringLongitudeTemplate: "string must be a valid longitude coordinate",
StringKubernetesQualifiedNameTemplate: `
{{- if eq .Custom.EmptyPrefixPart true -}}
prefix part must not be empty
Expand Down
9 changes: 9 additions & 0 deletions pkg/rules/error_codes.go
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,15 @@ const (
ErrorCodeStringCrontab govy.ErrorCode = "string_crontab"
ErrorCodeStringDateTime govy.ErrorCode = "string_date_time"
ErrorCodeStringTimeZone govy.ErrorCode = "string_time_zone"
ErrorCodeStringBCP47LanguageTag govy.ErrorCode = "string_bcp47_language_tag"
ErrorCodeStringBCP47StrictLanguageTag govy.ErrorCode = "string_bcp47_strict_language_tag"
ErrorCodeStringISO3166Alpha2 govy.ErrorCode = "string_iso3166_alpha2"
ErrorCodeStringISO3166Alpha3 govy.ErrorCode = "string_iso3166_alpha3"
ErrorCodeStringISO3166Numeric govy.ErrorCode = "string_iso3166_numeric"
ErrorCodeStringISO31662 govy.ErrorCode = "string_iso3166_2"
ErrorCodeStringISO4217 govy.ErrorCode = "string_iso4217"
ErrorCodeStringLatitude govy.ErrorCode = "string_latitude"
ErrorCodeStringLongitude govy.ErrorCode = "string_longitude"
ErrorCodeStringAlpha govy.ErrorCode = "string_alpha"
ErrorCodeStringAlphanumeric govy.ErrorCode = "string_alphanumeric"
ErrorCodeStringAlphaUnicode govy.ErrorCode = "string_alpha_unicode"
Expand Down
Loading
Loading