Added support of per-extension assembly isolation #1431
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.
Pull request type
Please check the type of change your PR introduces:
What is the current behavior?
Issue Number: fix #1430
What is the new behavior?
Added a
AssemblyLoadContext
per extension discovered in DevToys, which allows each extension to load every assemblies it needs in an isolated manner. This allows .NET to load and use multiple versions of an assembly at the same time.Note: This feature is NOT supported by Android, iOS and WebAssembly. But we don't care since we don't target them.
Validation
You can test the change by building and installing the 2 extensions in this ZIP:
ExtensionTest.zip
Other information
Quality check
Before creating this PR: