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

[Wizard][Lottie] Lottie is added to csproj without decidision while Project generation? #19618

Closed
DevTKSS opened this issue Mar 2, 2025 · 5 comments
Labels
difficulty/tbd Categorizes an issue for which the difficulty level needs to be defined. kind/bug Something isn't working triage/untriaged Indicates an issue requires triaging or verification

Comments

@DevTKSS
Copy link
Contributor

DevTKSS commented Mar 2, 2025

Current behavior

For some reason the Lottie feature is added to the csproj file using the Visual Studio 2022 wizard, but there was no option to not require it? Checking out the template.json file in the uno.templates repository, its added if there is (from the cmd which seems to be internally used) listed this clearly OR if we require toolkit and fluent?

Expected behavior

Checking out the uno gallery, the only reason we might want this, would be animations, but in this case it would make lot more sense to be able to explicitly choose it in my opinion, but not add it by default

How to reproduce it (as minimally and precisely as possible)

create a new uno application and add toolkit and fluent theme then you should get this by default for no ovious reason

Workaround

ignore it to be imported in features, but it seems to just add not needed overhead

Works on UWP/WinUI

Yes

Environment

Uno.WinUI / Uno.WinUI.WebAssembly / Uno.WinUI.Skia

NuGet package version(s)

uno.sdk 5.6.37

Affected platforms

WebAssembly, Android, iOS, Mac Catalyst, Skia (WPF), Skia (Linux X11), Skia (macOS), Skia (Linux Framebuffer), Skia (GTK), Windows (WinAppSDK), Build tasks

IDE

Visual Studio 2022

IDE version

17.13.1

Relevant plugins

No response

Anything else we need to know?

No response

@DevTKSS DevTKSS added difficulty/tbd Categorizes an issue for which the difficulty level needs to be defined. kind/bug Something isn't working triage/untriaged Indicates an issue requires triaging or verification labels Mar 2, 2025
@jeromelaban
Copy link
Member

Lottie is always included because it is required to render the progress ring control. Which issue did you find with having that package included?

@jeromelaban jeromelaban added the triage/needs-information Indicates an issue needs more information in order to work on it. label Mar 3, 2025
@DevTKSS
Copy link
Contributor Author

DevTKSS commented Mar 3, 2025

maybe it would be possible to make the shell view content added by willingly selecting the lottie package (and then have this shown in the new created project other than currently having to enable this in some way) and otherwise this would just not be 1. included without selecting it and 2. the shell user control would not have this not even used by default control?
in generall, yes, it might "only" be that package be added in the background which might never been used, just because the developer do not even want this progressring control (or other thing which are requiring lottie)
but on the other hand, a good production reason to changing this would be, this is not needed overhead and storage taken by the app with including an unrequired package & code.
That is the same reasoning you could tell for "why shouldnt we add one of the other, or just all of the uno features in there by default"
And if there would be the decision, just to leave this this way, I would prefer, to at least clearly tell that reason in the dotnet new section & wizard so its just not "suddenly" there and no one (beside the full professional uno developers) might even know why.

@github-actions github-actions bot removed the triage/needs-information Indicates an issue needs more information in order to work on it. label Mar 3, 2025
@jeromelaban
Copy link
Member

We're taking the approach of including packages for the default scenarios to be as easy as possible. At this time, this package is not particularly large, and it's not impacting the download size much. It's also removed at runtime if it's not used.

Which wizard section are you talking about?

@jeromelaban jeromelaban added the triage/needs-information Indicates an issue needs more information in order to work on it. label Mar 3, 2025
@DevTKSS
Copy link
Contributor Author

DevTKSS commented Mar 4, 2025

Screenshot_2025-03-04-12-24-09-587_com.android.chrome.jpg

The Lottie option is completely missing in the documentation here Visual Studio Wizard

Also not listed in the extensions overview:
https://platform.uno/docs/articles/external/uno.extensions/doc/ExtensionsOverview.html

Only place where this is mentioned is in https://platform.uno/docs/articles/features/Lottie.html

And the gallery app.

@github-actions github-actions bot removed the triage/needs-information Indicates an issue needs more information in order to work on it. label Mar 4, 2025
@jeromelaban
Copy link
Member

Right, this is expected. Lottie support is defined here:

<ItemGroup Condition="$(UnoFeatures.Contains(';lottie;')) OR $(UnoFeatures.Contains(';material;')) OR $(UnoFeatures.Contains(';cupertino;')) OR $(IsDesktop) == 'true'">
<_UnoProjectSystemPackageReference Include="Uno.WinUI.Lottie" ProjectSystem="true" />
</ItemGroup>

There's no option needed in the wizard to include it at this time, and the documentation is explaining what needs to be done, as well as a specialized build error.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
difficulty/tbd Categorizes an issue for which the difficulty level needs to be defined. kind/bug Something isn't working triage/untriaged Indicates an issue requires triaging or verification
Projects
None yet
Development

No branches or pull requests

2 participants