Skip to content

Releases: dotnet-websharper/core

WebSharper 6.1.5

01 Aug 09:06
Compare
Choose a tag to compare

This is a minor release of WebSharper 6. NuGet version 6.1.5.317.

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

Fixes

  • #1345 Web project startup time got significantly faster by better deserialization of WebSharper's metadata.

Improvements

  • #1329 using FSharp.Compiler.Service 43.7.300, adding compatibility for new F# features like the --test:GraphBasedChecking compiler flag for faster compilation.
  • #1344 The WebSharper Booster background process for speeding up successive compilations now have an icon.

WebSharper 6.1.4

15 Mar 19:24
Compare
Choose a tag to compare

This is a minor release of WebSharper 6. NuGet version 6.1.4.277.

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

Fixes

  • #1319 Links generated in HTML projects (also called Offline Sitelets) are now properly linking other .html files generated (fixing a break introduced in WebSharper 6.0).
  • #1320 WebSharper compilers now run with either .NET 6 or .NET 7 runtime (defaulting to highest available). All templates work out of the box if updated to net7.0.

WebSharper 6.1.3

20 Jan 10:04
Compare
Choose a tag to compare

This is a minor release of WebSharper 6. NuGet version 6.1.3.269.

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

Fixes

  • #1317 WebSharper now supports overloading for all operators and trigonometric functions defined in FSharp.Core.Operators module. Same as in F#, define your operator or trigonometric function as a static method on your custom numeric type.

WebSharper 6.1.2

16 Jan 17:21
Compare
Choose a tag to compare

This is a minor release of WebSharper 6. NuGet version 6.1.2.265.

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

Enhancements

  • #1305 Added decimal overload for MathJS.Math.Round
  • #1315 Add TryParse function for decimal

Fixes

  • #1287 Fixed translating F# recursive values that translate to lazy evaluation (let rec x = or let x = inside module rec that uses a function/type defined below it)
  • #1303 MathJS List.sumBy error with decimal
  • #1307 Fixed source map output for Offline Sitelets (HTML projects)
  • #1314 Make sure comparison operators treated properly on proxied types

WebSharper 6.1.1

19 Dec 21:37
Compare
Choose a tag to compare

This is a minor release of WebSharper 6. NuGet version 6.1.1.252.

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

Enhancements

  • #1301 Added new InternalProxy attribute. Works exactly like Proxy (enables a stand-in JS type for a .NET type), but is applied only inside current project. This can be used to proxy helper .NET classes that are used only internally in a project, without conflicts if any other WebSharper libraries also want to use it similarly. If a proper proxy exists in any dependencies, then the InternalProxy is ignored, with a compilation-time warning.

WebSharper 6.1

15 Dec 14:17
Compare
Choose a tag to compare

This is a major release of WebSharper 6. NuGet version 6.1.0.249.

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

This release adds support for FSharp.Core 7.0, while being compatible with referencing any FSharp.Core 6.0+.

Templates are still using .NET 6 (LTS) by default.

The compiler needs a .NET 6 runtime, but supports targeting .NET 7. If you update an F# WebSharper project to net7.0, you will also need to set <ProduceReferenceAssembly>false</ProduceReferenceAssembly> on your project.

Enhancements

  • #1289 Support for new FSharp.Core 7.0 functions in Result and Map modules.
  • #1298 for Proxy projects, "UseJavaScriptSymbol": true is the default, so you can use #if JAVASCRIPT in original code to separate WebSharper proxy related code.
  • #1281 Added missing shadow DOM related bindings to WebSharper.JavaScript.
  • #1275 WIG (WebSharper.InterfaceGenerator) allows using WithWarning on constructors and properties.
  • #1276 Added Media Capture and Streams API bindings to WebSharper.JavaScript.
  • #1277 Added Geometry API bindings to WebSharper.JavaScript.
  • #1270 Updates for File API bindings in WebSharper.JavaScript.
  • #1274 Updated Canvas API bindings in WebSharper.JavaScript.

Fixes

  • #1285 Fix typo in MutationRecord.Type binding.
  • #1283 F# generic arithmethics now use custom get_Zero member if defined for a custom numeric type.
  • #1284 F# Seq.sum/sumBy/average/averageBy functions (and List/Array equivalents) are working as in .NET for custom numeric types, using their get_Zero, op_Addition and for averaging, DivideByInt members, same as in .NET F#.

Breaking changes

  • #1274 Canvas API bindings have some renames on enumeration types: TextDirection, LineJoin, TextAlign, TextBaseLine has been renamed to CanvasTextDirection, CanvasLineJoin, CanvasTextAlign, CanvasTextBaseLine.
  • #1284 Any function using sum/sumBy/average/averageBy must use it with resolved generics or be marked with [<Inline>] so that WebSharper compiler can resolve these functions specific to the type used.

WebSharper 6.0.4

09 Oct 13:07
Compare
Choose a tag to compare

This is a minor enhancement release of WebSharper 6. NuGet version 6.0.4.240.

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

Fixes

  • #1269 Fixing null exception compile failure when using F# anonymous records inside Proxy projects.

WebSharper 6.0.3

04 Oct 08:57
Compare
Choose a tag to compare

This is a minor enhancement release of WebSharper 6. NuGet version 6.0.3.237.

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

Enhancements

  • #1267 The JavaScript attribute now can be used on constructor parameters with type FSharp.Quotations.Expr<_> to auto-transpile expression passed in. Previously this feature was available only on methods. (For example this is used internally by Doc.ClientSide helper of WebSharper.UI`)
  • #1266 The ClientSide function defined in WebSharper.Web.dll is now marked obsolete. Use new WebSharper.Web.InlineControl(expr) directly if needed, or when using WebSharper.UI, the Doc.ClientSide function. (It is recommended to use Doc.ClientSide instead of client, the former supports auto-quoting its expression argument, so you don't need to wrap it in <@ ... @>.

WebSharper 6.0.2

29 Sep 09:35
Compare
Choose a tag to compare

This is a minor bugfix release of WebSharper 6. NuGet version 6.0.2.235.

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

Fixes

  • #1264 Fixed WS metadata name for F# anonymous records to match IL name, this fixes using anon records across multiple projects and for remoting.

WebSharper 6.0.1

06 Sep 15:50
Compare
Choose a tag to compare

This is a minor enhancement release of WebSharper 6. NuGet version 6.0.1.233.

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

Enhancements

  • #1262 Whenever a method with JavaScript-enabled parameter also needs value of expression passed, like Doc.Hydrate, a warning is given if you use explicit <@ @> F# quotation instead of an auto-quoted parameter. This ensures the intended use of Doc.Hydrate to generate a server-side DOM too for SEO but it's still non-breaking if value cannot be found.
  • #1263 Compiler prints errors happening during offline Sitelet generation with all their inner exception info.