-
Notifications
You must be signed in to change notification settings - Fork 555
[darc] track previous .NET Android manifests #9981
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
Conversation
Context: dotnet/maui#28663 Previously we've been tracking: <!-- Previous .NET Android version --> <Dependency Name="Microsoft.Android.Sdk.Windows" Version="35.0.61"> <Uri>https://github.com/dotnet/android</Uri> <Sha>e7876a4f92d894b40c191a24c2b74f06d4bf4573</Sha> </Dependency> And then for .NET 8, we just manually updated the `$(AndroidNet8PreviousVersion)` property. This makes it difficult for other repositories to *know* about the required NuGet feeds: <!--Begin: Package sources managed by Dependency Flow automation. Do not edit the sources below.--> <!-- Begin: Package sources from dotnet-android --> <add key="darc-pub-dotnet-android-82d8938" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/darc-pub-dotnet-android-82d8938c/nuget/v3/index.json" /> <add key="darc-pub-dotnet-android-e7876a4" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/darc-pub-dotnet-android-e7876a4f/nuget/v3/index.json" /> <!-- End: Package sources from dotnet-android --> In dotnet/maui or dotnet/performance, they would need to look at dotnet/android/main's NuGet.config to even figure out what is missing here: Workload installation failed: One or more errors occurred. (Version 35.0.61 of package microsoft.android.sdk.windows is not found in NuGet feeds To solve this, we can track: <!-- Previous .NET Android version(s) --> <Dependency Name="Microsoft.NET.Sdk.Android.Manifest-9.0.100" Version="35.0.61"> <Uri>https://github.com/dotnet/android</Uri> <Sha>e7876a4f92d894b40c191a24c2b74f06d4bf4573</Sha> </Dependency> <Dependency Name="Microsoft.NET.Sdk.Android.Manifest-8.0.100" Version="34.0.154"> <Uri>https://github.com/dotnet/android</Uri> <Sha>82d8938cf80f6d5fa6c28529ddfbdb753d805ab4</Sha> </Dependency> Then consuming repositories could track with `CoherentParentDependency="Microsoft.Android.Sdk.Windows"`: <Dependency Name="Microsoft.Android.Sdk.Windows" Version="36.0.0-preview.3.11"> <Uri>https://github.com/dotnet/android</Uri> <Sha>e71524ac874e90d9879661cafe230d8e99ba9cec</Sha> </Dependency> <Dependency Name="Microsoft.NET.Sdk.Android.Manifest-9.0.100" Version="35.0.61" CoherentParentDependency="Microsoft.Android.Sdk.Windows"> <Uri>https://github.com/dotnet/android</Uri> <Sha>e7876a4f92d894b40c191a24c2b74f06d4bf4573</Sha> </Dependency> <Dependency Name="Microsoft.NET.Sdk.Android.Manifest-8.0.100" Version="34.0.154" CoherentParentDependency="Microsoft.Android.Sdk.Windows"> <Uri>https://github.com/dotnet/android</Uri> <Sha>82d8938cf80f6d5fa6c28529ddfbdb753d805ab4</Sha> </Dependency> Once this change is merged, we would update `eng/Version.Details.xml` in consuming repositories. Afterwards, Maestro should be able to manage the feeds automatically.
fyi: @LoopedBard3 for dotnet/performance repo. |
<Uri>https://github.com/dotnet/android</Uri> | ||
<Sha>e7876a4f92d894b40c191a24c2b74f06d4bf4573</Sha> | ||
</Dependency> | ||
<Dependency Name="Microsoft.NET.Sdk.Android.Manifest-8.0.100" Version="34.0.154"> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we have an idea of how many .NET 10 previews we plan to support .NET 8 targeting for? This is easy enough to revert whenever we drop that support either way, and should hopefully make dependency updating easier in general
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We will probably remove this entry around May, and remove this from the workload manifest at the same time:
android/src/Xamarin.Android.Build.Tasks/Microsoft.NET.Sdk.Android/WorkloadManifest.in.json
Lines 24 to 33 in e347cd3
"android-net8": { | |
"description": ".NET SDK Workload for building .NET 8 Android applications.", | |
"packs": [ "Microsoft.Android.Sdk.net8" ], | |
"platforms": [ "win-x64", "win-arm64", "linux-x64", "linux-arm64", "osx-x64", "osx-arm64" ], | |
"extends" : [ | |
"android", | |
"microsoft-net-runtime-android-net8", | |
"microsoft-net-runtime-android-aot-net8" | |
] | |
} |
Context: dotnet/maui#28663
Previously we've been tracking:
And then for .NET 8, we just manually updated the
$(AndroidNet8PreviousVersion)
property.This makes it difficult for other repositories to know about the required NuGet feeds:
In dotnet/maui or dotnet/performance, they would need to look at dotnet/android/main's NuGet.config to even figure out what is missing here:
To solve this, we can track:
Then consuming repositories could track with
CoherentParentDependency="Microsoft.Android.Sdk.Windows"
:Once this change is merged, we would update
eng/Version.Details.xml
in consuming repositories. Afterwards, Maestro should be able to manage the feeds automatically.