Revel v0.21.0 Release Notes

Release Date: 2018-10-30 // over 5 years ago
  • ๐Ÿ†• New items

    • ๐Ÿ‘ Session Engine support You can now define your own session engine. By default the cookie engine is the one used for the session, but with this change you can implement your own. Also controller.Session is now a map[string]interface{} which means you can place any object that can be serialized to a string.
    • โž• Added http mux support you can now integrate Revel with packages that have their own HTTP muxers. This allows you to integrate with Hugo, Swagger or any suite of software that is out there.
    • 0๏ธโƒฃ revel.controller.reuse app.conf option to turn on / off reuse of the controllers. Defaults to true

    ๐Ÿ’ฅ Breaking changes

    controller.Session is now a map[string]interface{} (previously was map[string]string) this means existing code needs to cast any values they pull from the session

        if username, ok := c.Session["user"]; ok { // username is a string type
            return c.getUser(username)
        }
    

    ๐Ÿ”„ changes to

        if username, ok := c.Session["user"]; ok { // username is an interface{} type
            return c.getUser(username.(string))
        }
    

    ๐Ÿšš Deprecated log points removed
    ๐Ÿšš revel.ERROR, revel.TRACE, revel.DEBUG, revel.WARN have been removed

    Function name change revel.OnAppStop Replaced revel.OnAppShutdown

    ๐Ÿšš revel.SimpleStack was moved to github.com/revel/revel/utils.SimpleStack

    ๐Ÿ†• New packages required

    Revel Framework

    • github.com/twinj/uuid (revel/revel session ID generation)

    Revel Cmd

    • github.com/kr/pty (revel/cmd capture output of dep tool)

    ๐Ÿ“ฆ Package changes

    Revel Framework

    • โž• Added stack to errors Added stack information to router when forumlating error
    • ๐Ÿ›  Fix spelling errors from go report
    • โœ‚ Removed deprecated loggers
    • โšก๏ธ Updated travis , made windows success optional
    • ๐Ÿ”ฆ Exposed StopServer function to public Changed session filter to use empty call
    • ๐Ÿš€ 577ae8b Enhancement pack for next release Added session engine support, and the session cookie engine breaking change revel.Session was map[string]string now is map[string]interface{}
    • โšก๏ธ Updated shutdown to support windows environment
    • ๐Ÿ‘ Patched shutdown support to make it work through the event engine
    • Added ENGINE_SHUTDOWN_REQUEST to events, raising this event will cause the server to shutdown
    • Assigned Server engines to receive revel.Events Added revel.OnAppStop hooks -
    • ๐Ÿ“ฆ Normalized startup / shutdown hooks into their own package

    Revel Cmd

    • Modified run command to translate symlinks to absolute paths
    • โšก๏ธ Tool updates Updated tool to give more meaningful errors
    • โž• Added file system as an option to fetch the skeleton from
    • ๐Ÿ‘ Allow windows to fail on travis
    • โš™ run Command will choose CWD if no additional arguments are supplied
    • โž• Added Revel version check, compatible lists are in model/version

    Revel Modules

    • โšก๏ธ Updated CSRF test cases
    • โž• Added travis test for modified test engine
    • โšก๏ธ Updated server-engine modules to support OnAppStop functionality.
    • โšก๏ธ Reorganization, readme updates Moved auth example into its own folder
    • โšก๏ธ Updated root readme
    • โšก๏ธ Updated CSRF

    Revel Examples

    • ๐Ÿ›  Fixed issue with error checking closes websocket in chat
    • โšก๏ธ Updated booking module to work with changed session
    • โšก๏ธ Updated to remove any references to old revel.log variables