Lussatite.FeatureManagement
1.4.0
See the version list below for details.
dotnet add package Lussatite.FeatureManagement --version 1.4.0
NuGet\Install-Package Lussatite.FeatureManagement -Version 1.4.0
<PackageReference Include="Lussatite.FeatureManagement" Version="1.4.0" />
paket add Lussatite.FeatureManagement --version 1.4.0
#r "nuget: Lussatite.FeatureManagement, 1.4.0"
// Install Lussatite.FeatureManagement as a Cake Addin
#addin nuget:?package=Lussatite.FeatureManagement&version=1.4.0
// Install Lussatite.FeatureManagement as a Cake Tool
#tool nuget:?package=Lussatite.FeatureManagement&version=1.4.0
Lussatite.FeatureManagement
Lussatite.FeatureManagement
A lightweight implementation of the Microsoft.FeatureManagement IFeatureManager interface. The dependencies are a list of feature name strings and an ordered set of ISessionManager instances. When a feature flag value is requested, the ISessionManager
instances will be polled in order until one returns a definitive answer (true/false).
- If the feature name was not registered via the constructor, the
LussatiteFeatureManager
instance will always return false. - The order of
ISessionManagers
matters, each takes priority over later ones. - The
ISessionManager
should return null if it does not have a definitive answer. This allows layering. - This
LussatiteFeatureManager
implementation will not write back to theISessionManager
instances viaSetAsync(string featureName, bool enabled)
.
Lussatite.FeatureManagement.LazyCache
A lightweight implementation of the Microsoft.FeatureManagement IFeatureManagerSnapshot interface. It uses LazyCache to track the first read value. When a feature flag value is requested, the ISessionManager
instances will be polled in order until one returns a definitive answer (true/false).
Because this is a caching implementation, the first value read by the LussatiteLazyCacheFeatureManager
instance will continue to be the value returned for the life of the instance. Even if a new value is registered in one of the ISessionManager
instances.
- If the feature name was not registered via the constructor, the
LussatiteLazyCacheFeatureManager
instance will always return false. - The order of
ISessionManagers
matters, each takes priority over later ones. - The
ISessionManager
should return null if it does not have a definitive answer. This allows layering. - This
LussatiteLazyCacheFeatureManager
implementation will not write back to theISessionManager
instances viaSetAsync(string featureName, bool enabled)
.
CacheAllFeatureValuesAsync()
The non-standard Task CacheAllFeatureValuesAsync()
method can be used after construction to poll all ISessionManager
instances for values for each feature name registered within the LussatiteLazyCacheFeatureManager
instance. This sets the values of all known features at the time of the call.
Target
- .NET Standard 2.0
References
Product | Versions |
---|---|
.NET | net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows net7.0 net7.0-android net7.0-ios net7.0-maccatalyst net7.0-macos net7.0-tvos net7.0-windows |
.NET Core | netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1 |
.NET Standard | netstandard2.0 netstandard2.1 |
.NET Framework | net461 net462 net463 net47 net471 net472 net48 net481 |
MonoAndroid | monoandroid |
MonoMac | monomac |
MonoTouch | monotouch |
Tizen | tizen40 tizen60 |
Xamarin.iOS | xamarinios |
Xamarin.Mac | xamarinmac |
Xamarin.TVOS | xamarintvos |
Xamarin.WatchOS | xamarinwatchos |
-
.NETStandard 2.0
- LazyCache (>= 2.4.0)
- Microsoft.FeatureManagement (>= 2.5.1)
- System.Linq.Async (>= 4.1.1)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on Lussatite.FeatureManagement:
Package | Downloads |
---|---|
RimDev.AspNetCore.FeatureFlags
A library for strongly typed feature flags in .NET Standard 2.0. |
|
Lussatite.FeatureManagement.SessionManagers
A set of ISessionManager implementations for .NET Standard 2.0 which return boolean null/true/false values. |
|
Lussatite.FeatureManagement.SessionManagers.Framework
A set of ISessionManager implementations for .NET Framework 4.8 which return boolean null/true/false values. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.6.3 | 2,218 | 6/29/2022 |
1.6.2 | 1,256 | 6/28/2022 |
1.6.1 | 631 | 6/28/2022 |
1.6.0 | 1,032 | 6/15/2022 |
1.5.0 | 630 | 6/9/2022 |
1.4.1 | 874 | 5/24/2022 |
1.4.0 | 354 | 5/24/2022 |
1.3.1 | 360 | 5/23/2022 |
1.3.0 | 355 | 5/22/2022 |
1.2.0 | 221 | 5/20/2022 |
1.1.0 | 213 | 5/19/2022 |
1.0.0 | 233 | 5/16/2022 |
0.2.1 | 235 | 5/15/2022 |
0.2.0 | 997 | 5/14/2022 |
0.1.1 | 249 | 5/12/2022 |
0.1.0 | 244 | 5/11/2022 |