Skip to content

Commit dfcf7bc

Browse files
authored
Enable nilerr linter and fix issues (#871)
Reference: #865 The field reader/writing handling of this codebase is generally considered frozen, but we want to catch and fix other potential `nilerr` issues.
1 parent 8ec4cac commit dfcf7bc

File tree

5 files changed

+8
-9
lines changed

5 files changed

+8
-9
lines changed

.golangci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ linters:
1717
# - gosimple # TODO: https://github.com/hashicorp/terraform-plugin-sdk/issues/865
1818
# - ineffassign # TODO: https://github.com/hashicorp/terraform-plugin-sdk/issues/865
1919
# - makezero # TODO: https://github.com/hashicorp/terraform-plugin-sdk/issues/865
20-
# - nilerr # TODO: https://github.com/hashicorp/terraform-plugin-sdk/issues/865
20+
- nilerr
2121
# - paralleltest # Reference: https://github.com/kunwardeep/paralleltest/issues/14
2222
# - predeclared # TODO: https://github.com/hashicorp/terraform-plugin-sdk/issues/865
2323
# - staticcheck # TODO: https://github.com/hashicorp/terraform-plugin-sdk/issues/865

helper/schema/field_reader_config.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ func (r *ConfigFieldReader) readMap(k string, schema *Schema) (FieldReadResult,
203203

204204
err := mapValuesToPrimitive(k, result, schema)
205205
if err != nil {
206-
return FieldReadResult{}, nil
206+
return FieldReadResult{}, nil //nolint:nilerr // Leave legacy flatmap handling
207207
}
208208

209209
var value interface{}

helper/schema/field_reader_diff.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ func (r *DiffFieldReader) readMap(
128128
key := address[len(address)-1]
129129
err = mapValuesToPrimitive(key, result, schema)
130130
if err != nil {
131-
return FieldReadResult{}, nil
131+
return FieldReadResult{}, nil //nolint:nilerr // Leave legacy flatmap handling
132132
}
133133

134134
var resultVal interface{}

helper/schema/field_reader_map.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ func (r *MapFieldReader) readMap(k string, schema *Schema) (FieldReadResult, err
6363

6464
err := mapValuesToPrimitive(k, result, schema)
6565
if err != nil {
66-
return FieldReadResult{}, nil
66+
return FieldReadResult{}, nil //nolint:nilerr // Leave legacy flatmap handling
6767
}
6868

6969
var resultVal interface{}

helper/schema/grpc_provider.go

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -168,8 +168,7 @@ func (s *GRPCProviderServer) PrepareProviderConfig(ctx context.Context, req *tfp
168168
// find a default value if it exists
169169
def, err := attrSchema.DefaultValue()
170170
if err != nil {
171-
resp.Diagnostics = convert.AppendProtoDiag(resp.Diagnostics, fmt.Errorf("error getting default for %q: %s", getAttr.Name, err))
172-
return val, err
171+
return val, fmt.Errorf("error getting default for %q: %w", getAttr.Name, err)
173172
}
174173

175174
// no default
@@ -189,13 +188,13 @@ func (s *GRPCProviderServer) PrepareProviderConfig(ctx context.Context, req *tfp
189188

190189
val, err = ctyconvert.Convert(tmpVal, val.Type())
191190
if err != nil {
192-
resp.Diagnostics = convert.AppendProtoDiag(resp.Diagnostics, fmt.Errorf("error setting default for %q: %s", getAttr.Name, err))
191+
return val, fmt.Errorf("error setting default for %q: %w", getAttr.Name, err)
193192
}
194193

195-
return val, err
194+
return val, nil
196195
})
197196
if err != nil {
198-
// any error here was already added to the diagnostics
197+
resp.Diagnostics = convert.AppendProtoDiag(resp.Diagnostics, err)
199198
return resp, nil
200199
}
201200

0 commit comments

Comments
 (0)