Giraffe v5.0.0-rc Release Notes

Release Date: 2020-11-22 // 3 months ago
  • โฌ†๏ธ Upgraded to .NET 5. The 5.x version of Giraffe is targeting net5.0 and dropping support for all other target frameworks. If you cannot upgrade a project to .NET 5 yet then stay on an older version of Giraffe until you can. Giraffe has always been a .NET Core centered project and in the .NET Core world (and now .NET 5 world) there is little to no reason why a project should remain on an old .NET Core version for a long time when upgrade paths are mostly as simple as changing the <TargetFramework> property in an .fsproj file.

    Summary of changes going into 5.0.0-rc-1

    ๐Ÿ‘ Only supported target framework is .NET 5

    โž• Added Giraffe.EndpointRouting namespace with a version of a few routing handlers which integrate with ASP.NET Core's endpoint routing API

    • Currently supported are: route, routef, subRoute and HTTP verb handlers such as GET, POST, PUT, etc.
    • Check the Endpoint Routing documentation for more details

    - Or check the EndpointRoutingApp sample app for how to use Giraffe.EndpointRouting

    ๐Ÿ“ฆ Replaced Giraffe.GiraffeViewEngine with the standalone NuGet package Giraffe.ViewEngine

    ๐Ÿ†• New JsonOnlyNegotiationConfig for setting a content negotiation policy which only supports JSON serialisation (no XML for those who don't need it)

    โž• Added SystemTextJsonSerializer which uses System.Text.Json for JSON serialisation when configured as the desired JSON serializer in Giraffe

    ๐Ÿ‘Œ Improved RegEx http handlers in original (non Endpoint routing) http handlers

    ๐Ÿ“„ Swapped Markdown docs for XML docs for all functions.

    โž• Added support for complex model binding (see #416)


Previous changes from v5.0.0-alpha

    • ๐Ÿ‘ 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 the EndpointRoutingApp 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 no GiraffeViewEngine which is one of the reasons why it's an alpha-001 release. Plans are to bring it back in 5.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 uses System.Text.Json for JSON serialisation when configured as the desired JSON serializer in Giraffe