extensions
extensions copied to clipboard
This repository contains a suite of libraries that provide facilities commonly needed when creating production-ready applications.
When request/response bodies are truncated in logs (Http client logging and Http middleware logging) it should be visible that the field doesn't represent the whole body. The person trying to...
We can simplify and unify the resource monitoring API to have it produce observable instruments in place of the existing IResourceMonitorPublisher API.
``` Failed Microsoft.Extensions.Diagnostics.ResourceMonitoring.Linux.Test.AcceptanceTestResourceUtilizationLinux.ResourceUtilizationTracker_Reports_The_Same_Values_As_One_Can_Observe_From_Gauges [100 ms] Error Message: Assert.Equal() Failure Expected: 100 Actual: 50 Stack Trace: at Microsoft.Extensions.Diagnostics.ResourceMonitoring.Linux.Test.AcceptanceTestResourceUtilizationLinux.ResourceUtilizationTracker_Reports_The_Same_Values_As_One_Can_Observe_From_Gauges() in /_/test/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Tests/Linux/AcceptanceTestResourceUtilizationLinux.cs:line 221 ```
Let's combine both of these generators into MetadataExtractor which produces a single json document containing: All logging methods in the assembly, with their data compliance annotations All data models in...
The GetAsync is a Generic Virtual Method which ends up being expensive to call. Can we design to avoid this pattern? https://github.com/dotnet/extensions/blob/184223ba6bade885c57a7e05fcf741eac39f7520/src/Libraries/Microsoft.Extensions.Options.Contextual/INamedContextualOptions.cs#L24
### Description The source-generated implementation of `M1` (see reproduction steps) won't redact or report an error and will emit sensitive data as-is. ### Reproduction Steps Consider this example: ```cs [AttributeUsage(AttributeTargets.Property...
Originally raised in the PR: https://github.com/dotnet/extensions/pull/4658/files/10aaa0f1ff678707dd3dcc24556f52e6e83c6d5d#diff-34c8e3af3817fab6821f66bbb4341255c5413079bc94560de0a77e973412701f TL;DR: we should add an analyzer (or emit a warning in our logging source-gen) when someone applies a data classification attribute on a non-instance...
The Microsoft [resilience documentation](https://learn.microsoft.com/en-us/dotnet/core/resilience) claims that `Microsoft.Extensions.Http.Polly` is superseded by `Microsoft.Extensions.Http.Resilience`. Is this true? Would be nice if there were a migration guide.