castleproject / Windsor

Castle Windsor is a best of breed, mature Inversion of Control container available for .NET
http://www.castleproject.org
Apache License 2.0
1.52k stars 455 forks source link

Drop support for .NET 3.5/4.0 and Silverlight #185

Closed jonorossi closed 7 years ago

jonorossi commented 7 years ago

We've already made the decision to drop all Silverlight support in Windsor v4 following dropping support for Silverlight in Castle Core v4.

I (and others) think it is time we drop support for .NET Framework 3.5 and 4.0 for the next major Windsor version (v4), it is time because they are so old and mostly because it has now become effort to maintain and a lot of work for add .NET Core support while still keeping them working. Most .NET containers have removed support a while ago and today support:

Feel free to jump in either way, however be prepared to put forward a good argument if you believe we shouldn't remove support for .NET 3.5/4.0, Windsor 3.x will always be there for you if you really aren't already on .NET 4.5/4.6.

jonnii commented 7 years ago

Drop support, it's the right thing to do.

ghost commented 7 years ago

Silverlight down (#173, #180 and #184), .NET 3.5 next?

How should we approach this? CMD/MSBuild/CsProj 1 PR and then an experimental PR perhaps starting with one of the test fixtures so we can establish conventions for how we treat things like:

DOTNET35 !(DOTNET35 || SILVERLIGHT) !DOTNET35 DOTNET35 || SILVERLIGHT !DOTNET35 && !CLIENTPROFILE !(SILVERLIGHT || CLIENTPROFILE || DOTNET35)

ghost commented 7 years ago

We have killed off support in the build process for the following:

Now for the arduous task of build flag redux.

ghost commented 7 years ago

Let's start with NET35 @ #195. Will wait till you merge so I can continue without conflicts ...

ghost commented 7 years ago

Given #197, #198, #199

We OK to close this issue @jonorossi ?

jonorossi commented 7 years ago

We OK to close this issue @jonorossi ?

Let's wait until those are merged, I'd like to do a quick check to see if there is anything left after that.

ghost commented 7 years ago

@jonorossi - what still needs to be done here? Can you think of anything I missed?

jonorossi commented 7 years ago

what still needs to be done here? Can you think of anything I missed?

buildscripts/*.nuspec still have old entries. Have you done a final search through all files for "35", "3.5", ...?

ghost commented 7 years ago

You right @jonorossi! There was some guff there ... #206. Will keep hunting and submit more PR's for what I find.

ghost commented 7 years ago

GrepWin for 3.5 = #207

ghost commented 7 years ago

GrepWin for 35 = nil

ghost commented 7 years ago

GrepWin for 4.0 = Question

Here we have an interesting conundrum to do with the tooling for MsBuild.

In buildscripts\build.cmd we are currently using the following path: %windir%\microsoft.net\framework\v4.0.30319\msbuild.exe

This needs to change but we might need to update the build server before I can submit a PR. What do you think @jonorossi? Can you help?

ghost commented 7 years ago

GrepWin for 40 = nil

jonorossi commented 7 years ago

In buildscripts\build.cmd we are currently using the following path: %windir%\microsoft.net\framework\v4.0.30319\msbuild.exe

This needs to change but we might need to update the build server before I can submit a PR.

.NET 4.5 and 4.6 were all in-place upgrades of .NET 4.0 (we just compile against different reference assemblies), so the framework directory is the same.

jonorossi commented 7 years ago

Looks like we are done here. Many thanks @fir3pho3nixx for getting that all sorted.

ghost commented 7 years ago

@jonorossi - No worries 👍