Skip to content

Commit 3c52fa7

Browse files
chore: require go 1.23.0 (#351)
* chore: require go 1.23.0 Signed-off-by: Sahid Velji <sahidvelji@gmail.com> * docs: update language version requirement to 1.23 Signed-off-by: Sahid Velji <sahidvelji@gmail.com> * chore: require go 1.23.0 Signed-off-by: Sahid Velji <sahidvelji@gmail.com> * chore: fix lint target in Makefile Signed-off-by: Sahid Velji <sahidvelji@gmail.com> * fix: fix linter findings Signed-off-by: Sahid Velji <sahidvelji@gmail.com> * chore: require go 1.23.0 Signed-off-by: Sahid Velji <sahidvelji@gmail.com> --------- Signed-off-by: Sahid Velji <sahidvelji@gmail.com> Co-authored-by: Todd Baert <todd.baert@dynatrace.com>
1 parent 68d9cf3 commit 3c52fa7

File tree

7 files changed

+26
-27
lines changed

7 files changed

+26
-27
lines changed

Makefile

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ test:
1212
e2e-test:
1313
git submodule update --init --recursive && go test -tags testtools -race -cover ./e2e/...
1414
lint:
15-
go install -v github.com/golangci/golangci-lint/cmd/golangci-lint@v1.54.1
16-
${GOPATH}/bin/golangci-lint run --build-tags testtools --deadline=3m --timeout=3m ./... # Run linters
15+
go run github.com/golangci/golangci-lint/v2/cmd/golangci-lint@v2.1.6 run --build-tags testtools --timeout=3m ./...
1716
docs:
1817
go run golang.org/x/pkgsite/cmd/pkgsite@latest -open .

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343

4444
### Requirements
4545

46-
Go language version: [1.20](https://go.dev/doc/devel/release#go1.20)
46+
Go language version: [1.23](https://go.dev/doc/devel/release#go1.23.0)
4747

4848
> [!NOTE]
4949
> The OpenFeature Go SDK only supports currently maintained Go language versions.

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
module github.com/open-feature/go-sdk
22

3-
go 1.21
3+
go 1.23.0
44

55
require (
66
github.com/cucumber/godog v0.15.0

openfeature/client.go

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -406,8 +406,8 @@ func (c *Client) BooleanValueDetails(ctx context.Context, flag string, defaultVa
406406
Value: defaultValue,
407407
EvaluationDetails: evalDetails.EvaluationDetails,
408408
}
409-
boolEvalDetails.EvaluationDetails.ErrorCode = TypeMismatchCode
410-
boolEvalDetails.EvaluationDetails.ErrorMessage = err.Error()
409+
boolEvalDetails.ErrorCode = TypeMismatchCode
410+
boolEvalDetails.ErrorMessage = err.Error()
411411

412412
return boolEvalDetails, err
413413
}
@@ -450,8 +450,8 @@ func (c *Client) StringValueDetails(ctx context.Context, flag string, defaultVal
450450
Value: defaultValue,
451451
EvaluationDetails: evalDetails.EvaluationDetails,
452452
}
453-
strEvalDetails.EvaluationDetails.ErrorCode = TypeMismatchCode
454-
strEvalDetails.EvaluationDetails.ErrorMessage = err.Error()
453+
strEvalDetails.ErrorCode = TypeMismatchCode
454+
strEvalDetails.ErrorMessage = err.Error()
455455

456456
return strEvalDetails, err
457457
}
@@ -494,8 +494,8 @@ func (c *Client) FloatValueDetails(ctx context.Context, flag string, defaultValu
494494
Value: defaultValue,
495495
EvaluationDetails: evalDetails.EvaluationDetails,
496496
}
497-
floatEvalDetails.EvaluationDetails.ErrorCode = TypeMismatchCode
498-
floatEvalDetails.EvaluationDetails.ErrorMessage = err.Error()
497+
floatEvalDetails.ErrorCode = TypeMismatchCode
498+
floatEvalDetails.ErrorMessage = err.Error()
499499

500500
return floatEvalDetails, err
501501
}
@@ -538,8 +538,8 @@ func (c *Client) IntValueDetails(ctx context.Context, flag string, defaultValue
538538
Value: defaultValue,
539539
EvaluationDetails: evalDetails.EvaluationDetails,
540540
}
541-
intEvalDetails.EvaluationDetails.ErrorCode = TypeMismatchCode
542-
intEvalDetails.EvaluationDetails.ErrorMessage = err.Error()
541+
intEvalDetails.ErrorCode = TypeMismatchCode
542+
intEvalDetails.ErrorMessage = err.Error()
543543

544544
return intEvalDetails, err
545545
}

