Releases: giraffe-fsharp/Giraffe
5.0.0-alpha-001
- Only supported target framework is .NET Core 3.1 (in preparation for .NET 5)
- Added
System.Text.Json
serializer - Added
Giraffe.EndpointRouting
namespace with a super early alpha version of new routing handlers which integrate with ASP.NET Core's endpoint routing API (check out theEndpointRoutingApp
sample app for examples before the documentation is ready) - Removed
Giraffe.GiraffeViewEngine
(in preparation to distribute it as a separate NuGet package, which doesn't exist yet). This release has noGiraffeViewEngine
which is one of the reasons why it's analpha-001
release. Plans are to bring it back in5.0.0-alpha-002
- New
JsonOnlyNegotiationConfig
for setting a content negotiation which only supports JSON serialisation and not XML - Improved RegEx http handlers in original (non Endpoint routing) http handlers
- Added
SystemTextJsonSerializer
which usesSystem.Text.Json
for JSON serialisation when configured as the desired JSON serializer in Giraffe
4.1.0
4.0.1
Fixed dependency references for TFM netcoreapp3.0
projects.
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
DateTime
extension methodToIsoString
which produces a RFC3339 formatted string, and corrected the docs on the existingToHtmlString
extension method which actually produces a RFC822 formatted string.
Bug fixes and breaking changes
-
Fixed
routef
to not match more than one URL path segment. -
Fixed the
_ariaLabelledBy
attribute in theGiraffeViewEngine
-
Fixed case insensitive route handlers on Ubuntu
-
Changed minimum version of
Newtonsoft.Json
to11.0.2
. This allows Giraffe to be compatible with Azure Functions. -
Renamed
tryMatchInput
totryMatchInputExact
and swapped the order of arguments so that the string value comes last -
Added new version of
tryMatchInput
which acceptsMatchSettings
record: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; }
3.6.0
Bug fixes
- Fixed a bug in the
subRouteCi
http handler, which prevented nested sub routes to be case insensitive.
New features
- Added two new
HttpContext
extension methods to retrieve cookie and form values:GetCookieValue (key : string)
GetFormValue (key : string)
3.5.1
Bug fixes
- Fixed a bug in Giraffe's model binding to not try to set read only properties anymore.
3.5.0
New features
- Updated all packages and framework library dependencies to .NET Core 2.2.
- Added a new
GET_HEAD
http handler (see: #314 for more info). - Added a new convenience function called
handleContext
, which can be used for creating newHttpHandler
functions.
Bug fixes
- Fixed the
_data
attribute in theGiraffeViewEngine
to accept akey
andvalue
parameter now.
3.4.0
Another quick minor release to push out the authorizeRequest
http handler.
New features
- Added a new http handler called
authorizeRequest
to authorize a request based on aHttpContext -> bool
predicate. - Added a new http handler called
authorizeUser
which is an alias forevaluateUserPolicy
. TheevaluateUserPolicy
handler will be removed in the next major release.
3.3.0
Minor release to publish a couple feature requests:
New features
- Added
str
as an alias for theencodedText
function from theGiraffeViewEngine
. - Added the
HttpContext.GetRequestUrl()
extension method to retrieve the entire URL string of the incoming HTTP request.
3.2.0
Improvements
- Adding the
charset
parameter in the HTTPContent-Type
response header when returning a text response (text/plain, text/html) or a JSON or XML response (application/json, application/xml). By default Giraffe is using UTF8 encoding for all its responses.