Releases: slimphp/Slim
Releases · slimphp/Slim
3.4.0
Added
- 1749: Configurable FastRoute Caching
- 1781: Support structured suffix body parsers (+json/+xml)
- 1782: Support +json & +xml accept headers when creating error responses
- 1837: Add removeNamedRoute to Router and unit test
- 1844: #1669 added Routable::setPattern method
- 1848: Add
psr/http-message-implementationto composer - 1856: Add option to remove content-length
Improved
- 1663: ContainerInterop compliance improvement
- 1830: Abstract handlers
- 1855: Update fast-route to stable version
Fixed
- 1846: #1836 count amount of bytes read instead of chunks
- 1859: Don't set http status code on withRedirect implicitly
- 1862: Do not clone response body while cloning response
The full list of changes is here
3.3.0
3.2.2
3.2.1
3.2.0
Added
- #1736 - Support the
hostOnlycookie flag - #1764 - Write to the PHP error log if displayErrorDetails is false to make it easier to find out what's gone wrong!
- #1770 - Support PHP 7+ errors in the same way that Exceptions are handled.
Improved
- #1716 - Middleware is now only resolved when required.
- #1745 - Separate service registration from the container to make it easier to use your own Pimple container and then register the default Slim services.
Fixed
- #1733 & #1734 - Allow setting an empty array into the Request's query params and parsed body.
- #1737 - Do not explicitly set the HTTP status code in
withJson. - #1738 - Named routes added after a call to
pathForcan now be resolved in subsequent calls topathFor. - #1739 - Responses with a body of indeterminate length can now have their content sent.
The full list of changes is here
3.1.0
This version makes a number of minor issues and improvements since the release of 3.0.0. The key changes are:
Added
- #1620 - Add
getParsedBodyParam()andgetQueryParam()toSlim\Http\Request. - #1688 - Add
App::process()to allow running a Slim application when you already have a request and response object. This allows a Slim application to be used within the middleware of another middleware pipeline. - #1697 - Add HTTP 451 status code to
Slim\Http\Response.
Improved
- #1670 - Removed
finalfromSlim\Containerto allow extension. - #1684 -
withJson()will now thrown an Exception if it fails to encode. - #1706 - Calling a non-existent method on
Appwill now through an exception.
Fixed
- #1682 - Parse
REQUEST_URLcorrectly inSlim\Http\Uri. - #1698 -
Slim\Http\Requestnow correctly determines the HTTP protocol version.
The full list of changes is here
3.0.0
This is the first stable release of Slim 3!
Changes since RC2
- #1643 - Revert detection of
Uri's baseUrl so that routing of URLs of the form/foo/index.php/bar/bazwork again. - #1655 - Ensure that calling
$request->withMethod()turns off detection of_METHODdetection.
The full list of changes is here.
3.0.0 RC 3
This release fixes a security issue, clears up some inconsistencies and fixes a number of bugs.
Security fix in 3.0.0-RC3:
- #1624 - XXE attacks are now prevented when parsing XML input.
BC breaks in 3.0.0-RC3:
These are the BC breaks since RC2:
- #1631 - The route callable is now bound to the Container rather than to the App to be consistent with middleware binding. This means that if you are using
$this->subRequestthen you now need touse ($app)and then$app->subRequest(…). Also if you were using$this->getContainer()->get(…), you need to change this to$this->get(…). Note that using$this->footo retrieve a service from the container continues to work. - #1626 - Route paths are now simply concatentated with no magic. This may affect the way route groups were previously set up, but from now on, it's very predictable.
- #1625 - Group middleware is now executed before the route's middleware as you would expect. See issue #1622 for details.
The full list of changes is here.
3.0.0 RC 2
BC breaks in 3.0.0-RC2:
- #1550 - The
MiddlewareTrait'saddMiddleware()method is now protected. Please use theadd()method. - #1559 -
Request::getIp()has been removed. Please use middleware such as rka-ip-address-middleware instead. - #1570 - Inspection of
X-Forwarded-ProtoandX-Forwarded-Hostheaders inUrihave been removed. Please use middleware such as rka-scheme-and-host-detection-middleware instead.
New features in 3.0.0-RC2:
- #1509 - Slim 3's error handlers now only show exception information if you enable the
displayErrorDetailssetting. - #1552 - The router now has a new method called
internalPathFor()for use withsubRequest(). - We have adopted Glenn Eggleton's' PHP-View component for rendering using PHP view scripts.
The full list of changes is here
3.0.0 RC 1
BC breaks in 3.0.0-RC1:
- #1489 -
getParsedBody()will now return an array in all situations when JSON or form-urlencoded data is sent by the client. Previously, it returned an object when the content type was JSON. - #1457 - The Container can now be configured via an array passed into the
App's constructor. Note that this means that your settings must now live in a sub-array called 'settings'. - #1443 -
pathFornow prepends the base path, making URLs easier to generate when you are running Slim within a subdirectory and removes the need to prepend withgetBaseUrl().
New features in 3.0.0-RC1:
- #1490 - Slim 3's error handlers now return JSON, XML or HTML as determined by the request's Accept header.
- #1488 - You can now disable Slim 3's error handler completely.
The full list of changes is here