Skip to content

v7.1.0

Choose a tag to compare

@rolodato rolodato released this 04 Apr 15:12
· 24 commits to main since this release
25f657f

What's Changed

Deprecated FlagsmithClient constructors with more than one parameter

The preferred way to instantiate a FlagsmithClient is now to use the FlagsmithClient(FlagsmithConfiguration) constructor. All other constructors are deprecated.

For example, if you were previously initialising the client like this:

new FlagsmithClient(environmentKey: "my-key", enableAnalytics: true);

You should pass the equivalent FlagsmithConfiguration object instead:

new FlagsmithClient(new FlagsmithConfiguration
{
    EnvironmentKey = "my-key",
    EnableAnalytics = true
});

This gives us more flexibility as SDK authors to add or change configuration options without requiring further breaking changes. It also allows us to provide better inline documentation for each configuration parameter.

Deprecated ApiUrl, EnableClientSideEvaluation, and EnvironmentRefreshIntervalSeconds options

Instead, use ApiUri, EnableLocalEvaluation, and EnvironmentRefreshInterval respectively. This change makes this SDK more consistent with Flagsmith documentation and other SDKs, and improves type safety by accepting Uri and TimeSpan objects instead of deriving them from raw strings or numbers.

Deprecated PollingManager(Func<Task>, int) constructor

Instead, use new PollingManager(callback, TimeSpan.FromSeconds(intervalSeconds)). Almost no users will be affected by this change, as PollingManager is meant for internal use.