@@ -7,12 +7,62 @@ If you value it, consider supporting us, we appreciate it! ❤️
7
7
[ ![ Open Collective backers and sponsors] ( https://img.shields.io/badge/OpenCollective-Donate-blue?logo=opencollective&style=for-the-badge )] ( https://opencollective.com/golangci-lint )
8
8
[ ![ GitHub Sponsors] ( https://img.shields.io/badge/GitHub-Donate-blue?logo=github&style=for-the-badge )] ( https://github.com/sponsors/golangci )
9
9
10
+ ### v1.63.0
11
+
12
+ 1 . Enhancements
13
+ * Add support for SuggestedFixes 🎉 (35 linters can "autofix" reports).
14
+ * Formatters (` gofmt ` , ` goimports ` , ` gofumpt ` , ` gci ` ) are applied after the suggested fixes.
15
+ 2 . New linters
16
+ * Add ` exptostd ` linter https://github.com/ldez/exptostd
17
+ * Add ` nilnesserr ` linter https://github.com/alingse/nilnesserr
18
+ * Add ` usetesting ` linter https://github.com/ldez/usetesting
19
+ 3 . Linters new features
20
+ * ` gci ` : new options: ` no-inline-comments ` , ` no-prefix-comments `
21
+ * ` gomoddirectives ` : from 0.2.4 to 0.6.0 (new options: ` go-version-pattern ` , ` toolchain-pattern ` ,` toolchain-forbidden ` , ` tool-forbidden ` , ` go-debug-forbidden ` )
22
+ * ` govet ` : new ` stdversion ` , ` waitgroup ` analyzers
23
+ * ` importas ` : allow multiple empty aliases
24
+ * ` loggercheck ` : new ` slog ` option
25
+ * ` recvcheck ` : from 0.1.2 to 0.2.0 (new options: ` disable-builtin ` , ` exclusions ` )
26
+ * ` tagliatelle ` : from 0.5.0 to 0.7.1 (new options: ` ignored-fields ` , ` extended-rules ` ,` overrides ` , ` pkg ` , ` ignore ` )
27
+ * ` usestdlibvars ` : from 1.27.0 to 1.28.0 (autofix)
28
+ * ` wrapcheck ` : from 2.9.0 to 2.10.0 (new option: ` extra-ignore-sigs ` )
29
+ 4 . Linters bug fixes
30
+ * ` asciicheck ` : from 0.2.0 to 0.3.0
31
+ * ` bodyclose ` : from 574207250966 to ed6a65f985e
32
+ * ` funlen ` : from 0.1.0 to 0.2.0
33
+ * ` ginkgolinter ` : from 0.18.3 to 0.18.4
34
+ * ` gochecksumtype ` : from 0.2.0 to 0.3.1
35
+ * ` gocognit ` : from 1.1.3 to 1.2.0
36
+ * ` godot ` : from 1.4.18 to 1.4.20
37
+ * ` goheader ` : report position improvement
38
+ * ` gosec ` : handling of global nosec option when it is false
39
+ * ` iface ` : from 1.2.1 to 1.3.0
40
+ * ` importas ` : from 0.1.0 to 0.2.0
41
+ * ` intrange ` : from 0.2.1 to 0.3.0
42
+ * ` makezero ` : from 1.1.1 to 1.2.0
43
+ * ` mirror ` : from 1.2.0 to 1.3.0
44
+ * ` nilnil ` : from 1.0.0 to 1.0.1
45
+ * ` nosprintfhostport ` : from 0.1.1 to 0.2.0
46
+ * ` reassign ` : from 0.2.0 to 0.3.0
47
+ * ` spancheck ` : from 0.6.2 to 0.6.4
48
+ * ` tagalign ` : from 1.3.4 to 1.4.1
49
+ * ` wastedassign ` : from 2.0.7 to 2.1.0
50
+ * ` whitespace ` : from 0.1.1 to 0.2.0
51
+ * ` wsl ` : from 4.4.1 to 4.5.0
52
+ 5 . Deprecations
53
+ * ⚠️ ` output.uniq-by-line ` is deprecated and replaced by ` issues.uniq-by-line ` .
54
+ 6 . Misc.
55
+ * Improvements of the help command (color and JSON support).
56
+ * Removes ` decoder ` , ` sloglint ` , ` tagalin ` from ` format ` preset.
57
+ * Enables paths with junction inside Windows.
58
+ * The timeout is disabled if ` run.timeout ` <= 0.
59
+
10
60
### v1.62.2
11
61
12
- 1 . Updated linters
62
+ 1 . Linters bug fixes
13
63
* ` fatcontext ` : from 0.5.2 to 0.5.3
14
64
* ` ginkgolinter ` : from 0.18.0 to 0.18.3
15
- * ` go- errorlint` : from 1.6.0 to 1.7.0
65
+ * ` errorlint ` : from 1.6.0 to 1.7.0
16
66
* ` iface ` : from 1.2.0 to 1.2.1
17
67
* ` revive ` : from 1.5.0 to 1.5.1
18
68
* ` testifylint ` : from 1.5.0 to 1.5.2
@@ -28,38 +78,40 @@ Cancelled due to CI failure.
28
78
1 . New linters
29
79
* Add ` recvcheck ` linter https://github.com/raeperd/recvcheck
30
80
* Add ` iface ` linter https://github.com/uudashr/iface
31
- 2 . Updated linters
32
- * ⚠️ ` execinquery ` : deprecation step 2
33
- * ⚠️ ` gomnd ` : deprecation step 2 (replaced by ` mnd ` )
81
+ 2 . Linters new features
82
+ * ` ginkgolinter ` : from 0.17.0 to 0.18.0 (new option: ` force-succeed ` )
83
+ * ` gochecksumtype ` : from 0.1.4 to 0.2.0 (new option: ` default-signifies-exhaustive ` )
84
+ * ` loggercheck ` : from 0.9.4 to 0.10.1 (` log/slog ` support)
85
+ * ` nilnil ` : from 0.1.9 to 1.0.0 (new option: ` detect-opposite ` )
86
+ * ` revive ` : from 1.3.9 to 1.5.0 (new rules: ` filename-format ` , and ` file-length-limit ` )
87
+ * ` tenv ` : from 1.10.0 to 1.12.1 (handle dot import)
88
+ * ` testifylint ` : from 1.4.3 to 1.5.0 (new checkers: ` contains ` , ` encoded-compare ` , ` regexp ` )
89
+ 3 . Linters bug fixes
34
90
* ` bidichk ` : from 0.2.7 to 0.3.2 (important performance improvement)
35
91
* ` canonicalheader ` : from 1.1.1 to 1.1.2
36
92
* ` cyclop ` : from 1.2.1 to 1.2.3
37
93
* ` dupword ` : from 0.1.1 to 0.1.3
38
94
* ` errcheck ` : from 1.7.0 to 1.8.0
39
95
* ` errchkjson ` : from 0.3.6 to 0.4.0
40
96
* ` errname ` : from 0.1.13 to 1.0.0
41
- * ` ginkgolinter ` : from 0.17.0 to 0.18.0 (new option: ` force-succeed ` )
42
- * ` go-check-sumtype ` : from 0.1.4 to 0.2.0 (new option: ` default-signifies-exhaustive ` )
43
- * ` go-critic ` : from 0.11.4 to 0.11.5
44
- * ` go-printf-func-name ` : from 7558a9eaa5af to v0.1.0
97
+ * ` gocritic ` : from 0.11.4 to 0.11.5
98
+ * ` goprintffuncname ` : from 7558a9eaa5af to v0.1.0
45
99
* ` godot ` : from 1.4.17 to 1.4.18
46
100
* ` gosec ` : from 2.21.2 to 2.21.4
47
101
* ` intrange ` : from 0.2.0 to 0.2.1
48
- * ` loggercheck ` : from 0.9.4 to 0.10.1 (` log/slog ` support)
49
102
* ` musttag ` : from 0.12.2 to 0.13.0
50
103
* ` nakedret ` : from 2.0.4 to 2.0.5
51
- * ` nilnil ` : from 0.1.9 to 1.0.0 (new option: ` detect-opposite ` )
52
104
* ` noctx ` : from 0.0.2 to 0.1.0
53
105
* ` protogetter ` : from 0.3.6 to 0.3.8
54
- * ` revive ` : from 1.3.9 to 1.5.0 (new rules: ` filename-format ` , and ` file-length-limit ` )
55
- * ` tenv ` : from 1.10.0 to 1.12.1 (handle dot import)
56
- * ` testifylint ` : from 1.4.3 to 1.5.0 (new checkers: ` contains ` , ` encoded-compare ` , ` regexp ` )
57
- 3 . Misc.
106
+ 4 . Deprecations
107
+ * ⚠️ ` execinquery ` : deprecation step 2
108
+ * ⚠️ ` gomnd ` : deprecation step 2 (replaced by ` mnd ` )
109
+ 5 . Misc.
58
110
* Type sizing when cross-compiling (32-bit).
59
111
* code-climate: add check_name field
60
112
* Improve Go version detection
61
113
* Fix Go version propagation
62
- 4 . Documentation
114
+ 6 . Documentation
63
115
* Adds a section about ` exclude-dirs-use-default `
64
116
* Improve 'install from sources' section
65
117
* Improve FAQ about Go versions
@@ -72,20 +124,21 @@ Cancelled due to CI failure.
72
124
1 . Enhancements
73
125
* Add ` junit-xml-extended ` format
74
126
* Exclude Swagger Codegen files by default
75
- 2 . Updated linters
127
+ 2 . Linters new features
128
+ * ` gci ` : from 0.13.4 to 0.13.5 (new option ` no-lex-order ` )
129
+ * ` nolintlint ` : remove the empty line in the directive replacement
130
+ 3 . Linters bug fixes
76
131
* ` dupword ` : from 0.0.14 to 0.1.1
77
132
* ` fatcontext ` : from 0.4.0 to 0.5.2
78
- * ` gci ` : from 0.13.4 to 0.13.5 (new option ` no-lex-order ` )
79
133
* ` go-ruleguard ` : from 0.4.2 to 0fe6f58b47b1 (fix panic with custom linters)
80
134
* ` godot ` : from 1.4.16 to 1.4.17
81
135
* ` gomodguard ` : from 1.3.3 to 1.3.5
82
136
* ` gosec ` : disable temporarily ` G407 `
83
137
* ` gosec ` : from ab3f6c1c83a0 to 2.21.2 (partially fix ` G115 ` )
84
138
* ` intrange ` : from 0.1.2 to 0.2.0
85
- * ` nolintlint ` : remove the empty line in the directive replacement
86
- 3 . Misc.
139
+ 4 . Misc.
87
140
* Improve runtime version parsing
88
- 4 . Documentation
141
+ 5 . Documentation
89
142
* Add additional info about ` typecheck `
90
143
91
144
### v1.60.3
@@ -97,45 +150,49 @@ Cancelled due to CI failure.
97
150
98
151
### v1.60.2
99
152
100
- 1 . Updated linters
101
- * ` gofmt ` : update to HEAD (go1.22)
102
- * ` gofumpt ` : from 0.6.0 to 0.7.0
103
- * ` gosec ` : fix G602 analyzer
104
- * ` gosec ` : from 5f0084eb01a9 to 81cda2f91fbe (adds ` G115 ` , ` G405 ` , ` G406 ` , ` G506 ` , ` G507 ` )
105
- * ` staticcheck ` : from 0.5.0 to 0.5.1
106
- * ` staticcheck ` : propagate Go version
107
- * ` wrapcheck ` : from 2.8.3 to 2.9.0
108
- * ⚠️ ` exportloopref ` : deprecation
153
+ 1 . Linters new features
154
+ * ` gosec ` : from 5f0084eb01a9 to 81cda2f91fbe (adds ` G115 ` , ` G405 ` , ` G406 ` , ` G506 ` , ` G507 ` )
155
+ 2 . Linters bug fixes
156
+ * ` gofmt ` : update to HEAD (go1.22)
157
+ * ` gofumpt ` : from 0.6.0 to 0.7.0
158
+ * ` gosec ` : fix G602 analyzer
159
+ * ` staticcheck ` : from 0.5.0 to 0.5.1
160
+ * ` staticcheck ` : propagate Go version
161
+ * ` wrapcheck ` : from 2.8.3 to 2.9.0
162
+ 3 . Deprecations
163
+ * ⚠️ ` exportloopref ` : deprecation
109
164
110
165
### v1.60.1
111
166
112
- 1 . Updated linters
113
- * ` errorlint ` : from 1.5.2 to 1.6.0
167
+ 1 . Misc.
168
+ * 🎉 go1.23 support
169
+ 2 . Linters new features
114
170
* ` exhaustruct ` : from 3.2.0 to 3.3.0 (recognize custom error values in return)
115
- * ` fatcontext ` : from 0.2.2 to 0.4.0 (fix false positives for context stored in structs)
116
- * ` gocognit ` : from 1.1.2 to 1.1.3
117
- * ` gomodguard ` : from 1.3.2 to 1.3.3
118
171
* ` govet ` (` printf ` ): report non-constant format, no args
119
172
* ` lll ` : advertise max line length instead of just reporting failure
120
173
* ` revive ` : from 1.3.7 to 1.3.9 (new rule: ` comments-density ` )
174
+ * ` staticcheck ` : from 0.4.7 to 0.5.0
175
+ * ` testifylint ` : from 1.3.1 to 1.4.3 (new options: ` formatter ` , ` suite-broken-parallel ` , ` suite-subtest-run ` )
176
+ 3 . Linters bug fixes
177
+ * ` errorlint ` : from 1.5.2 to 1.6.0
178
+ * ` fatcontext ` : from 0.2.2 to 0.4.0 (fix false positives for context stored in structs)
179
+ * ` gocognit ` : from 1.1.2 to 1.1.3
180
+ * ` gomodguard ` : from 1.3.2 to 1.3.3
121
181
* ` sloglint ` : from 0.7.1 to 0.7.2
122
182
* ` spancheck ` : from 0.6.1 to 0.6.2
123
- * ` staticcheck ` : from 0.4.7 to 0.5.0
124
183
* ` tenv ` : from 1.7.1 to 1.10.0 (remove reports on fuzzing)
125
- * ` testifylint ` : from 1.3.1 to 1.4.3 (new options: ` formatter ` , ` suite-broken-parallel ` , ` suite-subtest-run ` )
126
184
* ` tparallel ` : from 0.3.1 to 0.3.2
127
185
* ` usestdlibvars ` : from 1.26.0 to 1.27.0 (fix false-positive with number used inside a mathematical operations)
128
186
* ` wsl ` : from 4.2.1 to 4.4.1
187
+ 4 . Deprecations
129
188
* ️⚠️ ` unused ` : remove ` exported-is-used ` option
130
- 2 . Fixes
189
+ 5 . Fixes
131
190
* SARIF: sanitize level property
132
191
* ️⚠️ ` typecheck ` issues should never be ignored
133
- 3 . Documentation
192
+ 6 . Documentation
134
193
* Add link on linter without configuration
135
194
* Remove 'trusted by' page
136
195
* ` wsl ` update documentation of the configuration
137
- 4 . misc.
138
- * 🎉 go1.23 support
139
196
140
197
### v1.60.0
141
198
@@ -165,7 +222,7 @@ Cancelled due to a CI problem.
165
222
* Allow the analysis of generated files (` issues.exclude-generated: disable ` )
166
223
2 . Updated linters
167
224
* ` errcheck ` : fix deprecation warning
168
- * ` go-critic ` : from 0.11.3 to 0.11.4
225
+ * ` gocritic ` : from 0.11.3 to 0.11.4
169
226
* ` gosec ` : from 2.20.0 to 5f0084eb01a9 (fix G601 and G113 performance issues)
170
227
* ` sloglint ` : from 0.6.0 to 0.7.0 (new option ` forbidden-keys ` )
171
228
* ` testifylint ` : from 1.2.0 to 1.3.0 (new checker ` negative-positive ` and new option ` go-require.ignore-http-handlers ` )
0 commit comments