While working on #546, I have decided to remove the dependency of EmbedIO on SWAN.
My intention is not to denigrate in any way the staggering amount of work @mariodivece and others have put in developing SWAN. It has served its purpose well for years.
However, if we look back at both repository issues and Slack conversations in the last two years, some SWAN features we depend upon (namely, logging / terminal and JSON serialization) have become the second-biggest cause of problems with EmbedIO, after HttpListener (which I'd very much like to get rid of BTW - suggestions welcome).
It looks like the .NET world has been moving forward too:
.NET Plafform Extensions have become a de facto standard for "trasversal" features such as (but not limited to) logging, with the added benefit of allowing application authors to choose their preference of third-party library actually implementing each feature;
the release of .NET 6 has brought official support for the distribution of trimmed, self-contained applications, reducing the need to keep dependencies at a bare minimum.
The recent news that Unosquare has stopped using EmbedIO in their own projects means that there's no danger of introducing dependency conflicts in Unosquare's projects by replacing SWAN. Furthermore, @mariodivece will now be free to remove from SWAN some types that were introduced explicitly to support EmbedIO and could have little or no further use.
As always, comments and criticisms are both heartily welcome.
While working on #546, I have decided to remove the dependency of EmbedIO on SWAN.
My intention is not to denigrate in any way the staggering amount of work @mariodivece and others have put in developing SWAN. It has served its purpose well for years.
However, if we look back at both repository issues and Slack conversations in the last two years, some SWAN features we depend upon (namely, logging / terminal and JSON serialization) have become the second-biggest cause of problems with EmbedIO, after HttpListener (which I'd very much like to get rid of BTW - suggestions welcome).
It looks like the .NET world has been moving forward too:
The recent news that Unosquare has stopped using EmbedIO in their own projects means that there's no danger of introducing dependency conflicts in Unosquare's projects by replacing SWAN. Furthermore, @mariodivece will now be free to remove from SWAN some types that were introduced explicitly to support EmbedIO and could have little or no further use.
As always, comments and criticisms are both heartily welcome.