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

XamlC should optimize OnPlatform #5583

Open
eerhardt opened this issue Mar 25, 2022 · 5 comments
Open

XamlC should optimize OnPlatform #5583

eerhardt opened this issue Mar 25, 2022 · 5 comments
Assignees
Labels
area-xaml XAML, CSS, Triggers, Behaviors fixed-in-8.0.0-rc.1.9171 Look for this fix in 8.0.0-rc.1.9171 platform/android 🤖 platform/iOS 🍎 platform/macOS 🍏 macOS / Mac Catalyst platform/windows 🪟 t/enhancement ☀️ New feature or request
Milestone

Comments

@eerhardt
Copy link
Member

Description

In the .NET Podcasts app, it has the following XAML:

https://github.com/microsoft/dotnet-podcasts/blob/00be1bb25b6940fee77f0e7b711a04dea2358ced/src/Mobile/Controls/HeaderControl.xaml#L9-L32

            <OnPlatform x:TypeArguments="View">
                <On Platform="UWP, macOS">
                    <Grid RowDefinitions="*, auto">
                        <SearchBar x:Name="searchBar"
                                   HorizontalOptions="Start"
                                   WidthRequest="460"
                                   Text="{Binding TextToSearch, Source={x:Reference selfMediaElementView}}"
                                   SearchCommand="{Binding SearchCommand, Source={x:Reference selfMediaElementView}}" />
                        <Label Text="See All Categories"
                               Style="{StaticResource BodyLLabelStyle}"
                               TextColor="{StaticResource Primary}"
                               Grid.Row="1"
                               HorizontalOptions="End"
                               Margin="0,0,30,0"
                               IsVisible="{Binding ShowSearchCategories, Source={x:Reference selfMediaElementView}}"
                               FontSize="16">
                            <Label.GestureRecognizers>
                                <TapGestureRecognizer Tapped="TapGestureRecognizer_Tapped" />
                            </Label.GestureRecognizers>
                        </Label>
                    </Grid>
                </On>
                <On Platform="Android,iOS">
                    <Grid ColumnDefinitions="*,*"
                          Margin="16,12">
                        <Image Source="{AppThemeBinding Light=logo_header_horizontal.png,Dark=logo_color_horizontal_darkmode.png}"
                               HeightRequest="34"
                               WidthRequest="125"
                               VerticalOptions="Center"
                               HorizontalOptions="Start" />
                        <Image Source="search.png"
                               Grid.Column="1"
                               VerticalOptions="Center"
                               HorizontalOptions="End"
                               HeightRequest="20"
                               WidthRequest="20">
                            <Image.GestureRecognizers>
                                <TapGestureRecognizer Tapped="TapGestureRecognizer_Tapped" />
                            </Image.GestureRecognizers>
                        </Image>
                    </Grid>
                </On>
            </OnPlatform>

When building the app for Android, I'm still seeing the controls inside the <On Platform="UWP, macOS"> clause get created and properties set on them. For example, the SearchBar is only used in UWP, macOS, but in my compiled Android app I see:

