Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@MangelMaxime
Copy link
Contributor

Hello,

Thanks you for this project it makes it more fun to work with Spectre.Console.

This PR is a proposition to lower FSharp.Core, I made a PR instead of an issue because it like that it is easier showcase the impact on the code (basically none πŸ˜…).

When authoring F# libraries, it is recommended to make FSharp.Core dependency as low as possible. It allows a library to reach a larger range of codebase.

Otherwise people will get warning like:

Detected package downgrade: FSharp.Core from 8.0.200 to 8.0.101. Reference the package directly from the project to select a different version.

For fs-spectre it is perhaps possible to go even lower but based on my experience targeting 5.0.2 works great. It gives you access to a lot of F# new goodies while allowing to reach a wide range of project.

You can read more about FSharp.Core management here

@galassie
Copy link
Owner

galassie commented Sep 2, 2024

Hey @MangelMaxime
first of all thanks for your interest in fs-spectre, really appreciated! 😊
Funny enough, I didn't know about this page about F# compiler guide and specifically the notes about FSharp.Core so thank you for sharing!
I always get confused by these version stuff in .NET!
I was wondering why 5.0.2 and not directly 5.0.0?

Also maybe it's possible to get rid of net8.0 in the TargetFrameworks and just have netstandard2.0, wdyt?

@MangelMaxime
Copy link
Contributor Author

If you go with a netstandard version you should choose netstandard2.1. I think netstandard2.0 is more limited while netstandard2.1 works more of less everywhere .NET (old), .NET 5, .NET 6, etc.

If I remember correctly there was a bug / binary problem in FSharp.Core 5.0.0 and so I always used 5.0.2 since it has been around.

@galassie
Copy link
Owner

galassie commented Sep 2, 2024

@MangelMaxime I think for targeting is not a problem since netstandard2.0 is supported by everything (even .net framework) and this library does not need any functionality from netstandard2.1 I think; this is also suggested by the official documentation.

For the bug about FSharp.Core 5.0.0 I will search about it (if you have already the link and you could share it I would be very grateful πŸ™ ), for now I think we can keep 5.0.2 :)

@MangelMaxime
Copy link
Contributor Author

For the bug about FSharp.Core 5.0.0 I will search about it (if you have already the link and you could share it I would be very grateful πŸ™ )

I don't have a link. Only a vague memory from severals years ago πŸ˜… Perhaps, there is a release note or announcement on Microsoft repos/docs

@galassie
Copy link
Owner

galassie commented Sep 3, 2024

@MangelMaxime ok thank you anyway! :)
I think this one can be merged and after that I will investigate about target framework thing!
Thanks again for your contribution! 😊

@galassie galassie merged commit dc3a7d1 into galassie:main Sep 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants