-
Notifications
You must be signed in to change notification settings - Fork 4.9k
Move serialization primitives to System.Runtime #10667
Move serialization primitives to System.Runtime #10667
Conversation
36477d5
to
b66158e
Compare
b66158e
to
5ab7b3d
Compare
Debug.Assert(null != name, "[SerializationInfo.UpdateValue]name!=null"); | ||
Debug.Assert(null != value, "[SerializationInfo.UpdateValue]value!=null"); | ||
Debug.Assert(null != type, "[SerializationInfo.UpdateValue]type!=null"); | ||
//Debug.Assert(null != name, "[SerializationInfo.UpdateValue]name!=null"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why are these asserts commented out?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As per the original PR message written by @stephentoub:
Debug.Assert is not currently available in System.Runtime. Asserts have been commented out with TODOs.
@@ -4,15 +4,17 @@ | |||
<PropertyGroup> | |||
<AssemblyName>System.Runtime.Serialization.Primitives</AssemblyName> | |||
<AssemblyVersion>4.2.0.0</AssemblyVersion> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FYI - I've reverted some of the versioning changes to this library in master see PR #10707. We will need to handle that merge accordingly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, yeah I'll fix the merge conflicts.
A few minor comments but otherwise looks good. |
b77e750
to
3768b22
Compare
We need BinaryFormatter to be able to serialize types from coreclr that use the various serialization types (e.g. ISerializable), which means those types must have the same identity as the ones BinaryFormatter recognizes, and we need a bunch of types all across corefx to be able to use these same types to implement serialization. As such, the types are moving down to System.Runtime, and on coreclr, are type-forwarding to the implementations there. There are a few outstanding issues: - SR is not currently available in System.Runtime. The few uses of SR in the versions of the code used for corert have been replaced by hardcoded strings and TODOs. - Debug.Assert is not currently available in System.Runtime. Asserts have been commented out with TODOs. - To get things to build as types are moving around, P2P references are used.
3768b22
to
17aa557
Compare
Thanks for finishing this, @joperezr. |
…on_primitives Move serialization primitives to System.Runtime Commit migrated from dotnet/corefx@a9ab503
cc: @weshaggard @stephentoub
replaces: #10388
This PR takes the old one that @stephentoub started, and finishes it by updating the packages correctly in order to have the right surface area for each
TargetGroup
.Original PR message: