Praxis v0.13.0 Release Notes

    • โž• Added nodoc! method to ActionDefinition, ResourceDefinition to hide actions and resources from the generated documentation.
    • 0๏ธโƒฃ Default HTTP responses:
      • Added descriptions
      • Added 408 RequestTimeout response
    • Replaced Ruport dependency in praxis:routes rake task with TerminalTable.
    • ๐Ÿ›  Fixed doc browser issue when attributes defaulting to false wouldn't display the default section.
    • โœจ Enhanced several logging aspects of the PraxisMapper plugin:
      • The log-level of the stats is now configurable in the plugin (see the comments here for details)
      • Added a "silence_mapper_stats" attribute in the Request objects so, actions and/or controllers can selectively skip logging stats (for example, health check controllers, etc)
      • It now logs a compact message (with the same heading) when the identity map has had no interactions.
    • โž• Added X-Cascade header support
      • Configured with boolean praxis.x_cascade that defaults to true.
      • When enabled, Praxis will add an 'X-Cascade: pass' header to the response when the request was not routable to an action. It is not added if the action explicitly returns a NotFound response.
    • ๐Ÿ›  Fixed bug in request handling where after callbacks were being executed, even if the stage returned a response.
    • โž• Added a handy option to tie an action route to match any HTTP verb.
      • Simply use any as the verb when you define it (i.e. any '/things/:id' )
    • ๐Ÿ‘ Allow a MediaType to define a custom links attribute like any other.
      • This is not compatible if it also wants to use the links DSL.