private void InitializeComponent()
{
	ReferenceExtension referenceExtension = new ReferenceExtension();
	BindingExtension bindingExtension = new BindingExtension();
	ReferenceExtension referenceExtension2 = new ReferenceExtension();
	BindingExtension bindingExtension2 = new BindingExtension();
	SearchBar searchBar = new SearchBar();

This pattern is used in 3 places in the .NET Podcasts app:

  1. The above
  2. The Player control
  3. The ShowDetailPage.

We should optimize this pattern so when building for Android, the other platforms' controls are not created.

cc @StephaneDelcroix @jonathanpeppers

Steps to Reproduce

  1. git clone https://github.com/microsoft/dotnet-podcasts.git
  2. cd dotnet-podcasts/src/Mobile
  3. dotnet build Microsoft.NetConf2021.Maui.csproj -t:Run -c Release -f net6.0-android -r android-arm64
  4. Inspect the IL of HeaderControl.InitializeComponent()

Version with bug

Preview 14 (current)

Last version that worked well

Unknown/Other

Affected platforms

iOS, Android, Windows, macOS

Affected platform versions

All

Did you find any workaround?

No response

Relevant log output

No response

@eerhardt eerhardt added t/bug Something isn't working s/needs-verification Indicates that this issue needs initial verification before further triage will happen labels Mar 25, 2022
@Redth Redth added s/verified Verified / Reproducible Issue ready for Engineering Triage area-xaml XAML, CSS, Triggers, Behaviors and removed s/needs-verification Indicates that this issue needs initial verification before further triage will happen labels Mar 25, 2022
@Redth Redth added this to the 6.0.300-rc.2 milestone Mar 25, 2022
@StephaneDelcroix
Copy link
Contributor

#4829 was about the {OnPlatform} markup extension, not the <OnPlatform\> generic construct. Looking if we can apply the same treatment over here...

StephaneDelcroix added a commit that referenced this issue Mar 28, 2022
StephaneDelcroix added a commit that referenced this issue Mar 28, 2022
StephaneDelcroix added a commit that referenced this issue Mar 30, 2022
@StephaneDelcroix StephaneDelcroix added t/enhancement ☀️ New feature or request and removed t/bug Something isn't working labels Apr 20, 2022
@veikkoeeva
Copy link

veikkoeeva commented Aug 7, 2022

I'll add a related use case that led me to find this. It seem to be related also to the linked cases.

The case: use OnPlatform to choose ResourceDictionary on compile time based on platform.

Elaborating.

As for example, I would like to use styles to have:

  1. Material 3 on Android.
  2. Mica/Acrylic on Windows.

Using default Maui application as an example, I could install MaterialColorUtilities and include it only on Android with appropriate #if-#endif in code (the compiler/linker could optimize it away on unused platforms even without MSBuild conditional based on code preprocessor directives, I suppose):

<ItemGroup Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'android'">
    <PackageReference Include="MaterialColorUtilities" Version="0.1.1" />
    <PackageReference Include="MaterialColorUtilities.Maui" Version="0.1.1" />
  </ItemGroup>

But now it looks to me there is not a good pattern to implement different styles on Android and Windows if one doesn't want to ship platform specific styles to all platforms with the associated resource usage. Which seem to be the topic of this issue too.

But maybe it is worth bring another use case to discussion that is similar if OnPlatform becomes also a construct that the compiler can optimize. Going through setters one-by-one is cumbersome and indeed, not all styles seem to be applicable to all platforms (maybe could be set explicitly to some default value on all platforms or null so every platform is covered).

So, I was thinking easiest fix could be to make the default App.xaml

    <Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="Resources/Styles/Colors.xaml" />
                <ResourceDictionary Source="Resources/Styles/Styles.xaml" />
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>
    </Application.Resources>
</Application>

ResourceDictionary Source paths conditional. But this is not possible. The path needs to be constant to the resource: e.g. I cannot choose Colors.xaml and Styles.xaml by way of multitargeting in MSBuild only, since the whole path needs to be present. And there's no conditional operators available during compile time here, as far as I understand.

As for an example of what I think is a similar effect: Using regex in MSBuild to modify the path in App.xaml during build before compilation so that the could be made to point to the right location. Example: Resources/Styles/Android/Colors.xaml and Resources/Styles/Android/Styles.xaml would be included when compiling on Android target. (And then switch back so that version control would not be affected.)

Using this case as an example, this way the styles could be made appropriate with Material 3 on Android, Windows and other platforms and only those styles be included on compiled applications.

So, maybe it could be useful to extend OnPlatform kind of construct also to include resources conditionally.

@jonathanpeppers
Copy link
Member

jonathanpeppers commented Aug 7, 2022

@veikkoeeva you should file a new issue, this seems off-topic. This issue is about computing the <OnPlatform> element at compile time instead of runtime.

@veikkoeeva
Copy link

veikkoeeva commented Aug 8, 2022

@jonathanpeppers I'm making a case to choose the ResourceDictionary Source path at compile time based on platform. With some explanation why I think it would be useful. Though it cannot be done at runtime either, of which I may be wrong (I'm not that familiar with Maui/Xamarin). So maybe, the new issue should be the ability to set ResourceDictionary Source using OnPlatform (or achieving the same result with some another mechanism).

