WebSharper 4.6
This is a major release for WebSharper 4. See the associated WebSharper UI release.
Templates for .NET Core SDK: dotnet new -i WebSharper.Templates::4.6.0.357
Templates for Visual Studio 2017: http://websharper.com/installers/WebSharper.4.6.0.357.vsix
This release updates to a new version of FSharp.Compiler.Service. For optimal compilation speed, run the packages\WebSharper.FSharp.4.6.0.361\tools\runngen.ps1
script in administrator mode once.
Features
- #1067 Added the
Proxy
project type (experimental feature). Having"project"="proxy"
inwsconfig.json
makes the produced dll to contain no IL code, but have full WebSharper translation and metadata. With the use of multiple project files or msbuild conditionals, this allows building a dll from the original source code (or with slight modifications only) that can be used in parallel with the original .NET-facing library to add WebSharper cliens-side support for it. Also set"proxyTargetName"="OriginalAssemblyName"
. Examples upcoming. - #1069 Added
SingleNoJSErrors
compiler setting. Having"singleNoJSErrors"=true
inwsconfig.json
makes the WebSharper compiler report only the first occurrence of every type/method that is unsupported for the client side. - #1075 Added
UseJavaScriptSymbol
compiler setting. Having"useJavaScriptSymbol"=true
inwsconfig.json
makes the WebSharper compiler to include theJAVASCRIPT
conditional compilation symbol when making a pass for parsing the project for client-side use. Using#if JAVASCRIPT
is a top-level way of differentiating server-side and client-side code where needed, available in both F# and C#. This is added as an opt-in feature, because re-parsing takes some time, there should be no compile time regressions on existing projects. - #1084
wsconfig.json
location (including file name) is now configurable via theWebSharperConfigFile
project file property. Also, if not set,wsconfig.ProjectName.json
is checked first. - #1082 Strong naming works when building on .NET Core
- #576 Client-side support for collection interfaces
- #1073 Client-side support for
Microsoft.FSharp.Core.OptimizedClosures.FSharpFunc
- #1071 More client-side support for
Microsoft.FSharp.Core.LanguagePrimitives
/Operators
- #1073 Client-side support for
System.Collections.Generic.KeyNotFoundException
,System.Threading.Interlocked
- dotnet-websharper/templates#14 .NET Core/Standard templates available for Visual Studio
- dotnet-websharper/templates#23 Extension template available for .NET Standard
- Updated to
FSharp.Compiler.Service
version33.0.1
.