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

[main] Update dependencies from xamarin/xamarin-android #1443

Merged
merged 24 commits into from
Jul 2, 2021

Conversation

dotnet-maestro[bot]
Copy link
Contributor

@dotnet-maestro dotnet-maestro bot commented Jun 24, 2021

This pull request updates the following dependencies

Coherency Updates

The following updates ensure that dependencies with a CoherentParentDependency
attribute were produced in a build used as input to the parent dependency's build.
See Dependency Description Format

  • Coherency Updates:
    • Microsoft.Dotnet.Sdk.Internal: from 6.0.100-preview.6.21313.2 to 6.0.100-preview.6.21351.1 (parent: Microsoft.Android.Sdk.Windows)
    • Microsoft.NETCore.App.Ref: from 6.0.0-preview.6.21306.1 to 6.0.0-preview.6.21325.12 (parent: Microsoft.Dotnet.Sdk.Internal)

From https://github.com/xamarin/xamarin-android

  • Subscription: 53866d68-1943-4cab-f9b1-08d9301a7704
  • Build: 6.0.1xx-preview6-ac0333b7828fd72de2afb43c67d8212f18d5be43-1
  • Date Produced: 7/1/2021 11:30 PM
  • Commit: ac0333b7828fd72de2afb43c67d8212f18d5be43
  • Branch: refs/heads/release/6.0.1xx-preview6

…uild 6.0.1xx-preview6-03b91941bf31a562b3243d3ac76846f0bac71636-1

Microsoft.Android.Sdk.Windows
 From Version 30.0.100-preview.6.51 -> To Version 30.0.100-preview.6.53

Dependency coherency updates

