microsoft / TemplateStudio

Template Studio accelerates the creation of new WinUI 3, WPF, and UWP apps using a wizard-based experience.
Other
2.71k stars 461 forks source link

will prism support be dropped from wts? #3068

Open touseefbsb opened 5 years ago

touseefbsb commented 5 years ago

Just found out that prism is officially dropping support for uwp platform ( source : https://github.com/PrismLibrary/Prism/issues/1745 ) So the question is "will windows template studio follow the same path?"

mrlacey commented 5 years ago

We will work with the Prism team to work out the best way forward.

mrlacey commented 5 years ago

Nothing yet on the Template10 site.

SimoneBWS commented 5 years ago

I love and use a lot Prism for WPF. Now I'm starting to write a new UWP app (a sort of porting from WPF to UWP), which MVVM framework do you recommend to use?

mrlacey commented 5 years ago

I love and use a lot Prism for WPF. Now I'm starting to write a new UWP app (a sort of porting from WPF to UWP), which MVVM framework do you recommend to use?

Windows Template Studio does not recommend one framework over another. Multiple options are provided so that people can choose the one that is right for them.
Admittedly, that doesn't help your situation but the answer there is probably "it depends". With the uncertainty over the future support of UWP from Prism (or a direct equivalent) you may want to look at alternatives. The individual features and functionality of Prism that you currently use will play a part in determining which alternatives are most appropriate. (This is part of the reason there's no simple response.)

Perhaps other Prism users who have already made this decision can share their thoughts. Alternatively (or additionally) you may want to also ask this question ("I used Prism for WPF but now want to port to UWP, what should I use?") of the Prism team themselves.

SimoneBWS commented 5 years ago

Thanks for your reply @mrlacey. I'll ask a suggestion to the team, but I hope that Prism for UWP remains supported and mostly aligned (at least in the core parts) with others platforms versions (WPF and Xamarin).

I need more and more to bring large LOB apps (or at least some parts of them) from WPF to UWP, and Prism for WPF is great (in my opinion)!

christiannagel commented 5 years ago

Updating a project generated with Prism to the newest stable version of Prism.Unity (7.2.0.1367) breaks the build. The 7. versions of Prism have dependencies to .NET Core 3 or .NET Framework 4.5, the dependency for UAP v10.0 has been dropped - this is only available in the March-2017 released version 6.3. I think Prism should be dropped from Windows Template Studio, this is not a good experience.

OzBob commented 4 years ago

@christiannagel @bartlannoeye says in the v6 release notes: https://github.com/PrismLibrary/Prism/wiki/Release-Notes---6.0.0 there are many breaking changes upgrading from 5 (the default version in WinTS).

PrismLibrary v6.3 sample https://github.com/PrismLibrary/Prism-Samples-Windows/blob/1e54fa1128accf314cafc9f714f17b7b680c3745/AdventureWorks.Shopper/AdventureWorks.Shopper/AdventureWorks.Shopper.csproj#L360

@mrlacey is upgrading to Prism 6 worth the effort?

bartlannoeye commented 4 years ago

Most breaking changes are for WPF, a few are in the core package (and hit UWP as well), but these aren't to hard to overcome, certainly on a new app. The Prism team has been looking at a way forward for UWP, but it requires quite some effort to do it right.

@christiannagel there's a reason why it's versioned 7.x and not 6.x, see SemVer. I'm sorry you feel this way, but the last version for UWP right now is 6.3, which requires 6.3 for Unity as well.

mrlacey commented 4 years ago

@mrlacey is upgrading to Prism 6 worth the effort?

It depends what you want to do and what you hope to gain from upgrading.

mrlacey commented 4 years ago

I think Prism should be dropped from Windows Template Studio, this is not a good experience.

The uncertainty of UWP support in Prism meant leaving it in was the right choice at the time. If we take it out now it will impact the people who do still choose to use it for new projects or who want to add to previously created projects. I had hoped that by now there would be a way to have Prism support as a separate download within WinTS but the core team have chosen to prioritize other work. As an immediate action, I'm going to add a note to the docs and in app description detailing the situation.

mrlacey commented 3 years ago

Almost one year on and nothing new to add here.

The nearest thing to UWP support that seems forthcoming from the Prism team is support for Uno. While it's possible to use Prism.Uno to just build a UWP app, there is a lot different from the app that WinTS currently generates.

In light of #3753, is it time to revisit the future of Prism within WinTS?

mdtauk commented 3 years ago

So UWP within the context of WinTS means OS/Inbox Xaml and WinUI 2.X.

But PRISM states their Uno version supports WinUI - which I presume is WinUI 3.0. The Open Sourced WinUI 3.0 will support WinUI Win32 and WinUI UWP thought right?

mrlacey commented 3 years ago

So UWP within the context of WinTS means OS/Inbox Xaml and WinUI 2.X.

At the moment there are UWP templates created by WinTS that do not work with WinUI3. These include integration with an old version of Prism, do not have "official UWP support", and have not been added to or updated in over 18 months due to the uncertainty after official Prism support for UWP was removed.

The issue was originally opened to discuss what will happen to the Prism options in the current UWP templates provided by WinTS.

The Prism Uno templates do not target WinUI3 (yet) but if WinTS was to support them I suspect there would be an expectation that it should provide the ability to support producing apps on more than just Windows.

WinTS will be adding templates for apps based on WinUI3 (they're currently in preview via the nightly builds) when it is officially released. Whether and how that includes support for Prism is, AFAIK, still to be determined.

If Prism is to be supported in any form going forward in WinTS there would be a non-insignificant amount of work needed to do this.

There are questions that remain unanswered: