Skip to content

Routing Component Integration

Compare
Choose a tag to compare
@Blacksmoke16 Blacksmoke16 released this 11 Jan 23:15
· 111 commits to master since this release

New Dependencies

Removed Dependencies

Additions

Changes

  • (breaking-change) Integrate the Athena::Routing component by @Blacksmoke16 in athena-framework/athena#141
    • @[ATHA::Prefix(prefix: "/foo")] => @[ARTA::Route(path: "/foo")]

      • Prefixes no longer check parent types. Define a single ARTA::Route with the prefix on each controller
    • ATHA::* routing annotations have been replaced with ARTA::* routing annotations

    • The route path now takes trailing slashes into consideration

      • /foo is a diff route when compared to /foo/
    • The parameter syntax now uses {}

      • "/foo/:id/bar" => "/foo/{id}/bar"
    • The constraints route annotation field is now called requirements

    • The method route annotation field is now called methods

    • The default scheme when generating routes is now http when no base_uri is set

    • ATH::Exceptions::MethodNotAllowed now requires an array of valid methods as its first argument

    • Route duplication detection now solely takes the controller action name into consideration

    • Subclassing ATH::Request is no longer supported

    • (breaking-change) Remove #name, #path, #method, and #constraints from ATH::Action

Fixes