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
274 stars 57 forks source link

Fix MsgPack on .NET 8 #345

Closed kerams closed 1 year ago

kerams commented 1 year ago

Opening System.Collections.Generic on .NET 8, causes AddRange calls on a ResizeArray to be resolved to an extension method taking a span, instead of an instance method on the list. Fable then complains that the implicit cast to ReadOnlySpan is not supported.

fable_modules\Fable.Remoting.MsgPack.1.18.0\Write.fs(575,25): (575,30) error FABLE: System.ReadOnlySpan`1.op_Implicit (static) is not supported by Fable
jwosty commented 1 year ago

Just ran into this exact issue trying to upgrade my app to .NET 8. Would be awesome to have this merged!

Zaid-Ajaj commented 1 year ago

Hi @kerams @jwosty this went a bit under my radar, apologies for that 🙏 I will try to merge and publish this upcoming weekend

jwosty commented 1 year ago

No problem.

I also see that a lot of the CI tooling is out of date (it seems to build with .NET 3). Any way I can help upgrade some stuff?

Maybe I could start a .NET 8 branch, and have that use Fable 4 as the default (doing the same thing as #314, just with Fable 3 being the secondary build)? Then we can merge when .NET 8 comes out in October?

Zaid-Ajaj commented 1 year ago

Merged and published as of Fable.Remoting.MsgPack v1.19 🚀 apologies again for the delay

Maybe I could start a .NET 8 branch, and have that use Fable 4 as the default (doing the same thing as https://github.com/Zaid-Ajaj/Fable.Remoting/pull/314, just with Fable 3 being the secondary build)? Then we can merge when .NET 8 comes out in October?

I feel like remoting doesn't have to be running on the bleeding edge of dotnet 8, though CI setup could use an upgrade