SetaFramework Manuals
Changelog
SetaFramework Changelog
Version 6.10.2 (28.01.2021)
- Widened psr/simple-cache dependency version
Version 6.10.1 (15.12.2021)
Version 6.10.0 (15.12.2021)
- Added support for php8.1
- Implemented symfony/mailer logger
- Fixed some code style and phpstan errors
- Added .ini.example files for setup script
- Minor code style fixes
- Updated phpfastcache and psr/simple-cache
- Added Di::parentInjections()
Version 6.9.0 (18.11.2021)
- Added option "trustedProxies.trustHttpXHeaders"
- Added GetObjectFromApplication DiAttribute 🐱🏍
- Bootstrap::registerShutdownFunction() is now deprecated
- Fixed namespace of some database tests
- Replaced registerShutdownFunction usage in TableSchemaBuilder
- Fixed MigrationGenerator if down or up was missing
Version 6.8.2 (10.11.2021)
Version 6.8.1 (10.11.2021)
- Fixed http bootstrap - When sessionConfig, trustedProxiesConfig or routerDefaultValues were missing an error was thrown
- Added support for storageless keys with password
Version 6.8.0 (10.11.2021)
- Added DI attributes
- Fixed default router values wasn't injected in constructor but on runtime
Version 6.7.1 (18.10.2021)
- Updated default .htaccess file
- Added workaround for security bug in diactoros
Version 6.7.0 (15.10.2021)
- Added support for trustedProxies for ServerRequest::getRemoteAddress()
Version 6.6.0 (20.09.2021)
- Added support for roadrunner websockets
- Added eror message to default mail subject
- Added error message to error handler logging
- Removed logs/simplesaml from setup script
- Update config.cacheHandlers.ini
Version 6.5.5 (16.07.2021)
Version 6.5.4 (03.07.2021)
- Fixed twig->extensions application config fallback value
Version 6.5.3 (01.07.2021)
- Fixed change in php8.0 for error handler
Version 6.5.2 (18.05.2021)
- Fixed use of register_shutdown_function in TableSchemaBuilder
- Fixed additionalOutputLogger in application server environment
- Fixed #SF-31 Seltsamer INI Reader Fehler mit Sections
Version 6.5.1 (10.05.2021)
- Fixed Bootstrap::resetState()
- Reverted Database\HasResettableConnection
Version 6.5.0 (06.05.2021)
- Added support for roadrunner
- Added multiple reset state methods across the logger, di, database, eventmanager, errorhandler, application and bootstrap
- Added fallback for environment variable in ini configs from $_SERVER
- Moved di invoker to Di to improve the performance
- Added HardLockException to RateLimiter
- Implemented #SF-29 TwigExtension per Konfiguration
- Replaced dynamicReturnTypeMeta.json with .phpstorm.meta.php
- Fixed SessionCookieHandler in application server scenario
- Fixed View::setDefaultScriptDirectory()
- Fixed default .htaccess file
Version 6.4.3 (15.03.2021)
- Renamed Storageless session asyncKey to symetricKey
- Prevented creation of storageless sessions with an empty symetric key
- Missing env variables in ini configs are now E_USER_ERROR instead of E_USER_NOTICE
Version 6.4.2 (12.03.2021)
Version 6.4.1 (09.03.2021)
- Fixed typehint in escape view helper
Version 6.4.0 (08.03.2021)
Version 6.3.1 (09.03.2021)
- Fixed typehint in escape view helper
Version 6.3.0 (03.03.2021)
- Implemented #SF-28 In HtmlHead boolean Attribute ermöglichen
- Updated to php7.4
- Added migration manager backup
Version 6.2.2 (21.08.2020)
- Changed MonologBuilder error on invalid handler to an warning as intended
- Added missing HttpApplicationInterface::getViewHelperNamespaces()
- Fixed type hints
- Switched to doctrine/sql-formatter
Version 6.2.1 (29.07.2020)
- Fixed querybuilder forUpdateNoWait and forShareNoWait
Version 6.2.0 (29.07.2020)
- Added nowait flag for PersistantDatabase
- Added debug twig extension
- Minor style change in migration manager
- ErrorHandler implements LoggerAwareInterface again
- Fixed ControllerDispatcher if no error controller exists
- Changed default .htaccess
Version 6.1.0 (03.06.2020)
- Fixed php7.4 notice
- Added SwiftMailerHelper
- Removed throws ViewException in ControllerInterface::getResponse()
- Default-Setup: Redirect to https is now always active by default
- Updated default .htaccess file
Version 6.0.1 (28.03.2020)
- Minor doc block improvement for ClosureWithIdentifier::create()
- Fixed same site param for session cookie
Version 6.0.0 (19.03.2020)
- Added:
- Twig support
- Added MigrationRunnerInterface::revertUntil()
- Added MigrationManager cli tool
- Added RequestPathPrefix container
- Added Query\Insert::select()
- Added JsonHelper::DEFAULT_ENCODING_OPTIONS constant
- Added Config::push() and Config::hasChain()
- Added FilesystemHelper::cleanupPath()
- ViewHelpers can now use __invoke instead a method named like the class name
- Changes:
- Reworked application and bootstrap structure
- Renamed AbstractHttp to AbstractHttpApplication
- Removed Autoloader from Bootstrap and Applications - if needed create one by yourself
- Reworked Controller
- Renamed AbstractJson to AbstractJsonController
- Added ControllerInterface
- Moved default view logic from AbstractController to AbstractViewController
- Reworked EventManager
- Moved ExtraParams from the EventManager to Event, so the listeners don't get them as argument but need to fetch them from the Event with Event::getExtraParams()
- Simplified EventManager (you now can register the same callback multiple times)
- Removed Event::stopPropagation()
- A already canceled event can now longer be "uncanceled"
- Removed Event::getEventManager()
- Removed HttpBootstrapEvent -> Events are now "normal" Events
- Splitted Middleware\ErrorHandler into two classes - Bootstrap\ErrorHandler and Middleware\ErrorHandler, most usages should be rewritten to Bootstrap\ErrorHandler
- Changed noun helper to use the plural for $count = 0
- Changed signature of PersistantDatabase::setupTable()
- Removed ParseJsonException - Replaced by \JsonException
- Removed AbstractPersistant (see #SF-23)
- Removed ConfigCache
- Removed old deprecated static methods of Session - moved to GlobalSession
- Removed argument $value from ValidatorInterface::getValidationInfo()
- Removed View::getHelper()
- Removed TemplateJoin view helper
- ArrayHelper::first() now only allows arrays instead of iterable
- Fixes:
- Di Invoker no longer caches the params for closures - As workaround to still cache the params you can now use a ClosureWithIdentifier wrapper
- Added htmlspecialchars to csrf token
- The usage of "@" in iniFiles will now generate cleaner paths
- HttpFactory - Removed prevention of setting some protected headers
- ContentType header in HttpFactory createHtmlResponse and createJsonResponse can now be overwritten
- location header in HttpFactory::createRedirect() can now be overwritten
Version 5.4.3 (06.01.2020)
- SF-25 zendframework zend-diactoros and zend-httphandlerrunner was renamed to laminas
Version 5.4.2 (09.12.2019)
- Fixed some type hints and comments
- Declared AbstractHttp::getRequestPathPrefix() final - shouldn't be used before
- Declared callback route internal
- Moved to git
Version 5.4.1 (25.11.2019)
- Added error codes to csrf protection exception
- CsrfProtection is now timeattack safe
- Extended csrf token generation - now includes the datetime of generation
Version 5.4.0 (19.11.2019)
- Updated dependencies (monolog)
- Added transaction id to database
- AbstractPersistant is now deprecated - use the implementations directly
- PersistantDatabase $ownTransaction param is now deprecated - use the *WithExternalTransaction() methods instead
- Fixed bug in controller dispatcher - if an error happens in the error controller the real error was lost
- Added experimental driver for pgsql
Version 5.3.3 (14.11.2019)
- Fixed quote later expressions didn't work in query filter (like "where", or "on")
Version 5.3.2 (06.11.2019)
- Added own csrf protection exception with different messages
- Added extra debug informations to InitBootstrap middleware
- Added actual date+time to newly generated session_ids
Version 5.3.1 (23.10.2019)
- Fixed maintenance exception for Di::getByClassName(), View::render() and ConfigReader::__construct()
Version 5.3.0 (23.10.2019)
- Added maintenance exception
- Fixed line height of minorErrors handler
- Added default javascript logger (in default logHandlers.ini)
Version 5.2.0 (11.10.2019)
- Fixed FilesystemHelper::recursiveGlobAsGenerator() wasn't a recursive generator
- Added ArrayHelper::flatten() and Collection::flatten()
- Added ArrayHelper::distribute()
Version 5.1.0 (23.08.2019)
- Default log handler in productive system is now logOnWarning AND mailOnError
- Removed migrations directory from default directories
- Added MathHelper::digitsum()
- Added ArrayHelper::isArrayOfInt(), ArrayHelper::isArrayOfString() and ArrayHelper::isArrayOfClass()
Version 5.0.2 (15.08.2019)
- The error handler will now be initialized on HttpBootstrap::prepare()
Version 5.0.1 (14.08.2019)
Version 5.0.0 (13.08.2019)
- Added:
- #SF18 - AbstractQuery processFilter which is used in where and on now supports empty arrays
- Implemented a database connection manager for easier sharing of database connections across multiple applications
- MigrationManager
- #SF-9 Copy Stacktrace in catched Errors
- Database::quote now supports quoting of iterables (like arrays)
- #SF-15 Added ArrayHelper::naturalLanguageImplode
- Added support for env variables in config
- #SF-22 ArrayHelper::groupBy implementiert
- #SF-21 Logger an Debug-Leiste
- Changes:
- We now use psr\http-factory instead of our own HttpMessageHandler - the old methods still exists and work but are marked as deprecated (all controllers have a httpFactory)
- Filesystem\File::getFileContentAsStream() was removed and replaced by getFileContent() with variable return type "string|StreamInterface|resource|FilePath". (If you want to create a Response out of a file see FilesystemHelper::createResponseByFile())
- Removed Collection::shuffle with seed
- Removed AbstractController::__call
- Removed dependency of SqlInterface::getSql to the database - instead we now have a client specific interface QuoteInterface as argument which is implemented by the database
- Moved Database::getManager() to HasManager::getManager()
- Fixes:
- Improved style in minorErrors.phtml
- Added optional previousException to PermissionException
Version 4.7.10 (02.04.2019)
- Fixed styling of error handler when body has a font-size
Version 4.7.9 (25.03.2019)
- Fixed database rate limiter
Version 4.7.8 (20.03.2019)
- Changed databaseThrottle to enable master-master database replication
- Added Database\AbstractManager::hasColumn()
- Improved generated csrf token
- Default .htaccess - Ensure domain doesn't start with "www." is now always active