CasCap.Common.Services
4.12.7
Prefix Reserved
dotnet add package CasCap.Common.Services --version 4.12.7
NuGet\Install-Package CasCap.Common.Services -Version 4.12.7
<PackageReference Include="CasCap.Common.Services" Version="4.12.7" />
<PackageVersion Include="CasCap.Common.Services" Version="4.12.7" />
<PackageReference Include="CasCap.Common.Services" />
paket add CasCap.Common.Services --version 4.12.7
#r "nuget: CasCap.Common.Services, 4.12.7"
#:package CasCap.Common.Services@4.12.7
#addin nuget:?package=CasCap.Common.Services&version=4.12.7
#tool nuget:?package=CasCap.Common.Services&version=4.12.7
CasCap.Common.Services
Feature-flag background service launcher and configuration abstractions.
Installation
dotnet add package CasCap.Common.Services
Purpose
Contains FeatureFlagBgService, a BackgroundService that inspects the configured FeatureFlagConfig.EnabledFeatures set at startup and launches the matching IBgFeature implementations registered in the DI container. The AddFeatureFlagService() extension wires everything up.
The launcher observes every enabled child for the full host lifetime. A child may complete successfully while other children continue running. Child faults propagate to the host, and completion of every enabled child before host cancellation is treated as an unexpected lifecycle failure. Host cancellation completes the launcher cleanly.
The older generic FeatureFlagBgService<T> (bitwise enum-based) is retained but marked [Obsolete].
Target frameworks: net8.0, net9.0, net10.0
Services
| Type | Description |
|---|---|
FeatureFlagBgService |
BackgroundService that resolves, executes, and continuously observes enabled IBgFeature implementations until host cancellation |
FeatureFlagBgService<T> |
[Obsolete] Generic predecessor that used a bitwise enum via IFeature<T>.FeatureType |
GitMetadataBgService |
Background service that periodically logs git build metadata (repository, tag, branch, commit) from environment variables to aid debugging |
Extensions
| Extension | Description |
|---|---|
ServiceCollectionExtensions.AddFeatureFlagService() |
Registers FeatureFlagBgService and configures FeatureFlagConfig from a set of enabled feature name strings. Optionally registers GitMetadataBgService when addGitMetadataService=true |
ServiceCollectionExtensions.AddFeatureFlagService<T>() |
[Obsolete] Bridge overload that converts a flags enum to a HashSet<string> and delegates to the non-generic overload |
Models
| Type | Description |
|---|---|
GitMetadata |
Build metadata record from the CI/CD pipeline — properties bind to environment variables injected by GitHub Actions and Helm deployments (repository, branch, commit, tag, workflow name, run ID, run number) |
Configuration
| Type | Description |
|---|---|
FeatureFlagConfig |
Configuration class carrying the EnabledFeatures string set — configured via IOptions<FeatureFlagConfig> |
FeatureConfig<T> |
[Obsolete] Record carrying the EnabledFeatures flags — bound from configuration via IOptions<FeatureConfig<T>> |
Dependencies
NuGet Packages
| Package |
|---|
| Microsoft.Extensions.Hosting.Abstractions |
| Microsoft.Extensions.Options.DataAnnotations |
Project References
| Project | Purpose |
|---|---|
CasCap.Common.Abstractions |
IBgFeature, IAppConfig contracts |
CasCap.Common.Extensions |
General-purpose helper utilities |
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- CasCap.Common.Abstractions (>= 4.12.7)
- CasCap.Common.Extensions (>= 4.12.7)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.11)
- Microsoft.Extensions.Options.DataAnnotations (>= 10.0.11)
-
net8.0
- CasCap.Common.Abstractions (>= 4.12.7)
- CasCap.Common.Extensions (>= 4.12.7)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.11)
- Microsoft.Extensions.Options.DataAnnotations (>= 10.0.11)
-
net9.0
- CasCap.Common.Abstractions (>= 4.12.7)
- CasCap.Common.Extensions (>= 4.12.7)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.11)
- Microsoft.Extensions.Options.DataAnnotations (>= 10.0.11)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on CasCap.Common.Services:
| Package | Downloads |
|---|---|
|
CasCap.Common.OpenTelemetry
Reusable OpenTelemetry configuration with standard metrics, traces, and log exporters. |
|
|
CasCap.Api.SignalCli
Typed .NET client for the signal-cli REST API with REST polling and JSON-RPC WebSocket transports, webhook endpoints, health checks, and INotifier integration. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 4.12.7 | 46 | 9/4/2026 |
| 4.12.6 | 55 | 9/1/2026 |
| 4.12.5 | 113 | 8/20/2026 |
| 4.12.4 | 131 | 8/18/2026 |
| 4.12.3 | 141 | 7/15/2026 |
| 4.12.2 | 147 | 6/26/2026 |
| 4.12.1 | 150 | 6/14/2026 |
| 4.12.0 | 139 | 6/12/2026 |
| 4.11.9 | 143 | 6/10/2026 |
| 4.11.8 | 219 | 5/27/2026 |
| 4.11.7 | 128 | 5/27/2026 |
| 4.11.6 | 239 | 5/26/2026 |
| 4.11.5 | 134 | 5/22/2026 |
| 4.11.4 | 158 | 5/20/2026 |
| 4.11.3 | 349 | 5/13/2026 |
| 4.11.2 | 141 | 5/11/2026 |
| 4.11.1 | 125 | 5/11/2026 |
| 4.11.0 | 247 | 5/8/2026 |
| 4.10.5 | 130 | 5/4/2026 |
| 4.10.4 | 124 | 5/2/2026 |