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

Releases: zendframework/zend-expressive

zend-expressive 2.1.1

09 Mar 15:49
Compare
Choose a tag to compare

Added

  • Nothing.

Changed

  • Nothing.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #583 provides a number of minor fixes and test changes to ensure the component works with the zend-expressive-router 2.4 version. In particular, configuration-driven routes will now work properly across all versions, without deprecation notices.

  • #582 fixes redirects in the documentation.

zend-expressive 3.0.0rc3

07 Mar 17:44
Compare
Choose a tag to compare

Added

  • Nothing.

Changed

  • #579 updates the version constraint for zend-expressive-router to use 3.0.0rc4 or later.

  • #579 updates the version constraint for zend-stratigility to use 3.0.0rc1 or later.

Deprecated

  • Nothing.

Removed

  • #580 removes zend-diactoros as a requirement; all usages of it within the package are currently conditional on it being installed, and can be replaced easily with any other PSR-7 implementation at this time.

Fixed

  • Nothing.

zend-expressive 3.0.0rc2

06 Mar 23:32
Compare
Choose a tag to compare

Added

  • Nothing.

Changed

  • Nothing.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #578 fixes the version constraint used with zend-stratigility to allow it to update to later versions when released.

zend-expressive 3.0.0rc1

27 Feb 16:48
Compare
Choose a tag to compare

Added

  • Nothing.

Changed

  • Nothing.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #574 updates the classes Zend\Expressive\Exception\InvalidMiddlewareException and MissingDependencyException to implement the PSR-11 ContainerExceptionInterface.

zend-expressive 3.0.0alpha9

22 Feb 21:23
Compare
Choose a tag to compare

Added

  • #562 adds the class Zend\Expressive\Response\ServerRequestErrorResponseGenerator, and maps it to the Zend\Expressive\Container\ServerRequestErrorResponseGeneratorFactory. The class generates an error response when an exeption occurs producing a server request instance, and can be optionally templated.

Changed

  • #568 updates the zendframework/zend-stratigility dependency to require at least 3.0.0alpha4.

  • #568 updates the ErrorHandlerFactory to pull the Psr\Http\Message\ResponseInterface service, which returns a factory capable of returning a response instance, and passes it to the Zend\Stratigility\Middleware\ErrorHandler instance it creates, as that class changes in 3.0.0alpha4 such that it now expects a factory instead of an instance.

  • #562 modifies the Zend\Expressive\Container\RequestHandlerRunnerFactory to depend on the Zend\Expressive\Response\ServerRequestErrorResponseGenerator service instead of the Zend\Expressive\SERVER_REQUEST_ERROR_RESPONSE_GENERATOR virtual service.

  • #562 extracts most logic from Zend\Expressive\Middleware\ErrorResponseGenerator to a new trait, Zend\Expressive\Response\ErrorResponseGeneratorTrait. A trait was used as the classes consuming it are from different namespaces, and thus different inheritance trees. The trait is used by both the ErrorResponseGenerator and the new ServerRequestErrorResponseGenerator.

Deprecated

  • Nothing.

Removed

  • #562 removes the constant Zend\Expressive\SERVER_REQUEST_ERROR_RESPONSE_GENERATOR. It was only used internally previously.

Fixed

  • Nothing.

zend-expressive 3.0.0alpha8

21 Feb 22:54
Compare
Choose a tag to compare

Added

  • Nothing.

Changed

  • #559 reverts the changes performed for #556 to the ApplicationFactory. It now uses the canonical service name for the PathBasedRoutingMiddleware instead of the ROUTE_MIDDLEWARE constant.

  • #561 updates to zend-expressive-router 3.0.0alpha3.

  • #561 renames Zend\Expressive\Container\ResponseFactory to Zend\Expressive\Container\ResponseFactoryFactory, and the factory now returns a callable that will return a zend-diactoros Response instance, instead of returning the instance itself. Each of the various services named after zend-expressive-router response constants were removed in favor of a single Psr\Http\Message\ResponseInterface service resolving to the ResponseFactoryFactory.

  • #561 modifies the Zend\Expressive\Handler\NotFoundHandler to compose a response factory instead of a response prototype. This approach allows it to use the Psr\Http\Message\ResponseInterface service defined per the above note.

  • #561 renames the Zend\Expressive\Router\IMPLICIT_HEAD_MIDDLEWARE_STREAM_FACTORY service to Psr\Http\Message\StreamInterface, as this is what zend-expressive-router now expects.

  • #561 renames the Zend\Expressive\ServerRequestFactory service to Psr\Http\Message\ServerRequestInterface. The Zend\Expressive\SERVER_REQUEST_FACTORY constant now resolves to the interface name.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #558 adds a
    missing import statement for the PSR-7 StreamInterface to the StreamFactoryFactory.

  • #555 adds tests to better ensure that the entries in the ConfigProvider resolve to valid factories, aliases, etc.

zend-expressive 3.0.0alpha7

14 Feb 21:46
Compare
Choose a tag to compare

Added

  • Nothing.

