[Java.Interop] net6.0 is Version=v0.1.0.0 #961
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Context: cbd9666
Context: http://aka.ms/maui-schedule
Context: dotnet/android-tools@f0b3abd
The hope with commit cbd9666 was that we could "fix" an oversight
in our ".NET 6 Story":
Java.Interop.dllshould have a versionwhich matches the .NET SDK version, or at least doesn't match the
"Classic" Xamarin.Android version, to better support future expected
API changes to
Java.Interop.dll.Unfortunately, this change didn't make it before .NET 6 went stable
in 2021-November, meaning the
net6.0-androidandnet6.0-android31.0target frameworks are "set in stone" to targetAPI-31.
My hope had been that we could implicitly "pull a mulligan",
fix the
Java.Interop.dllassembly version in cbd9666, and makenet6.0-android32.0(API-32) the default for MAUI.Unfortunately, as per dotnet/android-tools@f0b3abdb:
That remains the case: lots of moving parts means we won't be able to
make API-32 the default API level when MAUI ships.
This in turn means we have an ABI break: net6.0-android31.0 (the
default!) will want
Java.Interop.dllv0.1.0.0, but current.NET 6 Preview 13/14 is providing
Java.Interop.dllv6.0.0.0.This can only result in pain and suffering.
"Partially revert" cbd9666, and set
$(JINetCoreLibVersion)=0.1.0.0.This will cause
Java.Interop.dllto be version 0.1.0.0, restoringcompatibility with net6.0-android31.0, removing pain & suffering.
TODO: when we start targeting .NET 7.0, we should revert this
commit, so that
$(JINetCoreLibVersion)is once againi.e. 7.0.0.0, as
GitInfo.txtwill likewise be updated.