Releases: rougin/slytherin
Releases · rougin/slytherin
v0.9.8
Added
phpcsfixer.php
as custom rules for thefriendsofphp/php-cs-fixer
package- Test cases for the complete code coverage after running
friendsofphp/php-cs-fixer
@deprecated
notices for specified classes from previous versionsHandlerInterface
for all wrapper variants ofPSR-15
middlewares
Changed
Router::__construct
supports addingRouteInterface
in the array- Code styling based on
friendsofphp/php-cs-fixer
package
v0.9.7
Added
preferred
property in integrationsContainerException
inContainer
RouteInterface
for handling specific routes- Support for all versions of
http-interop/http-middleware
(0.3
,0.4
,0.5
) - Support version for PHP
v8.3
Routing
for creating HTTP routes directly inApplication
Changed
- Third-party packages in
Routing
extends to Slytherin'sDispatcher
,Router
- Conformed all application logic to
RouteInterface
UnexpectedValueException
toBadMethodCallException
inDispatcherInterface
- Conformed
Middleware
to the officialPSR-15
package (psr/http-server-middleware
) Application
class toSystem
- Improvement to unit tests (renamed to
snake_case
, improved logic)
Fixed
- Type hinting of all classes using
PHPStan
(up tolevel 9
) - Forward slash (
\\
) not required if setting$namespace
inRouter
- Checking of available instances in
Container::value
- If
ServerRequestInterface
is an argument with a middleware - Backward compatibility for
LeagueContainer::set
(as of~3.0
) - Backward compatibility for
TwigRenderer::render
(as of~3.0
) - Backward compatibility for
StratigilityDispatcher::process
(until~3.0
) - Resolving type hinted routes for third-party routing dispatchers
Removed
Integration\ConfigurationInterface
as its not being usedResolver
insideContainer
(will now not provide autowiring by default)
v0.9.6
Added
- Support versions for PHP
v8.0
,v8.1
,v8.2
Parameter
inContainer
for compatibility to PHPv8.0
and above
Changed
- Replaced
Scrutinizer CI
withCodecov
for code coverage - Replaced
Travis CI
withGithub Actions
for workflow
Fixed
- Compatibility of
LeagueContainer
in PHP v7.2.0 (only supports versions until2.9
) - Initializing of
AurynContainer
in PHPv7.0
and above - Errors during unit tests in migrating to
Github Actions
Removed
- Changes from the initial
v0.9.6
pre-release version
v0.9.5
v0.9.4
v0.9.3
Added
Middleware\HandlerInterface
Changed
- Allowed
IntegrationInterface
instances to be added inApplication::integrate
- Returning data in
Http\Uri::withUserInfo
- Return headers based from
HTTP_*
values in$_SERVER
global variable - Rewrite logic of
Http
package - Move
Container\Exception\NotFoundException
toContainer\NotFoundException
- Change
array_push
to$array[]
- Rewrite logic of
Template\Renderer
Fixed
- Running test cases without third-party packages
Removed
xdebug_get_headers
andheaders_list
inHttpIntegration
v0.9.2
v0.9.1
v0.9.0
NOTE: This release may break your application if upgrading from v0.8.0
release.
Added
- Implementation of PSR-7, PSR-11, and PSR-15 standards.
- Packages
psr/container
andpsr/http-message
are already included in this release - Install
http-interop/http-middleware
if you want to use middlewares inMiddleware
directory
- Packages
- Middlewares in
FastRoute\Dispatcher
andPhroute\Dispatcher
Integration
for integrating third-party packages to SlytherinConfiguration
for ease of access in getting configurations inside integrations- Integrations for existing directories (e.g
Http\HttpIntegration
,Debug\ErrorHandlerIntegration
) Routing\Router::prefix
for adding prefix in succeeding route endpointsRouting\Router::restful
for adding RESTful routes based on one base routeRouting\DispatcherInterface::router
for setting up routers manuallyApplication::container
for getting the static instance of PSR-11 containerContainer\ReflectionContainer
for using PHP's Reflection API for solving class dependencies- Resolving of type hinted parameters in functions or class methods
Application\CallbackHandler
andApplication\FinalCallback
for building a callback for the application
Changed
- Minimum required PHP version to
v5.3.0
Dispatching
directory toRouting
IoC
directory toContainer
Debug\Debugger
toDebug\ErrorHandler
Middleware\MiddlewareInterface
toMiddleware\DispatcherInterface
- Emit headers on
Application::run
only - Allow anonymous functions and objects in adding middleware from a specified route in
Middleware\Stratigility
Deprecated
Application\Application
classComponent
directoryDebug\Debugger
classDebugger
related classesDispatching
directoryErrorHandler
directoryIoC
directoryMiddleware\MiddlewareInterface
interfaceMiddleware\Stratigility\Middleware
classTemplate\Twig\Renderer
classVanilla
related classes
Fixed
- Appending of middleware response from
DispatcherInterface
's result inApplication::run
Array to string conversion
error when add callback routes with arguments- Compatibility issue for
Statigility\Middleware
- Getting
$request
object in container after being defined inApplication::handle
Removed
- HTTP method spoofing (apply it on a middleware instead)
- Traits (in order to achieve PHP
v5.3.0
as the minimum required version) getEnvironment
andsetEnvironment
inDebug\ErrorHandlerInterface