WireMock.Net icon indicating copy to clipboard operation
WireMock.Net copied to clipboard

Split WireMock into multiple nuget packages depending on features

Open asidorowicz opened this issue 1 year ago • 9 comments

Is your feature request related to a problem? Please describe. WireMock is currently a single monolithic dependency that pulls with it a very large amount of transitive dependencies, regardless of whether the features are used or not. This can be seen as a minor inconvenience, but enough for our team to have decided to use a different testing tool.

Describe the solution you'd like Split WireMock into separate dependencies depending on desired features, especially if the features require large transitive dependencies (eg: Graphql)

Describe alternatives you've considered We have tried to exclude non-used transitive dependencies, but it is a clunky solution.

asidorowicz avatar Feb 26 '24 15:02 asidorowicz

@asidorowicz Good point. I'll think on this...

StefH avatar Feb 26 '24 17:02 StefH

Work in progress... : https://github.com/WireMock-Net/WireMock.Net/pull/1072

StefH avatar Feb 26 '24 18:02 StefH

@asidorowicz If you have time, you can test preview version 1.5.48-ci-18384 which has separate NuGet for GraphQL, ProtoBuf and MimeKitLite.

https://github.com/WireMock-Net/WireMock.Net/wiki/MyGet-preview-versions

StefH avatar Feb 26 '24 21:02 StefH

@StefH Thank you for your work! I didn't expect such a quick response :) It is much better, though there are still many dependencies that I don't know whether they are part of the core functionality or could be add-ons. Either way, I believe it is an awesome step into a modular approach!

asidorowicz avatar Mar 01 '24 17:03 asidorowicz

@asidorowicz I'll check if more packages can be extracted, however after some thinking, I want to take a slightly different approach.

  • I want to keep the WireMock.Net NuGet the same, to avoid backwards compatibility issues.
  • I'll create a new NuGet WireMock.Net.Minimal which excludes these extra packages.

StefH avatar Mar 02 '24 11:03 StefH