Skip to content

Commit 1882036

Browse files
committed
review
1 parent fdf27fc commit 1882036

8 files changed

+75
-6
lines changed

Diff for: pkg/commands/internal/migrate/migrate_formatters.go

+3-5
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,10 @@ import (
1010
)
1111

1212
func toFormatters(old *versionone.Config) versiontwo.Formatters {
13-
enable, _ := ProcessEffectiveLinters(old.Linters)
14-
15-
formatterNames := onlyFormatterNames(enable)
13+
enable, _ := ProcessEffectiveFormatters(old.Linters)
1614

1715
var paths []string
18-
if len(formatterNames) > 0 {
16+
if len(enable) > 0 {
1917
paths = slices.Concat(old.Issues.ExcludeFiles, old.Issues.ExcludeDirs)
2018

2119
if old.Issues.UseDefaultExcludeDirs == nil || ptr.Deref(old.Issues.UseDefaultExcludeDirs) {
@@ -26,7 +24,7 @@ func toFormatters(old *versionone.Config) versiontwo.Formatters {
2624
paths = append(paths, toFormattersPathsFromRules(old.Issues)...)
2725

2826
return versiontwo.Formatters{
29-
Enable: formatterNames,
27+
Enable: enable,
3028
Settings: versiontwo.FormatterSettings{
3129
Gci: toGciSettings(old.LintersSettings.Gci),
3230
GoFmt: toGoFmtSettings(old.LintersSettings.GoFmt),

Diff for: pkg/commands/internal/migrate/migrate_linter_names.go

+26-1
Original file line numberDiff line numberDiff line change
@@ -38,13 +38,33 @@ func ProcessEffectiveLinters(old versionone.Linters) (enable, disable []string)
3838
switch {
3939
case ptr.Deref(old.DisableAll):
4040
return disableAllFilter(old), nil
41+
4142
case ptr.Deref(old.EnableAll):
4243
return nil, enableAllFilter(old)
44+
4345
default:
4446
return defaultLintersFilter(old)
4547
}
4648
}
4749

50+
func ProcessEffectiveFormatters(old versionone.Linters) (enable, disable []string) {
51+
enabled, disabled := ProcessEffectiveLinters(old)
52+
53+
if ptr.Deref(old.EnableAll) {
54+
var formatterNames []string
55+
56+
for _, f := range getAllFormatterNames() {
57+
if !slices.Contains(disabled, f) {
58+
formatterNames = append(formatterNames, f)
59+
}
60+
}
61+
62+
return formatterNames, disabled
63+
}
64+
65+
return onlyFormatterNames(enabled), disabled
66+
}
67+
4868
// disableAllFilter generates the value of `enable` when `disable-all` is `true`.
4969
func disableAllFilter(old versionone.Linters) []string {
5070
// Note:
@@ -827,6 +847,7 @@ func unknownLinterNames(names []string, linters []LinterInfo) []string {
827847
"scopelint",
828848
"structcheck",
829849
"tenv",
850+
"typecheck",
830851
"varcheck",
831852
}
832853

@@ -879,7 +900,7 @@ func onlyLinterNames(names []string) []string {
879900
}
880901

881902
func onlyFormatterNames(names []string) []string {
882-
formatters := []string{"gci", "gofmt", "gofumpt", "goimports"}
903+
formatters := getAllFormatterNames()
883904

884905
var results []string
885906

@@ -920,3 +941,7 @@ func convertAlternativeNames(names []string) []string {
920941
func Unique[S ~[]E, E cmp.Ordered](s S) S {
921942
return slices.Compact(slices.Sorted(slices.Values(s)))
922943
}
944+
945+
func getAllFormatterNames() []string {
946+
return []string{"gci", "gofmt", "gofumpt", "goimports"}
947+
}

Diff for: pkg/commands/internal/migrate/testdata/linters_05.golden.yml

+6
Original file line numberDiff line numberDiff line change
@@ -19,3 +19,9 @@ linters:
1919
- durationcheck
2020
- err113
2121
- errcheck
22+
formatters:
23+
enable:
24+
- gci
25+
- gofmt
26+
- gofumpt
27+
- goimports

Diff for: pkg/commands/internal/migrate/testdata/linters_08.golden.yml

+5
Original file line numberDiff line numberDiff line change
@@ -75,3 +75,8 @@ linters:
7575
- wastedassign
7676
- wrapcheck
7777
- zerologlint
78+
formatters:
79+
enable:
80+
- gofmt
81+
- gofumpt
82+
- goimports
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
version: "2"
2+
linters:
3+
default: all
4+
formatters:
5+
enable:
6+
- gofmt
7+
- gofumpt
8+
- goimports
+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
issues:
2+
# Only to not generate unrelated elements inside golden.
3+
exclude-generated: strict
4+
# Only to not generate unrelated elements inside golden.
5+
exclude-dirs-use-default: false
6+
7+
linters:
8+
enable-all: true
9+
disable:
10+
- typecheck
11+
- gci
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
version: "2"
2+
linters:
3+
default: none
4+
enable:
5+
- govet
+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
issues:
2+
# Only to not generate unrelated elements inside golden.
3+
exclude-generated: strict
4+
# Only to not generate unrelated elements inside golden.
5+
exclude-dirs-use-default: false
6+
7+
linters:
8+
disable-all: true
9+
enable:
10+
- typecheck
11+
- govet

0 commit comments

Comments
 (0)