tjscience / RoboSharp

RoboSharp is a .NET wrapper for the awesome Robocopy windows application.
MIT License
215 stars 67 forks source link

Deprecate Net452 - Replace with Net462 #210

Open RFBomb opened 4 months ago

RFBomb commented 4 months ago

@PCAssistSoftware - You recently commented that your projects are using net4.8, which uses the Net452 dll (which i tested via a unit test and verified that is correct). Net452 has been out of support since 2022, and there are quite a few workarounds specific to net452 in the library, as it does not support NetStandard2.0 apis.

As such, I'm thinking that the project should drop support for net452, and replace with net462 per the lifecycle page. I can target net462 in the upcoming #209 as well, so that net452 gets one last bug-fixed release before dropping support entirely.

thoughts?

PCAssistSoftware commented 4 months ago

That is a really good idea and I completely agree

PCAssistSoftware commented 4 months ago

could perhaps jump straight to 4.7.2 rather than 4.6.2 as per your title? then be even more ahead of the curve / end of support etc

RFBomb commented 4 months ago

I thought about that, but my reasoning for 462 was that 462 was the recommended version from MS to upgrade to after the release of NetStandard2.0. Targeting 4.6.2 also covers 4.7, 4.7.1, and 4.7.2. And since 4.6.2 is 'supported until 2027', which the other 3 having no current end date, I figured it was easiest to target 462.

I did some benchmarks with 472, and found negligible differences in what I was benchmarking compared to 462, but net48 had some slight improvements (mostly still margin of error though in my opinion), which is why I target net462 and net48 in #209's PR, and not 472.

In any case, when the day comes in 2027, whoever is maintaining this by then can easily just change the target

PCAssistSoftware commented 4 months ago

That all makes perfect sense to me :)