Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge preview to main #596

Merged
merged 37 commits into from
Oct 4, 2024
Merged

Merge preview to main #596

merged 37 commits into from
Oct 4, 2024

Conversation

amerjusupovic
Copy link
Member

No description provided.

amerjusupovic and others added 30 commits May 31, 2023 15:08
Merge preview to release/preview/v6 for 6.0.2 preview release
Merge preview to release/preview/v7 for 7.0.0-preview release
Revert "parse requirement type of feature flags" for 7.0.0-preview release
Merge preview to release/preview/v7 for 7.0.0-preview2 release
Merge preview to release/preiew/v7
* Automatic http failover base on Srv Dns

* update failover condition

* Logging messages for auto failover

* Not use generic method

* Remove useless constructor

* Failover to TCP when response is truncated

* Error handling of TCP failover

* Resolve comments and add thrid party notice

* Fix the tests

* Fix the tess

* Fix the test

* Update to use DnsClient.NET

* Remove unecessary code

* Resolve conflict

* Stop once it has been auto failovered

* Update GetAvaliableClient method

* Resolve comments

* Resolve comments

* Internalize getting dynamic client in ConfigurationClientManager

* Fix format

* Fix format

* Resolve comments

* Resolve comments

* Resolve comments

* Resolve comments

* Resolve comments

* Resolve comments

* Resolve comments

* Not await RefreshFallbackClients when startup

* Revert non-await RefreshFallbackClients

