4.0.0
Giraffe 4.0.0 has been tested against netcoreapp3.0 alongside netcoreapp2.1 and net461. All sample code has been upgraded to .NET Core 3.0 as well.
ATTENTION:
This release of Giraffe fixes a bug in the routef handler which would have previously matched a route too eagerly.
Before:
Route: /foo/bar/hello/world
routef: /foo/bar/%s
Match: true
Now:
Route: /foo/bar/hello/world
routef: /foo/bar/%s
Match: false
For more information please see issue #347.
New features
- Support array of 'T as a child in form binding
- Added a new
DateTimeextension methodToIsoStringwhich produces a RFC3339 formatted string, and corrected the docs on the existingToHtmlStringextension method which actually produces a RFC822 formatted string.
Bug fixes and breaking changes
-
Fixed
routefto not match more than one URL path segment. -
Fixed the
_ariaLabelledByattribute in theGiraffeViewEngine -
Fixed case insensitive route handlers on Ubuntu
-
Changed minimum version of
Newtonsoft.Jsonto11.0.2. This allows Giraffe to be compatible with Azure Functions. -
Renamed
tryMatchInputtotryMatchInputExactand swapped the order of arguments so that the string value comes last -
Added new version of
tryMatchInputwhich acceptsMatchSettingsrecord:type MatchMode = | Exact // Will try to match entire string from start to end. | StartsWith // Will try to match a substring. Subject string should start with test case. | EndsWith // Will try to match a substring. Subject string should end with test case. | Contains // Will try to match a substring. Subject string should contain test case. type MatchOptions = { IgnoreCase: bool; MatchMode: MatchMode; }