NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Packagist · #1105 most downloaded on Packagist
Extends the Symfony routing component for dynamic routes and chaining several routers
Last release 10 months ago
03 Dec 2025
Release timing varies
gaps range from 2 weeks to 1.6 years
Most releases are documented
notes for 20 of 26 stable releases
Nothing withdrawn
no release was ever pulled
14 years old
51 releases · first in 2012
Allow installation with Symfony 8.
Fix deprecations on PHP 8.4.
Fix regression: Any kind of iterable can be used with the ContentAwareGenerator
One column per quarter.
Allow installation with Symfony 7.
Bugfix: Fix handling non-array return from route provider
[BC Break] Removed deprecated VersatileRouterInterface::supports, as only string route names are allowed since Symfony 6.
string. As noted inRouteObjectInterface::OBJECT_BASED_ROUTE_NAME (cmf_routing_object) asRouteObjectInterface::ROUTE_OBJECT (_route_object).Allow installation with psr/log 2 and 3
Allow installation with PHP 8. (Note that many dependencies do not yet support PHP 8, this release is mainly useful to test PHP 8 support.)
Allow installation with PHP 8.
(Note that many dependencies do not yet support PHP 8, this release is mainly useful to test PHP 8 support.)
ProviderBasedGenerator no longer passes the route object in the parameters to the Symfony generator, to avoid bogus query strings e.g. from doctrine p
ProviderBasedGenerator now also supports the RouteObjectInterface::OBJECT_BASED_ROUTE_NAME and RouteObjectInterface::ROUTE_OBJECT .
RouteObjectInterface::OBJECT_BASED_ROUTE_NAMERouteObjectInterface::ROUTE_OBJECT.Deprecated passing a route object (or anything else that is not a string) as the $name parameter in the generate method of the ChainRouter and the Dyn…
$name parameter in the generate method of the ChainRouter and the
DynamicRouter. Symfony 5 enforces the $name parameter to be a string with
static type declaration.
The future proof way to generate a route from an object is to use the route
name RouteObjectInterface::OBJECT_BASED_ROUTE_NAME (cmf_routing_object)
and pass the route object in the parameters with key
RouteObjectInterface::ROUTE_OBJECT (_route_object).$name.Avoid Symfony 4.3 event dispatcher deprecation warnings.
Fix warning about get_class on null in PHP > 7.2
get_class on null in PHP > 7.2ChainRouter now returns a new RequestContext if none has been set, to be closer in behaviour to the Symfony router.
Nothing published for this version
Fixed edge case in error reporting in ChainRouter.
Fixed edge case in error reporting in ChainRouter.
Nothing published for this version
Nothing published for this version
Release 2.0.0
Release 2.0.0
2017-01-31: Split out enhancer code from DynamicRouter into RouteEnhancerTrait for reusability.
Released.
Released.
2016-11-30: Changed file structure to have all php code in src/
Nothing published for this version
2016-02-27: Added ContentRepositoryEnhancer that can look up a content by ID from a content repository.
Nothing published for this version
Nothing published for this version
2014-09-29: Deprecated DynamicRouter::match in favor of matchRequest.
Release 1.3.0
Release 1.3.0
Nothing published for this version
Nothing published for this version
Nothing published for this version
2014-08-20: Added an interface for the ChainRouter
Release 1.2.0
Release 1.2.0
2013-01-07: Removed the deprecated $parameters argument in RouteProviderInterface::getRouteByName and getRoutesByNames.
Release 1.1.0
Release 1.1.0
Nothing published for this version
Nothing published for this version
Nothing published for this version
2013-04-30: Dropped Symfony 2.1 support and got rid of ConfigurableUrlMatcher class
Nothing published for this version
Nothing published for this version
Nothing published for this version
2013-07-31: DynamicRouter now accepts an EventDispatcher to trigger a RouteMatchEvent right before the matching starts
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →