-
Notifications
You must be signed in to change notification settings - Fork 266
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
Consider reviewing dependencies? #382
Comments
Good point, here's my thoughts:
|
When you say "we get this "for free"", is it already possible to use System.Text.Json with giraffe, or was it a reference to it not needing another external dependency? |
What I mean here is that we use the |
Just as an example, moving from netcore2 to netcore3, removing the dependencies on the System. packages above for netcore3 and promoting Taskbuilder to netstandard2.0 results in a drastically simpler paket lock file (319 lines -> 25 lines):
Combined with the recent perf enhancements to Paket that @forki has done, we can do a full paket install / update in 3 seconds instead of 11 seconds. |
If we're going to change some of these, we should also include an explicit Giraffe 4.0 is referencing >= 4.7.0 through the 3.x sdk but there's no reason it can't work with >= 4.6.2. |
where do you get 4.6.2 from? |
4.6.2 is the default FSharp.Core reference for < 3.0 sdks (at their latest patches) |
Is support for |
@isaacabraham Am I right to assume that the |
We have an issue with Taskbuilder.fs still, but that would go with #421 |
There are multiple JSON dependencies still. It would be nicer if |
This has actually already been done in the new prereleases, so that's one off your list :) |
Currently all dependencies are required, but we could reduce them by separating out the JSON serializers. |
Just a question if it's worth reviewing the dependency chain on Giraffe - I wonder if a few of packages in there are still needed (could be, I don't know):
FSharp.Core (>= 4.7)
Microsoft.AspNetCore.Authentication (>= 2.2)
Microsoft.AspNetCore.Authorization (>= 2.2)
Microsoft.AspNetCore.Diagnostics (>= 2.2)
Microsoft.AspNetCore.Hosting.Abstractions (>= 2.2)
Microsoft.AspNetCore.ResponseCaching (>= 2.2)
Microsoft.IO.RecyclableMemoryStream (>= 1.2.2)
Newtonsoft.Json (>= 12.0.2)
System.Text.RegularExpressions (>= 4.3.1)
System.ValueTuple (>= 4.5)
System.Xml.XmlSerializer (>= 4.3)
TaskBuilder.fs (>= 2.1)
Utf8Json (>= 1.3.7)
I'm particularly wondering about the bottom half e.g. ValueTuple, XmlSerializer, RegularExpressions etc.. - are these needed in the netstandard2+ world? They massively increase the size of e.g. paket graphs.
Again, it may be that they're all needed - but if they aren't, maybe they can be removed?
The text was updated successfully, but these errors were encountered: