Skip to content

WebSharper 5.0.0.100-preview1

Pre-release
Pre-release
Compare
Choose a tag to compare
@mrtank mrtank released this 10 Sep 16:08
· 666 commits to master since this release

This is a preview release of WebSharper 5.

Templates for .NET Core SDK: dotnet new -i WebSharper.Templates::5.0.0.102-preview1

Features

  • #1116 Support for .NET 5.0. .NET Standard 2.0+, and .NET Core 2.1+ are also still supported.
  • #1112 Using FSharp.Compiler.Service 40.0 for F# 5.0 language features. Added support for:
    • String interpolation
    • nameof
    • Enhanced slicing
    • Applicative Computation Expressions
    • Default interface member consumption
    • Implicit interop with nullable value types
  • #1131 New build service for caching F# compiler instance and WebSharper metadata, allowing hot startup for rebuilds. Service's name is "WebSharper Booster <version number>" where the version number can be 5.0.0.100 (#1156). Running the service is automatically enabled. Disabling this feature can be done by
    • Use --standalone+ flag at compile.
    • Add WebSharperBuildService environment variable with "False" value.
    • Add <WebSharperStandalone>True</WebSharperStandalone> project property.
  • #1153 Unpacking resources compilation step time improved.
  • #664 For Sitelets web projects, the compiler now pre-calculates and save runtime metadata in the web project assembly, gaining significant startup time improvements.
    • #1197 Added .SiteletAssembly(asm) method on WebSharperBuilder (to be used inside .UseWebSharper call in Startup.Configure). Sets the assembly used for getting sitelets runtime metadata, this is not needed in web projects themselves (defaults to entry assembly), but can be used for testing, to select which assembly is the WS web project.
  • #1181 Any Sitelets.Content objects now can be returned from ASP MVC routed endpoints too.

Enhancements

  • #1148 Added support for Floor/Ceiling methods in MathJS and updated bindings to support 9.4.4 (#1154).
  • #1164 Add ability to Property and Member to depend on resources as well as Assembly, Resource, Class, Interface in WebSharper Interface Generator.
  • #1160 Move WebSharper.JQuery into its own nuget package (https://github.com/dotnet-websharper/jquery).
  • #1172 Substitute JQuery's AjaxWith with a similar XMLHttpRequest solution in Routing.
  • #1176 Added Application.Text overload for C#
  • #1195 Added bindings for EventSource.
  • #1143 FSharp.Core 5.0 Map/Set working correctly with RPCs.

Breaking changes

  • Compiler project drops support for Net4x. netstandard2.0, .NET Core 3.1 are still supported.

Fixes

  • #1123 Fix "FSC : WebSharper error FS9001: You must provide assembly output path."
  • #1165 Fix "WebSharper warning WS9002: Failed to load return type..." Warning for generic types.
  • #1173 Fix XMLHttpRequest.send() binding.
  • #1183 Fix "error MSB6006: "wsfsc.sh" exited with code 134" on linux (wsfsc fails to build projects). Fixing #1184 together with #1183, because the new build service interactions coupled when build fails on linux.
  • #1184 Fix "Impossible to load assemblies for SwaggerProvider.DesignTime.dll".
  • #1191 Fix "CodeModel.Interface should auto-cast members".