unoplatform / uno

Build Mobile, Desktop and WebAssembly apps with C# and XAML. Today. Open source and professionally supported.
https://platform.uno
Apache License 2.0
8.45k stars 685 forks source link

fix: Adjust desktop hot load under linux #16509

Closed jeromelaban closed 2 weeks ago

jeromelaban commented 2 weeks ago

This change ensures that delta updates do not fail on missing assemblies, which can happen when performing HR reload on linux and HR picks up WPF assemblies that are not loaded in the current process.

jeromelaban commented 2 weeks ago

@mergifyio backport release/stable/5.2

mergify[bot] commented 2 weeks ago

backport release/stable/5.2

✅ Backports have been created

* [#16511 fix: Adjust desktop hot load under linux (backport #16509)](https://github.com/unoplatform/uno/pull/16511) has been created for branch `release/stable/5.2`
unodevops commented 2 weeks ago

🤖 Your WebAssembly Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-16509/index.html

nventive-devops commented 2 weeks ago

The build 123177 found UI Test snapshots differences: android-28-net7: 26, android-28-net7-Snap: 54, ios: 186, ios-Snap: 1053, skia-gtk-screenshots: 26, skia-linux-screenshots: 40, skia-windows-screenshots: 36, wasm: 75, wasm-automated-net7.0-UWP-Default-automated: 29, wasm-automated-net7.0-UWP-RuntimeTests-0: 0, wasm-automated-net7.0-UWP-RuntimeTests-1: 0, wasm-automated-net7.0-UWP-RuntimeTests-2: 0, wasm-automated-net7.0-WinUI-Benchmarks-automated: 0, wasm-automated-net7.0-WinUI-RuntimeTests-0: 0, wasm-automated-net7.0-WinUI-RuntimeTests-1: 0, wasm-automated-net7.0-WinUI-RuntimeTests-2: 1

Details * `android-28-net7`: **26** changed over 829
🚨🚨 Comparison Details (first 20) 🚨🚨 - `FocusManager_GetFocusedElement_TextBoxMultiLine_Validation_Uno_UI_Samples_Content_UITests_FocusTests_FocusManager_GetFocus_Automated` - `Focus_Programmatic_UITests_Windows_UI_Xaml_Controls_TextBox_TextBox_Focus_Programmatic` - `ProgressRing_IsEnabled_Running_UITests_Windows_UI_Xaml_Controls_ProgressRing_WindowsProgressRing_GH1220` - `Pivot_Non_PivotItem_Items_UITests_Shared_Windows_UI_Xaml_Controls_Pivot_Pivot_CustomContent_Automated` - `WebView_NavigateToAnchor_Initial` - `When_Parent_PointerMoved_After_drag_on_non-scrolling_ScrollViewer` - `When_Parent_PointerMoved_After_drag_on_ScrollViewer_-_touch` - `Detereminate_ProgressRing_Validation50_[#FF0000_#008000_#008000_#FF0000]_Progress-Ring-Value-50` - `NativeCommandBar_Size_Uno_UI_Samples_Content_UITests_CommandBar_CommandBar_Dynamic` - `When_BitmapIcon_Generic_UITests_Shared_Windows_UI_Xaml_Controls_BitmapIconTests_BitmapIcon_Generic` - `Detereminate_ProgressRing_Validation25_[#FF0000_#008000_#FF0000_#FF0000]_Progress-Ring-Value-25` - `DecimalFormatterTest_UITests_Shared_Microsoft_UI_Xaml_Controls_NumberBoxTests_NumberBoxPage` - `Flyout_ShowAt_Window_Content_UITests_Windows_UI_Xaml_Controls_FlyoutTests_Flyout_ShowAt_Window_Content` - `NavigateBackAndForthBetweenMenuItemsAndSettings_Fluent_SamplesApp_Samples_Microsoft_UI_Xaml_Controls_NavigationViewTests_FluentStyle_FluentStyle_NavigationViewSample` - `ProgressRing_Visibility_Collapsed_UITests_Windows_UI_Xaml_Controls_ProgressRing_WindowsProgressRing_GH1220` - `ListView_SelectedItems_SamplesApp_Windows_UI_Xaml_Controls_ListView_ListViewSelectedItems` - `SelectionTest_UITests_Microsoft_UI_Xaml_Controls_RadioButtonsTests_RadioButtonsPage` - `TextBox_IsReadOnly_AcceptsReturn_Test_UITests_Shared_Windows_UI_Xaml_Controls_TextBoxTests_TextBox_IsReadOnly_AcceptsReturn` - `UpDownEnabledTest_UITests_Shared_Microsoft_UI_Xaml_Controls_NumberBoxTests_NumberBoxPage` - `When_InListView_after_scroll`
* `android-28-net7-Snap`: **54** changed over 1062
🚨🚨 Comparison Details (first 20) 🚨🚨 - `Icons_UITests_Microsoft_UI_Xaml_Controls_ImageIconTests_ImageIconPage_UITests_Microsoft_UI_Xaml_Controls_ImageIconTests_ImageIconPage` - `Icons_UITests_Shared_Windows_UI_Xaml_Controls_BitmapIconTests_BitmapIcon_Foreground_UITests_Shared_Windows_UI_Xaml_Controls_BitmapIconTests_BitmapIcon_Foreground` - `MediaPlayerElement_Using_3gp_UITests_Shared_Windows_UI_Xaml_Controls_MediaPlayerElement_MediaPlayerElement_3gp_Extension` - `MediaPlayerElement_Using_flv_UITests_Shared_Windows_UI_Xaml_Controls_MediaPlayerElement_MediaPlayerElement_Flv_Extension` - `MediaPlayerElement_Using_mkv_UITests_Shared_Windows_UI_Xaml_Controls_MediaPlayerElement_MediaPlayerElement_Mkv_Extension` - `Image_UITests_Windows_UI_Xaml_Controls_ImageTests_SvgImageSource_FromMsAppData_UITests_Windows_UI_Xaml_Controls_ImageTests_SvgImageSource_FromMsAppData` - `Progress_UITests_Microsoft_UI_Xaml_Controls_ProgressRing_WinUIDeterminateProgressRing_UITests_Microsoft_UI_Xaml_Controls_ProgressRing_WinUIDeterminateProgressRing` - `Gesture_Recognizer_Pointer_Events_test_bench_UITests_Shared_Windows_UI_Input_GestureRecognizer_PointersEvents` - `Image_ImageSourceStream_Uno_UI_Samples_UITests_ImageTestsControl_ImageSourceStream` - `ListView_HorizontalListViewGrouped_SamplesApp_Windows_UI_Xaml_Controls_ListView_HorizontalListViewGrouped` - `ListView_HorizontalListViewTest_SamplesApp_Windows_UI_Xaml_Controls_ListView_HorizontalListViewTest` - `NavigationView_MUXControlsTestApp_NavigationViewRS4Page_MUXControlsTestApp_NavigationViewRS4Page` - `ListView_HorizontalListView_Templates_SamplesApp_Windows_UI_Xaml_Controls_ListView_HorizontalListView_Templates` - `ListView_ListView_Aligned_Left_UITests_Shared_Windows_UI_Xaml_Controls_ListView_ListView_Aligned_Left` - `MediaPlayerElement_MediaPlayerElement_Stretch_Fill_UITests_Shared_Windows_UI_Xaml_Controls_MediaPlayerElement_MediaPlayerElement_Stretch_Fill` - `MediaPlayerElement_Mini_player_UITests_Shared_Windows_UI_Xaml_Controls_MediaPlayerElement_MediaPlayerElement_Minimal` - `MediaPlayerElement_Sources_UITests_Shared_Windows_UI_Xaml_Controls_MediaPlayerElement_MediaPlayerElement_Sources` - `Pointers_UITests_Windows_UI_Input_PointersTests_HitTest_Control_UITests_Windows_UI_Input_PointersTests_HitTest_Control` - `TeachingTip_UITests_Microsoft_UI_Xaml_Controls_TeachingTipTests_TeachingTipPage_UITests_Microsoft_UI_Xaml_Controls_TeachingTipTests_TeachingTipPage` - `BreadcrumbBar_MUXControlsTestApp_BreadcrumbBarPage_MUXControlsTestApp_BreadcrumbBarPage`
* `ios`: **186** changed over 271
🚨🚨 Comparison Details (first 20) 🚨🚨 - `ComboBoxTests_ToggleDisabled_ComboBox_Enabled` - `FocusManager_FocusDirection_Down_Validation_Uno_UI_Samples_Content_UITests_FocusTests_FocusManager_FocusDirection` - `Image_Margins_Identical_UITests_Windows_UI_Xaml_Controls_ImageTests_Image_Margins` - `Large_Image_With_Margin_UITests_Windows_UI_Xaml_Controls_ImageTests_Image_Margin_Large` - `Screenshots_Image_Stretch_Alignment_Taller_Mode-3` - `ScrollViewer_Removed_And_Added_Initial-Scrolled` - `ScrollViewer_Removed_And_Added_Initial` - `TextBox_Foreground_Color_Changing_Initial` - `TextBox_Foreground_Color_Changing_UITests_Windows_UI_Xaml_Controls_TextBox_TextBox_Foreground_Changing` - `UpDownEnabledTest_UITests_Shared_Microsoft_UI_Xaml_Controls_NumberBoxTests_NumberBoxPage` - `UpDownTest_UITests_Shared_Microsoft_UI_Xaml_Controls_NumberBoxTests_NumberBoxPage` - `ComboBoxTests_ToggleDisabled_ComboBox_Disabled` - `FocusManager_FocusDirection_Previous_Validation_Uno_UI_Samples_Content_UITests_FocusTests_FocusManager_FocusDirection` - `Image_Source_Nullify_image_source_nullify_loaded` - `ListView_ObservableCollection_Creation_Count_Removed_above` - `NativeCommandBar_Automated_UITests_Windows_UI_Xaml_Controls_CommandBar_CommandBar_Native_With_Content` - `Screenshots_Image_Stretch_Alignment_Bigger_Mode-0` - `Screenshots_Image_Stretch_Alignment_Bigger_Mode-1` - `When_ExtendedSelectionWithoutItemClick_Then_PointersEvents_UITests_Windows_UI_Xaml_Controls_ListView_ListView_Selection_Pointers` - `When_FontWeight_Changed_UITests_Shared_Windows_UI_Xaml_Controls_TextBlockControl_TextBlock_FontWeight_Dynamic`
* `ios-Snap`: **1053** changed over 1053
🚨🚨 Comparison Details (first 20) 🚨🚨 - `Animations_DoubleAnimation_opacity_final_state_UITests_Windows_UI_Xaml_Media_Animation_DoubleAnimation_FinalState_Opacity` - `Animations_UITests_Windows_UI_Xaml_Media_Animation_ColorAnimation_Background_UITests_Windows_UI_Xaml_Media_Animation_ColorAnimation_Background` - `AutoSuggestBox_UITests_Shared_Windows_UI_Xaml_Controls_AutoSuggestBoxTests_BasicAutoSuggestBox_UITests_Shared_Windows_UI_Xaml_Controls_AutoSuggestBoxTests_BasicAutoSuggestBox` - `Border_AutoBorderStretchwithtopmargin_Uno_UI_Samples_UITests_BorderTestsControl_AutoBorderStretchwithtopmargin` - `Border_Border_CornerRadius_with_Opacity_Uno_UI_Samples_UITests_BorderTestsControl_Border_CornerRadius_with_Opacity` - `Border_Simple_with_Radius_Uno_UI_Samples_UITests_BorderTestsControl_Simple_with_Radius` - `Brushes_GenericApp_Views_Content_UITests_ImageBrushTestControl_BorderImageBrushRelativeTransform_GenericApp_Views_Content_UITests_ImageBrushTestControl_BorderImageBrushRelativeTransform` - `Brushes_ImageBrushWithScaleTransform_Uno_UI_Samples_UITests_ImageBrushTestControl_ImageBrushWithScaleTransform` - `Brushes_UITests_Shared_Windows_UI_Xaml_Media_ImageBrushTests_ImageBrush_SameWithDelay_UITests_Shared_Windows_UI_Xaml_Media_ImageBrushTests_ImageBrush_SameWithDelay` - `Brushes_UITests_Windows_UI_Xaml_Media_AcrylicBrushTests_BasicAcrylicBrushTest_UITests_Windows_UI_Xaml_Media_AcrylicBrushTests_BasicAcrylicBrushTest` - `Buttons_Hyperlink_Button_Uno_UI_Samples_Content_UITests_ButtonTestsControl_Hyperlink_Button` - `Buttons_Hyperlink_CanExecute_False_nVentive_Umbrella_Views_UI_Samples_Content_UITests_ButtonTestsControl_Hyperlink_CanExecute_False` - `Clipping_SamplesApp_Windows_UI_Xaml_Clipping_DoubleAnimationClipping_SamplesApp_Windows_UI_Xaml_Clipping_DoubleAnimationClipping` - `Clipping_SamplesApp_Windows_UI_Xaml_Clipping_PanelChildrenClipping_SamplesApp_Windows_UI_Xaml_Clipping_PanelChildrenClipping` - `ComboBox_ComboBox_NativePopup_SamplesApp_Wasm_Windows_UI_Xaml_Controls_ComboBox_ComboBox_NativePopup` - `ComboBox_ComboBox_NoDataContext_UITests_Shared_Windows_UI_Xaml_Controls_ComboBox_ComboBox_NoDataContext` - `ContentControl_ContentControl_DefaultText_Uno_UI_Samples_Content_UITests_ContentControlTestsControl_ContentControl_DefaultText` - `ContentControl_ContentControl_FindName_Uno_UI_Samples_Content_UITests_ContentControlTestsControl_ContentControl_FindName` - `Default_UITests_Toolkit_ElevatedView_Levels_UITests_Toolkit_ElevatedView_Levels` - `Default_UITests_Toolkit_ElevatedView_Tester_UITests_Toolkit_ElevatedView_Tester`
* `skia-gtk-screenshots`: **26** changed over 2180
🚨🚨 Comparison Details (first 20) 🚨🚨 - `ColorPickerSample.png` - `XamlRoot_Properties.png-dark` - `XamlRoot_Properties.png` - `PanelImageBrush.png` - `Using .flv.png-dark` - `Using .flv.png` - `Using .mkv.png-dark` - `Using .mkv.png` - `ColorPickerSample.png-dark` - `Path_Geometries.png-dark` - `Path_Geometries.png` - `UniformAlignmentCenterInDoubleStackPanelWebUri.png-dark` - `UniformAlignmentCenterInDoubleStackPanelWebUri.png` - `ImageInStackPanel.png-dark` - `ImageInStackPanel.png` - `Mini player.png-dark` - `Mini player.png` - `CalendarView_Theming.png-dark` - `CalendarView_Theming.png` - `UIElement_ContextFlyout.png-dark`
* `skia-linux-screenshots`: **40** changed over 2180
🚨🚨 Comparison Details (first 20) 🚨🚨 - `BorderImageBrush.png` - `ImageInStackPanel.png-dark` - `ImageInStackPanel.png` - `Image_UseTargetSize.png-dark` - `Image_UseTargetSize.png` - `CalendarView_Theming.png-dark` - `CalendarView_Theming.png` - `Ellipse.png-dark` - `Ellipse.png` - `BorderImageBrush.png-dark` - `ImageBrush_SameWithDelay.png-dark` - `ImageBrush_SameWithDelay.png` - `ImagesInlineInFlipView.png-dark` - `ImagesInlineInFlipView.png` - `ImageBrushInList.png-dark` - `ImageBrushInList.png` - `PanelImageBrush.png-dark` - `PanelImageBrush.png` - `MediaPlayerElement_Stretch_Fill.png-dark` - `MediaPlayerElement_Stretch_Fill.png`
* `skia-windows-screenshots`: **36** changed over 2180
🚨🚨 Comparison Details (first 20) 🚨🚨 - `CalendarView_Theming.png` - `Ellipse.png-dark` - `Ellipse.png` - `CalendarView_Theming.png-dark` - `BorderImageBrush.png-dark` - `ImageInStackPanel.png-dark` - `ImageInStackPanel.png` - `Image_UseTargetSize.png-dark` - `Image_UseTargetSize.png` - `ImagesInlineInFlipView.png-dark` - `ImagesInlineInFlipView.png` - `BorderImageBrush.png` - `ImageIconPage.png-dark` - `ImageIconPage.png` - `Native.png-dark` - `Native.png` - `Image_Stretch_None.png-dark` - `Image_Stretch_None.png` - `Rectangle.png-dark` - `Rectangle.png`
* `wasm`: **75** changed over 1044
🚨🚨 Comparison Details (first 20) 🚨🚨 - `UITests.Shared.Windows_UI_Xaml_Controls.CommandBar.CommandBar_Xaml_Automated` - `GenericApp.Views.Content.UITests.Animations.DoubleAnimationUsingKeyFrames_TranslateX` - `GenericApp.Views.Content.UITests.Animations.DoubleAnimation_TranslateX` - `SamplesApp.Windows_UI_Xaml_Controls.ListView.ListViewSelectedItems` - `UITests.Shared.Windows_UI_Xaml_Controls.AutoSuggestBoxTests.AutoSuggestBox_Keyboard` - `UITests.Shared.Windows_UI_Xaml_Controls.AutoSuggestBoxTests.BasicAutoSuggestBox` - `UITests.Shared.Windows_UI_Xaml_Controls.NavigationViewTests.NavigationView_TopNavigation` - `UITests.Shared.Windows_UI_Xaml_Controls.PasswordBoxTests.PasswordBoxPage` - `UITests.Shared.Windows_UI_Xaml_Controls.MediaPlayerElement.MediaPlayerElement_Mkv_Extension` - `UITests.Shared.Windows_UI_Xaml_Controls.MediaPlayerElement.MediaPlayerElement_Mov_Extension` - `UITests.Shared.Windows_UI_Xaml_Controls.MediaPlayerElement.MediaPlayerElement_Ogg_Extension` - `UITests.Shared.Windows_UI_Xaml_Controls.MediaPlayerElement.MediaPlayerElement_Stretch_Fill` - `Uno.UI.Samples.Content.UITests.Animations.DoubleAnimation_BeginTime` - `UITests.Windows_UI_ViewManagement.ApplicationViewSizing` - `Uno.UI.Samples.Content.UITests.Animations.DoubleAnimation_Cumulative` - `Uno.UI.Samples.Content.UITests.DoubleAnimationTestsControl` - `UITests.Windows_UI_Xaml.ApplicationTests.Given_Application` - `MUXControlsTestApp.NavigationViewItemTemplatePage` - `SamplesApp.Windows_UI_Xaml_Controls.ListView.ListView_Changing_Text` - `UITests.Windows_UI_Xaml_Controls.ImageTests.SvgImageSource_Basic`
* `wasm-automated-net7.0-UWP-Default-automated`: **29** changed over 1961
🚨🚨 Comparison Details (first 20) 🚨🚨 - `Brushes_BorderImageBrush_Uno_UI_Samples_UITests_ImageBrushTestControl_BorderImageBrush` - `Default_StrokeThickness_MyLine_0_StrokeThickness` - `Default_SamplesApp_Wasm_Windows_UI_Xaml_Controls_ListView_ListView_IsSelected_SamplesApp_Wasm_Windows_UI_Xaml_Controls_ListView_ListView_IsSelected` - `ListView_ListViewSelectedItems_SamplesApp_Windows_UI_Xaml_Controls_ListView_ListViewSelectedItems` - `Brushes_Uno_UI_Samples_UITests_ImageBrushTestControl_Ellipse_Uno_UI_Samples_UITests_ImageBrushTestControl_Ellipse` - `ListView_SelectedItems_SamplesApp_Windows_UI_Xaml_Controls_ListView_ListViewSelectedItems` - `Button_Events_UITests_Shared_Windows_UI_Xaml_Controls_Button_Button_Events` - `Path_StrokeThickness10FixedWidth_SamplesApp_Windows_UI_Xaml_Shapes_PathTestsControl_StrokeThickness10FixedWidth` - `MediaPlayerElement_Using_mov_UITests_Shared_Windows_UI_Xaml_Controls_MediaPlayerElement_MediaPlayerElement_Mov_Extension` - `MediaPlayerElement_Using_mp3_Audio_only_UITests_Shared_Windows_UI_Xaml_Controls_MediaPlayerElement_MediaPlayerElement_Mp3_Extension` - `MediaPlayerElement_Using_ogg_UITests_Shared_Windows_UI_Xaml_Controls_MediaPlayerElement_MediaPlayerElement_Ogg_Extension` - `MediaPlayerElement_Sources_UITests_Shared_Windows_UI_Xaml_Controls_MediaPlayerElement_MediaPlayerElement_Sources` - `Pickers_TimePicker_Flyout_Automated_UITests_Shared_Windows_UI_Xaml_Controls_TimePicker_TimePicker_Flyout_Automated` - `Pickers_UITests_Shared_Windows_UI_Xaml_Controls_TimePicker_TimePicker_Flyout_Automated_Reload_UITests_Shared_Windows_UI_Xaml_Controls_TimePicker_TimePicker_Flyout_Automated_Reload` - `Pickers_UITests_Windows_UI_Xaml_Controls_CalendarView_CalendarView_Theming_UITests_Windows_UI_Xaml_Controls_CalendarView_CalendarView_Theming` - `When_Theme_Changed_No_Crash_UITests_Windows_UI_Xaml_Controls_CalendarView_CalendarView_Theming` - `UpDownTest_UITests_Shared_Microsoft_UI_Xaml_Controls_NumberBoxTests_NumberBoxPage` - `When_SingleSelectionWithItemClick_Then_PointersEvents_UITests_Windows_UI_Xaml_Controls_ListView_ListView_Selection_Pointers` - `When_SingleSelectionWithoutItemClick_Then_PointersEvents_UITests_Windows_UI_Xaml_Controls_ListView_ListView_Selection_Pointers` - `Path_UITests_Shared_Windows_UI_Xaml_Shapes_PathTestsControl_SVG_Path_UITests_Shared_Windows_UI_Xaml_Shapes_PathTestsControl_SVG_Path`
* `wasm-automated-net7.0-UWP-RuntimeTests-0`: **0** changed over 1 * `wasm-automated-net7.0-UWP-RuntimeTests-1`: **0** changed over 1 * `wasm-automated-net7.0-UWP-RuntimeTests-2`: **0** changed over 1 * `wasm-automated-net7.0-WinUI-Benchmarks-automated`: **0** changed over 1 * `wasm-automated-net7.0-WinUI-RuntimeTests-0`: **0** changed over 1 * `wasm-automated-net7.0-WinUI-RuntimeTests-1`: **0** changed over 1 * `wasm-automated-net7.0-WinUI-RuntimeTests-2`: **1** changed over 1
🚨🚨 Comparison Details (first 20) 🚨🚨 - `RunRuntimeTests_SamplesApp_Samples_UnitTests_UnitTestsPage`
unodevops commented 2 weeks ago

🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-16509/index.html