Skip to content

Commit

Permalink
Bump to xamarin/java.interop/main@38c8a827 (#8339)
Browse files Browse the repository at this point in the history
Fixes: dotnet/java-interop#910
Fixes: dotnet/java-interop#1139

Changes: dotnet/java-interop@3c83179...38c8a82

  * dotnet/java-interop@38c8a827: [Xamarin.Android.Tools.Bytecode] Kotlin unsigned internal props (dotnet/java-interop#1156)
  * dotnet/java-interop@1adb7964: [generator] `generator --lang-features=emit-legacy-interface-invokers` (dotnet/java-interop#1145)
  * dotnet/java-interop@6bd7ae48: [Xamarin.Android.Tools.Bytecode] Kotlin internal prop visibility (dotnet/java-interop#1151)

Updates `class-parse` to better support parsing the visibility of
Kotlin properties.

Updates `generator` to emit optimized interface Invokers.
The previous interface invoker codegen strategy can be enabled by
setting `$(_AndroidEmitLegacyInterfaceInvokers)`=True.
  • Loading branch information
jonpryor authored Nov 7, 2023
1 parent fff1f4c commit 8928f11
Show file tree
Hide file tree
Showing 7 changed files with 33 additions and 24 deletions.
1 change: 1 addition & 0 deletions Documentation/guides/building-apps/build-properties.md
Original file line number Diff line number Diff line change
Expand Up @@ -430,6 +430,7 @@ documentation on [D8 and R8][d8-r8].
[dex]: https://source.android.com/devices/tech/dalvik/dalvik-bytecode
[d8-r8]: https://github.com/xamarin/xamarin-android/blob/main/Documentation/guides/D8andR8.md


## AndroidEnableDesugar

A boolean property that
Expand Down
2 changes: 1 addition & 1 deletion external/Java.Interop
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,7 @@ It is shared between "legacy" binding projects and .NET 5 projects.
ToolPath="$(_BindingsToolsLocation)"
ToolExe="$(BindingsGeneratorToolExe)"
LangVersion="$(LangVersion)"
EmitLegacyInterfaceInvokers="$(_AndroidEmitLegacyInterfaceInvokers)"
EnableBindingStaticAndDefaultInterfaceMethods="$(AndroidBoundInterfacesContainStaticAndDefaultInterfaceMethods)"
EnableBindingNestedInterfaceTypes="$(AndroidBoundInterfacesContainTypes)"
EnableBindingInterfaceConstants="$(AndroidBoundInterfacesContainConstants)"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@
<AndroidBoundInterfacesContainStaticAndDefaultInterfaceMethods Condition=" '$(AndroidBoundInterfacesContainStaticAndDefaultInterfaceMethods)' == '' ">true</AndroidBoundInterfacesContainStaticAndDefaultInterfaceMethods>
<AndroidBoundInterfacesContainTypes Condition=" '$(AndroidBoundInterfacesContainTypes)' == '' ">true</AndroidBoundInterfacesContainTypes>
<AndroidBoundInterfacesContainConstants Condition=" '$(AndroidBoundInterfacesContainConstants)' == '' ">true</AndroidBoundInterfacesContainConstants>
<_AndroidEmitLegacyInterfaceInvokers Condition=" '$(AndroidEmitLegacyInterfaceInvokers)' == '' ">false</_AndroidEmitLegacyInterfaceInvokers>
<AndroidEnableObsoleteOverrideInheritance Condition=" '$(AndroidEnableObsoleteOverrideInheritance)' == '' ">true</AndroidEnableObsoleteOverrideInheritance>
<AndroidEnableRestrictToAttributes Condition=" '$(AndroidEnableRestrictToAttributes)' == '' ">obsolete</AndroidEnableRestrictToAttributes>

Expand Down
6 changes: 6 additions & 0 deletions src/Xamarin.Android.Build.Tasks/Tasks/Generator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,8 @@ public class BindingsGenerator : AndroidDotnetToolTask

public string LangVersion { get; set; }

public bool EmitLegacyInterfaceInvokers { get; set; }

public bool EnableBindingStaticAndDefaultInterfaceMethods { get; set; }
public bool EnableBindingNestedInterfaceTypes { get; set; }
public bool EnableBindingInterfaceConstants { get; set; }
Expand Down Expand Up @@ -209,6 +211,10 @@ protected override string GenerateCommandLineCommands ()
if (SupportsCSharp8) {
var features = new List<string> ();

if (EmitLegacyInterfaceInvokers) {
features.Add ("emit-legacy-interface-invokers");
}

if (EnableBindingInterfaceConstants)
features.Add ("interface-constants");

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,61 +8,61 @@
"Size": 1024
},
"assemblies/Java.Interop.dll": {
"Size": 61886
"Size": 61350
},
"assemblies/Mono.Android.dll": {
"Size": 88044
"Size": 90818
},
"assemblies/Mono.Android.Runtime.dll": {
"Size": 5509
"Size": 5514
},
"assemblies/rc.bin": {
"Size": 1395
"Size": 1512
},
"assemblies/System.Console.dll": {
"Size": 6400
"Size": 6536
},
"assemblies/System.Linq.dll": {
"Size": 9199
"Size": 7118
},
"assemblies/System.Private.CoreLib.dll": {
"Size": 550507
"Size": 550324
},
"assemblies/System.Runtime.dll": {
"Size": 2621
"Size": 2614
},
"assemblies/System.Runtime.InteropServices.dll": {
"Size": 3858
"Size": 3851
},
"assemblies/UnnamedProject.dll": {
"Size": 2933
"Size": 2932
},
"classes.dex": {
"Size": 377064
"Size": 377956
},
"lib/arm64-v8a/libmono-component-marshal-ilgen.so": {
"Size": 97080
},
"lib/arm64-v8a/libmonodroid.so": {
"Size": 325320
"Size": 334784
},
"lib/arm64-v8a/libmonosgen-2.0.so": {
"Size": 3189360
"Size": 3193200
},
"lib/arm64-v8a/libSystem.IO.Compression.Native.so": {
"Size": 723560
},
"lib/arm64-v8a/libSystem.Native.so": {
"Size": 93920
"Size": 93952
},
"lib/arm64-v8a/libSystem.Security.Cryptography.Native.Android.so": {
"Size": 154904
},
"lib/arm64-v8a/libxamarin-app.so": {
"Size": 11576
"Size": 11648
},
"META-INF/BNDLTOOL.RSA": {
"Size": 1213
"Size": 1221
},
"META-INF/BNDLTOOL.SF": {
"Size": 3037
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,13 @@
"Size": 7112
},
"assemblies/Java.Interop.dll": {
"Size": 70036
"Size": 69472
},
"assemblies/Mono.Android.dll": {
"Size": 471216
"Size": 447387
},
"assemblies/Mono.Android.Runtime.dll": {
"Size": 5506
"Size": 5514
},
"assemblies/mscorlib.dll": {
"Size": 3852
Expand Down Expand Up @@ -206,13 +206,13 @@
"Size": 42282
},
"classes.dex": {
"Size": 3513140
"Size": 3514468
},
"lib/arm64-v8a/libmono-component-marshal-ilgen.so": {
"Size": 97080
},
"lib/arm64-v8a/libmonodroid.so": {
"Size": 325320
"Size": 334784
},
"lib/arm64-v8a/libmonosgen-2.0.so": {
"Size": 3193200
Expand All @@ -227,7 +227,7 @@
"Size": 154904
},
"lib/arm64-v8a/libxamarin-app.so": {
"Size": 102840
"Size": 102888
},
"META-INF/android.support.design_material.version": {
"Size": 12
Expand Down Expand Up @@ -1916,5 +1916,5 @@
"Size": 325240
}
},
"PackageSize": 7973902
"PackageSize": 7949326
}

0 comments on commit 8928f11

Please sign in to comment.