unoplatform / uno

Open-source platform for building cross-platform native Mobile, Web, Desktop and Embedded apps quickly. Create rich, C#/XAML, single-codebase apps from any IDE. Hot Reload included! 90m+ NuGet Downloads!!
https://platform.uno
Apache License 2.0
9.05k stars 734 forks source link

Allow for specifying a version of the SDK different from WinUI #18526

Open jeromelaban opened 1 month ago

jeromelaban commented 1 month ago

What would you like to be added

From @mikernet:

I know that currently Uno.Sdk versioning is strongly tied to Uno version, but would be nice if that wasn't the case. When writing libs you want to target lowest Uno version possible for widest reach, but then you miss out on SDK bug fixes/enhancements/etc, and you can't use the Uno SDK with glorious single-project at all if you want to target version < 5.2.

Any chance that the two might get decoupled to allow using newer SDK with older Uno versions?

Why is this needed

No response

For which platform

No response

Anything else we need to know?

No response

jeromelaban commented 1 month ago

We cannot do this at this time, because the contents of the uno.sdk are linked to the uno repository, and we need those two decoupled for providing all the versions of dependencies at once. Disabling implicit packages does not help either, as we have an explicit check to ensure both are aligned.

But you can use newer MS SDKs to target older things just fine, so I feel like there's gotta be some way to decouple those things.

At this time, we can't decouple it. We tried, but there's no way to do it unless msbuild changes, mostly because we need to build the uno.sdk separate from uno.