Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
0382283
Merge pull request #428 from Azure/preview
amerjusupovic May 31, 2023
ea438a4
Merge pull request #437 from Azure/preview
jimmyca15 Jul 19, 2023
001ac08
Merge pull request #439 from Azure/preview
jimmyca15 Jul 19, 2023
eafe441
Merge pull request #450 from Azure/preview
amerjusupovic Aug 23, 2023
c296e17
Merge pull request #463 from Azure/preview
amerjusupovic Sep 18, 2023
06f237f
Automatic http failover base on Srv Dns (#442)
RichardChen820 Dec 12, 2023
efe961d
Refactor and move backoff logic to AzureAppConfigurationProvider (#508)
amerjusupovic Jan 17, 2024
9208238
Add support for feature management variants and telemetry (#476)
amerjusupovic Jan 17, 2024
771f937
Merge branch 'main' of https://github.com/Azure/AppConfiguration-Dotn…
amerjusupovic Jan 17, 2024
a225470
Merge pull request #510 from Azure/merge-main-to-preview
amerjusupovic Jan 17, 2024
d534c96
upgrade package versions to 7.1.0-preview for release (#509)
amerjusupovic Jan 17, 2024
509e744
Merge branch 'release/preview/v7' of https://github.com/Azure/AppConf…
amerjusupovic Jan 18, 2024
eba25a5
Merge pull request #512 from Azure/merge-release-to-preview
amerjusupovic Jan 18, 2024
1d9ee4d
Populate feature flag telemetry metadata when feature flag telemetry …
amerjusupovic Feb 14, 2024
ccc8d3e
Fix comments for Base64Url conversion (#520)
amerjusupovic Feb 21, 2024
60695b7
Fix missing feature flag status and enabled logic (#525)
amerjusupovic Feb 28, 2024
641afd6
Merge branch 'main' of https://github.com/Azure/AppConfiguration-Dotn…
amerjusupovic Feb 28, 2024
b514333
Merge pull request #526 from Azure/merge-main-to-preview
amerjusupovic Feb 28, 2024
113348a
update versions in csproj files to 8.0.0-preview (#527)
amerjusupovic Feb 28, 2024
424206f
Fix bug with variant configuration value for feature management (#531)
amerjusupovic Mar 13, 2024
f1af43c
update package versions for release (#533)
amerjusupovic Mar 14, 2024
2745270
Deprecate and rename refresh APIs for clarity (#532)
amerjusupovic Apr 9, 2024
e74a679
Add an option to enable load balancing between replicas (#535)
amerjusupovic Apr 22, 2024
c437c87
Use Microsoft feature flag schema and remove use of reflection for js…
amerjusupovic Jun 21, 2024
d176d5f
Merge branch 'main' of https://github.com/Azure/AppConfiguration-Dotn…
amerjusupovic Jun 21, 2024
1a66edb
Merge pull request #564 from Azure/merge-main-into-preview
amerjusupovic Jun 21, 2024
88a83d6
Show full informational version for feature management library (#558)
amerjusupovic Jun 25, 2024
c3b5ac1
Remove support for .NET 7 (#567)
amerjusupovic Jun 28, 2024
8a00750
Support both .NET and microsoft schema for feature flags (#566)
amerjusupovic Jul 10, 2024
2f088aa
Add variant allocation and flag telemetry information to request trac…
amerjusupovic Jul 17, 2024
0679b50
Merge branch 'main' of https://github.com/Azure/AppConfiguration-Dotn…
amerjusupovic Jul 17, 2024
b894f89
Merge pull request #578 from Azure/main-to-preview
amerjusupovic Jul 18, 2024
42ec7d1
update package versions to 8.0.0-preview.3 (#580)
amerjusupovic Jul 18, 2024
5088fe9
Merge branch 'preview' of https://github.com/Azure/AppConfiguration-D…
amerjusupovic Jul 26, 2024
c4d103f
Merge pull request #587 from Azure/merge-main-to-preview
amerjusupovic Jul 26, 2024
d551536
Add failover & load balancing telemetry (#586)
zhiyuanliang-ms Aug 20, 2024
56ceeb0
Merge branch 'preview' of https://github.com/Azure/AppConfiguration-D…
amerjusupovic Oct 4, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 1 addition & 3 deletions build/install-dotnet.ps1
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
# Installs .NET 6, .NET 7, and .NET 8 for CI/CD environment
# Installs .NET 6 and .NET 8 for CI/CD environment
# see: https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-install-script#examples

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12;

&([scriptblock]::Create((Invoke-WebRequest -UseBasicParsing 'https://dot.net/v1/dotnet-install.ps1'))) -Channel 6.0

&([scriptblock]::Create((Invoke-WebRequest -UseBasicParsing 'https://dot.net/v1/dotnet-install.ps1'))) -Channel 7.0

&([scriptblock]::Create((Invoke-WebRequest -UseBasicParsing 'https://dot.net/v1/dotnet-install.ps1'))) -Channel 8.0
2 changes: 1 addition & 1 deletion examples/ConfigStoreDemo/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ public static IWebHost BuildWebHost(string[] args)
.ConfigureRefresh(refresh =>
{
refresh.Register("Settings:BackgroundColor")
.SetCacheExpiration(TimeSpan.FromSeconds(10));
.SetRefreshInterval(TimeSpan.FromSeconds(10));
});
});
})
Expand Down
2 changes: 1 addition & 1 deletion examples/ConsoleApplication/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ private static void Configure()
{
refresh.Register("AppName")
.Register("Language", refreshAll: true)
.SetCacheExpiration(TimeSpan.FromSeconds(10));
.SetRefreshInterval(TimeSpan.FromSeconds(10));
});

// Get an instance of the refresher that can be used to refresh data
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<Import Project="..\..\build\NugetProperties.props" />

<PropertyGroup>
<TargetFrameworks>net6.0;net7.0;net8.0</TargetFrameworks>
<TargetFrameworks>net6.0;net8.0</TargetFrameworks>
<Description>Microsoft.Azure.AppConfiguration.AspNetCore allows developers to use Microsoft Azure App Configuration service as a configuration source in their applications. This package adds additional features for ASP.NET Core applications to the existing package Microsoft.Extensions.Configuration.AzureAppConfiguration.</Description>
<SignAssembly>true</SignAssembly>
<DelaySign>false</DelaySign>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<Import Project="..\..\build\NugetProperties.props" />

<PropertyGroup>
<TargetFrameworks>net6.0;net7.0;net8.0</TargetFrameworks>
<TargetFrameworks>net6.0;net8.0</TargetFrameworks>
<Description>Microsoft.Azure.AppConfiguration.Functions.Worker allows developers to use the Microsoft Azure App Configuration service as a configuration source in their applications. This package adds additional features to the existing package Microsoft.Extensions.Configuration.AzureAppConfiguration for .NET Azure Functions running in an isolated process.</Description>
<SignAssembly>true</SignAssembly>
<DelaySign>false</DelaySign>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,10 +35,15 @@ public class AzureAppConfigurationOptions
private SortedSet<string> _keyPrefixes = new SortedSet<string>(Comparer<string>.Create((k1, k2) => -string.Compare(k1, k2, StringComparison.OrdinalIgnoreCase)));

/// <summary>
/// Flag to indicate whether enable replica discovery.
/// Flag to indicate whether replica discovery is enabled.
/// </summary>
public bool ReplicaDiscoveryEnabled { get; set; } = true;

/// <summary>
/// Flag to indicate whether load balancing is enabled.
/// </summary>
public bool LoadBalancingEnabled { get; set; }

/// <summary>
/// The list of connection strings used to connect to an Azure App Configuration store and its replicas.
/// </summary>
Expand Down Expand Up @@ -119,7 +124,7 @@ internal IEnumerable<IKeyValueAdapter> Adapters
/// <summary>
/// Indicates all types of feature filters used by the application.
/// </summary>
internal FeatureFilterTracing FeatureFilterTracing { get; set; } = new FeatureFilterTracing();
internal FeatureFlagTracing FeatureFlagTracing { get; set; } = new FeatureFlagTracing();

/// <summary>
/// Options used to configure provider startup.
Expand All @@ -135,7 +140,7 @@ public AzureAppConfigurationOptions()
{
new AzureKeyVaultKeyValueAdapter(new AzureKeyVaultSecretProvider()),
new JsonKeyValueAdapter(),
new FeatureManagementKeyValueAdapter(FeatureFilterTracing)
new FeatureManagementKeyValueAdapter(FeatureFlagTracing)
};
}

Expand Down Expand Up @@ -215,10 +220,10 @@ public AzureAppConfigurationOptions UseFeatureFlags(Action<FeatureFlagOptions> c
FeatureFlagOptions options = new FeatureFlagOptions();
configure?.Invoke(options);

if (options.CacheExpirationInterval < RefreshConstants.MinimumFeatureFlagsCacheExpirationInterval)
if (options.RefreshInterval < RefreshConstants.MinimumFeatureFlagRefreshInterval)
{
throw new ArgumentOutOfRangeException(nameof(options.CacheExpirationInterval), options.CacheExpirationInterval.TotalMilliseconds,
string.Format(ErrorMessages.CacheExpirationTimeTooShort, RefreshConstants.MinimumFeatureFlagsCacheExpirationInterval.TotalMilliseconds));
throw new ArgumentOutOfRangeException(nameof(options.RefreshInterval), options.RefreshInterval.TotalMilliseconds,
string.Format(ErrorMessages.RefreshIntervalTooShort, RefreshConstants.MinimumFeatureFlagRefreshInterval.TotalMilliseconds));
}

if (options.FeatureFlagSelectors.Count() != 0 && options.Label != null)
Expand Down Expand Up @@ -247,8 +252,8 @@ public AzureAppConfigurationOptions UseFeatureFlags(Action<FeatureFlagOptions> c
{
Key = featureFlagFilter,
Label = labelFilter,
// If UseFeatureFlags is called multiple times for the same key and label filters, last cache expiration time wins
CacheExpirationInterval = options.CacheExpirationInterval
// If UseFeatureFlags is called multiple times for the same key and label filters, last refresh interval wins
RefreshInterval = options.RefreshInterval
});

}
Expand Down Expand Up @@ -381,7 +386,7 @@ public AzureAppConfigurationOptions ConfigureRefresh(Action<AzureAppConfiguratio

foreach (var item in refreshOptions.RefreshRegistrations)
{
item.CacheExpirationInterval = refreshOptions.CacheExpirationInterval;
item.RefreshInterval = refreshOptions.RefreshInterval;
_changeWatchers.Add(item);
}

Expand Down
Loading