dotnet / dotnet/macios

Ensure Hot Reload works

Open
#24,782 0 comments 0 reactions 0 assignees View on GitHub
feature
Dominant language
C#
Stars
2.9k
Forks
576
Avg merge
2d 12h
Merged PRs (30d)
123

Description

Hot Reload currently doesn't work for user assemblies that we modify during the build.

This typically happens at least for device builds (the registrar).

We need to avoid assembly modification for user assemblies when hot reload is enabled.

Work that needs to complete first:

* [x] https://github.com/dotnet/macios/issues/17693
* [x] In particular a new registrar mode using the type map feature will be required.
* [ ] Do something about the PreserveSmartEnumConversions step: https://github.com/dotnet/macios/blob/a92fbe4b82814678d90847303735fc1df41f1863/tools/dotnet-linker/PreserveSmartEnumConversionsStep.cs#L37-L38

Then:

* [ ] Verify that a default debug build for device doesn't modify any user assemblies.
* [ ] Modifying BCL/NuGet assemblies (assemblies not build using a project / without source code) is OK.
* [ ] If we do modify user assemblies, figure out a solution.

References:

* https://teams.microsoft.com/l/chat/19:e787a7cb1c964eaf948dd1bd7b2a5838@thread.v2/conversations?context=%7B%22contextType%22%3A%22chat%22%7D
* https://devdiv.visualstudio.com/DevDiv/_workitems/edit/2260338
* https://devdiv.visualstudio.com/DevDiv/_workitems/edit/2735766/?view=edit

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.