Change Log

21 October 2018

• Remove Fable.PowerPack from the dependencies of remoting client in favor of simple XMLHttpRequest, fixes #80 in this PR

19 August 2018

• Ported Fable client to Fable 2, using SimpleJson for JSON marshalling (see PR)
• Breaking change on the client: Remoting.buildProxy<'t>() becomes Remoting.buildProxy<'t> when used, see Client docs

10th August 2018

• Added ability to automatically generate interactive documentation from protocol definition (see PR)

July 2018 (See PR)

• Major infrastructure rewrite and improvements to Reflection code #55
• Checking whether the protocol definition is valid #56
• Run everywhere as Asp.NET Core Middleware (closes #19 and #20)
• Handle GET along with POST for remote functions that don't require input, i.e. functions of type Async<'t> or unit -> Async<'t> can be invoked using GET requests.
• Remote functions of a single paramter of type 'a -> Async<'b> don't require the request body to be an array of arguments, instead, you can send just the JSON object that can be deserialized to 'a. This is not applicable to functions where 'a is an array or list, fallback to a list of arguments is used.
• Removed the contextual remoting handler #50 Use fromContext function that let you gain access to the HttpContext.
• Localized error handling for Fable client: no more global error handlers #59
• Using ProxyRequestException for error handling that will give you access to the response when errors occur both for .NET and Fable client
• Added docs for Integration Testing
• Removed a lot of the functionality from the Fable client proxy #61
• Added reader monad as shorthand for constructing values using fromContext (docs TBA)
• Initial dependency injection support for Suave (docs TBA)