- Notifications
You must be signed in to change notification settings - Fork749
Commitd6c0081
Support changes to CLR code when domain reloads
* Adds test cases for member changes during a domain reload* Rework the serialization of reflected typesSerialization of System.Type, MemberInfo and MethodBase is now stringbased. At deserialization, use reflection to attempt to recreate theobject, which may fail safely instead of throwing aSerializaitonException during the deserialization of the whoie datastream. Appropriate Exceptions will now be raised when the Maybe*'sValue property.ClassBase objects are now de-initialized and re-initialized in Reloadmode so that it's tp_dict picks up newly added members and removedmembers no longer linger.ModuleObject clears it's cache and remove cached members from it'stp_dict.Minor refactoring and modernization of MethodObject and MethodBinder* Call PyType_Modified after modifying the typeChanging a type's attribute causes problem with it's cache. Force thetype to refresh itself when modifying it.* Refactor the member binding logic of ClassManagerSo that we can use that same logic when deserializing Maybe* types* Include info about why deserialization failed in Maybe** Remove TestClassReferenceThe test case is covered in test_domain_relaodCo-authored-by: Benedikt Reinartz <filmor@gmail.com>Co-authored-by: Victor Milovanov <lost@losttech.software>1 parent0c41273 commitd6c0081
File tree
29 files changed
+2033
-235
lines changed- src
- domain_tests
- embed_tests
- runtime
- StateSerialization
29 files changed
+2033
-235
lines changedLines changed: 14 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
14 | 14 |
| |
15 | 15 |
| |
16 | 16 |
| |
| 17 | + | |
| 18 | + | |
17 | 19 |
| |
18 | 20 |
| |
19 | 21 |
| |
| |||
131 | 133 |
| |
132 | 134 |
| |
133 | 135 |
| |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
134 | 148 |
| |
135 | 149 |
| |
136 | 150 |
| |
|
Lines changed: 6 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + |
Lines changed: 26 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + |
0 commit comments
Comments
(0)