Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove SWAN as a dependency #548

Open
Tracked by #546
rdeago opened this issue Mar 8, 2022 · 0 comments
Open
Tracked by #546

Remove SWAN as a dependency #548

rdeago opened this issue Mar 8, 2022 · 0 comments
Assignees
Labels
breaking Requires one or more breaking changes. dependencies Pull requests that update a dependency file pinned Pinned issues are not closed automatically when stale. v4.x

Comments

@rdeago
Copy link
Collaborator

rdeago commented Mar 8, 2022

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.

@rdeago rdeago added breaking Requires one or more breaking changes. dependencies Pull requests that update a dependency file v4.x pinned Pinned issues are not closed automatically when stale. labels Mar 8, 2022
@rdeago rdeago self-assigned this Mar 8, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
breaking Requires one or more breaking changes. dependencies Pull requests that update a dependency file pinned Pinned issues are not closed automatically when stale. v4.x
Projects
None yet
Development

No branches or pull requests

1 participant