https://github.com/damianh/LibLog
Copy LibLog.cs to the driver project. Basically, LibLog.cs contains some fancy reflection to find out what "logging" system is present in the execution environment.
Pros
Allows us to break some hard library dependencies that are only used for logging. IE: Common.Logging (full framework) and Microsoft.Extensions.Logging.Abstractions (.net core). Generally, any opportunity we get to break a dependency is good.
Cons
- It's a breaking change (hopefully not too bad).
- We might lose some degree of explicit configurability
(need to check if this is really true: read source of LibLog and see how this might impact explicit configuration scenarios).
IIRC, Npgsql is looking to move to LibLog.
This will be scheduled for the next major 2.4 driver release (with write hooks).
💤 💤 "You don't want to... Wake, push through"
https://github.com/damianh/LibLog
Copy LibLog.cs to the driver project. Basically,
LibLog.cscontains some fancy reflection to find out what "logging" system is present in the execution environment.Pros
Allows us to break some hard library dependencies that are only used for logging. IE:
Common.Logging(full framework) andMicrosoft.Extensions.Logging.Abstractions(.net core). Generally, any opportunity we get to break a dependency is good.Cons
(need to check if this is really true: read source of LibLog and see how this might impact explicit configuration scenarios).
IIRC, Npgsql is looking to move to
LibLog.This will be scheduled for the next major
2.4driver release (with write hooks).💤 💤 "You don't want to... Wake, push through"