Skip to content

chore(deps): bump open-feature/go-sdk to v1.17.2 - #310

Merged
jonathannorris merged 4 commits into
mainfrom
chore/of-sdk-bump
Aug 7, 2026
Merged

chore(deps): bump open-feature/go-sdk to v1.17.2#310
jonathannorris merged 4 commits into
mainfrom
chore/of-sdk-bump

Conversation

@jonathannorris

@jonathannorris jonathannorris commented Aug 5, 2026

Copy link
Copy Markdown
Member

Summary

  • Bumps github.com/open-feature/go-sdk from v1.14.1 to v1.17.2
  • Removes DevCycleProvider.Status(), which is dead code as of go-sdk v1.16.0
  • go build, go vet, and go test ./... all pass

Notes

v1.16.0 (spec 0.8.0) made providers stateless and dropped Status() from openfeature.FeatureProvider, so the SDK no longer calls it. It was added in #280 only to satisfy the old interface, is not in the README or any example, and the only callers were its own tests. It also ignored initialized() and returned ReadyState before init completed. Consumers wanting provider state should use openfeature.Client.State(). TestOFDevCycleProvider_Close now asserts via internalFullClient.closed(), so coverage is unchanged.

Transitive: testify v1.10.0 to v1.11.1 (forced by MVS), and go.uber.org/mock is now a build-time indirect dep because go-sdk ships its mocks as non-test files.

@jonathannorris
jonathannorris marked this pull request as ready for review August 5, 2026 19:58
@jonathannorris
jonathannorris requested a review from a team as a code owner August 5, 2026 19:58
Copilot AI review requested due to automatic review settings August 5, 2026 19:58

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the project’s OpenFeature integration to be compatible with github.com/open-feature/go-sdk v1.17.2, including removal of now-obsolete provider status handling introduced for older OpenFeature interfaces.

Changes:

  • Bump github.com/open-feature/go-sdk from v1.14.1 to v1.17.2 (and update related transitive deps in go.mod/go.sum).
  • Remove DevCycleProvider.Status() since the OpenFeature provider interface no longer includes it.
  • Update the close-related OpenFeature provider test to validate shutdown/closed behavior without calling Status().

Reviewed changes

Copilot reviewed 3 out of 4 changed files in this pull request and generated 1 comment.

File Description
openfeature_provider.go Removes the deprecated Status() method from DevCycleProvider after upgrading OpenFeature SDK.
openfeature_provider_test.go Adjusts provider close/shutdown assertions to no longer rely on Status().
go.mod Updates direct/indirect module requirements for the OpenFeature SDK bump.
go.sum Refreshes module checksums to match updated dependency graph.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread openfeature_provider_test.go Outdated
Comment thread openfeature_provider.go
Comment on lines -63 to -70
// Status expose the status of the provider
func (p DevCycleProvider) Status() openfeature.State {
if p.Client.closed() {
return openfeature.FatalState
}
return openfeature.ReadyState
}

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removing this functionality requires a major bump. Just keeping it around and marking deprecated is safer.

@jonathannorris jonathannorris Aug 6, 2026

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I had Claude look into this, and I don't think we need to make it a major version, claude's research:

yea it's an exported method so I agree it's technically breaking. Worth noting the history though: Status() was part of the StateHandler interface (Init/Shutdown/Status) up to v1.13.0, and v1.14.0 dropped it. We added Status() in #280, which is the same commit that pinned v1.14.1, so it was dead on arrival: no released version of this SDK has shipped a go-sdk that calls it, and it was never documented for direct use.

happy to keep it with a // Deprecated: marker instead if you'd rather play it safe, it's only a few lines. I lean toward removing since it has never done anything, but your call.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would rather play it safe, just to avoid any potential version incompatibilities if someone didn't update their openfeature SDK to latest, etc.

It's a small chance - but better safe than sorry - especially because we don't know what customers may be using

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yea from what I can see this code was never executed because the version of the OF SDK required for using the provider never used this function, I really don't see a point in bumping a major version for that.

@jonathannorris
jonathannorris merged commit e22a034 into main Aug 7, 2026
12 checks passed
@jonathannorris
jonathannorris deleted the chore/of-sdk-bump branch August 7, 2026 15:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants