Skip to content
This repository was archived by the owner on Jan 29, 2020. It is now read-only.

Commit 734d89e

Browse files
committed
Added CHANGELOG for #270
1 parent 42f6fc5 commit 734d89e

File tree

1 file changed

+58
-5
lines changed

1 file changed

+58
-5
lines changed

CHANGELOG.md

Lines changed: 58 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,32 @@
22

33
All 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

Comments
 (0)