Skip to content

Releases: dotnet-websharper/core

WebSharper 6.1.9

25 Feb 16:53
Compare
Choose a tag to compare

This is a feature release of WebSharper 6, backporting some new features from WebSharper 8 beta. Thanks @MangelMaxime for suggestions and the implementation of DateTime custom formatters. NuGet version 6.1.9.513.

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

Improvements

  • #1426 UInt64 and Int64 supported with full precision by translating them to BigInt
  • #1429 Support for DateTime.ToString custom formatters
  • #1427 Support BigInt Json de/serialization, also enabling them to use in RPCs and making sure remoting with UInt64 and Int64 is still supported
  • #1430 Support LanguagePrimitives.EnumOfValue and LanguagePrimitives.EnumToValue

Fixes

  • #1437 Fix handling of WebSharperBuildService environment variable. Now, setting it to false correctly disables the use of WebSharper booster process and switches to standalone builds.
  • #1433 Fix constructing a DateTime with year < 100

WebSharper 6.1.8

18 Feb 10:04
Compare
Choose a tag to compare

This is a hotfix release of WebSharper 6, backporting some fixes from WebSharper 8 beta. NuGet version 6.1.8.506.

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

Fixes

  • #1375 Fix F# object expression with member using implicit generics failing with Method not found in JavaScript compilation
  • #1399 Fix F# struct copy generating invalid code around record copy expressions
  • #1385 Add proxy for DateTime.ToString: string -> string
  • #1384 Add proxy for CancellationTokenSource.Dispose
  • #1376, #1407 Fix bitwise not operation in F#

WebSharper 6.1.7

16 Aug 15:45
Compare
Choose a tag to compare

This is a hotfix release of WebSharper 6. NuGet version 6.1.7.474.

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

Fixes

  • #1413 Fix build error Unrecognized option: '--realsig-' happening with .NET 8 SDK version 8.0.400+

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.