[Spec] Naming updates · Issue #334 · dotnet/maui (original) (raw)
Naming Updates
Current Name | Old Repository Location | New Name(space) | New Repository Location | Package Names |
---|---|---|---|---|
Xamarin.Forms | src/Forms/src/ | Microsoft.Maui.Controls | src/Controls/src/ | Microsoft.Maui.Controls |
Xamarin.Forms (test) | src/Forms/test/ | Microsoft.Maui.Controls | src/Controls/test/ | N/A |
Xamarin.Forms.Maps | src/Controls/Maps/src | Microsoft.Maui.Controls.Maps | src/Controls/Maps/src | Microsoft.Maui.Controls.Maps |
Xamarin.Forms.DualScreen | src/Controls/DualScreen | Microsoft.Maui.Controls.DualScreen | src/Controls/DualScreen | Microsoft.Maui.Controls.DualScreen |
Xamarin.Essentials | src/Essentials | Microsoft.Maui.Essentials | src/Essentials | Microsoft.Maui.Essentials |
Xamarin.Platform.Handlers | src/Platform.Handlers | Microsoft.Maui | src/Maui | Microsoft.Maui |
Xamarin.Forms.Platform.* | src/Platform.Renderers | Microsoft.Maui.Controls.Compatibility.* | src/Compatibility/Renderers | Microsoft.Maui.Controls.Compatibility |
Xamarin.Forms.Material (old) | src/Controls/Material | Microsoft.Maui.Controls.Compatibility.Material | src/Compatibility/Material | Microsoft.Maui.Controls.Compatibility.Material |
Xamarin.Forms.Material (new) | src/Controls/Visual | Microsoft.Maui.Graphics | src/Graphics | Microsoft.Maui.Graphics |
Additional library clarifications
Xamarin.Forms
All libraries that are being brought forward (Maps/DualScreen/Xamarin.Forms) will just become Microsoft.Maui.Controls
Xamarin.Forms.Platform.(iOS/Android/etc..)
These will all move to a Microsoft.Maui.Controls.Compatibility
and will be packaged into compatibility packages that are built against NET6. This will allow users to still use older style renderers if they have custom renderers. Legacy renderers will shim into the handler architecture with minimal changes
Xamarin.Forms.Material
The material libraries are going to be replaced with drawn controls so the current renderers using google sdks aren't going to be brought forward to Maui. The existing ones will be packaged into a Microsoft.Maui.Controls.Compatibility.Material
package
The new Material
will just be a set of handlers that can be used by other UI Frameworks and will have no dependency on Forms
. Currently we are calling this library Microsoft.Maui.Graphics
but that name is subject to change
Package Dependency Tree
- Microsoft.Maui.Controls
- Microsoft.Maui.Essentials
- Microsoft.Maui
- Microsoft.Maui.Controls.Maps
- Microsoft.Maui.Controls
- Microsoft.Maui
- Microsoft.Maui.Controls.DualScreen
- Microsoft.Maui.Controls
- Microsoft.Maui
- Microsoft.Maui.Essentials
- Microsoft.Maui
- Microsoft.Maui.Controls.Material
- https://github.com/jsuarezruiz/GraphicsControls
- Microsoft.Maui
- Microsoft.Maui.Controls.Compatibility
- Microsoft.Maui
- Microsoft.Maui.Essentials
- Microsoft.Maui.Controls.Compatibility.Material
- Microsoft.Maui.Controls
- Microsoft.Maui - Microsoft.Maui