diff --git a/CHANGELOG.md b/CHANGELOG.md index 5edaea0..2d24dde 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,46 @@ Versions prior to 1.0 were originally released as `phly/conduit`; please visit its [CHANGELOG](https://github.com/phly/conduit/blob/master/CHANGELOG.md) for details. +## 2.2.1 - 2018-04-04 + +### Added + +- Nothing. + +### Changed + +- Nothing. + +### Deprecated + +- Nothing. + +### Removed + +- Nothing. + +### Fixed + +- [#167](https://github.com/zendframework/zend-stratigility/pull/167) fixes an + issue with the `PathMiddlewareDecorator` whereby it was using the original + request when invoking the handler it creates, instead of prepending the + configured path prefix to the request URI created. With the fix, if middleware + alters the request path passed to the handler, the changes will now propagate + to later middleware. As an example: + + ```php + new PathMiddlewareDecorator('/api', middleware(function ($request, $handler) { + $uri = $request->getUri(); + if (! preg_match('#^/v\d+/#', $uri->getPath())) { + $request = $request->withUri($uri->withPath('/v1' . $uri->getPath())); + } + return $handler->handle($request); + })); + ``` + For the request path `/api/books`, the above will now correctly result in + `/api/v1/books` being propagated to lower layers of the application, instead of + `/api/books`. + ## 2.2.0 - 2018-03-12 ### Added