deserialization sinks#5508
Conversation
tamasvajk
left a comment
There was a problem hiding this comment.
Thank you for this contribution. This PR is rather large and therefore a bit difficult to review. I didn't yet check all the deserializer callables, weak/strong type deserializers, but I wanted to give you an initial review.
|
Ping |
Sorry for the delay, I'm a bit behind on code reviews. I'll catch up until mid next week. If not, feel free to ping me again. |
hvitved
left a comment
There was a problem hiding this comment.
Some initial comments. Thanks for you contributions.
|
The QLDoc check fails with So either add doc, or make the classes private. |
If I make for example Should I merge |
Then I think it is better to add documentation for the classes. |
|
Here is a run of the two queries comparing results before and after:
|
Probably the query is more valuable for corporate clients than for open source. |
| this instanceof ServiceStackTextCsvSerializerClass | ||
| or | ||
| this instanceof ServiceStackTextXmlSerializerClass | ||
| } |
There was a problem hiding this comment.
It would be nice to complete these lists with:
- YamlDotNet
- FsPickler
- Json.Net
- SharpSerializerBinary
- SharpSerializerXml
And maybe LitJSON according to this tweet: https://twitter.com/frycos/status/1391497640425279489
There was a problem hiding this comment.
I have added support for YamlDotNet (pre 5.x version), FsPickler, Json.Net and SharpSerializer.
I didn't add LitJson because in case of ToObject<T> (string json) the T cannot be user controlled. This leaves only ToObject(string json, Type ConvertType ), but my search didn't return any usages.
|
Ping |
|
Please resolve merge conflicts. |
|
I will perform an internal test for performance regressions; I'll let you know once it's done. |
|
As expected, |
Added twenty new sinks and verification if user controls instantiated type in strong type serializer case.