- Fixed a bug introduced in version 1.3.0 where the
GetConfigurationSetting
method incorrectly logged 304 responses as failures in distributed tracing.
- Added
ConfigurationSettingPageableExtensions
class to support newPageable<ConfigurationSetting>.AsPages
andAsyncPageable<ConfigurationSetting>.AsPages
extension methods. This replacesSettingSelector.MatchConditions
.
- Removed property
MatchConditions
fromSettingSelector
.
- Added property
MatchConditions
toSettingSelector
which allows specifying request conditions toGetConfigurationSettings
requests.
- Added configuration settings snapshot feature which allow users to create a point-in-time snapshot of their configuration store.
- Renamed
key
tag reported onConfigurationClient
activities toaz.appconfiguration.key
following OpenTelemetry attribute naming conventions.
- Added a new type,
SnapshotSelector
, to encapsulate parameters likename
,fields
, andstatus
within theGetSnapshots
method.
- Fixed
GetConfigurationSettings(SettingSelector)
not settingContentType
andLastModified
properties (#38524). FeatureFlagConfigurationSetting
will now allow custom attributes under theconditions
element in the setting value. Previously, onlyclient_filters
was recognized and other data would be discarded.
FeatureFlagConfigurationSetting
andSecretReferenceConfigurationSetting
will now retain custom attributes in the setting value. Previously, only attributes that were defined in the associated JSON schema were allowed and unknown attributes were discarded.- Added the ability to create
FeatureFlagConfigurationSetting
andSecretReferenceConfigurationSetting
instances with an ETag, matchingConfigurationSetting
. This allows all setting types to use the GetConfigurationSettingAsync overload that acceptsonlyIfUnchanged.
Previously, this was not possible for specialized settings types. - Added the ability to create
FeatureFlagConfigurationSetting
andSecretReferenceConfigurationSetting
instances for testing purposes using theConfigurationModelFactory
. It was previously not possible to populate service-owned fields when testing. - Marked a constructor overload of
ConfigurationSetting
that was intended for testing purposes as non-visible, as theConfigurationModelFactory
should instead be used. - Fixed a bug where a disposed content stream was used to attempt deserialization in some scenarios, such as using a custom
HttpMessageHandler
that returnsStringContent
.
- Added configuration settings snapshot feature which allow users to create a point-in-time snapshot of their configuration store.
- Removed protocol methods from the
ConfigurationClient
.
- Added protocol methods to
ConfigurationClient
based on this swagger definition.
- Fixed throwing
NullReferenceException
if the value of aSecretReferenceConfigurationSetting
is null (#31588).
- Added a
ConfigurationSetting
constructor parameter to set anETag
.
- Added a
ConfigurationSetting
constructor parameter to set anETag
.
- The
GetConfigurationSettingAsync
overload that takes an instance ofMatchConditions
temporary removed.
- Added a
GetConfigurationSettingAsync
overload that takes an instance ofMatchConditions
.
FeatureFlagFilter
now allows parameter modification.
- Dependency versions updated.
- The
AddSyncToken
method renamed toUpdateSyncToken
.
- Added
SecretReferenceConfigurationSetting
type to represent a configuration setting that references a KeyVault Secret. - Added
FeatureFlagConfigurationSetting
type to represent a configuration setting that controls a feature flag. - Added
AddSyncToken
toConfigurationClient
to be able to provide external synchronization tokens.
- Provide AddConfigurationClient with support for TokenCredential
- Update the tag list for the AzConfig package
Keys
andLabels
properties inSettingSelector
are replaced withKeyFilter
andLabelFilter
to provide full filtering support.
- Fixed multiple issues with connection string parsing in
ConfigurationClient
.
- Bugfixes: #8920
- Pair of methods
SetReadOnly
/ClearReadOnly
inConfigurationClient
are replaced with single methodSetReadOnly
with boolean parameter. SettingSelector.AsOf
property is renamed intoSettingSelector.AcceptDateTime
.
- Added support for AAD.
ConfigurationClient
can be created using endpoint and any type ofTokenCredential
. - Added new overload for the method
ConfigurationClient.GetRevisions
that accepts key and optional label. - Added new overload for the method
ConfigurationClient.GetConfigurationSetting
that acceptsConfigurationSetting
and its datetime stamp.
- Made
Keys
andLabels
inSettingSelector
read-only. - Removed
SetConfigurationSetting
overload that tookMatchCondition
as a parameter. - Changed
SettingFields.Locked
toSettingFields.ReadOnly
in the SDK; the serialized value sent to the service remains the same. - Renamed
AzureClientBuilderExtensions
toConfigurationClientBuilderExtensions
inMicrosoft.Extensions.Azure
namespace. - Made
ConfigurationClientOptions.Version
property internal. - Changed client method names
Add
,Get
,Set
,Delete
, andGetSettings
, as well as their async versions toAddConfigurationSetting
,GetConfigurationSetting
,SetConfigurationSetting
,DeleteConfigurationSetting
, andGetConfigurationSettings
respectively. - Changed
ConfigurationSetting.ReadOnly
toConfigurationSetting.IsReadOnly
. - Changed
Equals
andGetHashCode
implementations inConfigurationSetting
andSettingSelector
to use implementations inherited fromObject
.
- Fixed a bug causing incorrect request signing on retries.
- Made
ConfigurationSetting
serializable bySystem.Text.Json
serializers. - Updated documentation and samples.
- Fixed an issue where special characters were escaped incorrectly.
- Enabled conditional requests.
- Added support for setting
x-ms-client-request-id
,x-ms-correlation-request-id
, andcorrelation-context
headers. - Added
SetReadOnly
andClearReadOnly
methods. - Enabled setting service version.
- Added support for
Sync-Token
headers. - Updated authorization header format.
- Removed
Update
methods.