Changed

  • #556 modifies the ApplicationFactory such that it now uses the Zend\Expressive\ROUTE_MIDDLEWARE constant in order to retrieve the Zend\Expressive\Router\Middleware\PathBasedRoutingMiddleware instance. This is done to help smooth upgrades from v2 to v3, as it prevents a manual step when updating the config/pipeline.php, and ensures that the instance composed in the application is the same instance piped to the application.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • Nothing.

zend-expressive 3.0.0alpha6

14 Feb 16:12
Compare
Choose a tag to compare

Added

  • #551 and #553 add Zend\Expressive\Container\StreamFactoryFactory, for producing an callable capable of producing an empty, writable PSR-7 StreamInterface instance using zend-diactoros. The stream produced is backed by a php://temp stream.

  • #551 and #554 add the following constants under the Zend\Expressive namespace:

    • DEFAULT_DELEGATE can be used to refer to the former DefaultDelegate FQCN service.
    • IMPLICIT_HEAD_MIDDLEWARE can be used to refer to the former Zend\Expressive\Router\Middleware\ImplicitHeadMiddleware service.
    • IMPLICIT_OPTIONS_MIDDLEWARE can be used to refer to the former Zend\Expressive\Router\Middleware\ImplicitOPTIONSMiddleware service.
    • NOT_FOUND_MIDDLEWARE can be used to refer to the former Zend\Expressive\Middleware\NotFoundMiddleware service.
    • NOT_FOUND_RESPONSE can be used to refer to the former Zend\Expressive\Response\NotFoundResponseInterface service.
    • SERVER_REQUEST_ERROR_RESPONSE_GENERATOR can be used to refer to the former Zend\Expressive\ServerRequestErrorResponseGenerator service.
    • SERVER_REQUEST_FACTORY can be used to refer to the former Zend\Expressive\ServerRequestFactory service.

Changed

  • #551 updates dependencies to pin to zend-expressive-router 3.0.0alpha2 or later.

  • #551 renames Zend\Expressive\Middleware\NotFoundMiddleware to Zend\Expressive\Handler\NotFoundHandler, which allows it to be used as a PSR-15 request handler, and, when piped or routed to, also as middleware. The original class name was aliased to the renamed class in the ConfigProvider.

  • #551 modifies the ApplicationConfigInjectionDelegator to raise an exception if the callback passed to it does not produce an Application instance, instead of returning the instance without changes. This allows developers to understand what they need to correct in their service configuration.

  • #551 updates the ConfigProvider to add entries for the following zend-expressive-router constants as follows:

    • IMPLICIT_HEAD_MIDDLEWARE_RESPONSE maps to the ResponseFactory.
    • IMPLICIT_HEAD_MIDDLEWARE_STREAM_FACTORY maps to the StreamFactory.
    • IMPLICIT_OPTIONS_MIDDLEWARE_RESPONSE maps to the ResponseFactory.
  • #554 updates the ConfigProvider to add entries for the following constants as follows:

    • IMPLICIT_HEAD_MIDDLEWARE aliases to the Zend\Expressive\Router\Middleware\ImplicitHeadMiddleware service.
    • IMPLICIT_OPTIONS_MIDDLEWARE aliases to the Zend\Expressive\Router\Middleware\ImplicitOptionsMiddleware service.

Deprecated

  • Nothing.

Removed

  • #551 removes Zend\Expressive\Container\RouteMiddlewareFactory, as zend-expressive-router now provides a factory for the middleware.

  • #551 removes Zend\Expressive\Container\DispatchMiddlewareFactory, as zend-expressive-router now provides a factory for the middleware.

  • #551 removes Zend\Expressive\Middleware\ImplicitHeadMiddleware, as it is now provided by the zend-expressive-router package.

  • #551 removes Zend\Expressive\Middleware\ImplicitOptionsMiddleware, as it is now provided by the zend-expressive-router package.

Fixed

  • Nothing.

zend-expressive 3.0.0alpha5

07 Feb 17:32
Compare
Choose a tag to compare

Added

  • Nothing.

Changed

  • #547 modifies the ConfigProvider, the NotFoundMiddlewareFactory, and the RouteMiddlewareFactory to remove the concept of the unshared ResponseInterface service, as service sharing is not always configurable in container implementations. To resolve the ability to provide discrete instances, the ConfigProvider defines two new virtual services that each resolve to the Zend\Expressive\Container\ResponseFactory:

    • Zend\Expressive\Response\NotFoundResponseInterface
    • Zend\Expressive\Response\RouterResponseInterface

    The related factories now consume these services in order to receive a response prototype for the services they produce.

  • #542 modifies the composer.json to no longer suggest the pimple/pimple package, but rather the zendframework/zend-pimple-config package.

  • #542 modifies the composer.json to no longer suggest the aura/di package, but rather the zendframework/zend-auradi-config package.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • Nothing.

zend-expressive 3.0.0alpha4

07 Feb 14:35
Compare
Choose a tag to compare

Added

  • Nothing.

Changed

  • Nothing.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #549 modifies how the ServerRequestFactoryFactory returns the ServerRequestFactory::fromGlobals() mechanism, wrapping it in an anonymous function. This ensures compatibility across all containers.

  • #550 fixes how the ConfigProvider references the ErrorResponseGenerator, using the Zend\Expressive\Middleware namespace instead of the Zend\Stratigility\Middleware namespace.