comment
We just released version 3.5.9 of the WebSharper stack. This is mostly a bugfix release, with a few shorthands added to the UI.Next API.
Change log
WebSharper
#477: Fix translation to JavaScript of mutable variables used from a closure (F# 4.0 feature).
#478: Fix encoding of web controls by the ASP.NET ScriptManager.
#479: Fix currying of local functions in some edge cases.
#480: Fix division involving large negative integers.
#481: Include "Z" UTC indicator in server-side System.DateTime JSON serialization.
Ignore final slash in table-based Sitelets routing, thus fixing WebSharper.Suave #1.
WebSharper.Html
- #1: Restore Html.Server.Web.Control and fix the JSON encoding of any client-side controls it contains.
WebSharper.UI.Next
#43: Use
keypress
instead ofkeyup
for IE8-compatible input detection in theAttr.Value
andDoc.Input
families of functions. This makes it possible to useon.keyup
for other purposes, such as catching Enter to submit the input.Add
Submitter.CreateOption : View<'T> -> Submitter<option<'T>>
. This creates a Submitter with initial valueNone
, that maps the input view throughSome
when triggered.Rename the
View.Convert
andDoc.Convert
families of functions as follows:1 2 3 4 5 6 7 8
View.Convert -> View.MapSeqCached View.ConvertBy -> View.MapSeqCachedBy View.ConvertSeq -> View.MapSeqCachedView View.ConvertSeqBy -> View.MapSeqCachedViewBy Doc.Convert -> Doc.BindSeqCached Doc.ConvertBy -> Doc.BindSeqCachedBy Doc.ConvertSeq -> Doc.BindSeqCachedView Doc.ConvertSeqBy -> Doc.BindSeqCachedViewBy
The old versions still exist for backward-compatibility, but are marked obsolete.
Add extension method equivalents on
View<'T>
for all of the above. They are overloaded: all variants ofView.MapSeqCached
have an equivalentv.MapSeqCached()
, and all variants ofDoc.BindSeqCached
have an equivalentv.DocSeqCached()
.
Additionally,Doc.BindView
has an equivalentv.Doc()
.
Project Templates
The UI.Next project templates in the Visual Studio extension and the Xamarin Studio addin have been updated:
The SPA project uses
People.View.DocSeqCached()
instead ofListModel.View People |> Doc.Convert
.The Client-Server projects now use a reactive style for the small client-side code sample, instead of the previous imperative style.
Happy coding!