Uh oh!
There was an error while loading. Please reload this page.
[main] Update dependencies from dotnet/installer - #6598
Conversation
…220102.1 Microsoft.Dotnet.Sdk.Internal From Version 6.0.200-preview.21623.6 -> To Version 7.0.100-alpha.1.22052.1 Dependency coherency updates Microsoft.NET.ILLink.Tasks From Version 6.0.100-1.21519.4 -> To Version 7.0.100-1.21628.1 (parent: Microsoft.Dotnet.Sdk.Internal
jonathanpeppers
commented
Jan 3, 2022
This is our "test .NET 7" PR. |
jonathanpeppers
commented
Jan 3, 2022
It appears that |
…220104.1 Microsoft.Dotnet.Sdk.Internal From Version 6.0.200-preview.21623.6 -> To Version 7.0.100-alpha.1.22054.1 Dependency coherency updates Microsoft.NET.ILLink.Tasks From Version 6.0.100-1.21519.4 -> To Version 7.0.100-1.22053.1 (parent: Microsoft.Dotnet.Sdk.Internal
…220104.9 Microsoft.Dotnet.Sdk.Internal From Version 6.0.200-preview.22053.5 -> To Version 7.0.100-alpha.1.22054.9 Dependency coherency updates Microsoft.NET.ILLink.Tasks From Version 6.0.100-1.21519.4 -> To Version 7.0.100-1.22053.1 (parent: Microsoft.Dotnet.Sdk.Internal
jonathanpeppers
commented
Jan 5, 2022
This is broken until we get: dotnet/install-scripts#229 As a workaround I can change it to do: Will look into it. |
Conflicts: eng/Version.Details.xml eng/Versions.props
…220105.20 Microsoft.Dotnet.Sdk.Internal From Version 6.0.200-preview.22054.7 -> To Version 7.0.100-alpha.1.22055.20 Dependency coherency updates Microsoft.NET.ILLink.Tasks From Version 6.0.100-1.21519.4 -> To Version 7.0.100-1.22055.2 (parent: Microsoft.Dotnet.Sdk.Internal
…220106.4 Microsoft.Dotnet.Sdk.Internal From Version 6.0.200-preview.22055.18 -> To Version 7.0.100-alpha.1.22056.4 Dependency coherency updates Microsoft.NET.ILLink.Tasks From Version 6.0.100-1.21519.4 -> To Version 7.0.100-1.22055.2 (parent: Microsoft.Dotnet.Sdk.Internal
Conflicts: eng/Version.Details.xml eng/Versions.props
This reverts commit 703aa2c.
…220107.7 Microsoft.Dotnet.Sdk.Internal From Version 6.0.200-preview.22055.18 -> To Version 7.0.100-alpha.1.22057.7 Dependency coherency updates Microsoft.NET.ILLink.Tasks From Version 6.0.100-1.21519.4 -> To Version 7.0.100-1.22057.2 (parent: Microsoft.Dotnet.Sdk.Internal
…220110.9 Microsoft.Dotnet.Sdk.Internal From Version 6.0.200-preview.22055.18 -> To Version 7.0.100-alpha.1.22060.9 Dependency coherency updates Microsoft.NET.ILLink.Tasks From Version 6.0.100-1.21519.4 -> To Version 7.0.100-1.22060.2 (parent: Microsoft.Dotnet.Sdk.Internal
This reverts commit be85722. This was merged: dotnet/install-scripts#233
Context: https://natemcmaster.com/blog/2019/01/09/netcore-primitives-3/ Context: https://github.com/dotnet/designs/blob/main/accepted/2019/runtime-binding.md#rollforward Previously when running `dotnet` on a machine with *only* .NET 7.0 and no .NET 6.0, you could hit: It was not possible to find any compatible framework version The framework 'Microsoft.NETCore.App', version '6.0.0' was not found. To solve this, we need our `*.runtimeconfig.json` to allow things to automatically roll forward to .NET 7.0 if .NET 6.0 is not found. If we set `$(RollForward)` to `Major`: > `Major` -- Roll forward to lowest higher major version, and lowest > minor version, if requested major version is missing. If the > requested major version is present, then the `Minor` policy is used. I think this will make things work indefinitely for new .NET versions. It should be OK to set this repo-wide.
…220112.1 Microsoft.Dotnet.Sdk.Internal From Version 6.0.200-preview.22055.18 -> To Version 7.0.100-alpha.1.22062.1 Dependency coherency updates Microsoft.NET.ILLink.Tasks From Version 6.0.100-1.21519.4 -> To Version 7.0.100-1.22061.1 (parent: Microsoft.Dotnet.Sdk.Internal
This reverts commit 581ff17.
…220113.3 Microsoft.Dotnet.Sdk.Internal From Version 6.0.200-preview.22055.18 -> To Version 7.0.100-alpha.1.22063.3 Dependency coherency updates Microsoft.NET.ILLink.Tasks From Version 6.0.100-1.21519.4 -> To Version 7.0.100-1.22061.1 (parent: Microsoft.Dotnet.Sdk.Internal
…220114.6 Microsoft.Dotnet.Sdk.Internal From Version 6.0.200-preview.22061.4 -> To Version 7.0.100-alpha.1.22064.6 Dependency coherency updates Microsoft.NET.ILLink.Tasks From Version 6.0.100-1.21519.4 -> To Version 7.0.100-1.22061.1 (parent: Microsoft.Dotnet.Sdk.Internal
Comment out the use of `mono_opt_aot_lazy_assembly_load` to avoid: java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "mono_opt_aot_lazy_assembly_load" referenced by "/data/app/~~vl16iaQCcaaGeHJth-4QRg==/com.companyname.foo-muUVAzog5TVWBfJdDzYT1Q==/lib/arm64/libmonodroid.so"
Conflicts: src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Resources/Base/BuildReleaseArm64SimpleDotNet.apkdesc src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Resources/Base/BuildReleaseArm64XFormsDotNet.apkdesc
This reverts commit 59a2630.
This reverts commit b870ba2.
This reverts commit 1fc1c31.
Since the commit history here is a nightmare, here is a WIP commit message: |
| RuntimePackNamePatterns="Microsoft.Android.Runtime.$(_AndroidRuntimePackId).**RID**" | ||
| RuntimePackRuntimeIdentifiers="android-arm;android-arm64;android-x86;android-x64" | ||
| Profile="Android" | ||
| /> |
There was a problem hiding this comment.
I wasn't sure if this was the right thing to do for supporting net6.0 project builds, but it seems to work. Should I file something in dotnet/sdk for discussing this further?
There was a problem hiding this comment.
Let me review this after merging... I suspect it is more complicated than just this. I think we need to somehow import the .NET 6 Microsoft.Android.Sdk pack to use our .NET 6 MSBuild tasks.
jonpryor
commented
May 5, 2022
Context: https://github.com/dotnet/runtime/issues/56989
Context: https://github.com/dotnet/runtime/issues/68734
Context: https://github.com/dotnet/runtime/issues/68914
Context: https://github.com/dotnet/runtime/pull/68701
Changes: https://github.com/dotnet/installer/compare/04e40fa9...c7afae69% git diff --shortstat 04e40fa9...c7afae69 98 files changed, 1788 insertions(+), 1191 deletions(-)
Changes: https://github.com/dotnet/runtime/compare/a21b9a2d...c5d40c9e% git diff --shortstat a21b9a2d...c5d40c9e 28347 files changed, 1609359 insertions(+), 1066473 deletions(-)
Changes: https://github.com/dotnet/linker/compare/01c4f590...04c49c9d% git diff --shortstat 01c4f590...04c49c9d 577 files changed, 28039 insertions(+), 10835 deletions(-)
Updates to build with the .NET 7 SDK and use the runtime specified by
the SDK. We no longer use different SDK & runtime versions.
This produces a 7.0.100 Android workload.
After this is merged we should be able to enable Maestro to consume
future .NET 7 builds from dotnet/installer/main.
~~ Known Issues ~~
AOT+LLVM crashes on startup:
*https://github.com/dotnet/runtime/issues/68914
Xamarin.Build.Download hits a breaking change with `ZipEntry`:
*https://github.com/dotnet/runtime/issues/68734*https://github.com/xamarin/XamarinComponents/pull/1368
illink outputs different MVIDs per architecture:
*https://github.com/dotnet/linker/issues/2203*https://github.com/dotnet/runtime/issues/67660
Size of `libmonosgen-2.0.so` regressed:
*https://github.com/dotnet/runtime/issues/68330*https://github.com/dotnet/runtime/pull/68354
Newer .NET 7 builds crash on startup:
*https://github.com/dotnet/runtime/pull/68701* This is worked around by *disabling* lazy loading of AOT'd
assemblies 6dc426f1.
* TODO: re-enable once we get a fixed .NET 7 runtime.
TODO: We can't yet push to the `dotnet7` feed. Working on this.
Co-authored-by: Jonathan Peppers <jonathan.peppers@microsoft.com>
Co-authored-by: Peter Collins <pecolli@microsoft.com> |
Context: dotnet/android#6598 Context: dotnet/android#7028 Update `$(TargetFrameworks)` across the various `.csproj` files to use `$(DotNetTargetFramework)`, as xamarin/xamarin-android does. Additionally, set `$(DotNetTargetFramework)`=net7.0 (.NET 7). Similar to commit e7bacc3, Mono cannot be used to build against .NET 7 reference assemblies: /Library/Frameworks/Mono.framework/Versions/6.12.0/lib/mono/msbuild/Current/bin/Microsoft.Common.CurrentVersion.targets(1232,5): error MSB3971: The reference assemblies for ".NETFramework,Version=v7.0" were not found. You might be using an older .NET SDK to target .NET 5.0 or higher. Update Visual Studio and/or your .NET SDK. Fix this by updating the **Mac - Mono** CI job to *build* with .NET 7, while Mono-focused unit tests are still run with Mono. Note: dotnet/android#7028 will be required in order to bump Java.Interop within xamarin-android. Co-authored-by: Peter Collins <pecolli@microsoft.com>
Fixes: dotnet#7302 Context: dotnet/linker#2203 Context: dotnet/runtime#67660 Context: dotnet#6598 This partially backports 745214d. In addition to this backport to dotnet/runtime/release/6.0: dotnet/runtime#75311 We also have another change in .NET 7 that opts into `$(TrimmerRemoveSymbols)` by default for `Release` builds. This allows the .NET 7 linker to have stable MVIDs for assemblies for each architecture. There may potentially be a dotnet/linker issue here to look into further. However, this seems to be the best fix for getting .NET 6 projects building under .NET 7 at the moment.
Fixes: #7302 Context: dotnet/linker#2203 Context: dotnet/runtime#67660 Context: #6598 This partially backports 745214d. Building a `net6.0-android` app in `Release` mode with .NET 7 can fail with many errors like: error XA4215: The Java type `androidx.activity.contextaware.OnContextAvailableListener` is generated by more than one managed type. Please change the [Register] attribute so that the same Java type is not emitted. This happens because we end up with multiple assemblies, such as: obj/Release/net6.0-android/android-arm/linked/Xamarin.AndroidX.Activity.dll obj/Release/net6.0-android/android-arm64/linked/Xamarin.AndroidX.Activity.dll obj/Release/net6.0-android/android-x64/linked/Xamarin.AndroidX.Activity.dll obj/Release/net6.0-android/android-x86/linked/Xamarin.AndroidX.Activity.dll To fix this, in addition to this backport to dotnet/runtime/release/6.0: dotnet/runtime#75311 In .NET 7 we opt into `$(TrimmerRemoveSymbols)` by default for `Release` builds. This allows the .NET 7 linker to have stable MVIDs for assemblies for each architecture. Somehow when the linker outputs `.pdb` files, it creates different MVIDs per architecture. There may potentially be a dotnet/linker issue here to look into further. However, this seems to be the best fix for getting .NET 6 projects building under .NET 7 at the moment.
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
From https://github.com/dotnet/installer