Zaid-Ajaj / Fable.Remoting

Type-safe communication layer (RPC-style) for F# featuring Fable and .NET Apps
https://zaid-ajaj.github.io/Fable.Remoting/
MIT License
272 stars 54 forks source link

Fixes #226 and Fixes #227 #228

Closed Zaid-Ajaj closed 3 years ago

Zaid-Ajaj commented 3 years ago

This PR includes TypeShape source file and removes the problematic code that checks for IsByRefLike dynamically since we don't need it afaik (fixes #226) I've also attempted to solve #227 where DateTimeKind wasn't preserved when sent over the wire (also because I wanted to dive into the MsgPack implementation a little bit)

@kerams Can you please have a look just to make sure I didn't do anything too dumb? Besides that I used the space of a int64 to send a enum which can only have values {0, 1, 2} 😅

Zaid-Ajaj commented 3 years ago

Thanks a lot for the explanation and for reviewing @kerams if the way I handled DateTimeKind isn't problematic and works correctly, I will leave it as is. Let's get this in and publish a new batch 😄

kerams commented 3 years ago

Unfortunately, MsgPack also depends on TypeShape, so it'll need to be included there too.