-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[release/7.0] Allow interop resolvers to return self handle #78018
Conversation
Tagging subscribers to this area: Issue DetailsBackport of #78004 to release/7.0 /cc @lambdageek @am11 Customer ImpactTestingRiskIMPORTANT: Is this backport for a servicing release? If so and this change touches code that ships in a NuGet package, please make certain that you have added any necessary package authoring and gotten it explicitly reviewed.
|
@lambdageek @thaystg can one of you please send an email to Tactics requesting approval? The due date for merging changes for the December release is Monday 14th. |
emailed tactics |
Approved by tactics in email |
Approved by Tactics and signed off by area owner. |
This seems to have completely broken Android in CI (we didn't run Android library tests on this PR).
We don't see the issue in main so looks like something is missing from 7.0. Preparing a revert for now. |
This reverts commit 6ab036f.
Looks like the case of trimmed app missing string resource. Do we have dumps / more info for this crash? |
in which case, this should fix the error: --- a/src/libraries/System.Private.CoreLib/src/System/AppDomain.cs
+++ b/src/libraries/System.Private.CoreLib/src/System/AppDomain.cs
@@ -135,12 +135,14 @@ private static int ExecuteAssembly(Assembly assembly, string?[]? args)
return result != null ? (int)result : 0;
}
+ [RequiresUnreferencedCode("Type and its constructor could be removed")]
public int ExecuteAssemblyByName(AssemblyName assemblyName, params string?[]? args) =>
ExecuteAssembly(Assembly.Load(assemblyName), args);
public int ExecuteAssemblyByName(string assemblyName) =>
ExecuteAssemblyByName(assemblyName, null);
+ [RequiresUnreferencedCode("Type and its constructor could be removed")]
public int ExecuteAssemblyByName(string assemblyName, params string?[]? args) =>
ExecuteAssembly(Assembly.Load(assemblyName), args); |
Backport of #78004 to release/7.0
/cc @lambdageek @am11
Customer Impact
Customers using the new
GetMainProgramHandle
API to create custom NativeLibrary resolvers in mobile apps are unable to resolve statically linked symbols in their apps.Testing
Manual testing
Risk
Low