All Versions
48
Latest Version
Avg Release Cycle
59 days
Latest Release
-

Changelog History
Page 3

  • v0.1.9 Changes

    • 🛠 Fixed wrong version numbers in package references for Giraffe and Giraffe.Razor
  • v0.1.0 Changes

    💥 Breaking changes

    • ✅ Renamed portRoute to routePorts to be more consistent with other routing functions (route, routef, routeStartsWith, etc.)

    🆕 New features

    • 👍 routef and routeCif both support %O for matching System.Guid values now
    • ➕ Added HTML attributes helper functions to the GiraffeViewEngine.

    Example:

    let html = p [ _class "someCssClass"; _id "greetingsText" ] [ encodedText "Hello World" ]
    
  • v0.1.0-beta Changes

    🆕 New features

    • ➕ Added requiresAuthPolicy http handler
    • ➕ Added RenderHtml and ReturnHtmlFile extension methods to the HttpContext object
    • ➕ Added customJson http handler, which allows users to define a custom json handler (with custom serialization settings)
    • ➕ Added overloads to BindJson and BindModel where a user can pass in a custom JsonSerializerSettings object

    💥 Breaking changes

    • 🔄 Changed the default json serializer to use camel case for serialization (this change prevents users from being able to change the default serializer through the JsonConvert.DefaultSettings object - use customJson instead if customization is required)
    • 🔄 Changed the serializeJson, deserializeJson methods to accept an aditional parameter of type JsonSerializerSettings

    🐛 Bug fixes and improvements

    • Automatically URL decoding of string values when using routef
    • 🛠 Fixed an inference bug with routef by replacing the format parameter of the tryMatchInput method and the path parameter of the routef and routeCif methods from StringFormat to PrintFormat
    • 🐎 Changed the implementation of ctx.BindJson<'T>() for better performance and which aims to fix an Azure bug with Kestrel (#136)
    • 🛠 Fixed a bug with routeBind (#129)
    • 👌 Improved the htmlFile http handler by allowing the filePath parameter to be either rooted or relative to the ContentRootPath
  • v0.1.0-alpha025 Changes

    🔄 Changed the type XmlAttribute from the XmlViewEngine to accept either a string * string key value pair or a boolean attribute of type string. This was a missing to enable script tags such as <script src="..." async></script>.

    ➕ Added two helper functions (attr and flag) to simplify the creation of those attributes:

    script [
        attr "src" "http://example.org/example.js"
        attr "lang" "javascript"
        flag "async" ] []
    
  • v0.1.0-alpha024 Changes

    • 🆕 New routeBind http handler
    • 0️⃣ Annotated all default http handler functions with the HttpHandler type
  • v0.1.0-alpha023 Changes

    🐛 Bug fixes:

    • 🛠 Fixed build error in the Giraffe template.

    Further improvements to the XmlViewEngine:

    • 📇 Renamed renderXmlString to renderXmlNode and renamed renderHtmlString to renderHtmlNode
    • ➕ Added two more methods which accept a XmlNode list: renderXmlNodes and renderHtmlNodes
    • 🔄 Changed the return value of encodedText and rawText to return a single XmlNode instead of XmlNode list. This has the advantage that it can be used from within another list, which was not possible before.

    Before:

    let view =
        html [] [
            head [] [
                title []  (rawText "Giraffe")
            ]
            body [] (encodedText "Hello World")
        ]
    

    Now:

    let view =
        html [] [
            head [] [
                title []  [ rawText "Giraffe" ]
            ]
            body [] [ encodedText "Hello World" ]
        ]
    

    This has the advantage that you can also do this, which wasn't possible before:

    let view =
        html [] [
            head [] [
                title []  [ rawText "Giraffe" ]
            ]
            body [] [
                encodedText "Hello World"
                p [] [ rawText "Hello" ]
            ]
        ]
    
  • v0.1.0-alpha022 Changes

    A few modifications to the former HtmlEngine so that it can be used for correct XML rendering as well:

    • 📇 Renamed the Giraffe.HtmlEngine module to Giraffe.XmlViewEngine
    • 📇 Renamed HtmlAttribute to XmlAttribute, HtmlElement to XmlElement and HtmlNode to XmlNode
    • 📇 Renamed and make the function nodeToHtmlString private
    • ➕ Added comment function to the Giraffe.XmlViewEngine module for creating XML comments
    • ➕ Added renderXmlString and renderHtmlString functions to Giraffe.XmlViewEngine module for rendering XML and HTML nodes.
  • v0.1.0-alpha021 Changes

    • 🔄 Changed HttpContext.BindQueryString<'T>() to return 'T instead of Async<'T>
    • ➕ Added HttpContext.TryGetQueryStringValue (key : string) which returns an Option<string>
    • ➕ Added HttpContext.GetQueryStringValue (key : string) which returns a Result<string, string>
  • v0.1.0-alpha020 Changes

    📦 Split out the Razor view engine and the DotLiquid templating engine into separate NuGet packages:

    • Giraffe.Razor
    • Giraffe.DotLiquid

    📦 Please reference the additional packages if you were using any of the view or templating handlers.

    ⚡️ Also updated the giraffe-template NuGet package with the new changes and adapted the build.ps1 PowerShell script to successfully build on Linux environments too.

    ➕ Additionally TravisCI builds are run as part of every commit as well now.