22
33All notable changes to this project will be documented in this file, in reverse chronological order by release.
44
5- ## 1.0.0 - TBD
6-
7- First stable release.
5+ ## 1.0.0rc6 - TBD
6+
7+ Sixth release candidate.
8+
9+ This release contains backwards compatibility breaks with previous release
10+ candidates. All previous functionality should continue to work, but will
11+ emit ` E_USER_DEPRECATED ` notices prompting you to update your application.
12+ In particular:
13+
14+ - The routing middleware has been split into two separate middleware
15+ implementations, one for routing, another for dispatching. This eliminates the
16+ need for the route result observer system, as middleware can now be placed
17+ * between* routing and dispatching — an approach that provides for greater
18+ flexibility with regards to providing route-based functionality.
19+ - As a result of the above, ` Zend\Expressive\Application ` no longer implements
20+ ` Zend\Expressive\Router\RouteResultSubjectInterface ` , though it retains the
21+ methods associated (each emits a deprecation notice).
22+ - Configuration for ` Zend\Expressive\Container\ApplicationFactory ` was modified
23+ to implement the ` middleware_pipeline ` as a single queue, instead of
24+ segregating it between ` pre_routing ` and ` post_routing ` . Each item in the
25+ queue follows the original middleware specification from those keys, with one
26+ addition: a ` priority ` key can be used to allow you to granularly shape the
27+ execution order of the middleware pipeline.
28+
29+ A [ migration guide] ( http://zend-expressive.rtfd.org/en/latest/migration/rc-to-v1/ )
30+ was written to help developers migrate to RC6 from earlier versions.
831
932### Added
1033
@@ -24,14 +47,44 @@ First stable release.
2447 a flow/architectural diagram to the "features" chapter.
2548- [ #262 ] ( https://github.com/zendframework/zend-expressive/pull/262 ) adds
2649 a recipe demonstrating creating classes that can intercept multiple routes.
50+ - [ #270 ] ( https://github.com/zendframework/zend-expressive/pull/270 ) adds
51+ new methods to ` Zend\Expressive\Application ` :
52+ - ` dispatchMiddleware() ` is new middleware for dispatching the middleware
53+ matched by routing (this functionality was split from ` routeMiddleware() ` ).
54+ - ` routeResultObserverMiddleware() ` is new middleware for notifying route
55+ result observers, and exists only to aid migration functionality; it is
56+ marked deprecated!
57+ - ` pipeDispatchMiddleware() ` will pipe the dispatch middleware to the
58+ ` Application ` instance.
59+ - ` pipeRouteResultObserverMiddleware() ` will pipe the route result observer
60+ middleware to the ` Application ` instance; like
61+ ` routeResultObserverMiddleware() ` , the method only exists for aiding
62+ migration, and is marked deprecated.
63+ - [ #270 ] ( https://github.com/zendframework/zend-expressive/pull/270 ) adds
64+ ` Zend\Expressive\MarshalMiddlewareTrait ` , which is composed by
65+ ` Zend\Expressive\Application ` ; it provides methods for marshaling
66+ middleware based on service names or arrays of services.
2767
2868### Deprecated
2969
30- - Nothing.
70+ - [ #270 ] ( https://github.com/zendframework/zend-expressive/pull/270 ) deprecates
71+ the following methods in ` Zend\Expressive\Application ` , all of which will
72+ be removed in version 1.1:
73+ - ` attachRouteResultObserver() `
74+ - ` detachRouteResultObserver() `
75+ - ` notifyRouteResultObservers() `
76+ - ` pipeRouteResultObserverMiddleware() `
77+ - ` routeResultObserverMiddleware() `
3178
3279### Removed
3380
34- - Nothing.
81+ - [ #270 ] ( https://github.com/zendframework/zend-expressive/pull/270 ) removes the
82+ ` Zend\Expressive\Router\RouteResultSubjectInterface ` implementation from
83+ ` Zend\Expressive\Application ` .
84+ - [ #270 ] ( https://github.com/zendframework/zend-expressive/pull/270 ) eliminates
85+ the ` pre_routing ` /` post_routing ` terminology from the ` middleware_pipeline ` ,
86+ in favor of individually specified ` priority ` values in middleware
87+ specifications.
3588
3689### Fixed
3790
0 commit comments