Skip to content
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-staging] [hot_reload] ignore modified MONO_TABLE_TYPEDEF rows in update #90172

Merged

Conversation

github-actions[bot]
Copy link
Contributor

@github-actions github-actions bot commented Aug 8, 2023

Backport of #90166 to release/7.0-staging

/cc @lambdageek

Customer Impact

Customers using Hot Reload with WebAssembly or mobile platforms should be able to delete custom attributes from classes in a hot reload session without the runtime crashing. Additionally customers using Blazor WebAssembly should be able to delete a @layout directive without the runtime crashing.

Testing

CI testing

Risk

Low. The PR removes an overeager validation check that assumed there hot reload deltas will not contain rows that modify existing types. However Roslyn does send such changes (although the modified row is logically equivalent to its previous value) when delete a custom attribute attached to a class. Note that custom attribute deletion was already working for fields and methods.

We may want to validate that Parent, Interfaces and Attributes columns
haven't changed, but it's tricky and might be overly restrictive
src/mono/mono/component/hot_reload.c Outdated Show resolved Hide resolved
It's just two branches with comments. Remove the `if` entirely
@carlossanlop
Copy link
Member

carlossanlop commented Aug 14, 2023

Since this has not yet been approved by Tactics, and today is code complete for the September Release, this will have to wait until the October Release.

@SamMonoRT
Copy link
Member

Approved via Tactics email. Marking as servicing-approved

@SamMonoRT SamMonoRT added Servicing-approved Approved for servicing release and removed Servicing-consider Issue for next servicing release review labels Aug 23, 2023
@carlossanlop carlossanlop merged commit b739da3 into release/7.0-staging Sep 11, 2023
@carlossanlop carlossanlop deleted the backport/pr-90166-to-release/7.0-staging branch September 11, 2023 19:28
@ghost ghost locked as resolved and limited conversation to collaborators Oct 12, 2023
@leecow leecow modified the milestones: 7.0.x, 7.0.13 Nov 13, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-EnC-mono Hot Reload for WebAssembly, iOS/Android, etc Servicing-approved Approved for servicing release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants