Bump to xamarin/Java.Interop/main@dfcbd670#8714
Conversation
Changes: dotnet/java-interop@7f08b77...dfcbd67 * dotnet/java-interop@dfcbd670: Bump to xamarin/xamarin-android-tools/main@a698a33 (dotnet/java-interop#1189) * dotnet/java-interop@6182baff: [build] Target `net8.0` (dotnet/java-interop#1186) dotnet/java-interop@6182baff updated Java.Interop to target .NET 8 instead of .NET 7. This introduced a build break: …/xamarin-android/src/Mono.Android/Mono.Android.csproj(402,5): error MSB3030: Could not copy the file "…/xamarin-android/external/Java.Interop/bin/Debug-net7.0/ref/Java.Interop.dll" because it was not found. Introduce a new `$(JavaInteropTargetFrameworkVersion)` MSBuild property within `Configuration.props` which contains the .NET version that Java.Interop is targeting. Update `Mono.Android.csproj` and `Microsoft.Android.Ref.proj` so that they use `$(JavaInteropTargetFrameworkVersion)` to locate the reference `Java.Interop.dll` assembly.
| <MonoSourceFullPath>$([System.IO.Path]::GetFullPath ('$(MonoSourceDirectory)'))</MonoSourceFullPath> | ||
| <SqliteSourceFullPath>$([System.IO.Path]::GetFullPath ('$(SqliteSourceDirectory)'))</SqliteSourceFullPath> | ||
| <OpenTKSourceFullPath>$([System.IO.Path]::GetFullPath ('$(OpenTKSourceDirectory)'))</OpenTKSourceFullPath> | ||
| <JavaInteropTargetFrameworkVersion>net8.0</JavaInteropTargetFrameworkVersion> |
There was a problem hiding this comment.
Should this be:
| <JavaInteropTargetFrameworkVersion>net8.0</JavaInteropTargetFrameworkVersion> | |
| <JavaInteropTargetFrameworkVersion>$(DotNetStableTargetFramework)</JavaInteropTargetFrameworkVersion> |
Or will we likely bump this independently of moving to .NET 10, for example?
There was a problem hiding this comment.
$(JavaInteropTargetFrameworkVersion) is reactionary; the Java.Interop repo targets .NET versions on its own ("lazy") schedule, and the entire reason it's on .NET 8 now is because I want to start using NativeAOT things in there (dotnet/java-interop#1153); if not for that, it would still be on .NET 7, with no real need or reason to update it otherwise.
Thus, it should not be $(DotNetStableTargetFramework), because that would require that Java.Interop bump to the latest .NET version far faster than it has historically.
(For comparison, Java.Interop did not target .NET 7 until 2022-May, ~7 months after .NET 7 went stable…)
jonathanpeppers
left a comment
There was a problem hiding this comment.
This looks good to me if CI ends up green. 👍
* main: [Xamarin.Android.Build.Tasks] remove `$(AndroidSupportedAbis)` from `build.props` (#8717) [Xamarin.Android.Build.Tasks] BannedApiAnalyzers for Resolve() (#8715) Bump to xamarin/Java.Interop/main@dfcbd670 (#8714) [monodroid] C++ tweaks and legacy code cleanup (#8638) Bump to xamarin/xamarin-android-tools/main@a698a33 (#8710) [readme] Add `d17-8` download links. (#8709) Bump external/Java.Interop from `07c7300` to `7f08b77` (#8702) Bump to xamarin/monodroid@848d1277b7 (#8691) [Xamarin.Android.Build.Tasks] `FixAbstractMethodsStep` performance (#8650) Bump to dotnet/installer@fb7b9a4b9e 9.0.100-preview.2.24106.6 (#8700)
* main: (116 commits) [tmt] Update to work with current `libxamarin-app.so` (#8694) [Xamarin.Android.Build.Tasks] remove `$(AndroidSupportedAbis)` from `build.props` (#8717) [Xamarin.Android.Build.Tasks] BannedApiAnalyzers for Resolve() (#8715) Bump to xamarin/Java.Interop/main@dfcbd670 (#8714) [monodroid] C++ tweaks and legacy code cleanup (#8638) Bump to xamarin/xamarin-android-tools/main@a698a33 (#8710) [readme] Add `d17-8` download links. (#8709) Bump external/Java.Interop from `07c7300` to `7f08b77` (#8702) Bump to xamarin/monodroid@848d1277b7 (#8691) [Xamarin.Android.Build.Tasks] `FixAbstractMethodsStep` performance (#8650) Bump to dotnet/installer@fb7b9a4b9e 9.0.100-preview.2.24106.6 (#8700) [Mono.Android] Cache `Profiles/api-34.xml` contents (#8679) [monodroid] typemaps may need to load assemblies (#8625) Bump $(AndroidNetPreviousVersion) to 34.0.79 (#8693) Bump to xamarin/java.interop/main@07c73009 (#8681) Bump to dotnet/installer@1c496970b7 9.0.100-preview.2.24078.1 (#8685) [GetAndroidDependencies] Add Jdk dependency info (#8651) [xaprepare] Add support for newer SparkyLinux (#8684) Bump to dotnet/installer@5680e93cb2 9.0.100-preview.2.24073.12 (#8666) $(AndroidPackVersionSuffix)=preview.2; net9 is 34.99.0.preview.2 (#8678) ...
Changes: dotnet/java-interop@7f08b77...dfcbd67
ed102fctoa698a33java-interop#1189)net8.0([build] Targetnet8.0java-interop#1186)dotnet/java-interop@6182baff updated Java.Interop to target .NET 8 instead of .NET 7. This introduced a build break:
Introduce a new
$(JavaInteropTargetFrameworkVersion)MSBuild property withinConfiguration.propswhich contains the .NET version that Java.Interop is targeting.Update
Mono.Android.csprojandMicrosoft.Android.Ref.projso that they use$(JavaInteropTargetFrameworkVersion)to locate the referenceJava.Interop.dllassembly.