openfeature/hooks/logging_hook_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ func TestLoggingHookLogsMessagesAsExpected(t *testing.T) {
6868
}
6969

7070
func TestLoggingHookLogsMessagesAsExpectedIncludeEvaluationContext(t *testing.T) {
71-
var buf *bytes.Buffer = new(bytes.Buffer)
71+
var buf = new(bytes.Buffer)
7272
handler := slog.NewJSONHandler(buf, &slog.HandlerOptions{Level: slog.LevelDebug})
7373
logger := slog.New(handler)
7474

@@ -184,7 +184,7 @@ func testLoggingHookLogsMessagesAsExpected(hook LoggingHook, logger *slog.Logger
184184
}
185185

186186
func prepareOutput(buf *bytes.Buffer, t *testing.T) map[string]map[string]any {
187-
var ms map[string]map[string]any = make(map[string]map[string]any)
187+
var ms = make(map[string]map[string]any)
188188
for _, line := range bytes.Split(buf.Bytes(), []byte{'\n'}) {
189189
if len(line) == 0 {
190190
continue

openfeature/resolution_error.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ func (e *ProviderInitError) Error() string {
121121

122122
var (
123123
// ProviderNotReadyError signifies that an operation failed because the provider is in a NOT_READY state.
124-
ProviderNotReadyError = errors.New("provider not yet initialized")
124+
ProviderNotReadyError = errors.New("provider not yet initialized") //nolint:staticcheck // Renaming this would be a breaking change
125125
// ProviderFatalError signifies that an operation failed because the provider is in a FATAL state.
126-
ProviderFatalError = errors.New("provider is in an irrecoverable error state")
126+
ProviderFatalError = errors.New("provider is in an irrecoverable error state") //nolint:staticcheck // Renaming this would be a breaking change
127127
)

openfeature/telemetry/telemetry.go

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -45,46 +45,46 @@ func CreateEvaluationEvent(hookContext openfeature.HookContext, details openfeat
4545
TelemetryProvider: hookContext.ProviderMetadata().Name,
4646
}
4747

48-
if details.EvaluationDetails.ResolutionDetail.Reason != "" {
49-
attributes[TelemetryReason] = strings.ToLower(string(details.ResolutionDetail.Reason))
48+
if details.Reason != "" {
49+
attributes[TelemetryReason] = strings.ToLower(string(details.Reason))
5050
} else {
5151
attributes[TelemetryReason] = strings.ToLower(string(openfeature.UnknownReason))
5252
}
5353

5454
body := map[string]any{}
5555

5656
if details.Variant != "" {
57-
attributes[TelemetryVariant] = details.EvaluationDetails.ResolutionDetail.Variant
57+
attributes[TelemetryVariant] = details.Variant
5858
} else {
5959
body[TelemetryBody] = details.Value
6060
}
6161

62-
contextID, exists := details.EvaluationDetails.ResolutionDetail.FlagMetadata[TelemetryFlagMetaContextId]
62+
contextID, exists := details.FlagMetadata[TelemetryFlagMetaContextId]
6363
if !exists {
6464
contextID = hookContext.EvaluationContext().TargetingKey()
6565
}
6666

6767
attributes[TelemetryContextID] = contextID
6868

69-
setID, exists := details.EvaluationDetails.ResolutionDetail.FlagMetadata[TelemetryFlagMetaFlagSetId]
69+
setID, exists := details.FlagMetadata[TelemetryFlagMetaFlagSetId]
7070
if exists {
7171
attributes[TelemetryFlagSetID] = setID
7272
}
7373

74-
version, exists := details.EvaluationDetails.ResolutionDetail.FlagMetadata[TelemetryFlagMetaVersion]
74+
version, exists := details.FlagMetadata[TelemetryFlagMetaVersion]
7575
if exists {
7676
attributes[TelemetryVersion] = version
7777
}
7878

79-
if details.EvaluationDetails.ResolutionDetail.Reason == openfeature.ErrorReason {
80-
if details.ResolutionDetail.ErrorCode != "" {
81-
attributes[TelemetryErrorCode] = details.ResolutionDetail.ErrorCode
79+
if details.Reason == openfeature.ErrorReason {
80+
if details.ErrorCode != "" {
81+
attributes[TelemetryErrorCode] = details.ErrorCode
8282
} else {
8383
attributes[TelemetryErrorCode] = openfeature.GeneralCode
8484
}
8585

86-
if details.ResolutionDetail.ErrorMessage != "" {
87-
attributes[TelemetryErrorMsg] = details.ResolutionDetail.ErrorMessage
86+
if details.ErrorMessage != "" {
87+
attributes[TelemetryErrorMsg] = details.ErrorMessage
8888
}
8989
}
9090

0 commit comments

Comments
 (0)