Stable release based on Slim PHP 4
-
Now based on Slim 4
-
Added as much strict typing as possible all over the code base in class property declarations, class method & stand-alone function parameters and return types
-
The namespace prefix Slim3MvcTools has been renamed to SlimMvcTools
-
Added Localization functionality out of the box using the Vespula Locale package
- see ./config/languages/, \SlimMvcTools\Controllers\BaseController->updateSelectedLanguage() : void & the default layout template file & some views like the login form for how this feature has been implemented
-
Added ./src/AppErrorHandler.php which should be used for error handling logic
-
\SlimMvcTools\Container is the PSR-11 compliant container that now ships with this framework
-
Nyholm PSR7 & Nyholm PSR7 Server are the PSR 7 implementations that now ship with this framework
-
UI & JS frameworks like the Zurb Foundation front-end framework (http://foundation.zurb.com/) and jQuery have been removed and no longer ship with this package. It just ships with minimal HTML, CSS & Vanilla JavaScript.
-
PHP 7.4 is the minimum required version
-
Switched from BSD-2 to BSD-3 license
-
The following settings have been removed from ./config/app-settings.php
- httpVersion, responseChunkSize, outputBuffering, determineRouteBeforeAppMiddleware, routerCacheFile, bind_options & ldap_server_addr
-
The following settings have been added to ./config/app-settings.php
- logErrors, logErrorDetails, app_base_path, error_template_file, use_mvc_routes, mvc_routes_http_methods, auto_prepend_action_to_action_method_names, default_controller_class_name, default_action_name, error_handler_class, html_renderer_class, json_renderer_class, log_renderer_class, xml_renderer_class
-
Keys for items registered in the container instance defined in ./config/dependencies.php are now constants defined in \SlimMvcTools\ContainerKeys
-
The items with the following keys (errorHandler, errorHandlerClass, notFoundHandler, notFoundHandlerClass, notAllowedHandler & notAllowedHandlerClass) in the dependencies file for version 3 are no longer present in version 4 and their previous functionality can easily be implemented in \SlimSkeletonMvcApp\AppErrorHandler->__invoke(...)
-
A local object & 2 factories that create new instances of PSR 7 Request & Response objects have been added to ./config/dependencies.php with the following keys:
- ContainerKeys::LOCALE_OBJ, ContainerKeys::NEW_REQUEST_OBJECT & ContainerKeys::NEW_RESPONSE_OBJECT
-
-
The default value of session.save_path in config/ini-settings-dist.php is now ./tmp/session
-
./config/routes-and-middlewares.php has been revamped to work with Slim 4
-
./documentation/MOVIE_CATALOG_APP_WALK_THROUGH.md, ./documentation/MVCFUNCTIONALITY.md & ./documentation/QUICKSTART.md have been updated to reflect all the changes in this release
-
./src/layout-templates/error-template.php has been added and is meant to be used as the layout template for displaying error pages like HTTP 404 not found, etc.
-
A $controller_object variable which is a reference to the controller instance currently being invoked is now available in all views and layouts rendered via the BaseController's renderLayout & renderView methods
- s3MVC_MakeLink has been removed. You should use $controller_object->makeLink($path) in your view & layout files instead
Full Changelog: 3.0.3...4.0.0