Releases: dotnet-websharper/core
WebSharper 6.1.9
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
andInt64
supported with full precision by translating them toBigInt
- #1429 Support for
DateTime.ToString
custom formatters - #1427 Support
BigInt
Json de/serialization, also enabling them to use in RPCs and making sure remoting withUInt64
andInt64
is still supported - #1430 Support
LanguagePrimitives.EnumOfValue
andLanguagePrimitives.EnumToValue
Fixes
WebSharper 6.1.8
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
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
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
WebSharper 6.1.4
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
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
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
Fixes
- #1287 Fixed translating F# recursive values that translate to lazy evaluation (
let rec x =
orlet x =
insidemodule 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
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 likeProxy
(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 theInternalProxy
is ignored, with a compilation-time warning.
WebSharper 6.1
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
andMap
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 (andList
/Array
equivalents) are working as in .NET for custom numeric types, using theirget_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 toCanvasTextDirection
,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
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.