Skip to content

Commit 4b595a8

Browse files
committed
Merge branch 'main' into blazor-hang
* main: [Xamarin.Android.Build.Tasks] enable ForceInterpretedInvoke switch (dotnet#7972) [Mono.Android] Bind API-UpsideDownCake Beta 1 (dotnet#7980) Bump to xamarin/xamarin-android-tools/main@8bc07503 (dotnet#7863) [automation] Add 'xaSourcePath' to yaml so they can be used from monodroid. (dotnet#7978) Bump to dotnet/installer@16c10f8115 8.0.100-preview.4.23218.1 (dotnet#7969) [docs] Add UnitTest.md (dotnet#7877) [ci] Suppress fork PR build warnings (dotnet#7973) [Xamarin.Android.Build.Tasks] Bump ZipFlushFilesLimit (dotnet#7957) Bump to dotnet/installer@3ca7ad1c79 8.0.100-preview.4.23211.1 (dotnet#7946) [CI] Allow passing xamarin-android checkout dir to nested templates. (dotnet#7961) [Xamarin.Android.Build.Tasks] Fix `-int.ToString()` for locales (dotnet#7941) [ci] Automatically retry failed apk-instrumentation tests. (dotnet#7963)
2 parents 35be489 + 5687506 commit 4b595a8

33 files changed

+765
-203
lines changed

Configuration.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@
148148
<XABuildTools30Version>30.0.3</XABuildTools30Version>
149149
<XABuildTools30Folder Condition="'$(XABuildTools30Folder)' == ''">30.0.3</XABuildTools30Folder>
150150
<XAPlatformToolsPackagePrefix Condition=" '$(HostOS)' == 'Darwin' "></XAPlatformToolsPackagePrefix>
151-
<XAPlatformToolsVersion>32.0.0</XAPlatformToolsVersion>
151+
<XAPlatformToolsVersion>34.0.1</XAPlatformToolsVersion>
152152
<XAIncludeProprietaryBits Condition="'$(XAIncludeProprietaryBits)' == ''">False</XAIncludeProprietaryBits>
153153
<XABundleToolVersion Condition="'$(XABundleToolVersion)' == ''">1.8.1</XABundleToolVersion>
154154
<XAPackagesDir Condition=" '$(XAPackagesDir)' == '' And '$(HostOS)' == 'Windows'">$(userprofile)\.nuget\packages</XAPackagesDir>

Documentation/workflow/UnitTests.md

Lines changed: 448 additions & 0 deletions
Large diffs are not rendered by default.

build-tools/automation/azure-pipelines.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,8 @@ variables:
7878
value: VSEng-Xamarin-RedmondMac-Android-Untrusted
7979
- name: MacBuildPoolImage
8080
value: ''
81+
- name: DisablePipelineConfigDetector
82+
value: true
8183

8284
# Stage and Job "display names" are shortened because they are combined to form the name of the corresponding GitHub check.
8385
stages:

build-tools/automation/yaml-templates/apk-instrumentation.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ parameters:
1111
artifactFolder: ""
1212
useDotNet: true
1313
condition: succeeded()
14+
retryCountOnTaskFailure: 1
1415

1516
steps:
1617
- ${{ if eq(parameters.useDotNet, false) }}:
@@ -26,6 +27,7 @@ steps:
2627
${{ parameters.extraBuildArgs }}
2728
condition: ${{ parameters.condition }}
2829
continueOnError: true
30+
retryCountOnTaskFailure: ${{ parameters.retryCountOnTaskFailure }}
2931

3032
- ${{ if eq(parameters.useDotNet, true) }}:
3133
- template: run-dotnet-preview.yaml
@@ -40,6 +42,7 @@ steps:
4042
-v:n -c ${{ parameters.configuration }} ${{ parameters.extraBuildArgs }}
4143
condition: ${{ parameters.condition }}
4244
continueOnError: true
45+
retryCountOnTaskFailure: ${{ parameters.retryCountOnTaskFailure }}
4346

4447
- script: >
4548
DEST="$(Build.StagingDirectory)/Test${{ parameters.configuration }}/${{ parameters.artifactFolder }}/" &&

build-tools/automation/yaml-templates/run-dotnet-preview.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ parameters:
88
displayName: run dotnet preview
99
condition: succeeded()
1010
continueOnError: true
11+
retryCountOnTaskFailure: 0
1112

1213
steps:
1314
- powershell: |
@@ -25,3 +26,4 @@ steps:
2526
displayName: ${{ parameters.displayName }}
2627
condition: ${{ parameters.condition }}
2728
continueOnError: ${{ parameters.continueOnError }}
29+
retryCountOnTaskFailure: ${{ parameters.retryCountOnTaskFailure }}

build-tools/automation/yaml-templates/run-msbuild-tests.yaml

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,10 @@ parameters:
44
jobDisplayName: # Display name of the job
55
agentCount: # Number of build agents to run in parallel
66
testFilter: # Filter used to select tests (NUnit test selection language, not dotnet test filter language)
7-
7+
xaSourcePath: $(System.DefaultWorkingDirectory)
8+
repositoryAlias: 'self'
9+
commit: ''
10+
811
jobs:
912
- job: ${{ parameters.jobName }}
1013
strategy:
@@ -31,7 +34,10 @@ jobs:
3134
installLegacyDotNet: false
3235
restoreNUnitConsole: false
3336
updateMono: false
34-
37+
xaSourcePath: ${{ parameters.xaSourcePath }}
38+
repositoryAlias: ${{ parameters.repositoryAlias }}
39+
commit: ${{ parameters.commit }}
40+
3541
- task: DownloadPipelineArtifact@2
3642
inputs:
3743
artifactName: $(TestAssembliesArtifactName)

build-tools/automation/yaml-templates/setup-test-environment.yaml

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,19 @@ parameters:
1010
restoreNUnitConsole: true
1111
updateMono: true
1212
androidSdkPlatforms: $(DefaultTestSdkPlatforms)
13+
repositoryAlias: 'self'
14+
commit: ''
1315

1416
steps:
15-
- checkout: self
16-
clean: true
17-
submodules: recursive
18-
${{ if ne(parameters.xaSourcePath, variables['System.DefaultWorkingDirectory']) }}:
19-
path: s/xamarin-android
17+
18+
- template: sdk-unified/steps/checkout/v1.yml@yaml-templates
19+
parameters:
20+
resource: ${{ parameters.repositoryAlias }}
21+
commit: ${{ parameters.commit }}
22+
clean: true
23+
submodules: recursive
24+
${{ if ne(parameters.xaSourcePath, variables['System.DefaultWorkingDirectory']) }}:
25+
path: s/xamarin-android
2026

2127
- ${{ if eq(parameters.updateVS, true) }}:
2228
- template: update-vs.yaml

build-tools/automation/yaml-templates/stage-msbuild-emulator-tests.yaml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,9 @@ parameters:
77
agent_count: 8
88
stageCondition: succeeded()
99
stagePrefix: ''
10+
xaSourcePath: $(System.DefaultWorkingDirectory)
11+
repositoryAlias: 'self'
12+
commit: ''
1013

1114
stages:
1215
- stage: ${{ parameters.stageName }}
@@ -33,6 +36,9 @@ stages:
3336
restoreNUnitConsole: false
3437
updateMono: false
3538
androidSdkPlatforms: $(androidSdkPlatforms)
39+
xaSourcePath: ${{ parameters.xaSourcePath }}
40+
repositoryAlias: ${{ parameters.repositoryAlias }}
41+
commit: ${{ parameters.commit }}
3642

3743
- template: run-xaprepare.yaml
3844
parameters:
@@ -87,6 +93,9 @@ stages:
8793
installLegacyDotNet: false
8894
restoreNUnitConsole: false
8995
androidSdkPlatforms: $(androidSdkPlatforms)
96+
xaSourcePath: ${{ parameters.xaSourcePath }}
97+
repositoryAlias: ${{ parameters.repositoryAlias }}
98+
commit: ${{ parameters.commit }}
9099

91100
- template: run-xaprepare.yaml
92101
parameters:

build-tools/automation/yaml-templates/stage-msbuild-tests.yaml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@ parameters:
55
stageCondition: succeeded()
66
dependsOn: mac_build
77
stagePrefix: ''
8+
xaSourcePath: $(System.DefaultWorkingDirectory)
9+
repositoryAlias: 'self'
10+
commit: ''
811

912
stages:
1013
- stage: ${{ parameters.stageName }}
@@ -19,6 +22,9 @@ stages:
1922
jobDisplayName: macOS > Tests > MSBuild
2023
agentCount: 10
2124
testFilter: cat != Dummy # This is because $(ExcludedNUnitCategories) gets appended which starts with '&'
25+
xaSourcePath: ${{ parameters.xaSourcePath }}
26+
repositoryAlias: ${{ parameters.repositoryAlias }}
27+
commit: ${{ parameters.commit }}
2228

2329
- template: run-msbuild-tests.yaml
2430
parameters:
@@ -27,3 +33,6 @@ stages:
2733
jobDisplayName: Windows > Tests > MSBuild
2834
agentCount: 6
2935
testFilter: cat != Dummy # This is because $(ExcludedNUnitCategories) gets appended which starts with '&'
36+
xaSourcePath: ${{ parameters.xaSourcePath }}
37+
repositoryAlias: ${{ parameters.repositoryAlias }}
38+
commit: ${{ parameters.commit }}

build-tools/automation/yaml-templates/start-stop-emulator.yaml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,15 @@ parameters:
66
avdAbi: # Device ABI, like 'x86', required if 'specificImage' is 'true'
77
avdType: # Device AVD, like 'android-wear', required if 'specificImage' is 'true'
88
launchTimeoutMin: 15 # Minutes to wait for the emulator to start
9+
xaSourcePath: $(System.DefaultWorkingDirectory) # working directory
910

1011
steps:
1112
- ${{ if eq(parameters.command, 'start') }}:
1213
- task: DotNetCoreCLI@2
1314
displayName: Start emulator
1415
continueOnError: false
1516
inputs:
16-
projects: src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Emulator.csproj
17+
projects: ${{ parameters.xaSourcePath }}/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Emulator.csproj
1718
${{ if eq(parameters.specificImage, true) }}:
1819
arguments: -c $(XA.Build.Configuration) -t:"InstallAvdImage;AcquireAndroidTarget" -p:TestDeviceName=${{ parameters.deviceName }} -p:TestAvdApiLevel=${{ parameters.avdApiLevel }} -p:TestAvdAbi=${{ parameters.avdAbi }} -p:TestAvdType=${{ parameters.avdType }} -p:AvdLaunchTimeoutMinutes=${{ parameters.launchTimeoutMin }} -bl:$(System.DefaultWorkingDirectory)/bin/Test$(XA.Build.Configuration)/install-emulator-${{ parameters.avdApiLevel }}.binlog
1920
${{ else }}:
@@ -25,7 +26,7 @@ steps:
2526
condition: always()
2627
continueOnError: true
2728
inputs:
28-
projects: src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Emulator.csproj
29+
projects: ${{ parameters.xaSourcePath }}/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Emulator.csproj
2930
${{ if eq(parameters.specificImage, true) }}:
3031
arguments: -c $(XA.Build.Configuration) -t:"AcquireAndroidTarget,ReleaseAndroidTarget" -p:TestDeviceName=${{ parameters.deviceName }} -p:TestAvdApiLevel=${{ parameters.avdApiLevel }} -p:TestAvdAbi=${{ parameters.avdAbi }} -p:TestAvdType=${{ parameters.avdType }} -p:AvdLaunchTimeoutMinutes=${{ parameters.launchTimeoutMin }} -bl:$(System.DefaultWorkingDirectory)/bin/Test$(XA.Build.Configuration)/shutdown-emulator.binlog
3132
${{ else }}:

build-tools/xaprepare/xaprepare/ConfigAndData/Dependencies/AndroidToolchain.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ public AndroidToolchain ()
7373
new AndroidPlatformComponent ("platform-31_r01", apiLevel: "31", pkgRevision: "1"),
7474
new AndroidPlatformComponent ("platform-32_r01", apiLevel: "32", pkgRevision: "1"),
7575
new AndroidPlatformComponent ("platform-33_r01", apiLevel: "33", pkgRevision: "1"),
76-
new AndroidPlatformComponent ("platform-UpsideDownCake_r01", apiLevel: "UpsideDownCake", pkgRevision: "1"),
76+
new AndroidPlatformComponent ("platform-UpsideDownCake_r03", apiLevel: "UpsideDownCake", pkgRevision: "3"),
7777

7878
new AndroidToolchainComponent ("sources-33_r01",
7979
destDir: Path.Combine ("sources", "android-33"),

eng/Version.Details.xml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
<Dependencies>
22
<ProductDependencies>
3-
<Dependency Name="Microsoft.Dotnet.Sdk.Internal" Version="8.0.100-preview.4.23176.5">
3+
<Dependency Name="Microsoft.Dotnet.Sdk.Internal" Version="8.0.100-preview.4.23218.1">
44
<Uri>https://github.com/dotnet/installer</Uri>
5-
<Sha>d109cba3ff8ff46fe70be93a40c45002e5770267</Sha>
5+
<Sha>16c10f8115bff3fba5c74497fe135fd62c6f19d4</Sha>
66
</Dependency>
7-
<Dependency Name="Microsoft.NET.ILLink.Tasks" Version="8.0.0-preview.4.23174.4" CoherentParentDependency="Microsoft.Dotnet.Sdk.Internal">
7+
<Dependency Name="Microsoft.NET.ILLink.Tasks" Version="8.0.0-preview.4.23210.1" CoherentParentDependency="Microsoft.Dotnet.Sdk.Internal">
88
<Uri>https://github.com/dotnet/runtime</Uri>
9-
<Sha>96a003edd9e25a7b4b693b6a7717ad4d46937a8b</Sha>
9+
<Sha>053e17a0daf4be907db34d64fc51bc133c284fae</Sha>
1010
</Dependency>
11-
<Dependency Name="Microsoft.NETCore.App.Ref" Version="8.0.0-preview.4.23174.4" CoherentParentDependency="Microsoft.Dotnet.Sdk.Internal">
11+
<Dependency Name="Microsoft.NETCore.App.Ref" Version="8.0.0-preview.4.23210.1" CoherentParentDependency="Microsoft.Dotnet.Sdk.Internal">
1212
<Uri>https://github.com/dotnet/runtime</Uri>
13-
<Sha>96a003edd9e25a7b4b693b6a7717ad4d46937a8b</Sha>
13+
<Sha>053e17a0daf4be907db34d64fc51bc133c284fae</Sha>
1414
</Dependency>
1515
<Dependency Name="Microsoft.NET.Workload.Emscripten.Current.Manifest-8.0.100.Transport" Version="8.0.0-preview.4.23170.1" CoherentParentDependency="Microsoft.NETCore.App.Ref">
1616
<Uri>https://github.com/dotnet/emsdk</Uri>

eng/Versions.props

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
<Project>
22
<!--Package versions-->
33
<PropertyGroup>
4-
<MicrosoftDotnetSdkInternalPackageVersion>8.0.100-preview.4.23176.5</MicrosoftDotnetSdkInternalPackageVersion>
5-
<MicrosoftNETILLinkTasksPackageVersion>8.0.0-preview.4.23174.4</MicrosoftNETILLinkTasksPackageVersion>
6-
<MicrosoftNETCoreAppRefPackageVersion>8.0.0-preview.4.23174.4</MicrosoftNETCoreAppRefPackageVersion>
4+
<MicrosoftDotnetSdkInternalPackageVersion>8.0.100-preview.4.23218.1</MicrosoftDotnetSdkInternalPackageVersion>
5+
<MicrosoftNETILLinkTasksPackageVersion>8.0.0-preview.4.23210.1</MicrosoftNETILLinkTasksPackageVersion>
6+
<MicrosoftNETCoreAppRefPackageVersion>8.0.0-preview.4.23210.1</MicrosoftNETCoreAppRefPackageVersion>
77
<MicrosoftDotNetApiCompatPackageVersion>7.0.0-beta.22103.1</MicrosoftDotNetApiCompatPackageVersion>
88
<MicrosoftDotNetBuildTasksFeedPackageVersion>7.0.0-beta.22103.1</MicrosoftDotNetBuildTasksFeedPackageVersion>
99
<MicrosoftNETWorkloadEmscriptenCurrentManifest80100TransportVersion>8.0.0-preview.4.23170.1</MicrosoftNETWorkloadEmscriptenCurrentManifest80100TransportVersion>

src/Mono.Android/metadata

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1692,6 +1692,9 @@
16921692
<attr path="/api/package[@name='android.content.pm']/class[@name='PackageManager']/method[@name='resolveActivity' and count(parameter)=2 and parameter[1][@type='android.content.Intent'] and parameter[2][@type='int']]/parameter[@name='flags']" name="enumType">Android.Content.PM.PackageInfoFlags</attr>
16931693
<attr path="/api/package[@name='android.content.pm']/class[@name='PackageManager']/method[@name='resolveContentProvider' and count(parameter)=2 and parameter[1][@type='java.lang.String'] and parameter[2][@type='int']]/parameter[@name='flags']" name="enumType">Android.Content.PM.PackageInfoFlags</attr>
16941694
<attr path="/api/package[@name='android.content.pm']/class[@name='PackageManager']/method[@name='resolveService' and count(parameter)=2 and parameter[1][@type='android.content.Intent'] and parameter[2][@type='int']]/parameter[@name='flags']" name="enumType">Android.Content.PM.PackageInfoFlags</attr>
1695+
<attr api-since="26" path="/api/package[@name='android.app.admin']/class[@name='DevicePolicyManager']/method[@name='bindDeviceAdminServiceAsUser' and count(parameter)=5 and parameter[1][@type='android.content.ComponentName'] and parameter[2][@type='android.content.Intent'] and parameter[3][@type='android.content.ServiceConnection'] and parameter[4][@type='int'] and parameter[5][@type='android.os.UserHandle']]/parameter[@name='flags']" name="enumType">Android.Content.Bind</attr>
1696+
<attr path="/api/package[@name='android.content']/class[@name='Context']/method[@name='bindService' and count(parameter)=3 and parameter[1][@type='android.content.Intent'] and parameter[2][@type='android.content.ServiceConnection'] and parameter[3][@type='int']]/parameter[@name='flags']" name="enumType">Android.Content.Bind</attr>
1697+
<attr api-since="29" path="/api/package[@name='android.content']/class[@name='Context']/method[@name='bindService' and count(parameter)=4 and parameter[1][@type='android.content.Intent'] and parameter[2][@type='int'] and parameter[3][@type='java.util.concurrent.Executor'] and parameter[4][@type='android.content.ServiceConnection']]/parameter[@name='flags']" name="enumType">Android.Content.Bind</attr>
16951698

16961699
<!-- These parameters that we enumify changed names. Change them back so the enumification process can still find them. -->
16971700
<attr api-since="33" path="/api/package[@name='android.app']/class[@name='Service']/method[@name='stopForeground' and count(parameter)=1 and parameter[1][@type='int']]/parameter[@name='notificationBehavior']" name="name">flags</attr>
@@ -1788,9 +1791,9 @@
17881791
<attr api-since="34" path="/api/package[@name='android.app.appsearch.util']" name="managedName">Android.App.AppSearch.Util</attr>
17891792
<attr api-since="34" path="/api/package[@name='android.app.sdksandbox.sdkprovider']" name="managedName">Android.App.SdkSandbox.SdkProvider</attr>
17901793
<attr api-since="34" path="/api/package[@name='android.devicelock']" name="managedName">Android.DeviceLock</attr>
1791-
<attr api-since="34" path="/api/package[@name='android.healthconnect']" name="managedName">Android.HealthConnect</attr>
1792-
<attr api-since="34" path="/api/package[@name='android.healthconnect.datatypes']" name="managedName">Android.HealthConnect.DataTypes</attr>
1793-
<attr api-since="34" path="/api/package[@name='android.healthconnect.datatypes.units']" name="managedName">Android.HealthConnect.DataTypes.Units</attr>
1794+
<attr api-since="34" path="/api/package[@name='android.health.connect.changelog']" name="managedName">Android.Health.Connect.ChangeLog</attr>
1795+
<attr api-since="34" path="/api/package[@name='android.health.connect.datatypes']" name="managedName">Android.Health.Connect.DataTypes</attr>
1796+
<attr api-since="34" path="/api/package[@name='android.health.connect.datatypes.units']" name="managedName">Android.Health.Connect.DataTypes.Units</attr>
17941797
<attr api-since="34" path="/api/package[@name='android.location.altitude']" name="managedName">Android.Locations.Altitude</attr>
17951798

17961799
<!--

src/Mono.Android/methodmap.csv

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,6 @@
7878
5, android.bluetooth,BluetoothClass,getMajorDeviceClass,return,Android.Bluetooth.MajorDeviceClass
7979
5, android.bluetooth,BluetoothClass,hasService,service,Android.Bluetooth.ServiceClass
8080
5, android.bluetooth,BluetoothDevice,getBondState,return,Android.Bluetooth.Bond
81-
0, android.content,Context,bindService,flags,Android.Content.Bind
8281
0, android.content,Context,createPackageContext,flags,Android.Content.PackageContextFlags
8382
0, android.content,Context,getDir,mode,Android.Content.FileCreationMode
8483
0, android.content,Context,getSharedPreferences,mode,Android.Content.FileCreationMode
@@ -2277,7 +2276,6 @@
22772276
26, android.icu.util, UniversalTimeScale, toLong, timeScale, Android.Icu.Util.UniversalTimeScaleType
22782277
26, android.icu.util, UniversalTimeScale, getTimeScaleValue, value, Android.Icu.Util.UniversalTimeScaleValue
22792278

2280-
26, android.app.admin, DevicePolicyManager, bindDeviceAdminServiceAsUser, flags, Android.Content.Bind
22812279
26, android.app.admin, DevicePolicyManager, resetPasswordWithToken, flags, Android.App.Admin.ResetPasswordFlags
22822280
26, android.app.admin, DevicePolicyManager, lockNow, flags, Android.App.Admin.DevicePolicyManagerFlags
22832281
26, android.app.assist, AssistStructure.ViewNode, getAutofillType, return, Android.Views.AutofillType

src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.DefaultProperties.targets

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,7 @@
114114
<_AggressiveAttributeTrimming Condition="'$(_AggressiveAttributeTrimming)' == ''">true</_AggressiveAttributeTrimming>
115115
<NullabilityInfoContextSupport Condition="'$(NullabilityInfoContextSupport)' == ''">false</NullabilityInfoContextSupport>
116116
<BuiltInComInteropSupport Condition="'$(BuiltInComInteropSupport)' == ''">false</BuiltInComInteropSupport>
117+
<_SystemReflectionForceInterpretedInvoke Condition="'$(_SystemReflectionForceInterpretedInvoke)' == ''">true</_SystemReflectionForceInterpretedInvoke>
117118
<!-- Verify DI trimmability at development-time, but turn the validation off for production/trimmed builds. -->
118119
<VerifyDependencyInjectionOpenGenericServiceTrimmability Condition="'$(VerifyDependencyInjectionOpenGenericServiceTrimmability)' == '' and '$(PublishTrimmed)' == 'true'">false</VerifyDependencyInjectionOpenGenericServiceTrimmability>
119120
<VerifyDependencyInjectionOpenGenericServiceTrimmability Condition="'$(VerifyDependencyInjectionOpenGenericServiceTrimmability)' == ''">true</VerifyDependencyInjectionOpenGenericServiceTrimmability>

src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.RuntimeConfig.targets

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,11 @@ See: https://github.com/dotnet/runtime/blob/b13715b6984889a709ba29ea8a1961db469f
3636
Condition="'$(AndroidUseNegotiateAuthentication)' != ''"
3737
Value="$(AndroidUseNegotiateAuthentication)"
3838
Trim="true" />
39+
<!-- https://github.com/dotnet/runtime/blob/211cdd011f19a51b7092d8365e11e774a8280afb/src/libraries/System.Private.CoreLib/src/System/LocalAppContextSwitches.cs#L52 -->
40+
<RuntimeHostConfigurationOption Include="Switch.System.Reflection.ForceInterpretedInvoke"
41+
Value="$(_SystemReflectionForceInterpretedInvoke)"
42+
Trim="true"
43+
/>
3944
</ItemGroup>
4045

4146
<Target Name="_ParseRuntimeConfigFiles"

0 commit comments

Comments
 (0)