Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Add BinaryFormatter to corefx #10088
This ports BinaryFormatter from desktop, along with all of the supporting types and general Formatter-related types. I've added a bunch of tests, bringing code coverage up to ~80%, though there's still more that can/should be done. I did not port remoting-specific functionality, though there are still some remnants I've left as they were enabled in the runtime even when remoting wasn't compiled in, as it wasn't clear if they were serving additional purposes. I did a bunch of cleanup, but there's still more that can be done in the fullness of time.
I already made several changes to CoreCLR to enable this:
(This PR is currently going against master. If that turns out to be the wrong branch for it, I'll resubmit against the correct branch prior to merging.)
From a logic perspective, it's the desktop code. I had to supply replacements where there were dependencies that aren't exposed, remove code that wasn't relevant, plus a lot of style stuff, but for the most part it's the same code and doesn't need to be reviewed in depth... honestly there are parts I'm not entirely sure what they're doing ;)