extensions
extensions copied to clipboard
This repository contains a suite of libraries that provide facilities commonly needed when creating production-ready applications.
I think we should provide some better guidance for dealing with await continuations that are trigger by `FakeTimeProvider.Advance`, currently [the guidance is this](https://github.com/dotnet/extensions/tree/0c8bc3ea381bb44c00daec2d7f02c4e0413962ec/src/Libraries/Microsoft.Extensions.TimeProvider.Testing#use-configureawaittrue-with-faketimeprovideradvance), which says > it's important to use...
### Description Metrics on Windows report values in the [0,100] range despite the documentation mentioning the [0,1] range: https://learn.microsoft.com/en-us/dotnet/core/diagnostics/built-in-metrics-diagnostics#metric-containercpulimitutilization For example, if container CPU limit utilization is 60%, the metric...
### Description The `HttpRouteParser.TryExtractParameters` method in the `Microsoft.Extensions.Telemetry` library does not handle route parameters that are marked as catch-all. This can lead to either truncated export of the route parameter...
### Background and motivation We're using `Microsoft.Extensions.Logging` for structured logging and want to write unit tests for it, so we tried using `FakeLogger` but [it converts every state value to...
Microsoft.Extensions.Time.Testing.Test.TimerTests.WaiterRemovedAfterDispose ``` Assert.Equal() Failure: Values differ Expected: 2 Actual: 1 ``` ``` at Microsoft.Extensions.Time.Testing.Test.TimerTests.WaiterRemovedAfterDispose() in D:\a\_work\1\s\test\Libraries\Microsoft.Extensions.TimeProvider.Testing.Tests\TimerTests.cs:line 237 ``` https://dev.azure.com/dnceng-public/public/_build/results?buildId=818533
### Background and motivation Right now, TagProvider (and LogProperties) are bound to the partial log method for the generator, but the type and the logger are not always available next...
### Background and motivation Background and motivation I was looking for a way to test a framework with blocking methods to test asynchronous browser behavior. The solution direction that I...
> @dariusclay / @RussKie - I've backed out the changed to the public API and added some more tests. CI is now green. Let me know once you've reviewed. I...
Provide a new observable instrument (probably, counter?) for CPU ticks which will be always going up. Essentially, [this](https://github.com/dotnet/extensions/blob/39f5d27bf5503b42d8743d47d853aac973d12b49/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/Windows/WindowsContainerSnapshotProvider.cs#L222) value. Customers will be able to build their own CPU utilization logic...
Currently, [ResourceMonitoring](https://github.com/dotnet/extensions/tree/main/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring) can be consumed in two ways: - via [IResourceMonitor](https://github.com/dotnet/extensions/blob/main/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/IResourceMonitor.cs) API which internally uses [ResourceMonitorService](https://github.com/dotnet/extensions/blob/39f5d27bf5503b42d8743d47d853aac973d12b49/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/ResourceMonitorService.cs) implementing `BackgroundService` - via [Observable instruments](https://github.com/dotnet/extensions/blob/main/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/ResourceUtilizationInstruments.cs) (metrics). Both ways provide the same resource monitoring...