FireForNet.Firebase.RemoteConfig 1.0.1-preview.11

Prefix Reserved
This is a prerelease version of FireForNet.Firebase.RemoteConfig.
dotnet add package FireForNet.Firebase.RemoteConfig --version 1.0.1-preview.11
                    
NuGet\Install-Package FireForNet.Firebase.RemoteConfig -Version 1.0.1-preview.11
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="FireForNet.Firebase.RemoteConfig" Version="1.0.1-preview.11" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="FireForNet.Firebase.RemoteConfig" Version="1.0.1-preview.11" />
                    
Directory.Packages.props
<PackageReference Include="FireForNet.Firebase.RemoteConfig" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add FireForNet.Firebase.RemoteConfig --version 1.0.1-preview.11
                    
#r "nuget: FireForNet.Firebase.RemoteConfig, 1.0.1-preview.11"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package FireForNet.Firebase.RemoteConfig@1.0.1-preview.11
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=FireForNet.Firebase.RemoteConfig&version=1.0.1-preview.11&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=FireForNet.Firebase.RemoteConfig&version=1.0.1-preview.11&prerelease
                    
Install as a Cake Tool

FireForNet.Firebase.RemoteConfig

Firebase Remote Config for FireForNet.

This package provides fetch, activate, fetch-and-activate, defaults, custom signals, typed getters, reset, and realtime update subscriptions. It uses Firebase Installations identity.

builder.Services.AddFirebaseRemoteConfig(options =>
{
    options.MinimumFetchInterval = TimeSpan.FromHours(12);
    options.FetchTimeout = TimeSpan.FromSeconds(60);
    options.RealtimeConnectTimeout = TimeSpan.FromMinutes(5);
});

Docs: https://github.com/FireForNet/FireForNet

Product Compatible and additional computed target framework versions.
.NET 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on FireForNet.Firebase.RemoteConfig:

Package Downloads
FireForNet.Firebase.RemoteConfig.Blazor

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.1-preview.11 62 6/29/2026
1.0.1-preview.10 77 6/25/2026
1.0.1-preview.9 58 6/24/2026
1.0.1-preview.8 61 6/23/2026
1.0.1-preview.7 76 6/9/2026
1.0.1-preview.6 55 6/8/2026
1.0.1-preview.5 64 6/8/2026
1.0.1-preview.4 72 6/8/2026
1.0.1-preview.3 57 6/8/2026
1.0.1-preview.2 61 6/8/2026
1.0.1-preview.1 59 6/8/2026
1.0.0-preview10 65 6/8/2026

v1.0.1-preview.11
- Synchronized package version with the preview.11 release.

v1.0.1-preview.10
- Synchronized package version with the preview.10 release.

v1.0.1-preview.9
- Synchronized package version with the preview.9 release.

v1.0.1-preview.8
- Synchronized package version with the preview.8 release.

v1.0.1-preview.7
- Realtime streaming keeps FireForNet's default 5-minute RealtimeConnectTimeout while Core's default HttpClient timeout remains platform-owned.
- Retryable realtime connect/read failures (transport exceptions, HTTP 408/429/5xx) are kept inside the retry loop and reported to subscribers only when the retry budget is exhausted.
- Non-retryable realtime responses (e.g. HTTP 403) still surface immediately to subscribers.
- Realtime handshake now starts from the freshest known baseline (last-fetched template version/ETag) instead of only the activated baseline, matching Android and iOS SDK behavior for faster invalidation detection.
- Added LastFetchedETag and LastFetchedTemplateVersion to RemoteConfigFetchMetadata, persisted on every successful fetch.
- Added regression coverage for realtime retry-limit, non-retryable error semantics, and last-fetched metadata persistence.

v1.0.1-preview.6
- Redesigned IFirebaseRemoteConfig.OnConfigUpdatedAsync to use awaited Task-returning update and error callbacks, so applications can activate fetched realtime values without fire-and-forget work.
- Realtime subscribers now await update callbacks and route callback failures to the async error callback when one is registered.

v1.0.1-preview.5
- Fixed parameterless FetchAsync to hydrate persisted settings before applying the default minimum fetch interval.
- Fixed OnConfigUpdatedAsync to initialize the realtime lifecycle monitor before subscribing, matching Blazor foreground/background ownership.
- Added FirebaseRemoteConfigBuilder.RealtimeConnectTimeout and now honors configured RealtimeMaxRetries in the realtime reconnect loop.
- Added RealtimeConnectTimeout to ConfigSettings and FirebaseRemoteConfigOptions (default 5 minutes).
- Separated realtime streaming connection timeout from regular fetch timeout, matching Android/iOS/JS SDK behavior where long-lived streamFetchInvalidations connections use no client-side timeout.
- ConnectRealtimeAsync now uses RealtimeConnectTimeout instead of FetchTimeout, preventing premature timeout on platforms where HttpClient.Timeout applies (native .NET MAUI/Desktop/WinUI).

v1.0.1-preview.4
- Synchronized package version with the preview.4 release.
- Moved IRealtimeLifecycleMonitor initialization from RealtimeListener stream startup to IFirebaseRemoteConfig.EnsureReadyAsync and OnConfigUpdatedAsync for correct lifecycle ownership

v1.0.1-preview.3
- Fixed realtime stream parsing: replaced line-based StreamReader.ReadLineAsync with raw byte accumulation and JSON brace-boundary detection, matching Android/JS/iOS SDKs.
- Fixed realtime message deserialization: latestTemplateVersionNumber is sent as a quoted string by the server, not a bare number.
- Added reconnection retry with exponential backoff (base 60s, 2x multiplier, ±50% jitter, max 8 retries) matching Android/JS.
- Added fetch retry on invalidation: up to 3 attempts with random 0-4s delay, comparing fetched template version against target version (matching Android/JS autoFetch).
- Fixed retryIntervalSeconds handling: server-specified delay now correctly delays reconnection instead of being wasted.
- Added IRealtimeLifecycleMonitor contract for background/foreground lifecycle management. No-op default registered by AddFirebaseRemoteConfig(); integration packages provide platform implementations.
- Added RealtimeRetryLimitExceeded error code for exhausted retry budget.

v1.0.1-preview.2
- Added X-Google-GFE-Can-Retry and X-Accept-Response-Streaming headers to realtime stream requests for parity with Android/iOS SDKs.
- Added X-Firebase-RC-Fetch-Type, X-Google-GFE-Can-Retry, and X-Accept-Response-Streaming headers unconditionally from core; browser platforms strip them via integration-layer interceptors.
- Fixed CORS preflight failure on Blazor WASM by moving platform-specific header filtering to the Blazor integration package.

v1.0.1-preview.1
- Added platform store integration support (Blazor, Browser, Sqlite, Windows, Maui) via segregated store interfaces.
- InMemoryRemoteConfigStore remains the default when no platform store is registered.
- Bumped to preview10.

v1.0.0-preview9
- Synchronized package version with the preview9 release.

v1.0.0-preview8
- Synchronized package version with the preview8 release.

v1.0.0-preview7
- Synchronized package version with the preview7 Firestore local-cache architecture rework release.

v1.0.0-preview6
- Synchronized package version with the preview6 release.

v1.0.0-preview5
- Synchronized package version with the preview5 release.

v1.0.0-preview4
- Synchronized package version with the preview4 release.

v1.0.0-preview3
- Synchronized package version with the preview3 release.

v1.0.0-preview2
- Initial v1.0.0-preview2 package.