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

Upgrade NHamcrest & drop NETStandard.Library #211

Merged
merged 4 commits into from
Aug 15, 2022

Conversation

CaptnCodr
Copy link
Member

@CaptnCodr CaptnCodr requested a review from sergey-tihon August 6, 2022 06:49
@sergey-tihon
Copy link
Member

Dropping netstandard2.0 is a very big change, it means that we break everyone who still on .NET Framework...

What is new and cool in new NHamcrest? What is out motivation to upgrade?

@CaptnCodr
Copy link
Member Author

CaptnCodr commented Aug 6, 2022

Do we have statistics that shows how many dependents are still on .NET Framework?

The root motivation is to get rid off .NET Framework/Standard in FsUnit with their dependencies to have only net6.0 in the project files.

We can also lose it a bit with shipping FsUnit in net6.0 and netstandard2.0 in the output, don't we?

New in NHamcrest is that is now in net6.0, but I see that may have to lose a bit with netstandard2.0, too.

@sergey-tihon
Copy link
Member

Do we have statistics that shows how many dependents are still on .NET Framework?

I believe that we do not have such statistic.

New in NHamcrest is that is now in net6.0, but I see that may have to lose a bit with netstandard2.0, too.

Am I got it right that the only reason why NHamster is net6 only is the number of dependencies? No other limitations?

We can also lose it a bit with shipping FsUnit in net6.0 and netstandard2.0 in the output, don't we?

This is absolutely good option.

@CaptnCodr
Copy link
Member Author

Am I got it right that the only reason why NHamster is net6 only is the number of dependencies? No other limitations?

NHamcrest was a bit outdated with only .NET Framework and FsUnit needed to implement Netstandard.Library to work.
NHamcrest has similar dependencies as FsUnit has, the output was just .NET Framework.

So, FsUnit had to be on netstandard2.0 in the project files and is now "free" which frameworks will be addressed. I'll lose the output on both, FsUnit and in the next version of NHamcrest.
It's clean to have everything as minimal as possible.

Thanks for pointing out.

@CaptnCodr
Copy link
Member Author

So now, the output is now net6.0 and netstandard2.0 but no NETStandard.Library is explicitly referenced.
We have basically a net6.0 package but have a backward compatibility to netstandard2.0.

Users can simply get the net6.0 library from our package without implementing netstandard2.0 in their project files or consume the netstandard2.0 library when their project is on e.g. net47 or netstandard2.0.

In the end we're just referencing NHamcrest in net6.0 and are getting rid of the NETStandard.Library reference.

@CaptnCodr CaptnCodr changed the title Upgrade NHamcrest & drop netstandard2.0 Upgrade NHamcrest & drop NETStandard.Library Aug 8, 2022
@CaptnCodr
Copy link
Member Author

@sergey-tihon is this ok for you how it looks right now? 🙂

@sergey-tihon
Copy link
Member

LGTM

Thank you @CaptnCodr for this PR and all hard work to port NHamcrest to net6!

@CaptnCodr CaptnCodr merged commit 8d45b18 into fsprojects:master Aug 15, 2022
@CaptnCodr CaptnCodr deleted the feature/nhamcrest-upgrade branch August 15, 2022 14:53
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