* Validate domain of Srv endpoints (#489)

* Validate domain of Srv endpoints

* Resolve comments

* Resolve comments

* Create object in using

* Add the origin host to the srv lookup result

* Validate endpoint by domain name (#499)

* Validate endpoint by domain name

* Resolve comments

* Remove *-test

* Fix formatResolve conflict

* Use await using for IAsyncDisposible

* Replace IAsyncEumerable with ValueTask<IEnumerable>

* Resolve comments

* Remove cancallation token

* Resolve comments
* move backoff logic to provider, can't access backoffendtime from manager for dynamic clients

* add condition before calling getclients in refreshasync, add refreshclients method

* fix logic to check if backoff ended for client

* fix indents

* check client backoff before refresh, fix tests in progress

* remove tolist

* comment changes, fix refresh tests

* reduce minimum backoff when testing

* fix tests, fix typo with failover logic

* update comments in tests

* resolve PR comments

* resolve small comments
* in progress set up feature flag structure for variants and allocation

* complete structure for feature flag variants and allocation, parsing in adapter

* upgrade version of sdk package, update to new names for each variable

* fix json property names

* fix constants to match variable names

* add json properties for telemetry

* add telemetry metadata parsing, add tests for both variants and telemetry

* don't add telemetry enabled value when false

* update to include telemetry section from new schema

* use constants for properties

* rename variables for clarity

* use variable for reused paths

* use ienumerable over list
Merge main to preview for 7.1.0-preview release
Merge release/preview/v7 to preview to fix git history
…is enabled (#517)

* design questions for Id format pending

* first draft adding ffid and ffref

* fix telemetry test bug

* fix telemetry test and only populate when telemetry is enabled

* give priority to provider populated metadata values

* test label in telemetry test

* keep metadata values together in output

* remove unnecessary code for checking client manager endpoint

* fix base64url logic

* check for whitespace in label

* use stringbuilder over replace and trim for performance

* use indexof to check for equals

* use static value for capacity in loop

* resolve comments

* fix extension

* pull out id calculation to private method

* add summary comments

* add base64 spec

* Update src/Microsoft.Extensions.Configuration.AzureAppConfiguration/Extensions/BytesExtensions.cs

Co-authored-by: Jimmy Campbell <[email protected]>

---------

Co-authored-by: Jimmy Campbell <[email protected]>
* fix comment in b64 method

* clarify comment

* clarify comment

* clarify comment
* update featuremanagementkeyvalueadapter to add status, don't set flag to boolean if variants are present

* use constants for status

* check for telemetry too, add status test

* add comments

* fix if statement condition for alwayson

* revisions

* fix tests to match removal of explicit false value for flag
Merge main to preview for 8.0.0-preview release
* WIP fix configuration value to accept any type

* fix configuration value case for all valid values

* add more testing, clarify null value scenario

* remove special case, match configuration pattern for null

* fix test to match changes
* some progress

* update variables and methods related to cache expiration

* update configstoredemo

* change cacheexpirationinterval to a set method

* allow either property or method for feature flag options for now

* fix summaries for refreshoptions

* PR revisions

* fix method name reference in obsolete message

* fix incorrect refreshinterval name
* in progress shuffle clients

* first draft load balancing, need tests

* WIP logic for client shuffling - unsure how to incorporate priority

* WIP

* shuffle all clients together, fix logic for order of clients used

* WIP

* WIP store shuffle order for combined list

* WIP shuffle logic

* WIP new design

* clean up logic/leftover code

* move tests, check if dynamic clients are available in getclients

* remove unused code

* fix syntax issues, extend test

* fix logic to increment client index

* add clarifying comment

* remove tests for now

* WIP tests

* add some tests, will add more

* add to last test

* remove unused usings

* add extra verify statement to check client isnt used

* edit logic to treat passed in clients as highest priority

* PR comment revisions

* check for more than one client in load balancing logic

* set clients equal to new copied list before finding next available client

* remove convert list to clients
…on parsing (#556)

* WIP change constants to microsoft version, edit properties in fmkvadapter

* index feature flags within new microsoft section feature_flags

* fix all tests, use reset state

* add warning log for old feature management libraries with new provider package

* WIP adding deserialization changes, updating for variants/telemetry

* WIP adding exceptions for incorrect types within arrays, allocation properties

* WIP allocations mostly done

* update remaining properties, fix tests

* improve metadata error message

* update tests, add variant and telemetry testing

* remove alwayson

* fix warning version check

* Add tests for invalid cases

* test boolean allows string

* fix tests

* remove unused using

* add tests from original main PR for json parsing

* revisions

* run dotnet format on tests file

* Update src/Microsoft.Extensions.Configuration.AzureAppConfiguration/Constants/ErrorMessages.cs

Co-authored-by: Zhiyuan Liang <[email protected]>

* some PR comment revisions

* make from and to nullable in percentile to check if any values were set

* Update src/Microsoft.Extensions.Configuration.AzureAppConfiguration/Constants/LoggingConstants.cs

Co-authored-by: Avani Gupta <[email protected]>

* Update src/Microsoft.Extensions.Configuration.AzureAppConfiguration/Constants/LoggingConstants.cs

Co-authored-by: Avani Gupta <[email protected]>

* PR comment revisions

* combine if statements

* change feature flag index state method

* use on configuration refresh and updated as adapter events

* change method names

* removed unused methods

---------

Co-authored-by: Zhiyuan Liang <[email protected]>
Co-authored-by: Avani Gupta <[email protected]>
* get full informational version name

* use getcustomattribute

* comment revision
* remove net7 references and target frameworks

* update install script
* adding new private methods for dotnet versus microsoft schema, fixing tests

* remove unused method

* remove schema warning, PR comments

* unify process feature flag approaches with id, fix schema check

* fix tests to match changes

* check for empty variants when deciding schema
…ing (#540)

* WIP create featurevariantstracing class

* WIP class structure

* add first working draft, combine tracing for fm and add allocation/telemetry

* remove unused string

* fix naming, add variant present tag

* change constants names

* update highest variants key and usesSeed tag

* variant configuration suggestion

* change variant config info to tag for ref only

* reformatting tracing

* add method for new features key in request tracing

* fix tracing reference

* PR comments

* adjust features to have flag/other features lists

* remove features key

* Update src/Microsoft.Extensions.Configuration.AzureAppConfiguration/FeatureManagement/FeatureManagementKeyValueAdapter.cs

Co-authored-by: Avani Gupta <[email protected]>

* rename variables and methods

---------

Co-authored-by: Avani Gupta <[email protected]>
amerjusupovic and others added 6 commits July 17, 2024 14:40
* add failover telemetry

* add load balancing enabled tracing

* use Features=xxx+xxx pattern

* revert change

* add comment

* update context string & move helper method to TracingUtil

* add comments

* update

* revert change

* add checks

* remove unused package

* fix typo

---------

Co-authored-by: Amer Jusupovic <[email protected]>
@jimmyca15
Copy link
Member

Should be completed with a merge commit

@jimmyca15 jimmyca15 merged commit 565c07d into main Oct 4, 2024
3 checks passed
@jimmyca15 jimmyca15 deleted the merge-preview-to-main branch October 4, 2024 21:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants