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.06k stars 735 forks source link

[Epic] Breaking changes roundup #8339

Open MartinZikmund opened 2 years ago

MartinZikmund commented 2 years ago

High priority vNext

Low priority

In Progress (has open PR against the feature/breaking-changes branch)

Merged to feature/breaking-changes (these are in Uno 5)

For which Platform:

All

Youssef1313 commented 2 years ago

Consider removing this in the next major release:

https://github.com/unoplatform/uno/blob/4666c66d75ea47c9156ea79c5d1e83465fdf570d/src/SourceGenerators/Uno.UI.SourceGenerators/XamlGenerator/XamlCodeGeneration.cs#L871-L873

Youssef1313 commented 2 years ago

Also https://github.com/unoplatform/uno/blob/master/src/Uno.Foundation/HResult.cs

I think it should be removed. It's unused, and https://docs.microsoft.com/en-us/uwp/api/windows.foundation.hresult?view=winrt-22621 says:

When programming with .NET, this class is hidden

GitHub
uno/HResult.cs at master · unoplatform/uno
Build Mobile, Desktop and WebAssembly apps with C# and XAML. Today. Open source and professionally supported. - uno/HResult.cs at master · unoplatform/uno
HResult Struct (Windows.Foundation) - Windows UWP applications
Represents a Windows Runtime error. .NET When programming with .NET, this type is hidden, and exceptions appear as System.Exception or specific derived exception types. See Remarks.
Youssef1313 commented 2 years ago

It might also be a good idea to not expose HtmlImage publicly

https://github.com/unoplatform/uno/blob/88d7a4024ccdcaa07a6b8cd056ba55ef4e92865e/src/Uno.UI/UI/Xaml/Controls/Image/Image.wasm.cs#L17-L22

It should be used only by Uno, I think

Youssef1313 commented 2 years ago

Also https://github.com/unoplatform/uno/blob/88d7a4024ccdcaa07a6b8cd056ba55ef4e92865e/src/Uno.UI/UI/Xaml/Controls/Control/Control.cs#L997-L998

Youssef1313 commented 2 years ago

We should also delete those:

https://github.com/unoplatform/uno/blob/7cc2df180fb8b5833f3f6e05b50ac8d4ed4a8e99/src/Uno.UWP/Devices/Geolocation/Geolocator.iOSmacOS.cs#L183-L185

They don't match UWP signature and are not implemented properly

Youssef1313 commented 2 years ago

CornerRadius and CornerRadiusProperty should be removed from ElevatedView. See https://github.com/unoplatform/uno/pull/10138#discussion_r996273357

Youssef1313 commented 1 year ago

@MartinZikmund I assume these will go into Uno 5 (next major release)? If so, should we have a branch to work on these earlier?

MartinZikmund commented 1 year ago

@MartinZikmund I assume these will go into Uno 5 (next major release)? If so, should we have a branch to work on these earlier?

I think that is a good idea, let's make PRs for them targeting this branch - https://github.com/unoplatform/uno/tree/dev/5.0-breaking-changes

GitHub
GitHub - unoplatform/uno at dev/5.0-breaking-changes
Build Mobile, Desktop and WebAssembly apps with C# and XAML. Today. Open source and professionally supported. - GitHub - unoplatform/uno at dev/5.0-breaking-changes
jeromelaban commented 1 year ago

For breaking changes let's use a branch named feature/breaking-changes instead, the CI is already setup properly.

Youssef1313 commented 1 year ago

Great. I renamed the branch Martin created: https://github.com/unoplatform/uno/tree/feature/breaking-changes.

I'm going to start working on some of the changes soon.

GitHub
GitHub - unoplatform/uno at feature/breaking-changes
Build Mobile, Desktop and WebAssembly apps with C# and XAML. Today. Open source and professionally supported. - GitHub - unoplatform/uno at feature/breaking-changes