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 .NET Core 3.1 to .NET 5 #8650

Closed
crutkas opened this issue Dec 17, 2020 · 19 comments
Closed

Upgrade .NET Core 3.1 to .NET 5 #8650

crutkas opened this issue Dec 17, 2020 · 19 comments
Assignees
Labels
Area-Setup/Install Refers to installation mechanism Cost-Large Large work item - 3+ days worth of work (chances are needs to be broken down) External Dependency-WinUI 3 Dependency on WinUI Resolution-Fix Committed Fix is checked in, but it might be 3-4 weeks until a release.

Comments

@crutkas
Copy link
Member

crutkas commented Dec 17, 2020

With ARM64 #490 support, we need to upgrade from .NET Core 3.1 to .NET 5 for support with WPF ARM64.

This should be far easier of an upgrade now we're on Core.

@crutkas crutkas added this to the 2020 Stability Release milestone Dec 17, 2020
@crutkas crutkas mentioned this issue Dec 17, 2020
13 tasks
@crutkas
Copy link
Member Author

crutkas commented Dec 17, 2020

@enricogior adding this to .31/.33 but this work needs to be done for ARM64

@pb5050
Copy link

pb5050 commented Dec 18, 2020

good job crutkas! thank you so much for the progress on this i am just waiting for this lol they released 64x emulation but the .svg previewer doesn't work probably because its iearly staged of 64X emulation for SPX, but im not the only person waiting for this trsut me just wanted to let you know i am grateful to see progress!! :)

i wish i knew how to code im a rookie lol because i would love to help you if i knew wtf i doin lol anyways keep it up! just thought id let you know people are checking on this heheh

@pb5050
Copy link

pb5050 commented Dec 18, 2020

btw idk if u have a SPX but i can honestly say its kinda crazy how snappy things are when running a native ARM64 VS 86X or 64X i didnt ever notice this till one day i realized i was using VS code 86X for weeks ....... Never the less i swapped it for the arm version holy shit BIIIIG difference lol

@enricogior enricogior added the Area-Setup/Install Refers to installation mechanism label Jan 3, 2021
@enricogior enricogior added the Cost-Large Large work item - 3+ days worth of work (chances are needs to be broken down) label Mar 2, 2021
@davidegiacometti
Copy link
Collaborator

I was trying to port PT utilities to .NET 5 and even if in-depth tests are required, everything seems to work as expected.
Since there is no support for XAML island in .NET 5, settings UI can't be ported.
Should we wait for WinUI 3 to work on this?

An hybrid release with utilities in .NET 5 and settings UI in .NET Core 3.1 will require double runtimes installed and double checks during installation.

@crutkas
Copy link
Member Author

crutkas commented Mar 2, 2021

We will need to wait. I don’t want to ship with two runtimes and island tooling is tied tightly to core 3.1

@crutkas crutkas added Status-Blocked We can't make progress due to a dependency or issue External Dependency-WinUI 3 Dependency on WinUI labels Mar 2, 2021
@Hammerfest
Copy link

Hammerfest commented Mar 3, 2021

Adding the keyword
FRAMEWORK
So that way other folks like myself who search for .net framework will land here instead of making duplicate postings :(

PowerToys is only utility still requiring 3.1.x out of my used utility's, having both frameworks installed not so bad considering c++ redistributables required (for other stuff), will keep an eye/sub on this thread.

(Should be noted, impacts x86 and x64 not just ARM/64)

@crutkas
Copy link
Member Author

crutkas commented Mar 3, 2021

@Hammerfest this is where stuff gets super nuanced. So everyone is aware, there is such a thing as the .NET Framework, which is deemed legacy at this point and we've fully migrated off and onto the more modern .NET Core, soon to be 5/6

.NET Framework 4.7.x -> .NET Core 3.1 -> .NET 5 -> .NET 6

After a lot of investigation, we cannot actually migrate due to our settings app leverages UWP Islands. The tooling to enable this is tied closely to .NET Core 3.1 with a WPF wrapper like we have. We're chatting how we can solve this and provide guidance for anyone affected

@Hammerfest
Copy link

Hammerfest commented Mar 3, 2021

@crutkas
Yep, myself and many other tech's still call it .net core framework mainly because it is a framework yet not called ".net framework" :D
Else ya, they took off the framework label and added core but kept .net which sure, for anyone new works well. (super nuanced is right)

Ya I read up on the settings roadblock and the WinUI3 stall, all good.

@Balkoth
Copy link

Balkoth commented Jun 30, 2021

Is there anything happening?

@crutkas
Copy link
Member Author

crutkas commented Jun 30, 2021

@mykhailopylyp is investigating this work right now with PT Run and trying to understand the scope of work here.

@davidegiacometti davidegiacometti changed the title Upgrade .NET Core 3.1 to .NET 5 Upgrade .NET Core 3.1 to .NET 6 Nov 30, 2021
@davidegiacometti
Copy link
Collaborator

Title updated to .NET 6.
@crutkas is there a plan for port every single utility to .NET 6 and settings to WinUI3?
Work has started only for launcher.

@crutkas
Copy link
Member Author

crutkas commented Dec 1, 2021

The goal is .net 6 for everything that doesn't have an island. Settings due to xaml island is stuck on .net core 3.1 so to migrate / upgrade, we need WinUI3

I need to get the signing pipeline transferred over to the new build server before the migration can go live however since the current build server that does the signing doesn't have .net 5 nor 6 on the agent.

@davidegiacometti
Copy link
Collaborator

@crutkas are we ready to port to .NET 6? Any project up for grabs?

@crutkas
Copy link
Member Author

crutkas commented Jan 7, 2022

Let’s do a small one first to test. Color picker comes to mind honestly.

Want to verify CI / signing agents and installer dependency

@crutkas
Copy link
Member Author

crutkas commented Jan 7, 2022

@stefansjfw any objections as you were going to start on this soon too

@crutkas
Copy link
Member Author

crutkas commented Jan 7, 2022

Also remember settings app will have to be core 3.1 until we migrate off xaml islands

@crutkas crutkas changed the title Upgrade .NET Core 3.1 to .NET 6 Upgrade .NET Core 3.1 to .NET 5 Jan 7, 2022
@crutkas
Copy link
Member Author

crutkas commented Jan 8, 2022

@stefansjfw don't hate me. Lets do 5 since 6 requires forces some requirements we may not be ready for from a pipeline agent stance. Lets get stuff migrated to 5 and then 6 should be easy upgrade for projects

@stefansjfw stefansjfw self-assigned this Jan 10, 2022
@stefansjfw
Copy link
Collaborator

No problem :)

@crutkas crutkas removed the Status-Blocked We can't make progress due to a dependency or issue label Jan 10, 2022
@stefansjfw stefansjfw added the Resolution-Fix Committed Fix is checked in, but it might be 3-4 weeks until a release. label Jan 18, 2022
@crutkas
Copy link
Member Author

crutkas commented Jan 31, 2022

The was fixed in in 0.55. Head over to https://aka.ms/installpowertoys to try it out

@crutkas crutkas closed this as completed Jan 31, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-Setup/Install Refers to installation mechanism Cost-Large Large work item - 3+ days worth of work (chances are needs to be broken down) External Dependency-WinUI 3 Dependency on WinUI Resolution-Fix Committed Fix is checked in, but it might be 3-4 weeks until a release.
Projects
None yet
Development

No branches or pull requests

7 participants