All Versions
Latest Version
Avg Release Cycle
119 days
Latest Release
708 days ago

Changelog History

  • v1.3.0

    February 13, 2018
    • 👌 Improve type usage in doc comments.
    • 💅 Switch coding style to PSR-2.
    • 🚚 Mark shape keys in FastRoute.hhi as optional. This adds support for HHVM >= 3.23 and removes support for HHVM < 3.23.
  • v1.2.0

    February 05, 2017
    • ➕ Added support for route groups.
    • Made some RouteCollector properties protected instead of private.
  • v1.1.0

    December 27, 2016

    🛠 Fixed

    • If the cacheDisabled option is enabled, the cache file is no longer written. Previously it was not read, but still written. (#114)

    ➕ Added

    • ➕ Added convenience methods get(), post(), put(), delete(), patch() and head() to the RouteCollector. (#109)
  • v1.0.1

    June 17, 2016

    Placeholder names may now start with an underscore (_) character.

  • v1.0.0

    April 30, 2016

    🚀 This is a re-release of version 0.8.0 without code changes. Given the number of dependent projects there should be a formally stable release :)

  • v0.8.0

    March 25, 2016
    • 🛠 Fixed fallback from HEAD to GET if dynamic HEAD routes are defined.
    • First check all HEAD routes before attempting a GET fallback.
    • ➕ Add support for hyphens in placeholder names.
    • 👍 (Experimental.) Add support for fallback routes that match any method. These are specified using a * method and matched after all other routes.
  • v0.7.0

    December 20, 2015
    • ➕ Add HHI file for Hack typechecking support. The HHI file requires HHVM 3.9 or newer.
    • 🛠 Fix support for empty routes.
    • 👌 Improve error message if optional part is not at the end of a route.
  • v0.6.0

    June 24, 2015

    ➕ Added support for trailing optional segments, for example the route

    $r-\>addRoute('GET', '/foo[/{bar}[/{baz}]]', 'handler');

    is equivalent to the three routes

    $r-\>addRoute('GET', '/foo', 'handler');$r-\>addRoute('GET', '/foo/{bar}', 'handler');$r-\>addRoute('GET', '/foo/{bar}/{baz}', 'handler');

    📜 As a result of this additional the output format for RouteParser was changed to add another array level, which may need to be accounted for if you use a custom parser.

  • v0.5.0

    May 22, 2015
    • 🛠 Fixed fallback of static routes to dynamic routes with different allowed HTTP methods. (#50)
    • ➕ Added routeCollector option to dispatcher functions. (#40)
    • The simpleDispatcher() and cachedDispatcher() functions will now only be defined if they do not yet exist, resolving some autoloading issues. (#39)
    • Capturing groups inside placeholder regular expressions will now be detected and explicitly forbidden. (#34)

    🚀 This release changes the structure of the cached data (if cachedDispatcher is used), so the cache file should be removed after the update.

  • v0.4.0

    March 08, 2015

    🚀 This release adds support for registering a route for multiple HTTP methods at the same time, by passing an array for the method parameter of RouteCollector::addRoute(). For example:

    /\*\* @var RouteCollector $r \*/$r-\>addRoute(['GET', 'POST'], '/foo/{bar}', 'handlerForGetAndPost');// This is equivalent to:$r-\>addRoute('GET', '/foo/{bar}', 'handlerForGetAndPost');$r-\>addRoute('POST', '/foo/{bar}', 'handlerForGetAndPost');