I edited the original issue to make my intention clearer. As noted, could be a case for a new issue in any case (if this is indeed not possible as of this writing, I'm not 100% sure).

@Redth Redth modified the milestones: .NET 7 + Servicing, Backlog Aug 29, 2022
@ghost
Copy link

ghost commented Aug 29, 2022

We've moved this issue to the Backlog milestone. This means that it is not going to be worked on for the coming release. We will reassess the backlog following the current release and consider this item at that time. To learn more about our issue management process and to have better expectation regarding different types of issues you can read our Triage Process.

@samhouts samhouts removed the s/verified Verified / Reproducible Issue ready for Engineering Triage label Apr 5, 2023
StephaneDelcroix added a commit that referenced this issue May 31, 2023
StephaneDelcroix added a commit that referenced this issue Jun 14, 2023
StephaneDelcroix added a commit that referenced this issue Jun 19, 2023
@samhouts samhouts modified the milestones: Backlog, Under Consideration Jul 26, 2023
StephaneDelcroix added a commit that referenced this issue Aug 9, 2023
* [X] Optimize OnPlatform element syntax

- fixes #5583

* Auto-format source code

* don't generate x:Name for removed OnPlatforms

* Update src/Controls/src/SourceGen/Controls.SourceGen.csproj

Co-authored-by: Jonathan Peppers <jonathan.peppers@microsoft.com>

* fix string comparison

---------


Co-authored-by: Jonathan Peppers <jonathan.peppers@microsoft.com>
jonathanpeppers added a commit that referenced this issue Aug 15, 2023
* Add swipe for uitests

* Bump the androidx group with 1 update (#16474)

Bumps the androidx group with 1 update: [Xamarin.AndroidX.RecyclerView](https://github.com/xamarin/AndroidX).

- [Commits](https://github.com/xamarin/AndroidX/commits)

---
updated-dependencies:
- dependency-name: Xamarin.AndroidX.RecyclerView
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: androidx
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Document Element (#16299)

* Begin doc progress

* Document element

* More explicit interface implementations

* Address PR feedback

* Document interfaces + delete xml

* whitespace

* Prevent compile issues

* Document IElementController (and mark as obsolete)

* Remove Obsolete attribute from IElementController

This would break the build in various places - and would go out of scope of the PR

* Document IVusalElementController

Apparently is only for internal use. We can't make it private so the only choice is to mark everything as for internal use only

* Prevent mdoc from breaking

You can't really cref a namespace

* Fixed other crefs

* Address Dave's feedback

* Move powershell pack script into cake (#16588)

* 'pwsh' is broken on net8

PowerShell/PowerShell#19679

* Remove the script

* oops

* Fix Graphics Font comparison method (#15985)

* Fix the issue

* Added more tests

* Updated Impl

* [WinUI] Implement PointerPressed and PointerReleased (#16213)

* Implement on Windows and add unit tests

* Update src/Controls/src/Core/PointerGestureRecognizer.cs

Co-authored-by: Samantha Houts <samhouts@users.noreply.github.com>

---------

Co-authored-by: Samantha Houts <samhouts@users.noreply.github.com>

* [X] Optimize OnPlatform element syntax (#5611)

* [X] Optimize OnPlatform element syntax

- fixes #5583

* Auto-format source code

* don't generate x:Name for removed OnPlatforms

* Update src/Controls/src/SourceGen/Controls.SourceGen.csproj

Co-authored-by: Jonathan Peppers <jonathan.peppers@microsoft.com>

* fix string comparison

---------


Co-authored-by: Jonathan Peppers <jonathan.peppers@microsoft.com>

* [Housekeeping] Add 8.0 preview 7 (#16613)

also adds a checkbox to make it clear if this is a regression or not

* [X] Support DynResources as AppThemeBinding values (#16597)

Because, you know, why not ? It could be useful

- fixes #13619

* [main] Update dependencies from dotnet/xharness (#16600)

* Update dependencies from https://github.com/dotnet/xharness build 20230807.2

Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Common , Microsoft.DotNet.XHarness.TestRunners.Xunit
 From Version 8.0.0-prerelease.23403.1 -> To Version 8.0.0-prerelease.23407.2

* Run device tests on 16.4

* Force to 16.4

* Skip test that fails on iOS

---------

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Rui Marinho <me@ruimarinho.net>

* Adds prompts when creating a new page. (#16331)

* Adds prompts when creating a new page.

* Updates description as per suggested PR comments

* [ios] fix memory leak in GraphicsView (#16605)

Context: #16346

This addresses the memory leak discovered by:

    src/Core/src/Platform/iOS/PlatformTouchGraphicsView.cs(12,29): error MA0002: Member '_hoverGesture' could cause memory leaks in an NSObject subclass. Remove the member, store the value as a WeakReference, or add the [UnconditionalSuppressMessage("Memory", "MA0002")] attribute with a justification as to why the member will not leak.

I could reproduce a leak in `MemoryTests.cs`:

    ++[InlineData(typeof(GraphicsView))]
    public async Task HandlerDoesNotLeak(Type type)

Solved the problem by fixing two places:

* `PlatformTouchGraphicsView` now stores the `IGraphicsView` as a
  `WeakReference`.

* A `UIHoverGestureRecognizerProxy` is used for callbacks to the
  `UIHoverGestureRecognizer`.

* [create-pull-request] automated change (#16592)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Setting binding on Label doesn't set text to incoming binding (#16410)

* Test demonstrating binding issue

* [C] SetBinding overrides SetValue, but only when the value is set

* - reenable tests

---------

Co-authored-by: Stephane Delcroix (HE/HIM) (from Dev Box) <stdelc@microsoft.com>

* Added DeviceTest to validate CharacterSpacing on iOS Button (#16603)

* Use runtime check for setting WKWebView inspectable flag (#16631)

* Use runtime check

* Remove private

* Add back line

* Line endings?

* Use System.OperatingSystem

* Update src/BlazorWebView/src/Maui/iOS/BlazorWebViewHandler.iOS.cs

Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>

---------

Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>

* [Housekeeping] Fix broken bug template (#16643)

* [Housekeeping] Fix broken bug template

checkbox <> checkboxes

* Update bug-report.yml

* Update bug-report.yml

* Implement Additional PointerGestureRecognizer Platform Arguments (#16426)

* Pointer Platform Event Args

* remove extension and use property instead

* make ctor internal

* nullable consistency, spelling, and private setter

* Public API changes and remove nullable windows routedargs

* uitests part 1

* only run ui tests on windows and mac

* move device conditional to test

* Change the tests to Pointer Tests for more reusability

* Add documentation

* Add extension method for ignoring platforms

* Update the documentation

* Change platform specific docs

* [C] fix Specificity for VSM (#16404)

* [C] fix Specificity for VSM

- fixes #11204

* remove skipped test

* Prevent Android timer from adding multiple callbacks; (#16078)

Fixes #10257

* [Housekeeping] Remove checkboxes from bug template (#16650)

I did not realize that they would be editable tasks on the issue. Replaced with a dropdown. Also reordered the versions to be the most likely default options to speed up the reporting process.

* [Android] Fix SwipeView not swiping using Label as direct content (#14824)

* Fix Android SwipeView not swiping using Label as Content

* Refactoring code

* Added sample to validate 6154

---------

Co-authored-by: Javier Suárez <6755973+jsuarezruiz@users.noreply.github.com>

* Locate MAUI View for PlatformView (#16463)

* Locate xplat view from platformview

* - dispatcher

* - fix layout comparison on xunit

* - PR review comments

* - tizen fix

* Bump the aspnetcore group with 7 updates (#16634)

Bumps the aspnetcore group with 7 updates:

| Package | Update |
| --- | --- |
| [Microsoft.AspNetCore.Authorization](https://github.com/dotnet/aspnetcore) | 7.0.9 to 7.0.10 |
| [Microsoft.AspNetCore.Components.WebView](https://github.com/dotnet/aspnetcore) | 7.0.9 to 7.0.10 |
| [Microsoft.JSInterop](https://github.com/dotnet/aspnetcore) | 7.0.9 to 7.0.10 |
| [Microsoft.AspNetCore.Components.Web](https://github.com/dotnet/aspnetcore) | 7.0.9 to 7.0.10 |
| [Microsoft.AspNetCore.Authentication.Facebook](https://github.com/dotnet/aspnetcore) | 7.0.9 to 7.0.10 |
| [Microsoft.AspNetCore.Authentication.Google](https://github.com/dotnet/aspnetcore) | 7.0.9 to 7.0.10 |
| [Microsoft.AspNetCore.Authentication.MicrosoftAccount](https://github.com/dotnet/aspnetcore) | 7.0.9 to 7.0.10 |


Updates `Microsoft.AspNetCore.Authorization` from 7.0.9 to 7.0.10
- [Release notes](https://github.com/dotnet/aspnetcore/releases)
- [Changelog](https://github.com/dotnet/aspnetcore/blob/main/docs/ReleasePlanning.md)
- [Commits](dotnet/aspnetcore@v7.0.9...v7.0.10)

Updates `Microsoft.AspNetCore.Components.WebView` from 7.0.9 to 7.0.10
- [Release notes](https://github.com/dotnet/aspnetcore/releases)
- [Changelog](https://github.com/dotnet/aspnetcore/blob/main/docs/ReleasePlanning.md)
- [Commits](dotnet/aspnetcore@v7.0.9...v7.0.10)

Updates `Microsoft.JSInterop` from 7.0.9 to 7.0.10
- [Release notes](https://github.com/dotnet/aspnetcore/releases)
- [Changelog](https://github.com/dotnet/aspnetcore/blob/main/docs/ReleasePlanning.md)
- [Commits](dotnet/aspnetcore@v7.0.9...v7.0.10)

Updates `Microsoft.AspNetCore.Components.Web` from 7.0.9 to 7.0.10
- [Release notes](https://github.com/dotnet/aspnetcore/releases)
- [Changelog](https://github.com/dotnet/aspnetcore/blob/main/docs/ReleasePlanning.md)
- [Commits](dotnet/aspnetcore@v7.0.9...v7.0.10)

Updates `Microsoft.AspNetCore.Authentication.Facebook` from 7.0.9 to 7.0.10
- [Release notes](https://github.com/dotnet/aspnetcore/releases)
- [Changelog](https://github.com/dotnet/aspnetcore/blob/main/docs/ReleasePlanning.md)
- [Commits](dotnet/aspnetcore@v7.0.9...v7.0.10)

Updates `Microsoft.AspNetCore.Authentication.Google` from 7.0.9 to 7.0.10
- [Release notes](https://github.com/dotnet/aspnetcore/releases)
- [Changelog](https://github.com/dotnet/aspnetcore/blob/main/docs/ReleasePlanning.md)
- [Commits](dotnet/aspnetcore@v7.0.9...v7.0.10)

Updates `Microsoft.AspNetCore.Authentication.MicrosoftAccount` from 7.0.9 to 7.0.10
- [Release notes](https://github.com/dotnet/aspnetcore/releases)
- [Changelog](https://github.com/dotnet/aspnetcore/blob/main/docs/ReleasePlanning.md)
- [Commits](dotnet/aspnetcore@v7.0.9...v7.0.10)

---
updated-dependencies:
- dependency-name: Microsoft.AspNetCore.Authorization
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: aspnetcore
- dependency-name: Microsoft.AspNetCore.Components.WebView
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: aspnetcore
- dependency-name: Microsoft.JSInterop
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: aspnetcore
- dependency-name: Microsoft.AspNetCore.Components.Web
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: aspnetcore
- dependency-name: Microsoft.AspNetCore.Authentication.Facebook
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: aspnetcore
- dependency-name: Microsoft.AspNetCore.Authentication.Google
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: aspnetcore
- dependency-name: Microsoft.AspNetCore.Authentication.MicrosoftAccount
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: aspnetcore
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* [create-pull-request] automated change (#16655)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* [ios] fix memory leak in SwipeItem (#16614)

Context: #16346

This addresses the memory leak discovered by:

    src/Core/src/Handlers/SwipeItemMenuItem/SwipeItemMenuItemHandler.iOS.cs(10,30): error MA0001: Event 'FrameChanged' could cause memory leaks in an NSObject subclass. Remove the event or add the [UnconditionalSuppressMessage("Memory", "MA0001")] attribute with a justification as to why the event will not leak.

I could reproduce the leak with a custom test in `SwipeViewTests`.

Solved the problem by introducing `SwipeItemButtonProxy` with the same
pattern from other PRs.

* [ios/catalyst] fix memory leak in DatePicker (#16589)

Context: #16346

This addresses the memory leak discovered by:

    src/Core/src/Platform/iOS/MauiDatePicker.cs(37,27): error MA0003: Subscribing to events with instance method 'OnValueChanged' could cause memory leaks in an NSObject subclass. Remove the subscription or convert the method to a static method.

I could reproduce a leak in `MemoryTests.cs`:

    ++[InlineData(typeof(DatePicker))]
    public async Task HandlerDoesNotLeak(Type type)

Solved the problem by fixing two places:

* `MauiDatePicker` now uses a `UIDatePickerProxy` type, for iOS

* `DatePickerHandler.MacCatalyst.cs` now uses a `UIDatePickerProxy` type,
  for MacCatalyst.

Other changes:

* Skip test on Android API 23

This is working for me locally on an API 23 emulator -- so I don't think
it is really leaking.

We skipped API 23 in another place:

https://github.com/dotnet/maui/blob/9fcccd57b5a3d664e4788b3c7fc3edc10010beaf/src/Controls/tests/DeviceTests/Elements/NavigationPage/NavigationPageTests.cs#L302-L303

We are more interested in iOS on this PR anyway.

* [build] Bump XCode to 14.31 (#16374)

* Add doc comments for common types used in templates, maps, webview (#16552)

* Add doc comments for common types used in templates, maps, webview
* Enable WarnigsAsErrors for inline docs on Maps

I went through every type/method/etc. used in the default MAUI app template and ensured there are doc for all of them.

I also added a few miscellaneous docs for WebView types and Map (many were copied from Xamarin.Forms docs).
---------
Co-authored-by: Gerald Versluis <gerald.versluis@microsoft.com>

* Update CODEOWNERS (#16682)

* Fix the case where silent was requested (#16676)

* Use the correct WASDK property (#16683)

* Re-land "[Windows] fixing window glitches while moving or resizing"  (#16637)

Initially merged in #14861 but there was a few test failures due to 83398c3 so it was reverted in #16541

* Update dependencies from https://github.com/xamarin/xamarin-macios build 20230815.5

Microsoft.tvOS.Sdk
 From Version 16.4.8694-net8-p7 -> To Version 16.4.8751-net8-rc1

* Update dependencies from https://github.com/xamarin/xamarin-macios build 20230815.5

Microsoft.MacCatalyst.Sdk
 From Version 16.4.8694-net8-p7 -> To Version 16.4.8751-net8-rc1

* Update dependencies from https://github.com/xamarin/xamarin-macios build 20230815.5

Microsoft.macOS.Sdk
 From Version 13.3.8694-net8-p7 -> To Version 13.3.8751-net8-rc1

* Update dependencies from https://github.com/xamarin/xamarin-macios build 20230815.5

Microsoft.iOS.Sdk
 From Version 16.4.8694-net8-p7 -> To Version 16.4.8751-net8-rc1

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Scott Banning <scoban@microsoft.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Juan Diego Herrera <juherrera@microsoft.com>
Co-authored-by: Matthew Leibowitz <mattleibow@live.com>
Co-authored-by: Javier Suárez <javiersuarezruiz@hotmail.com>
Co-authored-by: Rachel Kang <rachelkang@microsoft.com>
Co-authored-by: Samantha Houts <samhouts@users.noreply.github.com>
Co-authored-by: Stephane Delcroix <stephane@delcroix.org>
Co-authored-by: Jonathan Peppers <jonathan.peppers@microsoft.com>
Co-authored-by: dotnet-maestro[bot] <42748379+dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Rui Marinho <me@ruimarinho.net>
Co-authored-by: Mausam Shrestha <46900712+mausam-shrestha@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Shane Neuville <shneuvil@microsoft.com>
Co-authored-by: Stephane Delcroix (HE/HIM) (from Dev Box) <stdelc@microsoft.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>
Co-authored-by: TJ Lambert <50846373+tj-devel709@users.noreply.github.com>
Co-authored-by: E.Z. Hart <hartez@users.noreply.github.com>
Co-authored-by: Javier Suárez <6755973+jsuarezruiz@users.noreply.github.com>
Co-authored-by: scoban <sbanni@users.noreply.github.com>
Co-authored-by: Eilon Lipton <Eilon@users.noreply.github.com>
@ghost ghost locked as resolved and limited conversation to collaborators Sep 8, 2023
@samhouts samhouts modified the milestones: Under Consideration, .NET 8 + Servicing Sep 12, 2023
@samhouts samhouts added the fixed-in-8.0.0-rc.1.9171 Look for this fix in 8.0.0-rc.1.9171 label Sep 12, 2023
@samhouts samhouts reopened this Sep 29, 2023
@PureWeen PureWeen modified the milestones: .NET 8 + Servicing, Backlog Aug 2, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-xaml XAML, CSS, Triggers, Behaviors fixed-in-8.0.0-rc.1.9171 Look for this fix in 8.0.0-rc.1.9171 platform/android 🤖 platform/iOS 🍎 platform/macOS 🍏 macOS / Mac Catalyst platform/windows 🪟 t/enhancement ☀️ New feature or request
Projects
None yet
Development

No branches or pull requests

7 participants