-
Notifications
You must be signed in to change notification settings - Fork 22
Comparing changes
Open a pull request
base repository: open-feature/dotnet-sdk
base: v2.7.0
head repository: open-feature/dotnet-sdk
compare: v2.8.0
- 19 commits
- 33 files changed
- 7 contributors
Commits on Jul 3, 2025
-
ci: update renovate configuration to include package rules for securi…
…ty updates (#510) Signed-off-by: André Silva <[email protected]> <!-- Please use this template for your pull request. --> <!-- Please use the sections that you need and delete other sections --> ## This PR <!-- add the description of the PR here --> This pull request updates the `renovate.json` configuration to enhance dependency management rules. The most notable change introduces a new `packageRules` section to handle security updates differently than other dependencies. Dependency management improvements: * [`renovate.json`](diffhunk://#diff-7b5c8955fc544a11b4b74eddb4115f9cc51c9cf162dbffa60d37eeed82a55a57L7-R17): Added a `packageRules` section to create pull requests for security updates without requiring dashboard approval. These updates will not be automatically merged, ensuring manual review. Signed-off-by: André Silva <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fa1ad7e - Browse repository at this point
Copy the full SHA fa1ad7eView commit details
Commits on Jul 4, 2025
-
chore: remove redundant rule (now in parent)
Signed-off-by: Todd Baert <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 929fa74 - Browse repository at this point
Copy the full SHA 929fa74View commit details
Commits on Jul 11, 2025
-
chore(deps): update github/codeql-action digest to 181d5ee (#520)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [github/codeql-action](https://redirect.github.com/github/codeql-action) | action | digest | `39edc49` -> `181d5ee` | --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/open-feature/dotnet-sdk). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4yMy4yIiwidXBkYXRlZEluVmVyIjoiNDEuMjMuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsicmVub3ZhdGUiXX0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 40bec0d - Browse repository at this point
Copy the full SHA 40bec0dView commit details -
chore(deps): update spec digest to 224b26e (#521)
This PR contains the following updates: | Package | Update | Change | |---|---|---| | spec | digest | `c37ac17` -> `224b26e` | --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/open-feature/dotnet-sdk). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4yMy4yIiwidXBkYXRlZEluVmVyIjoiNDEuMjMuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsicmVub3ZhdGUiXX0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for fbc2645 - Browse repository at this point
Copy the full SHA fbc2645View commit details -
ci: add caching for NuGet packages in CI workflows (#522)
Signed-off-by: André Silva <[email protected]> <!-- Please use this template for your pull request. --> <!-- Please use the sections that you need and delete other sections --> ## This PR <!-- add the description of the PR here --> This pull request enhances the CI/CD workflows by adding caching for NuGet packages across multiple workflow files. This change aims to improve build performance by avoiding repeated downloads of dependencies. ### Workflow Improvements: * [`.github/workflows/ci.yml`](diffhunk://#diff-b803fcb7f17ed9235f1e5cb1fcd2f5d3b2838429d4368ae4c57ce4436577f03fR39-R46): Added a step to cache NuGet packages in both the main CI job and another job within the same file. This uses the `actions/cache` action to store packages in `~/.nuget/packages` and leverages file hashing for cache keys. [[1]](diffhunk://#diff-b803fcb7f17ed9235f1e5cb1fcd2f5d3b2838429d4368ae4c57ce4436577f03fR39-R46) [[2]](diffhunk://#diff-b803fcb7f17ed9235f1e5cb1fcd2f5d3b2838429d4368ae4c57ce4436577f03fR82-R89) * [`.github/workflows/code-coverage.yml`](diffhunk://#diff-49708f979e226a1e7bd7a68d71b2e91aae8114dd3e9254d9830cd3b4d62d4303R37-R44): Introduced NuGet package caching to the code coverage workflow, improving efficiency during the `dotnet test` step. * [`.github/workflows/e2e.yml`](diffhunk://#diff-3e103440521ada06efd263ae09b259e5507e4b8f7408308dc227621ad9efa31eR32-R39): Added caching for NuGet packages in the end-to-end testing workflow, reducing setup time for dependencies. * [`.github/workflows/release.yml`](diffhunk://#diff-87db21a973eed4fef5f32b267aa60fcee5cbdf03c67fafdc2a9b553bb0b15f34R54-R61): Implemented NuGet package caching in the release workflow to optimize dependency installation during the `dotnet restore` step. ### Notes <!-- any additional notes for this PR --> This is similar to open-feature/dotnet-sdk-contrib#453 --------- Signed-off-by: André Silva <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f6ae8dd - Browse repository at this point
Copy the full SHA f6ae8ddView commit details -
feat: Add Track method to IFeatureClient (#519)
<!-- Please use this template for your pull request. --> <!-- Please use the sections that you need and delete other sections --> ## This PR <!-- add the description of the PR here --> Adds Track method to `IFeatureClient` so developers dependent on this abstraction can track user interactions. ### Related Issues <!-- add here the GitHub issue that this PR resolves if applicable --> Fixes #518 ### Notes <!-- any additional notes for this PR --> ### Follow-up Tasks <!-- anything that is related to this PR but not done here should be noted under this section --> <!-- if there is a need for a new issue, please link it here --> ### How to test <!-- if applicable, add testing instructions under this section --> Signed-off-by: Kyle Julian <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2e70072 - Browse repository at this point
Copy the full SHA 2e70072View commit details
Commits on Jul 14, 2025
-
chore: Add comparison to Value (#523)
Signed-off-by: André Silva <[email protected]> <!-- Please use this template for your pull request. --> <!-- Please use the sections that you need and delete other sections --> ## This PR <!-- add the description of the PR here --> This pull request introduces enhancements to the `Value` class in the `OpenFeature.Model` namespace, ensuring better equality handling, and updates dependencies to include `Microsoft.Bcl.HashCode`. The most significant changes include implementing equality comparison for `Value`, adding hash code generation, and updating project files to include the new dependency. ### Enhancements to `Value` class: * [`src/OpenFeature/Model/Value.cs`](diffhunk://#diff-336aacd3c42458899187108a2064648ae21e439b2b11e6ca7f25b7b7fef00609L9-R9): The `Value` class now implements `IEquatable<Value>` and includes methods for equality comparison (`Equals`, `==`, `!=`), hash code generation (`GetHashCode`), and internal helpers for comparing complex types like structures and lists. This ensures more robust and consistent equality checks. [[1]](diffhunk://#diff-336aacd3c42458899187108a2064648ae21e439b2b11e6ca7f25b7b7fef00609L9-R9) [[2]](diffhunk://#diff-336aacd3c42458899187108a2064648ae21e439b2b11e6ca7f25b7b7fef00609R187-R378) ### Dependency updates: * [`Directory.Packages.props`](diffhunk://#diff-5baf5f9e448ad54ab25a091adee0da05d4d228481c9200518fcb1b53a65d4156L13-R25): Added `Microsoft.Bcl.HashCode` as a dependency for hash code generation. Other package references were reformatted for consistency. * [`src/OpenFeature/OpenFeature.csproj`](diffhunk://#diff-711ea17cbdebe419375c7684c8c39a1423d2bebcf8976ddd7bdd78deaab65b21R11): Included `Microsoft.Bcl.HashCode` for specific target frameworks (`net462` and `netstandard2.0`). ### Notes <!-- any additional notes for this PR --> This implementation is necessary for the comparison in the MultiProvider. See: #488 (comment) --------- Signed-off-by: André Silva <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 883f4f3 - Browse repository at this point
Copy the full SHA 883f4f3View commit details -
feat: Add Hook Dependency Injection extension method with Hook instan…
…ce (#513) <!-- Please use this template for your pull request. --> <!-- Please use the sections that you need and delete other sections --> ## This PR <!-- add the description of the PR here --> In #512 I needed to tweak the sample AspNetCore application to pass Hook options to the MetricsHook. I noticed that in order to pass the options I needed to use the delegate based approach, while discarding the `serviceProvider`, like: ```csharp featureBuilder.AddHostedFeatureLifecycle() .AddHook(_ => new MetricsHook(metricsHookOptions)) ``` It would be simpler and easier for devs to interact with a third overload that allows them to pass an instance of the hook that they want to interact with, like so: ```csharp featureBuilder.AddHostedFeatureLifecycle() .AddHook(new MetricsHook()) ``` ### Related Issues <!-- add here the GitHub issue that this PR resolves if applicable --> ### Notes <!-- any additional notes for this PR --> ### Follow-up Tasks <!-- anything that is related to this PR but not done here should be noted under this section --> <!-- if there is a need for a new issue, please link it here --> ### How to test <!-- if applicable, add testing instructions under this section --> --------- Signed-off-by: Kyle Julian <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 12396b7 - Browse repository at this point
Copy the full SHA 12396b7View commit details
Commits on Jul 15, 2025
-
docs: remove curly brace from readme
The curly brace breaks the Docusaurus complication. Signed-off-by: Michael Beemer <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8c92524 - Browse repository at this point
Copy the full SHA 8c92524View commit details -
docs: fix anchor link in readme (#525)
This is causing an issue when attempting to update the .NET SDK docs on openfeature.dev. https://github.com/open-feature/openfeature.dev/actions/runs/16301698184/job/46037647418?pr=1248 Signed-off-by: Michael Beemer <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 18705c7 - Browse repository at this point
Copy the full SHA 18705c7View commit details
Commits on Jul 19, 2025
-
feat: Add Metric Hook Custom Attributes (#512)
<!-- Please use this template for your pull request. --> <!-- Please use the sections that you need and delete other sections --> ## This PR <!-- add the description of the PR here --> Adds new `MetricsHookOptions` and `MetricsHookOptionsBuilder` to optionally configure custom attributes that can be tagged on the `feature_flag.evaluation_success_total` metric. Example usage: ```csharp var options = MetricsHookOptions.CreateBuilder() .WithCustomDimension("custom_dimension_key", "custom_dimension_value") .WithFlagEvaluationMetadata("boolean", s => s.GetBool("boolean")) .Build(); OpenFeature.Api.Instance.AddHooks(new MetricsHook(options)); ``` Screenshot below shows the AspNetCore sample application tagging the `feature_flag.evaluation_success_total` counter with the specified dimensions.  ### Related Issues <!-- add here the GitHub issue that this PR resolves if applicable --> Fixes #509 Fixes #514 ### Notes <!-- any additional notes for this PR --> ### Follow-up Tasks <!-- anything that is related to this PR but not done here should be noted under this section --> <!-- if there is a need for a new issue, please link it here --> ### How to test <!-- if applicable, add testing instructions under this section --> --------- Signed-off-by: Kyle Julian <[email protected]>Configuration menu - View commit details
-
Copy full SHA for 8c05d1d - Browse repository at this point
Copy the full SHA 8c05d1dView commit details
Commits on Jul 21, 2025
-
chore(deps): update github/codeql-action digest to d6bbdef (#527)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 03d3b9e - Browse repository at this point
Copy the full SHA 03d3b9eView commit details -
chore(deps): update spec digest to baec39b (#528)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for a0ae014 - Browse repository at this point
Copy the full SHA a0ae014View commit details
Commits on Jul 24, 2025
-
feat: Support JSON Serialize for Value (#529)
* feat: add ValueJsonConverter to support STJ JSON Serialize Signed-off-by: Weihan Li <[email protected]> * test: add test case Signed-off-by: Weihan Li <[email protected]> * style: apply dotnet-format Signed-off-by: Weihan Li <[email protected]> * test: update test cases Signed-off-by: Weihan Li <[email protected]> * test: update deserialize for int/Datetime Signed-off-by: Weihan Li <[email protected]> * style: apply dotnet format Signed-off-by: Weihan Li <[email protected]> * refactor: update DateTime handling Signed-off-by: Weihan Li <[email protected]> * fix: fix build Signed-off-by: Weihan Li <[email protected]> * test: update test case to cover nested Structure and beautify JSON test data Signed-off-by: Weihan Li <[email protected]> * refactor: update double/int value serialize Signed-off-by: Weihan Li <[email protected]> * include boundaries Signed-off-by: Weihan Li <[email protected]> * update double test case data Signed-off-by: Weihan Li <[email protected]> * test: Update StructureTests double test case Signed-off-by: Weihan Li <[email protected]> * refactor: simplify write number value for ValueJsonConverter Signed-off-by: Weihan Li <[email protected]> --------- Signed-off-by: Weihan Li <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6e521d2 - Browse repository at this point
Copy the full SHA 6e521d2View commit details
Commits on Jul 26, 2025
-
feat: Add TraceEnricherHookOptions Custom Attributes (#526)
* Add TraceEnricherHookOptions to enrich feature_flag.evaluation event * Add unit tests * Update README * Add XML comments Signed-off-by: Kyle Julian <[email protected]> * Update Method name to be consistent with Tags found in Activity Signed-off-by: Kyle Julian <[email protected]> --------- Signed-off-by: Kyle Julian <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5a91005 - Browse repository at this point
Copy the full SHA 5a91005View commit details -
chore(deps): update github/codeql-action digest to 4e828ff (#532)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 20d1f37 - Browse repository at this point
Copy the full SHA 20d1f37View commit details
Commits on Jul 28, 2025
-
refactor: Simplify Provider Repository (#515)
* refactor: simplify initialization and shutdown methods with cancellation support Signed-off-by: André Silva <[email protected]> * refactor: change visibility of GetProvider and ShutdownAsync methods to internal Signed-off-by: André Silva <[email protected]> * fix: correct logger instance type in ProviderRepository Signed-off-by: André Silva <[email protected]> * fix: update preprocessor directives for compatibility with .NET Standard Signed-off-by: André Silva <[email protected]> * fix: update SetProviderAsync method to enforce non-null domain parameter Signed-off-by: André Silva <[email protected]> * fix: enhance documentation for GetProvider and FeatureClient constructor parameters Signed-off-by: André Silva <[email protected]> --------- Signed-off-by: André Silva <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2547a57 - Browse repository at this point
Copy the full SHA 2547a57View commit details
Commits on Jul 30, 2025
-
fix: update DI lifecycle to use container instead of static instance (#…
…534) * feat: Update Api constructor visibility and adjust service registration Signed-off-by: André Silva <[email protected]> * feat: Enhance FeatureClient to use Api instance for provider access and context retrieval Signed-off-by: André Silva <[email protected]> * feat: Update Api to support singleton instance setup in Dependency Injection Signed-off-by: André Silva <[email protected]> * feat: Refactor FeatureClient constructor to prioritize API instance and improve provider access Signed-off-by: André Silva <[email protected]> --------- Signed-off-by: André Silva <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1a3846d - Browse repository at this point
Copy the full SHA 1a3846dView commit details -
chore(main): release 2.8.0 (#511)
* chore(main): release 2.8.0 Signed-off-by: OpenFeature Bot <[email protected]> * Add missing release Signed-off-by: André Silva <[email protected]> --------- Signed-off-by: OpenFeature Bot <[email protected]> Signed-off-by: André Silva <[email protected]> Co-authored-by: André Silva <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c0eb12a - Browse repository at this point
Copy the full SHA c0eb12aView commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff v2.7.0...v2.8.0