Download the PHP package decodelabs/harvest without Composer
On this page you can find all versions of the php package decodelabs/harvest. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package harvest
Harvest
PSR-15 HTTP stack without the mess
Harvest provides a unified PSR-15 HTTP stack with a simple, expressive API on top of PHP Fibers to avoid common pitfalls of other PSR-15 implementations such as call stack size, memory usage and Middleware traversal.
Get news and updates on the DecodeLabs blog.
Installation
Install via Composer:
Usage
Harvest provides the full PSR-15 stack, including Request, Response, Middleware and Handler interfaces.
String names passed to the Dispatcher will resolve via the optional PSR Container and then Archetype which has a default mapping for DecodeLabs\Harvest\Middleware
but can easily be extended with:
Fibers
Harvest uses PHP Fibers to flatten the call stack within the dispatch loop - this makes for considerably less noise when debugging and understanding Exception call stacks.
Instead of a call stack that grows by at least 2 frames for every Middleware instance in the queue (which gets problematic very quickly), Harvest utilises the flexbility of Fibers to break out of the stack at each call to the next HTTP handler and effectively run each Middleware as if it were in a flat list, but without breaking Exception handling or any of the semantics of stacking the Middleware contexts.
Transports
Once a Response has been generated, you can then use an instance of a Harvest Transport
to send it to the client.
Harvest currently provides a Generic Transport implementation that uses PHP's built in header and output stream functions.
Responses
Harvest provides easy shortcuts for creating Response instances:
Licensing
Harvest is licensed under the MIT License. See LICENSE for the full license text.
All versions of harvest with dependencies
decodelabs/archetype Version ^0.3
decodelabs/coercion Version ^0.2.7
decodelabs/collections Version ^0.9
decodelabs/compass Version ^0.2
decodelabs/deliverance Version ^0.2.11
decodelabs/exceptional Version ^0.4.4
decodelabs/glitch-support Version ^0.4.4
decodelabs/singularity Version ^0.2.2
decodelabs/slingshot Version ^0.1.1
decodelabs/veneer Version ^0.11.6
psr/container Version ^2.0
psr/http-factory Version ^1.0
psr/http-message Version ^2.0
psr/http-server-handler Version ^1.0
psr/http-server-middleware Version ^1.0