When I'm writing an API assembly for someone else to use, it would be useful to have some logging capability to help diagnose the clients' problems using it.
However, if I reference, for example, log4net in my assembly, this might clash with the version of log4net being used by the client's application.
I don't want to reinvent the wheel by writing my own logging framework.
What's the best way to solve my dilemma?
Edit: I suppose I could demand that the particular version of log4net I am using be installed into the GAC to avoid the version clash with the client, but that would make the API a fat thing that requires installation instead of a drop-in assembly.