Changed
- Changes to the
Phalcon\Acl:- Renamed
Phalcon\Acl\ComponentAwaretoPhalcon\Acl\ComponentAwareInterface - Renamed
Phalcon\Acl\RoleAwaretoPhalcon\Acl\RoleAwareInterface#15691
- Renamed
- Changed
requiretorequire_onceinPhalcon\Loaderto avoid conflicts with other loaders #15489 - Changed
requiretorequire_onceinPhalcon\Cli\ConsoleandPhalcon\Mvc\Applicationfor a bit of extra performance #15489 Phalcon\Collectionhas been moved under theSupportnamespace:- Renamed
Phalcon\CollectiontoPhalcon\Support\Collection - Renamed
Phalcon\Collection\ExceptiontoPhalcon\Support\Collection\Exception - Renamed
Phalcon\Collection\ReadOnlytoPhalcon\Support\Collection\ReadOnly - Renamed
Phalcon\CollectiontoPhalcon\Support\Collection#15700
- Renamed
- Changes to
Phalcon\Session\Bag:- Changed
Phalcon\Session\Bag::constructto accept a container instead of internally calling the default - Changed
Phalcon\Session\Bag::constructto throw an exception if the container is not specified - Changed
Phalcon\Session\Bag::initto store the data in the session #15494
- Changed
- Changed
Phalcon\Events\Event::construct()to allowsourceto be nullable #15133 - Changes to
Phalcon\Crypt- Moved
Phalcon\Crypt\ExceptiontoPhalcon\Crypt\Exception\Exception - Moved
Phalcon\Crypt\MismatchtoPhalcon\Crypt\Exception\Mismatch - Changed the ccm/gcm modes to store the
authTagwith the encryption string and process it with the decryption string #15717
- Moved
- Created new namespace
Phalcon\Encryption- Moved
Phalcon\CrypttoPhalcon\Encryption\Crypt - Moved
Phalcon\SecuritytoPhalcon\Encryption\Security - Moved the whole
Securitynamespace underEncryptionSecurity\JWT\Exceptions\UnsupportedAlgorithmExceptiontoEncryption\Security\JWT\Exceptions\UnsupportedAlgorithmExceptionSecurity\JWT\Exceptions\ValidatorExceptiontoEncryption\Security\JWT\Exceptions\ValidatorExceptionSecurity\JWT\Signer\AbstractSignertoEncryption\Security\JWT\Signer\AbstractSignerSecurity\JWT\Signer\HmactoEncryption\Security\JWT\Signer\HmacSecurity\JWT\Signer\NonetoEncryption\Security\JWT\Signer\NoneSecurity\JWT\Signer\SignerInterfacetoEncryption\Security\JWT\Signer\SignerInterfaceSecurity\JWT\Token\AbstractItemtoEncryption\Security\JWT\Token\AbstractItemSecurity\JWT\Token\EnumtoEncryption\Security\JWT\Token\EnumSecurity\JWT\Token\ItemtoEncryption\Security\JWT\Token\ItemSecurity\JWT\Token\ParsertoEncryption\Security\JWT\Token\ParserSecurity\JWT\Token\SignaturetoEncryption\Security\JWT\Token\SignatureSecurity\JWT\Token\TokentoEncryption\Security\JWT\Token\TokenSecurity\JWT\BuildertoEncryption\Security\JWT\BuilderSecurity\JWT\ValidatortoEncryption\Security\JWT\ValidatorSecurity\JWT\ValidatortoEncryption\Security\JWT\ValidatorSecurity\ExceptiontoEncryption\Security\ExceptionSecurity\RandomtoEncryption\Security\Random#15729
- Moved
- Renamed
Phalcon\Crypt\Crypt::getHashAlgo()toPhalcon\Crypt\Crypt::getHashAlgorithm()Phalcon\Crypt\Crypt::getAvailableHashAlgos()toPhalcon\Crypt\Crypt::getAvailableHashAlgorithms()Phalcon\Crypt\Crypt::setHashAlgo()toPhalcon\Crypt\Crypt::setHashAlgorithm()#15717
- Renamed
Phalcon\Factory\AdapterFactory::getAdapters()toPhalcon\Factory\AdapterFactory::getServices()#15717 - Changed
Phalcon\Crypt\Crypt::__construct()to haveuseSigningset totrueby default #15717 - Changes to
Phalcon\Config- Moved
Phalcon\ConfigtoPhalcon\Config\Config - Changed
Phalcon\Config\Config::pathby making thedelimiterparameter astring - Changed
Phalcon\Config\Adapter\Ini::__constructto not acceptnullas the mode. The default is nowINI_SCANNER_NORMAL(2) - Refactored the code for more efficiency and speed #15720
- Moved
- Changed
Phalcon\Db\Adapter\AdapterInterface::getInternalHandler()andPhalcon\Db\Adapter\Pdo\AbstractPdo::getInternalHandler()to returnvarinstead of\PDOfor custom adapters with different engines #15119 - Moved
Phalcon\FiltertoPhalcon\Filter\Filter; added more tests #15726 - Changed
Phalcon\Mvc\Model::getPreparedQuery()to returnQueryInterfaceinstead ofQuery#15562 - Moved
Phalcon\CachetoPhalcon\Cache\Cache#15728 - Changed
Phalcon\Factory\AdapterFactoryto define the factory exception ingetExceptionClass()instead of a property. #15728 - Renamed
Phalcon\Db\Adapter\AbstractAdapter::getSqlVariables()toPhalcon\Db\Adapter\AbstractAdapter::getSQLVariables()to align with the rest of thegetSQL*methods #15637 - Moved
Phalcon\LoggertoPhalcon\Logger\Logger#15727 - Changes to
Phalcon\Escaper- Moved
Phalcon\EscapertoPhalcon\Html\Escaper - Moved
Phalcon\Escaper\EscaperInterfacetoPhalcon\Html\Escaper\EscaperInterface - Moved
Phalcon\Escaper\ExceptiontoPhalcon\Html\Escaper\Exception - Deprecated methods (to be removed at a future version)
escapeCss()becomescss()escapeJs(), becomesjs()escapeHtml()becomeshtml()escapeHtmlAttr()becomesattributes()escapeUrl()becomesurl()setHtmlQuoteType()becomessetFlags()#15757
- Moved
- Changed
Phalcon\Encryption\Security::hash()to also usepassword_hash()and acceptARGON2*algorithms #15731 - Removed uncamelize of
realClassNameinPhalcon\Mvc\Router\Route::getRoutePaths()if definition is string to make processing same as if array definition #15067 - Changed
Phalcon\Validation::getValue()behavior to get value fromdataif not found inentity. #14203 - Changed
Phalcon\Forms\Form::isValid()signature: addedwhitelistargument. #14203 - Changed
Phalcon\Support\Collection\ReadOnlytoPhalcon\Support\Collection\ReadOnlyCollectionto avoid conflicts with the read-only feature in PHP 8.1 #15767 - Removed
Phalcon\Text- replaced byPhalcon\Support\Helper\Str\*#15776 - Removed
Phalcon\Helper\Arr- replaced byPhalcon\Support\Helper\Arr\*#15776 - Removed
Phalcon\Helper\File- replaced byPhalcon\Support\Helper\File\*#15776 - Removed
Phalcon\Helper\Json- replaced byPhalcon\Support\Helper\Json\*#15776 - Removed
Phalcon\Helper\Number- replaced byPhalcon\Support\Helper\Number\*#15776 - Removed
Phalcon\Helper\Str- replaced byPhalcon\Support\Helper\Str\*#15776 - Removed references to
Phalcon\Text,Phacon\Helper\*from the code replacing it withPhalcon\Support\Helper\*#15776 - Synchronized tests with
phalcon/phalconthus increasing coverage #15776 - Changed
Phalcon\Assets\Managerto require aPhalcon\Html\TagFactoryin its constructor #15776
Added
- Added more tests in the suite for additional code coverage #15691
- Added
Phalcon\Events\AbstractEventsAwareclass to handle the Events Manager when necessary #15691 - Added
Phalcon\Acl\Adapter\AdapterInterface::getInheritedRoles()andPhalcon\Acl\Adapter\Memory::getInheritedRoles()that returns the inherited roles based on a passed role name (or all if no parameter supplied) #15154 - Changes to
Phalcon\Crypt- Added
Phalcon\Crypt\Padding\PadIntefaceand padding adaptersPhalcon\Crypt\Padding\AnsiPhalcon\Crypt\Padding\Iso10126Phalcon\Crypt\Padding\IsoIekPhalcon\Crypt\Padding\NoopPhalcon\Crypt\Padding\PadInterfacePhalcon\Crypt\Padding\Pkcs7Phalcon\Crypt\Padding\SpacePhalcon\Crypt\Padding\Zero
- Added
Phalcon\Crypt\PadFactoryto easily create padding adapters - Added more tests increasing coverage #15717
- Added
- Added
Phalcon\Cache\Adapter\*::setForever()andPhalcon\Storage\Adapter\*::setForever()to allow storing a key forever #15485 - Added
Phalcon\Encryption\Security::getHashInformation()to return information for a hash #15731 - Added constants
Phalcon\Encryption\Security::CRYPT_ARGON2IandPhalcon\Encryption\Security::CRYPT_ARGON2ID#15731 - Added
allowEmptychecks to common validators #15515 - Added
Phalcon\Forms\Form::getFilteredValue()to get filtered value without providing entity #15438 - Added
Phalcon\Forms\Form::setWhitelist()andPhalcon\Forms\Form::getWhitelist()#14203 - Added
dirtyStateserialization inPhalcon\Mvc\Model#15571 - Added short versions of helpers for
Phalcon\Html\TagFactory(call service as a method) #15776 - Added short versions of helpers for
Phalcon\Support\HelperFactory(call service as a method) #15776 - Added
Phalcon\Html\Helper\Doctypehelper fordoctypegeneration #15776 - Added
styleorlinktag option forPhalcon\Html\Helper\Style#15776
Fixed
- Fixed
Query::getExpression()return type #15553 - Fixed
Phalcon\Mvc\Model::getRelated()to correctly return relationships (cached or not) when the foreign key has changed #15649 - Fixed
Phalcon\Db\Adapter\Pdo\*,Phalcon\Mvc\ModelandPhalcon\Mvc\Model\MetaData\Strategy\Annotationsto treatBIGINTnumbers as string #15632 - Fixed
Phalcon\Crypt\Crypt::decrypt()to correctly calculate the hash when using signed mode #15717 - Fixed
Phalcon\Mvc\Model\Manager::isVisibleModelProperty()to correctly check if setting property is visible #15276 - Fixed
Phalcon\Config\Config::mergeto retain numeric indexes in deep merges #14705 - Fixed globals (Zephir change) to correctly display string values for global settings in
phpinfo()#15269 - Fixed
Phalcon\Storage\Adapter\Redis::getAdapter()andPhalcon\Cache\Adapter\Redis::getAdapter()to accept the connection timeout in the constructoroptions#15744 - Fixed
Phalcon\Db\Adapter\AbstractAdapter::getSQLVariables()to return an empty array when initialized #15637 - Fixed
Phalcon\Cache\Adapter\*andPhalcon\Storage\Adapter\*to delete a key whenset()is called with a zero or negative TTL #15485 - Fixed
Phalcon\Db\Adapter\Pdo\Mysqlto not usePDO::ATTR_EMULATE_PREPARESandPDO::ATTR_STRINGIFY_FETCHESby default. This allows numbers to be returned with resultsets instead of strings for numeric fields #15361 - Fixed
Phalcon\Validation\Validator\Fileto usemessageFileEmpty#14928 - Fixed
Phalcon\Db\RawValueusage bugs inPhalcon\Mvc\Model::doLowUpdate()#15413 - Fixed
typeattribute for stylesheet links #15776 - Fixed
Phalcon\Debugto not throw an exception if a URL service is not present #15381
Removed
- Removed
Phalcon\Kernel- obsolete #15776