A bunch of small changes and updates for 2.2 focused at making our main
scenarios more streamlined and focused. Also adds samples for
extensibility we support so far.
A list of changes:
Clearing baselines for these projects. We didn't ship anything in 2.1 so
there should be nothing in the baselines.
--
The middleware now uses Map for path matching. This makes the actual
`HealthCheckMiddleware` more standalone. This will make it easy to use
with Dispatcher/Endpoint Routing in the future.
This also manifests by removing Path from HealthCheckOptions - the path
is an explicit argument to the UseHealthChecks middelware - this
streamlines the design for 3.0.
--
Added extensibility for customizing the status codes (aspnet/Home#2584)
--
Added extensibility for writing the textual output (aspnet/Home#2583)
--
Changed the default output to be `text/plain`. The most common use cases
for health checks don't include a detailed status.
The existing output format is still available as an option.
Fixaspnet/Home#2820 - UseDatabaseErrorPage throws NullReferenceException when ef exception occur in background task
Fixaspnet/EntityFrameworkCore#9599 - Insert entity in non existing table throws NullException
Added null checks to async local access in event callback.
Related to aspnet/Home#2825
- Removed EF ApiCheck tests; not required for middleware.
- Removed JB annotations and Check usage; align with other Diagnostics Pages projects.
- Fixed code redundancies.
- aspnet/Testing#248
- xUnit no longer supports .NET 4.5.1
- build tests for desktop .NET only on Windows
Address existing issues
- work around test failures, including #350
- skip tests mentioned in #350
- reorder xunit and xunit.runner.visualstudio; setup fails for .NET Core otherwise
- skip all tests using LocalDB on Linux and OSX
- `[FrameworkSkipCondition(RuntimeFrameworks.Mono)]` now redundant
- correct AppVeyor image
nits:
- let VS add the test `<Service>`
- use `[ConditionalFact]` when there's no test data