Microsoft.Dotnet.Sdk.Internal,Microsoft.NETCore.App.Ref
 From Version 6.0.100-preview.6.21313.2 -> To Version 6.0.100-preview.6.21323.1 (parent: Microsoft.Android.Sdk.Windows
Context: dotnet/sdk#18516

Attempts to workaround the failure:

    > D:\agent\1\s\bin\dotnet\dotnet workload install microsoft-android-sdk-full --skip-manifest-update --verbosity diag
    ...
    Workload installation failed: Source and destination path must have identical roots. Move will not work across volumes.

If `dotnet` is in `D:\agent\1\s\bin\dotnet\dotnet` and `%TEMP%` is
`C:\Users\XAMARI~1\AppData\Local\Temp`, this seems to fail.

Setting `%TEMP%` to `.\bin\temp` in the current directory instead.
@jonathanpeppers
Copy link
Member

This will need changes to flow from dotnet/runtime for:

Build fails with:

microsoft.net.workload.mono.toolchain\WorkloadManifest.targets(29,9): error : D:\a\1\s\bin\dotnet\sdk\6.0.100-preview.6.21323.1\Sdks\Microsoft.NETCore.App.Runtime.AOT.Cross.maccatalyst-x64\Sdk not found. Check that a recent enough .NET SDK is installed and/or increase the version specified in global.json.
microsoft.net.workload.mono.toolchain\WorkloadManifest.targets(30,9): error : D:\a\1\s\bin\dotnet\sdk\6.0.100-preview.6.21323.1\Sdks\Microsoft.NETCore.App.Runtime.AOT.Cross.maccatalyst-arm64\Sdk not found. Check that a recent enough .NET SDK is installed and/or increase the version specified in global.json.

…uild 6.0.1xx-preview6-d515a1c8112c700ae9f22f9c27829cf54a79931e-1

Microsoft.Android.Sdk.Windows
 From Version 30.0.100-preview.6.51 -> To Version 30.0.100-preview.6.54

Dependency coherency updates

Microsoft.Dotnet.Sdk.Internal,Microsoft.NETCore.App.Ref
 From Version 6.0.100-preview.6.21313.2 -> To Version 6.0.100-preview.6.21323.1 (parent: Microsoft.Android.Sdk.Windows
…uild 6.0.1xx-preview6-9bc7166b808aa4c4456c960adb127970d9580fa1-1

Microsoft.Android.Sdk.Windows
 From Version 30.0.100-preview.6.51 -> To Version 30.0.100-preview.6.55

Dependency coherency updates

Microsoft.Dotnet.Sdk.Internal,Microsoft.NETCore.App.Ref
 From Version 6.0.100-preview.6.21313.2 -> To Version 6.0.100-preview.6.21324.9 (parent: Microsoft.Android.Sdk.Windows
@jonathanpeppers
Copy link
Member

We need this to land before we can merge this: xamarin/xamarin-macios#11989

We'll probably also need to bump Android/iOS at the same time; I can help with this.

dotnet-maestro bot and others added 9 commits June 29, 2021 12:33
…uild 6.0.1xx-preview6-f57c5c2a195d47a699a4043aa7ba5b3000278531-1

Microsoft.Android.Sdk.Windows
 From Version 30.0.100-preview.6.51 -> To Version 30.0.100-preview.6.56

Dependency coherency updates

Microsoft.Dotnet.Sdk.Internal,Microsoft.NETCore.App.Ref
 From Version 6.0.100-preview.6.21313.2 -> To Version 6.0.100-preview.6.21328.1 (parent: Microsoft.Android.Sdk.Windows
…ild 20210629.4

Microsoft.macOS.Sdk , Microsoft.MacCatalyst.Sdk , Microsoft.iOS.Sdk , Microsoft.tvOS.Sdk
 From Version 12.0.100-preview.6.60 -> To Version 12.0.100-preview.6.61
We should no longer need to set `$(GenerateRuntimeConfigurationFiles)` to `false`.
Context: https://github.com/xamarin/xamarin-macios/blob/a64b030fcc06da4a12b0b7e3580c9d349c14daaf/dotnet/targets/WorkloadManifest.MacCatalyst.template.json

Currently, the build fails with:

    error NETSDK1147: To build this project, the following workloads must be installed: microsoft-net-runtime-maccatalyst

It appears we are missing an `extends` for some xamarin-macios workloads.
Context: https://github.com/dotnet/runtime/blob/d4baa2bd2b009cdd0886bba925ce32517041bfa0/src/mono/nuget/Microsoft.NET.Workload.Mono.Toolchain.Manifest/WorkloadManifest.targets

Previously I just tried installing an extra workload:

     Workload with id microsoft-net-runtime-maccatalyst is not supported on this platform.

This workload will not install on Windows. For now I can just patch
the `WorkloadManifest.json` from xamarin/xamarin-macios to depend on
the missing workload.

Even after this, usage of `Microsoft.NETCore.App.Runtime.AOT.Cross` in
the dotnet/runtime `WorkloadManifest.targets` fails on Windows:

     <Import Project="Sdk.props" Sdk="Microsoft.NETCore.App.Runtime.AOT.Cross.maccatalyst" />
     ...
     <Import Project="Sdk.props" Sdk="Microsoft.NETCore.App.Runtime.AOT.Cross.ios-arm" />
     <Import Project="Sdk.props" Sdk="Microsoft.NETCore.App.Runtime.AOT.Cross.ios-arm64" />

I can manually patch these files with a condition to not do this on
Windows.
Comment on lines +184 to +201
<ReplaceText
Input="$(DotNetSdkManifestsDirectory)microsoft.net.workload.mono.toolchain/WorkloadManifest.targets"
Output="$(DotNetSdkManifestsDirectory)microsoft.net.workload.mono.toolchain/WorkloadManifest.targets"
OldValue="Sdk=&quot;Microsoft.NETCore.App.Runtime.AOT.Cross.maccatalyst&quot;"
NewValue="Condition=&quot;%24([MSBuild]::IsOSPlatform('osx'))&quot; Sdk=&quot;Microsoft.NETCore.App.Runtime.AOT.Cross.maccatalyst&quot;"
/>
<ReplaceText
Input="$(DotNetSdkManifestsDirectory)microsoft.net.workload.mono.toolchain/WorkloadManifest.targets"
Output="$(DotNetSdkManifestsDirectory)microsoft.net.workload.mono.toolchain/WorkloadManifest.targets"
OldValue="Sdk=&quot;Microsoft.NETCore.App.Runtime.AOT.Cross.ios-arm&quot;"
NewValue="Condition=&quot;%24([MSBuild]::IsOSPlatform('osx'))&quot; Sdk=&quot;Microsoft.NETCore.App.Runtime.AOT.Cross.ios-arm&quot;"
/>
<ReplaceText
Input="$(DotNetSdkManifestsDirectory)microsoft.net.workload.mono.toolchain/WorkloadManifest.targets"
Output="$(DotNetSdkManifestsDirectory)microsoft.net.workload.mono.toolchain/WorkloadManifest.targets"
OldValue="Sdk=&quot;Microsoft.NETCore.App.Runtime.AOT.Cross.ios-arm64&quot;"
NewValue="Condition=&quot;%24([MSBuild]::IsOSPlatform('osx'))&quot; Sdk=&quot;Microsoft.NETCore.App.Runtime.AOT.Cross.ios-arm64&quot;"
/>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/cc @Redth @steveisok

I had to manually patch up microsoft.net.workload.mono.toolchain/WorkloadManifest.targets for iOS and MacCatalyst projects to be able to build on Windows.

These AOT packs have platforms limiting to osx:

https://github.com/dotnet/runtime/blob/685eda620e0f058b157b6d0a66da6f21c2d165fa/src/mono/nuget/Microsoft.NET.Workload.Mono.Toolchain.Manifest/WorkloadManifest.json.in#L55

And so on Windows, imports such as these would fail:

https://github.com/dotnet/runtime/blob/685eda620e0f058b157b6d0a66da6f21c2d165fa/src/mono/nuget/Microsoft.NET.Workload.Mono.Toolchain.Manifest/WorkloadManifest.targets#L23-L25

Not sure if we should merge without this fixed, as it would probably break anyone doing maui-check --main.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Created an issue on the runtime end and we'll see what we can do.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you try to build an iOS or Mac Catalyst project on Windows right now, you'll hit:

C:\src\maui\bin\dotnet\sdk-manifests\6.0.100\microsoft.net.workload.mono.toolchain\WorkloadManifest.targets(23,9): error : C:\src\maui\bin\dotnet\sdk\6.0.100-preview.6.21328.1\Sdks\Microsoft.NETCore.App.Runtime.AOT.Cross.ios-arm\Sdk not found. Check that a recent enough .NET SDK is installed and/or increase the version specified in global.json.
C:\src\maui\bin\dotnet\sdk-manifests\6.0.100\microsoft.net.workload.mono.toolchain\WorkloadManifest.targets(24,9): error : C:\src\maui\bin\dotnet\sdk\6.0.100-preview.6.21328.1\Sdks\Microsoft.NETCore.App.Runtime.AOT.Cross.ios-arm64\Sdk not found. Check that a recent enough .NET SDK is installed and/or increase the version specified in global.json.
C:\src\maui\bin\dotnet\sdk-manifests\6.0.100\microsoft.net.workload.mono.toolchain\WorkloadManifest.targets(29,9): error : C:\src\maui\bin\dotnet\sdk\6.0.100-preview.6.21328.1\Sdks\Microsoft.NETCore.App.Runtime.AOT.Cross.maccatalyst\Sdk not found. Check that a recent enough .NET SDK is installed and/or increase the version specified in global.json.

dotnet-maestro bot and others added 5 commits June 30, 2021 21:12
…uild 6.0.1xx-preview6-3ed60bd3e4728f2ee08c6ceae1091d476743b5f0-1

Microsoft.Android.Sdk.Windows
 From Version 30.0.100-preview.6.51 -> To Version 30.0.100-preview.6.58

Dependency coherency updates

Microsoft.Dotnet.Sdk.Internal,Microsoft.NETCore.App.Ref
 From Version 6.0.100-preview.6.21313.2 -> To Version 6.0.100-preview.6.21328.1 (parent: Microsoft.Android.Sdk.Windows
…ild 20210630.10

Microsoft.macOS.Sdk , Microsoft.MacCatalyst.Sdk , Microsoft.iOS.Sdk , Microsoft.tvOS.Sdk
 From Version 12.0.100-preview.6.60 -> To Version 12.0.100-preview.6.62
Comment on lines -182 to +204
Command="&quot;$(DotNetToolPath)&quot; workload install %(_WorkloadIds.Identity) --skip-manifest-update --verbosity diag"
Command="&quot;$(DotNetToolPath)&quot; workload install @(_WorkloadIds, ' ') --skip-manifest-update --verbosity diag --temp-dir $(DotNetTempDirectory)"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice!

Context: dotnet/android#6054

This solves the warning (that is turned into an error):

    src/Essentials/src/AssemblyInfo/AssemblyInfo.android.cs(3,12): error CS0618: 'LinkerSafeAttribute' is obsolete: 'For .NET 6+, please use: [assembly: global::System.Reflection.AssemblyMetadata("IsTrimmable", "True")]'
…uild 6.0.1xx-preview6-52a34e9c48bad7ae2cb16d28af9700f605163dda-1

Microsoft.Android.Sdk.Windows
 From Version 30.0.100-preview.6.51 -> To Version 30.0.100-preview.6.60

Dependency coherency updates

Microsoft.Dotnet.Sdk.Internal,Microsoft.NETCore.App.Ref
 From Version 6.0.100-preview.6.21313.2 -> To Version 6.0.100-preview.6.21329.10 (parent: Microsoft.Android.Sdk.Windows
mattleibow and others added 3 commits July 1, 2021 21:41
…uild 6.0.1xx-preview6-ac0333b7828fd72de2afb43c67d8212f18d5be43-1

Microsoft.Android.Sdk.Windows
 From Version 30.0.100-preview.6.51 -> To Version 30.0.100-preview.6.61

Dependency coherency updates

Microsoft.Dotnet.Sdk.Internal,Microsoft.NETCore.App.Ref
 From Version 6.0.100-preview.6.21313.2 -> To Version 6.0.100-preview.6.21351.1 (parent: Microsoft.Android.Sdk.Windows
@Redth Redth merged commit 8f1d426 into main Jul 2, 2021
@Redth Redth deleted the darc-main-9d46297c-7973-476a-b29b-e70150a67406 branch July 2, 2021 14:46
Csaba8472 added a commit to Csaba8472/maui that referenced this pull request Sep 6, 2021
* upstream/main: (270 commits)
  Automated dotnet-format update (dotnet#1533)
  Add tests for default colors (dotnet#1532)
  Don't extract native defaults, meaning users can no longer reset a color back to a platform theme (dotnet#1485)
  Avoid show the virtual keyboard in the Android TimePicker (dotnet#1428)
  Implement VerticalTextAlignment in WinUI Label (dotnet#1479)
  Changes in the Gallery: include custom fonts, reorganize some pages, etc. (dotnet#1526)
  Don't pack and force a signing failure (dotnet#1527)
  [main] Update dependencies from xamarin/xamarin-android (dotnet#1443)
  Implements EntryHandler IsPassword in WinUI (dotnet#802)
  Automated dotnet-format update (dotnet#1523)
  [Build] Fix net6 Microsoft.Maui.Handlers.Benchmarks assembly (dotnet#1525)
  Update WinUI to 0.8 stable (dotnet#1522)
  Implement the basic WindowHandler (dotnet#1468)
  Automated dotnet-format update (dotnet#1510)
  Implement Alerts (Alert, Prompt and ActionSheet) (dotnet#1328)
  Avoid create a drawable to set the Background if is not necessary (dotnet#1504)
  Android Gestures (dotnet#1489)
  Revert to using Navigation Page Shims (dotnet#1495)
  Allow to navigate to the same item after navigate back (dotnet#1503)
  Automated dotnet-format update (dotnet#1499)
  ...
@Eilon Eilon added the area-infrastructure CI, Maestro / Coherency, upstream dependencies/versions label Sep 30, 2021
@github-actions github-actions bot locked and limited conversation to collaborators Dec 26, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-infrastructure CI, Maestro / Coherency, upstream dependencies/versions
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants