All Versions
100
Latest Version
Avg Release Cycle
58 days
Latest Release
1560 days ago
Changelog History
Page 2
Changelog History
Page 2
-
v4.0.0-rc.1 Changes
September 23, 2019โ Added
- โ Added optional boolean parameter to
Phalcon\Http\Request::getURI()
(as well as its interface) which indicates whether or not the method should return only the path without the query string
๐ Changed
- ๐ Changed
Phalcon\Url::get
to use implementation behindPhalcon\Helper\Str::reduceSlashes
to reduce slashes #14331 - ๐ Changed
Phalcon\Http\Headers\set()
to return self for a more fluent interface - ๐ Changed
Phalcon\Assets\Manager
,Phalcon\Cli\Router
,Phalcon\Dispatcher\AbstractDispatcher
,Phalcon\Html\Tag
,Phalcon\Http\Cookie
,Phalcon\Http\Request
,Phalcon\Http\Response\Cookies
,Phalcon\Mvc\Model
,Phalcon\Mvc\Router
,Phalcon\Security
,Phalcon\Session\Manager
to usePhalcon\Di\AbstractDiAware
for container functionality #14351 - ๐ Changed
Phalcon\Security
to allowsession
andrequest
in the constructor #14351 - ๐ Changed
Phalcon\Session\Manager
to allowrouter
in the constructor #14351 - ๐ Changed
Phalcon\Flash\Direct
to allowescaper
in the constructor #14349 - ๐ Changed
Phalcon\Flash\Session
to allowescaper
in the constructor #14349 - ๐ Changed
Phalcon\Di\AbstractDIAware
toPhalcon\Di\AbstractInjectionAware
#14359 - ๐ Changed
Phalcon\Di\Service
to use DI to initializestring
based services when possible #14342 - ๐ Changed
Phalcon\Mvc\Router\Annotations
to be able to handle patterns az prefixes #14259 - ๐ Changed
Phalcon\Mvc\Router\Group::routes
to an array as default #14259 - ๐ Changed
Phalcon\Mvc\Model::assign
changed order of parameters to $data, $whiteList, $dataColumnMap #14386 - ๐ Changed
Phalcon\Helper\Arr::arrayToObject
totoObject
#14389 - ๐ Changed
Phalcon\Events\EventsAwareInterface::getEventsManager
andPhalcon\Di\Injectable::getEventsManager
to return alsonull
#14404 - ๐ Changed
Phalcon\Logger\Adapter\AbstractAdapter::add
to now returnthis
#14404 - ๐ Changed
Phalcon\Mvc\RouterInterface
methods signature to returnRouteInterface
instead ofvoid
:Phalcon\Mvc\RouterInterface::setDefaultAction
Phalcon\Mvc\RouterInterface::setDefaultAction
Phalcon\Mvc\RouterInterface::setDefaultController
Phalcon\Mvc\RouterInterface::setDefaultModule
Phalcon\Mvc\RouterInterface::setDefaults
- ๐ Changed return types for following interfaces:
Phalcon\Mvc\Router\RouteInterface::setName
fromvoid
toRouteInterface
Phalcon\Mvc\Router\RouteInterface::via
fromvoid
toRouteInterface
Phalcon\Session\ManagerInterface::__get
fromvoid
tovar
๐ Fixed
- ๐ Fixed
Phalcon\Helper\Str::includes
to return correct result #14301 - ๐ Fixed
Phalcon\Logger
moved to correct namespace #14263 - ๐ Fixed
Phalcon\Session\Adapter\AbstractAdapter::read()
to return ""(empty string) whenSession/Adapter/*::get()
returns null #14314 - ๐ Fixed
Phalcon\Cache\Exception
to extend Phalcon\Exception - ๐ Fixed
Phalcon\Cache\InvalidArgumentException
to extend Phalcon\Exception - ๐ Fixed
Phalcon\Collection\Exception
to extend Phalcon\Exception - ๐ Fixed
Phalcon\Storage\Adapter\AbstractAdapter::initSerializer
to throw exception ifnull === $this->serializerFactory && null === $this->serializer
#14324 - ๐ Fixed
Phalcon\Storage\Adapter\Redis::getAdapter()
to provide a persistent id for redis persistent connection #14334 - ๐ Fixed
Phalcon\Session\Adapter\Stream
to not override configured save path #14265 - ๐ Fixed
Phalcon\Http\Response::setFileToSend
to properly handle non-ASCII filenames #13919 - ๐ Fixed
Phalcon\Security::getSessionToken
return value #14346 - ๐ Fixed
Phalcon\Flash\*
interfaces formessage()
to returnstring/null
#14349 - ๐ Fixed
Phalcon\Paginator\Adapter\AbstractAdapter
throw exception iflimit <= 0
#14303 - ๐ Fixed
Phalcon\Mvc\Model\Query\Builder
Empty table alias in query #14366 - ๐ Fixed
Phalcon\Db\Adapter\PdoFactory
to reference the correct interface #14381 - ๐ Fixed
Phalcon\Db\Dialect\Mysql
Fixed missing schema in constraint for create table #14378 - ๐ Fixed
Phalcon\Mvc\Model::hasChanged()
andgetChangedFields()
returning false values whencastOnHydrate
option is on. #14376 - ๐ Fixed
Phalcon\Mvc\Model::create()
Using write connection to prevent replica lag #14256 - ๐ Fixed return types for following methods to satisfy interface declaration:
Phalcon\Acl\Adapter\AbstractAdapter::setDefaultAction
Phalcon\Application\AbstractApplication::setEventsManager
Phalcon\Firewall\Adapter\AbstractAdapter::setAlwaysResolvingRole
Phalcon\Firewall\Adapter\AbstractAdapter::setEventsManager
Phalcon\Mvc\Router::handle
Phalcon\Storage\Serializer\AbstractSerializer::getData
Phalcon\Storage\Serializer\AbstractSerializer::setData
Phalcon\Mvc\Dispatcher::forward
Phalcon\Mvc\Model::setConnectionService
Phalcon\Mvc\Model::setReadConnectionService
Phalcon\Mvc\Model::setWriteConnectionService
Phalcon\Mvc\Model\Query\Builder::setDI
Phalcon\Mvc\Router\Annotations::handle
Phalcon\Session\Bag::set
Phalcon\Session\Manager::remove
- ๐ Fixed
Phalcon\Di::remove()
to remove service. #14396
โ Removed
- โ Removed
Phalcon\Plugin
- duplicate ofPhalcon\DI\Injectable
#14359 - โ Removed
Phalcon\Mvc\Collection
and all related references. 4.0 will not support mongo as it is being re-implemented to take advantage of the latest Mongo driver (see #13697) #14361 - โ Removed
Phalcon\Session\Manager::registerHandler
- duplicate functionality #14381 - โ Removed
Phalcon\Html\Tag
- duplicate functionality #14381 - โ Removed
void
return type for all constructors #14401
- โ Added optional boolean parameter to
-
v4.0.0-beta.2 Changes
August 18, 2019๐ Fixed
- ๐ Fixed missing imports in
Phalcon\Db\Adapter\AbstractAdapter
,Phalcon\Db\Adapter\AdapterInterface
,Phalcon\Db\Result\Pdo
,Phalcon\Html\Tag
andPhalcon\Tag\Select
. #14249 - ๐ Fixed
isSerializable
inPhalcon\Storage\Serializer\AbstractSerializer
to return true when the data is seriazable and false when it's not. - ๐ Fixed
Phalcon\Storage\Adapter\Redis::delete()
andPhalcon\Storage\Adapter\Redis::getKeys()
deprecated warning from php-redis #14281 - ๐ Fixed
Phalcon\Mvc\Model\ResultSet::Update()
to return correct status #14291 Phalcon\Mvc\Collection::cancelOperation()
now returnstrue
on success.- ๐ Fixed
Phalcon\Application\AbstractApplication
interfaces forregisterModules()
,setDefaultModule()
andsetEventsManager()
#14293 - ๐ Fixed
Phalcon\Paginator\Adapter\QueryBuilder
to throw exception on incorrect parameter #14299
โ Removed
- โ Removed dead libsodium-related code. It was never called in PHP >= 7.0.
- ๐ Fixed missing imports in
-
v4.0.0-beta.1 Changes
July 14, 2019โ Added
- โ Added
Phalcon\Factory\Exception
for factory exceptions. #13672 - โ Added
Phalcon\Filter\FilterInterface
for custom filter implementations. #13672 - โ Added
Phalcon\Db\Adapter\PdoFactory
: Factory to create PDO adapters. #13672 - โ Added
Phalcon\Image\ImageFactory
: Factory to create image adapters. #13672 - โ Added
Phalcon\Logger\LoggerFactory
: Factory to create logger objects. #13672 - โ Added
Phalcon\Translate\InterpolatorFactory
: Factory to create interpolator objects. #13672 - โ Added
Phalcon\Translate\TranslateFactory
: Factory to create translate objects. #13672 - โ Added
Phalcon\Domain\Payload
to help in transferring messages between layers of the application. #14123 - โ Added
Phalcon\Domain\PayloadFactory
: Factory to create payload objects. #14123 - โ Added
Phalcon\Http\Message\ServerRequestFactory::load
: Method to create aServerRequest
object from globals. #14154 - โ Added
saslAuthData
as option toPhalcon\Storage\Adapter\Libmemcached
to authenticate using SASL #13394 - โ Added
Phalcon\Collection\ReadOnly
: Read only collection. #14154 - โ Added
whiteList()
toPhalcon\Helper\Arr
#13954 - โ Added
Phalcon\Config\ConfigFactory::newInstance()
: Factory to create config objects. #13201, #13768 - โ Added
Phalcon\Db\Enum
#14213 - โ Added
Phalcon\Dispatcher\Exception
#14213
๐ Changed
- ๐ Renamed
Phalcon\Annotations\Adapter\Files
toPhalcon\Annotations\Adapter\Stream
. #13672 - ๐ Renamed
Phalcon\Annotations\Adapter
toPhalcon\Annotations\Adapter\AbstractAdapter
. #13672 - ๐ Renamed
Phalcon\Annotations\AdapterInterface
toPhalcon\Annotations\Adapter\AdapterInterface
. #13672 - ๐ Renamed
Phalcon\Annotations\Factory
toPhalcon\Annotations\AnnotationsFactory
. #13672 - ๐ Renamed
Phalcon\Config\Factory
toPhalcon\Config\ConfigFactory
. #13672 - ๐ Renamed
Phalcon\Filter\FilterLocator
toPhalcon\Filter
. #13672 - ๐ Renamed
Phalcon\Filter\FilterLocatorFactory
toPhalcon\Filter\FilterFactory
. #13672 - ๐ Renamed
Phalcon\Image\Adapter
toPhalcon\Image\Adapter\AbstractAdapter
. #13672 - ๐ Renamed
Phalcon\Image\AdapterInterface
toPhalcon\Image\Adapter\AdapterInterface
. #13672 - ๐ Renamed
Phalcon\Paginator\Adapter
toPhalcon\Paginator\Adapter\AbstractAdapter
. #13672 - ๐ Renamed
Phalcon\Paginator\AdapterInterface
toPhalcon\Paginator\Adapter\AdapterInterface
. #13672 - ๐ Renamed
Phalcon\Paginator\Factory
toPhalcon\Paginator\PaginatorFactory
. #13672 - ๐ Renamed
Phalcon\Translate\Adapter
toPhalcon\Translate\Adapter\AbstractAdapter
. #13672 - ๐ Renamed
Phalcon\Translate\AdapterInterface
toPhalcon\Translate\Adapter\AdapterInterface
. #13672 - ๐
Phalcon\Plugin
is now abstract. - ๐ Moved
method
parameter inPhalcon\Mvc\Model\Manager::getRelationRecords()
to the last position. #14115 - ๐ Moved
method
parameter inPhalcon\Mvc\Model\Manager::getBelongsToRecords()
to the last position. #14115 - ๐ Moved
method
parameter inPhalcon\Mvc\Model\Manager::getHasOneRecords()
to the last position. #14115 - ๐ Moved
method
parameter inPhalcon\Mvc\Model\Manager::getHasManyRecords()
to the last position. #14115 - ๐ Validator messages were moved into each validator. #13208
Phalcon\Paginator\Repository::getProperty()
now usesPhalcon\Helper\Arr::get()
.- ๐จ Refactored
Phalcon\Collection
to allow conditional key case sensitivity. #14154 - ๐จ Refactored
Phalcon\Registry
to align with thePhalcon\Collection
interface. #14154 - 0๏ธโฃ
Phalcon\Mvc\Micro::setModelBinder()
now uses the Factory Default DI if none is set. #14171 - ๐
Phalcon\Mvc\Model\ValidationFailed
now works withModelInterface
. - ๐จ Refactored
Phalcon\Config
to extendPhalcon\Collection
#13201, #13768 - ๐ Renamed
Phalcon\Config
to extendPhalcon\Config\Config
#13201, #13768 - ๐ Renamed
Phalcon\Acl
toPhalcon\Acl\Enum
#14213 - ๐ Renamed
Phalcon\Acl\Adapter
toPhalcon\Acl\Adapter\AbstractAdapter
#14213 - ๐ Renamed
Phalcon\Acl\AdapterInterface
toPhalcon\Acl\Adapter\AdapterInterface
#14213 - ๐ Renamed
Phalcon\Application
toPhalcon\Application\AbstractApplication
#14213 - ๐ Renamed
Phalcon\CryptInterface
toPhalcon\Crypt\CryptInterface
#14213 - ๐ Renamed
Phalcon\Db\Adapter
toPhalcon\Db\Adapter\AbstractAdapter
#14213 - ๐ Renamed
Phalcon\Db\AdapterInterface
toPhalcon\Db\Adapter\AdapterInterface
#14213 - ๐ Renamed
Phalcon\Db
toPhalcon\Db\AdapterDb
#14213 - ๐ Renamed
Phalcon\Db\Adapter\Pdo
toPhalcon\Db\Adapter\Pdo\AbstractPdo
#14213 - ๐ Renamed
Phalcon\Dispatcher
toPhalcon\Dispatcher\AbstractDispatcher
#14213 - ๐ Renamed
Phalcon\DispatcherInterface
toPhalcon\Dispatcher\DispatcherInterface
#14213 - ๐ Renamed
Phalcon\EscaperInterface
toPhalcon\Escaper\EscaperInterface
#14213 - ๐ Renamed
Phalcon\Firewall\Adapter
toPhalcon\Firewall\Adapter\AbstractAdapter
#14213 - ๐ Renamed
Phalcon\Firewall\AdapterInterface
toPhalcon\Firewall\Adapter\AdapterInterface
#14213 - ๐ Renamed
Phalcon\Flash
toPhalcon\Flash\AbstractFlash
#14213 - ๐ Renamed
Phalcon\FlashInterface
toPhalcon\Flash\FlashInterface
#14213 - ๐ Renamed
Phalcon\Forms\Element
toPhalcon\Forms\Element\AbstractElement
#14213 - ๐ Renamed
Phalcon\Forms\ElementInterface
toPhalcon\Forms\Element\ElementInterface
#14213 - ๐ Renamed
Phalcon\Image
toPhalcon\Image\Enum
#14213 - ๐ Renamed
Phalcon\Mvc\View\Engine
toPhalcon\Mvc\View\Engine\AbstractEngine
#14213 - ๐ Renamed
Phalcon\Mvc\View\EngineInterface
toPhalcon\Mvc\View\Engine\EngineInterface
#14213 - ๐ Renamed
Phalcon\UrlInterface
toPhalcon\Url\UrlInterface
- ๐ Renamed
Phalcon\Validator
toPhalcon\Validator\Validator
#14213 - ๐ Renamed
Phalcon\Validator\Validator
toPhalcon\Validator\AbstractValidator
#14213 - ๐ Renamed
Phalcon\Validator\ValidatorComposite
toPhalcon\Validator\AbstractValidatorComposite
#14213 - ๐ Renamed
Phalcon\Validator\CombinedFieldsValidator
toPhalcon\Validator\AbstractCombinedFields
#14213 - ๐ Renamed
Phalcon\Validator\Validator\File\FileAbstract
toPhalcon\Validator\Validator\File\AbstractFile
#14213
๐ Fixed
- Fixed
Phalcon\Mvc\View::getRender()
to callview->finish()
instead ofob_end_clean()
. #14095 - ๐ Fixed
Phalcon\Cache\Adapter\Libmemcached
failing to set values whenPhalcon\Mvc\Model\MetaData\Libmemcached
was in use. #14100 - ๐ Fixed
Phalcon\Db\Column
to recognizetinyint
,smallint
,mediumint
,integer
as valid autoIncrement columns. #14102 - ๐ Fixed
method
parameter inPhalcon\Mvc\Model\Manager::getRelationRecords()
, it's not always a string, null by default. #14115 - ๐ Fixed
method
parameter inPhalcon\Mvc\Model\Manager::getBelongsToRecords()
, it's not always a string, null by default. #14115 - ๐ Fixed
method
parameter inPhalcon\Mvc\Model\Manager::getHasOneRecords()
, it's not always a string, null by default. #14115 - ๐ Fixed
method
parameter inPhalcon\Mvc\Model\Manager::getHasManyRecords()
, it's not always a string, null by default. #14115 - ๐ Fixed
handlers
property inPhalcon\Mvc\Micro\Collection
to now always an array. - ๐ Fixed crash in
Phalcon\Mvc\Model::save()
when saving a circular model relation. #13354 - ๐ Fixed
Phalcon\Db\Dialect\Postgresql::truncateTable()
to now escape table names. #14125 - Fixed
Phalcon\Mvc\Model\MetaData::write()
to throw an exception iform.exception_on_failed_metadata_save
is set to true. #13433 - ๐ Fixed
Phalcon\Image\Adapter\Gd
to throw an error withimagecolorat
. #14139 Phalcon\Mvc\Model\Criteria::limit()
now corrects negative offsets.- 0๏ธโฃ
Phalcon\Di\FactoryDefault\Cli
can now use the new Filter system. - ๐ Fixed
Phalcon\Mvc\Router
now parses and uses path. #14087 - ๐ Fixed various areas in
Phalcon\Acl\Adapter
andPhalcon\Acl\Adapter\Memory
including comments, logic,denyComponentAccess
andAdapterInterface
. Added tests. #13870 - ๐ Fixed
Phalcon\Config::merge()
not merging numeric values properly #13201, #13768 - ๐ Fixed
Phalcon\Validation\Validator\File\AbstractFile
missing the resolution of thevalue
property #14198 - ๐ Fixed
Phalcon\Storage\Adapter\Stream
#14190 Phalcon\Form\Form::clear()
now correctly clears single fields. #14217- ๐ Fixed
Phalcon\Form\Form::getValue()
not to callgetAttributes()
when an element is named "attributes" #14226 - ๐ Fixed
Phalcon\Model::delete()
array to string conversion #14080 - ๐ Fixed segfault in
Phalcon\Mvc\Micro\LazyLoader::callMethod()
when handler contains syntax error.
โ Removed
- โ Removed
Phalcon\Session\Factory
. #13672 - โ Removed
Phalcon\Factory
andPhalcon\FactoryInterface
. #13672 - โ Removed
Phalcon\Translate
. #13672 - โ Removed
Phalcon\Db\Column::getSchemaName()
as its not relevant or settable. - Removed
Phalcon\Config::__set_state()
as it does not serve any purpose and skipped the constructor. #13201, #13768 - Removed
Phalcon\Annotations\Reflection::__set_state()
,Phalcon\Db\ColumnInterface::__set_state()
,Phalcon\Db\Column::__set_state()
,Phalcon\Db\IndexInterface::__set_state()
,Phalcon\Db\Index::__set_state()
,Phalcon\Db\ReferenceInterface::__set_state()
,Phalcon\Db\Reference::__set_state()
,Phalcon\Di\ServiceInterface::__set_state()
,Phalcon\Di\Service::__set_state()
,Phalcon\Http\Response\HeadersInterface::__set_state()
,Phalcon\Http\Response\Headers::__set_state()
,Phalcon\Http\Request::__set_state()
,Phalcon\Messages\Message::__set_state()
#14212
- โ Added
-
v4.0.0-alpha.5 Changes
May 18, 2019โ Added
- โ Added
Phalcon\Cli\Router\Route::setDescription()
to sets the route's description #13936 - โ Added
Phalcon\Cli\Router\Route::getDescription()
returns the route's description #13936 - โ Added
Phalcon\Image\Adapter\Gd::getVersion()
. - โ Added
chunk()
,first()
,firstKey()
,flatten()
,group()
,isUnique()
,last()
,lastKey()
,order()
,pluck()
,sliceLeft()
,sliceRight()
,split()
,tail()
,validateAll()
,validateAny()
toPhalcon\Helper\Arr
#13954 - โ Added
camelize()
,concat()
,countVowels()
,decapitalize()
,dynamic()
,endsWith()
,firstStringBetween()
,includes()
,increment()
,isAnagram()
,isLower()
,isPalindrome()
,isUpper()
,lower()
,random()
,reduceSlashes()
,startsWith()
,uncamelize()
,underscore()
,upper()
toPhalcon\Helper\Str
#13954 - โ Added
Phalcon\Mvc\Model\Query\BuilderInterface::getModels()
returns the models involved in the query - โ Added
addConnect()
,addPurge()
andaddTrace()
toPhalcon\Mvc\Router\Group
and its interface. #14001 - โ Added
Phalcon\Mvc\Model\Transaction::throwRollbackException()
which allows a transaction to throw an exception or not on a rollback. #13949 - โ Added
Phalcon\Cache\Cache
class implementing PSR-16. Introducing:Phalcon\Cache\Adapter
Phalcon\Cache\Adapter\Apcu
Phalcon\Cache\Adapter\Libmemcached
Phalcon\Cache\Adapter\Memory
Phalcon\Cache\Adapter\Redis
Phalcon\Cache\Adapter\Stream
Phalcon\Cache\AdapterFactory
: Factory to create adaptersPhalcon\Cache\CacheFactory
: Factory to create cache objects
#13439
- โ Added
Str::dirSeparator()
to ensure a path has a trailing slash #13439 - โ Added assets versioning
Phalcon\Assets\Manager:addCss
,Phalcon\Assets\Manager::addJs
,Phalcon\Assets\Collection:addCss
,Phalcon\Assets\Collection:addJs
accepts two additional parameters -version
andautoVersion
#12591 - Added setting
orm.resultset_prefetch_records
instructing the ORM (resultset) to prefetch the rows if the rows returned are less or equal to the setting. #13387 - โ Added
Phalcon\Mvc\View::toString()
to return the rendered view as a string #13825 - โ Added
Phalcon\Helper\Arr::arrayToObject()
to convert arrays to objects. - โ Added
Phalcon\Firewall
component #13648 - Added
orm.cast_last_insert_id_to_int
option forPhalcon\Mvc\Model::setup()
(castLastInsertIdToInt
) to cast thelastInsertId
onsave()
toint
#13002 - โ Added
Attributes
collection class like a new Html component #13646 - โ Added
Attributes
intoPhalcon\Forms\Form
#13646
๐ Changed
- ๐จ Refactored
Phalcon\Events\Manager
to only useSplPriorityQueue
to store events. #13924 Phalcon\Translate\InterpolatorInterface
now only accepts placeholder arrays. #13939Phalcon\Dispatcher::forward()
andPhalcon\Dispatcher::setParams()
now require an array as a parameter. #13935- ๐ป CLI Routes with bad class names (eg.
MyApp\\Tasks\\
) now throw an exception instead of suppressing the error. #13936 - ๐จ Refactored
Phalcon\Mvc\Collection\Behavior\SoftDelete
andPhalcon\Mvc\Model\Behavior\SoftDelete
. #13930 - Model methods that extend Model Manager functionality are now
final
. #13950 - ๐ Changed
Phalcon\Text
to call methods fromPhalcon\Helper\Str
#13954 - Setting the views directory no longer requires a trailing slash when using Simple View.
Phalcon\Mvc\View\Simple::viewParams
is now always an array.Phalcon\Mvc\View\Simple::render()
params
property is now always an array.Phalcon\Mvc\Model\CriteriaInterface::limit()
now takesoffset
as an integer. #13977- ๐ Changed
Phalcon\Mvc\Model\Manager::getModelSource()
to usesetModelSource()
internally instead of setting the source manually #13987 - The property
options
is always an array inPhalcon\Mvc\Model\Relation
. #13989 Phalcon\Logger\Adapter\AbstractAdapter::process()
is now actually abstract. #14012- ๐
Phalcon\Mvc\ModelInterface::getRelated()
return type declaration has changed (not alwaysResultsetInterface
) #14035 - In
Phalcon\Mvc\Model
, relations fetched using magic methods are now handled byPhalcon\Mvc\Model::getRelated()
internally. #14035 - ๐ Changed
Phalcon\Mvc\Model\Transaction::rollback()
to not throw a transaction by default. #13949 - ๐ Changed
Phalcon\Cache
namespace and relevant classes to handle storing data to different stores. Introducing:Phalcon\Storage\Serializer
offering classes that implement the\Serializable
interface.Phalcon\Storage\Serializer\Base64
Phalcon\Storage\Serializer\Igbinary
Phalcon\Storage\Serializer\Json
Phalcon\Storage\Serializer\Msgpack
Phalcon\Storage\Serializer\None
Phalcon\Storage\Serializer\Php
Phalcon\Storage\Serializer\SerializerInterface
Phalcon\Storage\SerializerFactory
: Factory to create serializersPhalcon\Storage\Adapter
offering classes that implement thePhalcon\Storage\Adapter\AdapterInterface
interface.Phalcon\Storage\Adapter\Apcu
Phalcon\Storage\Adapter\Libmemcached
Phalcon\Storage\Adapter\Memory
Phalcon\Storage\Adapter\Redis
Phalcon\Storage\Adapter\Stream
Phalcon\Storage\AdapterFactory
: Factory to create adapters
#13439
- ๐ Changed
Phalcon\Mvc\Model\Query
to not callnumRows
when selecting data #13387 - Bind parameters and bind types are now always arrays in
Phalcon\Mvc\Model\Query
. - Changed
Phalcon\Validation\Validator\Url
to work with passed options. (FILTER_FLAG_PATH_REQUIRED
,FILTER_FLAG_QUERY_REQUIRED
) #13548 - ๐
Phalcon\Mvc\Model\Query\Builder
will now omit offsets if they are set as 0. Phalcon\Mvc\Model\Transaction::__construct()
service parameter must be a string or omitted.Phalcon\Logger\Formatter\Line::__construct()
service parameters must be a string or omitted.Phalcon\Logger\Formatter\Json::__construct()
service parameters must be a string or omitted.- โ Removed deprecated code from
Phalcon\Forms\Form::getMessages()
. - ๐ป Loading a Module (either MVC or CLI) now throws an exception if the path does not exists regardless of whether the class is already loaded.
- Changed
Phalcon\Crypt
to accept auth tag, tag length and data for "gcm" and "ccm" modes. Removed insecure algorithms with modes:des*
,rc2*
,rc4*
,des*
,*ecb
#13869 - ๐ Changed
Phalcon\Mvc\Model
to copy the unset default values from theMetaData
to theModel
after a successful insert. #13781 - ๐ Changed
Phalcon\Mvc\Model::findFirst()
now returnsnull
.Phalcon\Mvc\Model::getRelated()
for one to one relationships returnsnull
#14044
๐ Fixed
- ๐ Fixed
Mvc\Collection::isInitialized()
now works as intended. #13931 - โก๏ธ Update docblocks to show that we can no longer assign properties via
save()
in models (as per #12317). #13945 - ๐ Fixed
Mvc\Model
andMvc\ModelInterface
findFirst
to returnModelInterface
orbool
#13947 Phalcon\Acl\Adapter\Memory::dropComponentAccess()
now properly unsets values.- Volt options 'separator' and 'extension' now work again. #13971
- ๐ Query Builder's
GROUP BY
field is now always an array. #13962 - ๐ Renamed
Phalcon\Paginator\Adapter::getPaginate()
topaginate()
in documentation/tests (originally renamed in 4.0.0-alpha.1). #13973 - ๐ Fixed the exception message in
Phalcon\Security::computeHmac()
by removing"%s"
from output. Phalcon\Mvc\Model\Relation::isForeignKey()
now returns false if theforeignKey
option is set tofalse
.- ๐ Fixed
Phalcon\Flash\Session::output()
not to throw an exception when there are no messages stored in session. #14023 - ๐ Fixed
Phalcon\Config\Adapter\Ini()
to handle arrays correctly in .ini files. #14025 - ๐ Fixed non-reusable relations in
Phalcon\Mvc\Model
, now returning fresh records. #13531 Phalcon\Mvc\Model::isRelationshipLoaded()
is now working for every type of relations. #14035- ๐ Fixed
Phalcon\Mvc\Model::writeAttribute()
to handle associative arrays correctly. #14021 - ๐ Fixed
Phalcon\Html\Tag::appendTitle()
andPhalcon\Html\Tag::prependTitle()
to mirrorPhalcon\Tag
. #14039 - ๐ Fixed
Phalcon\Validation::validate()
withcancelOnFail
. The validator will validate all elements and will stop processing validators on a per element basis ifcancelOnFail
is present. #13149 - ๐ Fixed
Phalcon\Mvc\Models\Manager::getRelations()
to return the many-to-many relationships also. #10839 - ๐ Fixed
Phalcon\Validation\Validator\Numericality::validate()
to parse nonen
locale numbers. #13843 - ๐ Fixed
Phalcon\Mvc\Model::save()
failing after a successful insert when default database fields are not updated. #13781
โ Removed
- โ Removed
arrayHelpers
property from the Volt compiler. #13925 - โ Removed legacy (PHP <5.5) code from GD image adapter.
- Removed support for HTTP_CONTENT_TYPE header (a bug in PHP 5). #14013
- โ Removed
Mvc\Model\MetaData\Session
adapter (no longer supported) #13439 - โ Removed
Phalcon\Cache
,Phalcon\Cache\Backend
,Phalcon\Cache\BackendInterface
,Phalcon\Cache\Backend\Apcu
,Phalcon\Cache\Backend\Factory
,Phalcon\Cache\Backend\File
,Phalcon\Cache\Backend\Libmemcached
,Phalcon\Cache\Backend\Memory
,Phalcon\Cache\Backend\Mongo
,Phalcon\Cache\Backend\Redis
,Phalcon\Cache\Frontend
,Phalcon\Cache\Frontend\Base64
,Phalcon\Cache\Frontend\Data
,Phalcon\Cache\Frontend\Factory
,Phalcon\Cache\Frontend\Igbinary
,Phalcon\Cache\Frontend\Json
,Phalcon\Cache\Frontend\Msgpack
,Phalcon\Cache\Frontend\None
,Phalcon\Cache\Frontend\Output
,Phalcon\Cache\FrontendInterface
,Phalcon\Cache\Multiple
#13439 - โ Removed caching from the view (simple/view)
Phalcon\Mvc\View::cache()
Phalcon\Mvc\View::getCache()
Phalcon\Mvc\View\Simple::cache()
Phalcon\Mvc\View\Simple::getCache()
#13439
- โ Removed multiple Cache Adapter
Phalcon\Cache\Multiple
#13439 - โ Removed old cache classes
Phalcon\Cache\Backend
Phalcon\Cache\BackendInterface
Phalcon\Cache\Backend\Apcu
Phalcon\Cache\Backend\Factory
Phalcon\Cache\Backend\File
Phalcon\Cache\Backend\Libmemcached
Phalcon\Cache\Backend\Memory
Phalcon\Cache\Backend\Mongo
Phalcon\Cache\Backend\Redis
Phalcon\Cache\Frontend
Phalcon\Cache\FrontendInterface
Phalcon\Cache\Frontend\Base64
Phalcon\Cache\Frontend\Data
Phalcon\Cache\Frontend\Factory
Phalcon\Cache\Frontend\Igbinary
Phalcon\Cache\Frontend\Json
Phalcon\Cache\Frontend\Msgpack
Phalcon\Cache\Frontend\None
Phalcon\Cache\Frontend\Output
#13439
- โ Removed model namespace aliases.
- โ Added
-
v4.0.0-alpha.4 Changes
March 31, 2019โ Added
- โ Added
delimiter
andenclosure
options toPhalcon\Translate\Adapter\Csv
constructor - โ Added
Phalcon\Http\Message\*
namespace implementing PSR-7 and PSR-17. Introducing:Phalcon\Http\Message\Request
Phalcon\Http\Message\RequestFactory
Phalcon\Http\Message\Response
Phalcon\Http\Message\ResponseFactory
Phalcon\Http\Message\ServerRequest
Phalcon\Http\Message\ServerRequestFactory
Phalcon\Http\Message\Stream
Phalcon\Http\Message\StreamFactory
Phalcon\Http\Message\UploadedFile
Phalcon\Http\Message\UploadedFileFactory
Phalcon\Http\Message\Uri
Phalcon\Http\Message\UriFactory
Phalcon\Http\Message\Stream\Input
Phalcon\Http\Message\Stream\Memory
Phalcon\Http\Message\Stream\Temp
The implementation offers PSR-7/PSR-17 compatible components in a different namespace to allow usage of bothRequest
andResponse
implementations for this version. #11789
- โ Added
Phalcon\Helper\*
namespace, offering easy manipulations for arrays, numbers etc..Phalcon\Helper\Arr
Phalcon\Helper\Number
#13889
- โ Added
Phalcon\Collection
, an object implementingArrayAccess
,Countable
,IteratorAggregate
,JsonSerializable
,Serializable
, offering an easy way to handle collections of data such as arrays, superglobals etc. #13886 - โ Added
Phalcon\Collection
, inPhalcon\Http\Message\Request
andPhalcon\Http\Message\ServerRequest
to handle the headers #13907
๐ Fixed
- ๐ Fixed
Phalcon\Image\Adapter\Imagick::_watermark
,setImageAlpha()
fills the alpha channel with black before execution (replaced byevaluateImage()
). Improved imagick compatibility. #13911 - ๐ Fixed Assets Manager hard reference to \Phalcon\Tag, should use DI #12261
๐ Changed
- ๐จ Refactored
Phalcon\Registry
to use thePhalcon\Collection
class #13893 - ๐จ Refactored
Phalcon\Session\Bag
to use thePhalcon\Collection
class #13893 - ๐จ Refactored almost all files of the project to abide by the new coding standard for Phalcon. Certain files have been intentionally left untouched because they will be relaced later on. #13915
โ Removed
- โ Removed
Phalcon\Session\BagInterface
#13893
- โ Added
-
v4.0.0-alpha.3 Changes
March 03, 2019โ Added
- โ Added
view:afterCompile
andview:beforeCompile
events for the Volt compiler #2182 - โ Added array merge support to
Phalcon\Config::merge
- Added
setBlacklist
inPhalcon\Debug
to allow the developer to "blacklist" certain variables from the$_REQUEST
or$_SERVER
superglobals being displayed on screen #13687 - ๐ Changed view engine service closures to no longer receive the dependency injector as the second parameter. Instead use
$this
for the DI. #11926
๐ Fixed
- ๐ Fixed router and controller parameter inconsistencies (camelize etc.) #13555
- ๐ Fixed
invalid opcode
inphalcon.so
when using docker #13143 - ๐ Fixed storing related model data in
Phalcon\Messages\Message
. The method is nowsetMetadata
and can be used to store any metadata from any component that emits messages #13811 - ๐ Fixed Dispatcher calling camelize twice and producing incorrect results #12829
- ๐ Fixed
Phalcon\Mvc\Model:findFirst
to throw an exception when the passed parameter for a primary key is not an array, string or numeric #13336 - โ Added
Phalcon\Http\ResponseInterface::isSent
, that was already used. #13836
๐ Changed
- ๐ Renamed
Phalcon\Acl\Subject
toPhalcon\Acl\Component
#13808 - ๐ Renamed
Phalcon\Acl\SubjectInterface
toPhalcon\Acl\ComponentInterface
#13808 - ๐ Renamed
Phalcon\Acl\SubjectAware
toPhalcon\Acl\ComponentAware
#13808 - ๐ Renamed
Phalcon\Acl\Operation
toPhalcon\Acl\Role
#13808 - ๐ Renamed
Phalcon\Acl\OperationInterface
toPhalcon\Acl\RoleInterface
#13808 - ๐ Renamed
Phalcon\Acl\OperationAware
toPhalcon\Acl\RoleAware
#13808 - ๐ Renamed
Phalcon\Acl\AdapterInterface::addOperation
toPhalcon\Acl\AdapterInterface::addRole
#13808 - ๐ Renamed
Phalcon\Acl\AdapterInterface::isOperation
toPhalcon\Acl\AdapterInterface::isRole
#13808 - ๐ Renamed
Phalcon\Acl\AdapterInterface::isSubject
toPhalcon\Acl\AdapterInterface::isComponent
#13808 - ๐ Renamed
Phalcon\Acl\AdapterInterface::addSubject
toPhalcon\Acl\AdapterInterface::addComponent
#13808 - ๐ Renamed
Phalcon\Acl\AdapterInterface::addSubjectAccess
toPhalcon\Acl\AdapterInterface::addComponentAccess
#13808 - ๐ Renamed
Phalcon\Acl\AdapterInterface::dropSubjectAccess
toPhalcon\Acl\AdapterInterface::dropComponentAccess
#13808 - ๐ Renamed
Phalcon\Acl\AdapterInterface::getActiveOperation
toPhalcon\Acl\AdapterInterface::getActiveRole
#13808 - ๐ Renamed
Phalcon\Acl\AdapterInterface::getActiveSubject
toPhalcon\Acl\AdapterInterface::getActiveComponent
#13808 - ๐ Renamed
Phalcon\Acl\AdapterInterface::getOperationss
toPhalcon\Acl\AdapterInterface::getRoles
#13808 - ๐ Renamed
Phalcon\Acl\AdapterInterface::getSubjects
toPhalcon\Acl\AdapterInterface::getComponents
#13808 - ๐ Renamed
Phalcon\Acl\Adapter::getActiveOperation
toPhalcon\Acl\AdapterInterface::getActiveRole
#13808 - ๐ Renamed
Phalcon\Acl\Adapter::getActiveSubject
toPhalcon\Acl\AdapterInterface::getActiveComponent
#13808 - ๐ Renamed
Phalcon\Acl\Adapter\Memory::addOperation
toPhalcon\Acl\Adapter\Memory::addRole
#13808 - ๐ Renamed
Phalcon\Acl\Adapter\Memory::isOperation
toPhalcon\Acl\Adapter\Memory::isRole
#13808 - ๐ Renamed
Phalcon\Acl\Adapter\Memory::isSubject
toPhalcon\Acl\Adapter\Memory::isComponent
#13808 - ๐ Renamed
Phalcon\Acl\Adapter\Memory::addSubject
toPhalcon\Acl\Adapter\Memory::addComponent
#13808 - ๐ Renamed
Phalcon\Acl\Adapter\Memory::addSubjectAccess
toPhalcon\Acl\Adapter\Memory::addComponentAccess
#13808 - ๐ Renamed
Phalcon\Acl\Adapter\Memory::dropSubjectAccess
toPhalcon\Acl\Adapter\Memory::dropComponentAccess
#13808 - ๐ Renamed
Phalcon\Acl\Adapter\Memory::getOperationss
toPhalcon\Acl\Adapter\Memory::getRoles
#13808 - ๐ Renamed
Phalcon\Acl\Adapter\Memory::getSubjects
toPhalcon\Acl\Adapter\Memory::getComponents
#13808 - ๐ Renamed
Phalcon\Mvc\Url
toPhalcon\Url
#13742 - ๐ Renamed
Phalcon\Mvc\UrlInterface
toPhalcon\UrlInterface
#13742 - ๐ป Renamed
Phalcon\Mvc\Url\Exception
toPhalcon\Url\Exception
#13742
โ Removed
- โ Removed the CSS/JS minifiers. This affects the Assets\Filter classes. For now the classes return the original content. #13819, #10118
- โ Removed
Phalcon\Queue
namespace and tests. Beanstalkd is near being abandoned. A new Queue component/adapter will be implemented for queueing needs of the community. #13364
- โ Added
-
v4.0.0-alpha.2 Changes
February 02, 2019โ Added
- โ Added
notFound()
method inPhalcon\Translate\Adapter\NativeArray
which returns the key requested if not found. The method can be overriden when extending the class, returning what the developer needs #13007 - โ Added
Phalcon\Service\Locator
,Phalcon\Service\LocatorInterface
andPhalcon\Service\LocatorFactoryInterface
to allow for the creation of service locators and factories throughout the application #13771 - โ Added
Phalcon\Http\Request::setParameterFilters
. It allows you to preset filters for specific input (i.e.id
,name
etc.). You can then retrieve the automatcally sanitized values usingPhalcon\Http\Request::getFilteredQuery
,Phalcon\Http\Request::getFilteredPost
andPhalcon\Http\Request::getFilteredPut
#13488
๐ Fixed
- ๐ Fixed
Phalcon\Mvc\Micro::handle
to properly return a response object #13712 - ๐ Fixed
Phalcon\Cache\Backend\Libmemcached
returning "empty" values being asnull
when they could be0
,false
or emptystring
. #13497 - ๐ Fixed session adapters to properly implement
SessionHandlerInterface::write
- ๐ Fixed
Phalcon\Session\Manager
to not interact with$_SESSION
variable if the session has not been started #13718, #13520 - ๐ Fixed
Phalcon\Cli\Console
class not found error if handling the same module twice #13724 - ๐ Fixed
Phalcon\Cache\Backend\Libmemcached
returning "empty" values being asnull
when they could be0
,false
or emptystring
. #13497 - ๐ Fixed
Phalcon\Mvc\View\Engine\Volt\Compiler::functionCall
building the incorrect code for the following tags;select
, andselect_static
#13459
- ๐ Fixed
Phalcon\Tag\Select
not rendering without any options.๐ Changed
- ๐ Changed the
Phalcon\Tag::renderTitle()
parameters such asPhalcon\Tag::getTitle()
#13706 - ๐ Changed the
Phalcon\Html\Tag::renderTitle()
parameters such asPhalcon\Html\Tag::getTitle()
#13706 - ๐ Changed the
Phalcon\Version::get()
to follow semantic versioning #13720 - ๐ Changed the
Phalcon\Translate\Adapter\NativeArray
to accept a new parameter in the constructortriggerError
. This will trigger an error if the key is not found #13007 - ๐ Changed the default action of
Phalcon\Acl\Memory
to beAcl::DENY
instead ofAcl::ALLOW
#13758 - ๐ Changed
Phalcon\Mvc\User\Plugin
toPhalcon\Plugin
#13749 - ๐ Changed
Phalcon\Exception
to implement\Throwable
interface.#13750 - ๐ Changed
Phalcon\Http\Cookie
. ThehttpOnly
property is no longer initialised with a value #13464 - ๐ Changed the default action for no arguments of
Phalcon\Acl\Memory
to beAcl::DENY
instead ofAcl::ALLOW
#13769 - ๐ Changed the implementation of
Phalcon\Filter
. It uses a service locator and a service locator factory now. It has more sanitizers now. #13060
- โ Added
-
v4.0.0-alpha1 Changes
December 25, 2018THIS RELEASE IS NOT BACKWARDS COMPATIBLE
โ Added
- Added Code of Conduct for the project
- โ Added
Phalcon\Db\Adapter\Pdo\Postgresql::describeReferences
to implement custom Postgresql rules 438 - โ Added
Phalcon\Mvc\Router\RouteInterface::convert
so that callingPhalcon\Mvc\Router\Group::add
will return an instance that hasconvert
method #13380 - โ Added
Phalcon\Mvc\ModelInterface::getModelsMetaData
#13070 - โ Added
Phalcon\Validation\Validator\Ip
, class used to validate ip address fields. It allows to validate a field selecting IPv4 or IPv6, allowing private or reserved ranges and empty values if necessary. #13574 - โ Added
Phalcon\Messages\MessageInterface
,Phalcon\Messages\Message
,Phalcon\Messages\Exception
andPhalcon\Messages\Messages
to handle all messages for the application (model/validation) #13114 - โ Added
getHandlerSuffix()
,setHandlerSuffix()
in Dispatcher,getTaskSuffix()
,setTaskSuffix()
in the CLI Dispatcher #13468 - โ Added ability to set a custom template for the Flash Messenger. #13445
- โ Added
forUpdate
in the Sqlite dialect to override the method from the base dialect. #13539 - โ Added
TYPE_ENUM
in the Mysql adapter. #11368 - Added more column types for the Mysql adapter. The adapter supports
TYPE_BIGINTEGER
,TYPE_BIT
,TYPE_BLOB
,TYPE_BOOLEAN
,TYPE_CHAR
,TYPE_DATE
,TYPE_DATETIME
,TYPE_DECIMAL
,TYPE_DOUBLE
,TYPE_ENUM
,TYPE_FLOAT
,TYPE_INTEGER
,TYPE_JSON
,TYPE_JSONB
,TYPE_LONGBLOB
,TYPE_LONGTEXT
,TYPE_MEDIUMBLOB
,TYPE_MEDIUMINTEGER
,TYPE_MEDIUMTEXT
,TYPE_SMALLINTEGER
,TYPE_TEXT
,TYPE_TIME
,TYPE_TIMESTAMP
,TYPE_TINYBLOB
,TYPE_TINYINTEGER
,TYPE_TINYTEXT
,TYPE_VARCHAR
#13151, #12223, #524, #13225 @zGaron, #12523 @Studentsov, #12471 @ruudboon - โ Added
Phalcon\Acl\Adapter\Memory::addRole
support multiple inherited #13557 - โ Added
Phalcon\Tag::renderTitle()
that renders the title enclosed in<title>
tags. #13547 - โ Added
hasHeader()
method toPhalcon\Http\Response
to provide the ability to check if a header exists. #12189 - Added global setting
orm.case_insensitive_column_map
to attempt to find value in the column map case-insensitively. Can be also enabled by settingcaseInsensitiveColumnMap
key in\Phalcon\Mvc\Model::setup()
. #11802 - โ Added the ability to use FrontendInterface to serialize Model and ResultSet - Inject a
serializer
object which implementsFrontendInterface
in DI to use it. #12808 - โ Added
Phalcon\Mvc\Model\Query\BuilderInterface::offset
#13599 - โ Added
Phalcon\Http\Response\Cookies::getCookies
#13591 - โ Added
Phalcon\Mvc\Model::isRelationshipLoaded
to check if relationship is loaded #12772 - โ Added an easy way to work with Phalcon and run the tests locally, using nanobox.io #13578
- โ Added response handler to
Phalcon\Mvc\Micro
,Phalcon\Mvc\Micro::setResponseHandler
, to allow use of a custom response handler. #12452 - โ Added two new events
response::beforeSendHeaders
andresponse::afterSendHeaders
toPhalcon\Http\Response
#10689 - โ Added a retainer for the current token to be used during the checkings, so when
Phalcon\Security::getToken
is called the token used for checkings don't change. #12392 - โ Added
Phalcon\Html\Tag
, a component that creates HTML elements. It will replacePhalcon\Tag
in a future version. This component does not use static method calls. #12392 - โ Added
Phalcon\Paginator\RepositoryInterface
for repository the current state ofpaginator
and also optional sets the aliases for properties repository #10985, #10957 - โ Added bind support to
Phalcon\Mvc\Model\Query\Builder
. The Query Builder has the same methods asPhalcon\Mvc\Model\Query
;getBindParams
,setBindParams
,getBindTypes
andsetBindTypes
. #13368 - โ Added
Phalcon\Html\Breadcrumbs
, a component that creates HTML code for breadcrumbs. #13680 - โ Added more methods to interfaces.
Phalcon\Cli\Router\RouteInterface
-delimiter
,getDelimiter
Phalcon\Cli\DispatcherInterface
-setOptions
,getOptions
Phalcon\Db\AdapterInterface
-fetchColumn
,insertAsDict
,updateAsDict
Phalcon\Db\DialectInterface
-registerCustomFunction
,getCustomFunctions
,getSqlExpression
Phalcon\Di\ServiceInterface
-getParameter
,isResolved
Phalcon\Events\ManagerInterface
-hasListeners
Phalcon\Mvc\Model\Query\BuilderInterface
-distinct
,getDistinct
,forUpdate
,offset
,getOffset
Phalcon\Mvc\Model\Transaction\ManagerInterface
-setDbService
,getDbService
,setRollbackPendent
,getRollbackPendent
Phalcon\Mvc\Model\CriteriaInterface
-distinct
,leftJoin
,innerJoin
,rightJoin
,groupBy
,having
,cache
,getColumns
,getGroupBy
,getHaving
,Phalcon\Mvc\Model\ManagerInterface
-isVisibleModelProperty
,keepSnapshots
,isKeepingSnapshots
,useDynamicUpdate
,isUsingDynamicUpdate
,addHasManyToMany
,existsHasManyToMany
,getRelationRecords
,getHasManyToMany
,registerNamespaceAlias
,getNamespaceAlias
Phalcon\Mvc\Model\MessageInterface
-setModel
,getModel
,setCode
,getCode
Phalcon\Mvc\Model\QueryInterface
-getSingleResult
,setBindParams
,getBindParams
,setBindTypes
,setSharedLock
,getBindTypes
,getSql
Phalcon\Mvc\Model\RelationInterface
-getParams
Phalcon\Mvc\Model\ResultsetInterface
-setHydrateMode
,getHydrateMode
,getMessages
,update
,delete
,filter
Phalcon\Mvc\ModelInterface
-getModelsMetaData
Phalcon\Session\AdapterInterface
-setId
,status
Phalcon\Validation\MessageInteraface
-getCode
,setCode
Phalcon\CryptInterface
-setPadding
Phalcon\Mvc\RouterInterface
-attach
#12676
- โ Added
Phalcon\Container
, a proxy container class to thePhalcon\DI
implementing PSR-11 #12295 - โ Added
Phalcon\Acl\Adapter\Memory::getActiveKey
,Phalcon\Acl\Adapter\Memory::activeFunctionCustomArgumentsCount
andPhalcon\Acl\Adapter\Memory::getActiveFunction
to get latest key, number of custom arguments, and function used to acquire access #12547
๐ Changed
- Now Phalcon requires the PSR PHP extension to be installed and enabled
- ๐ง By configuring
prefix
andstatsKey
thePhalcon\Cache\Backend\Redis::queryKeys
no longer returns prefixed keys, now it returns original keys without prefix. #13656 - The
Phalcon\Mvc\Application
,Phalcon\Mvc\Micro
andPhalcon\Mvc\Router
now must have a URI to process #12380 - Response headers and cookies are no longer prematurely sent #12378
- You can no longer assign data to models whilst saving them #12317
- The
Phalcon\Mvc\Model\Manager::load
no longer reuses already initialized models #12317 - โก๏ธ Changed
Phalcon\Db\Dialect\Postgresql::describeReferences
to generate correct SQL, added "on update" and "on delete" constraints 438 - ๐ Changed catch
Exception
toThrowable
#12288 - ๐ Changed
Phalcon\Mvc\Model\Query\Builder::addFrom
to remove third parameter$with
#13109 - 0๏ธโฃ
Phalcon\Forms\Form::clear
will no longer callPhalcon\Forms\Element::clear
, instead it will clear/set default value itself, andPhalcon\Forms\Element::clear
will now callPhalcon\Forms\Form::clear
if it's assigned to the form, otherwise it will just clear itself. #13500 - 0๏ธโฃ
Phalcon\Forms\Form::getValue
will now also try to get the value by callingTag::getValue
or element'sgetDefault
method before returningnull
, andPhalcon\Forms\Element::getValue
callsTag::getDefault
only if it's not added to the form. #13500 - ๐ Changed
Phalcon\Mvc\Model
to use thePhalcon\Messages\Message
object for its messages #13114 - ๐ Changed
Phalcon\Validation\*
to use thePhalcon\Messages\Message
object for its messages #13114 - Collections now use the Validation component #12376
- Made the
specialKey
(_PHCR
) optional for thePhalcon\Cache\Backend\Redis
adapter #10905, #11608 - ๐จ Refactored
Phalcon\Db\Adapter\Pdo::query
to use PDO's prepare and execute.Phalcon\Db\Adapter::fetchAll
to use PDO's fetchAll #13515 - ๐ Fixed
\Phalcon\Http\Response::setFileToSend
filename last much _ #13496 - ๐ Changed
Phalcon\Tag::getTitle
. It returns only the text. It acceptsprepend
,append
booleans to prepend or append the relevant text to the title. #13547 - ๐ Changed
Phalcon\Di\Service
constructor to no longer takes the name of the service. #13590 - ๐ Changed
Phalon\Tag::textArea
to usehtmlspecialchars
to prevent XSS injection. #12428 - ๐ Changed
Phalon\Cache\Backend\*::get
to use only positive numbers forlifetime
11759 - ๐ Changed
Phalcon\Logger
to comply with PSR-3. The component has been rewritten to use adapters that alllow logging to different areas. The #13438 - ๐ฑ Renamed
Phalcon\Assets\Resource
namespace toPhalcon\Assets\Asset
#12082 - ๐ฑ Renamed
Phalcon\Assets\Resource
toPhalcon\Assets\Asset
#12082 - ๐ฑ Renamed
Phalcon\Assets\ResourceInterface
toPhalcon\Assets\AssetInterface
#12082 - ๐ฑ Renamed
Phalcon\Assets\Manager::addResource
toPhalcon\Assets\Manager::addAsset
#12082 - ๐ฑ Renamed
Phalcon\Assets\Manager::addResourceByType
toPhalcon\Assets\Manager::addAssetByType
#12082 - ๐ฑ Renamed
Phalcon\Assets\Manager::collectionResourcesByType
toPhalcon\Assets\Manager::collectionAssetsByType
#12082 - ๐ Changed
paginate
in the place ofgetPaginate
. Addedprevious
in the place ofbefore
. #13492 - Scope SQL Column Aliases (on nesting level), in
Phalcon\Mvc\Model\Query
, to prevent overwrite root query's_sqlColumnAliases
by sub-queries. #13006, #12548 and #1731 - CLI parameters now work like MVC parameters #12375
- ๐ Changed
Phalcon\Db\Dialect\Postgresql::addPrimaryKey
to make primary key constraints names unique by prefixing them with the table name. #12629 - ๐ Fixed
Phalcon\Mvc\Model\Query::_prepareSelect
overwriting columns with the same alias #13552 - ๐ Changed
Phalcon\Http\RequestInterface
to align withPhalcon\Http\Request
#13061 - ๐ Renamed
Phalcon\Acl\Resource
toPhalcon\Acl\Subject
#13639 - ๐ Renamed
Phalcon\Acl\ResourceInterface
toPhalcon\Acl\SubjectInterface
#13639 - ๐ Renamed
Phalcon\Acl\ResourceAware
toPhalcon\Acl\SubjectAware
#13639 - ๐ Renamed
Phalcon\Acl\Role
toPhalcon\Acl\Operation
#13639 - ๐ Renamed
Phalcon\Acl\RoleInterface
toPhalcon\Acl\OperationInterface
#13639 - ๐ Renamed
Phalcon\Acl\RoleAware
toPhalcon\Acl\OperationAware
#13639 - ๐ Renamed
Phalcon\Acl\AdapterInterface::addRole
toPhalcon\Acl\AdapterInterface::addOperation
#13639 - ๐ Renamed
Phalcon\Acl\AdapterInterface::isRole
toPhalcon\Acl\AdapterInterface::isOperation
#13639 - ๐ Renamed
Phalcon\Acl\AdapterInterface::isResource
toPhalcon\Acl\AdapterInterface::isSubject
#13639 - ๐ Renamed
Phalcon\Acl\AdapterInterface::addResource
toPhalcon\Acl\AdapterInterface::addSubject
#13639 - ๐ Renamed
Phalcon\Acl\AdapterInterface::addResourceAccess
toPhalcon\Acl\AdapterInterface::addSubjectAccess
#13639 - ๐ Renamed
Phalcon\Acl\AdapterInterface::dropResourceAccess
toPhalcon\Acl\AdapterInterface::dropSubjectAccess
#13639 - ๐ Renamed
Phalcon\Acl\AdapterInterface::getActiveRole
toPhalcon\Acl\AdapterInterface::getActiveOperation
#13639 - ๐ Renamed
Phalcon\Acl\AdapterInterface::getActiveResource
toPhalcon\Acl\AdapterInterface::getActiveSubject
#13639 - ๐ Renamed
Phalcon\Acl\AdapterInterface::getRoless
toPhalcon\Acl\AdapterInterface::getOperations
#13639 - ๐ Renamed
Phalcon\Acl\AdapterInterface::getResources
toPhalcon\Acl\AdapterInterface::getSubjects
#13639 - ๐ Renamed
Phalcon\Acl\Adapter::getActiveRole
toPhalcon\Acl\AdapterInterface::getActiveOperation
#13639 - ๐ Renamed
Phalcon\Acl\Adapter::getActiveResource
toPhalcon\Acl\AdapterInterface::getActiveSubject
#13639 - ๐ Renamed
Phalcon\Acl\Adapter\Memory::addRole
toPhalcon\Acl\Adapter\Memory::addOperation
#13639 - ๐ Renamed
Phalcon\Acl\Adapter\Memory::isRole
toPhalcon\Acl\Adapter\Memory::isOperation
#13639 - ๐ Renamed
Phalcon\Acl\Adapter\Memory::isResource
toPhalcon\Acl\Adapter\Memory::isSubject
#13639 - ๐ Renamed
Phalcon\Acl\Adapter\Memory::addResource
toPhalcon\Acl\Adapter\Memory::addSubject
#13639 - ๐ Renamed
Phalcon\Acl\Adapter\Memory::addResourceAccess
toPhalcon\Acl\Adapter\Memory::addSubjectAccess
#13639 - ๐ Renamed
Phalcon\Acl\Adapter\Memory::dropResourceAccess
toPhalcon\Acl\Adapter\Memory::dropSubjectAccess
#13639 - ๐ Renamed
Phalcon\Acl\Adapter\Memory::getRoless
toPhalcon\Acl\Adapter\Memory::getOperations
#13639 - ๐ Renamed
Phalcon\Acl\Adapter\Memory::getResources
toPhalcon\Acl\Adapter\Memory::getSubjects
#13639 - ๐ Changed
Phalcon\Http\Response::setHeaders
now merges the headers with any pre-existing ones in the internal collection #12836 - ๐ Changed
Phalcon\DI\FactoryDefault
to not load by default - ๐จ Changed the
Phalcon\Session
namespace by refactoring the component.Phalcon\Session\Manager
is now the single component offering session manipulation by using adapters. Each adapter implements PHP'sSessionHandlerInterface
. Available adapters arePhalcon\Session\Files
,Phalcon\Session\Libmemcached
,Phalcon\Session\Noop
andPhalcon\Session\Redis
. #12921, #11341, #13535 - ๐ Fixed
Phalcon\Mvc\Models
magic method (setter) is fixed for arrays #13661 - ๐ Fixed
Phalcon\Mvc\Model::skipAttributes
andPhalcon\Mvc\Model::allowEmptyColumns
allowEmptyStrings & skipAttributes repsect the column mapping. #12975, #13477
โ Removed
- ๐ PHP < 7.2 no longer supported
- โ Removed
xcache
support from adapters #13628 - โ Removed
apc
support from adapters (useapcu
) #13628 - โ Removed
memcache
support from adapters (uselibmemcached
) #13628 - โ Removed deprecated
Phalcon\Annotations\Adapter\Apc
- โ Removed deprecated
Phalcon\Annotations\Adapter\Xcache
- โ Removed deprecated
Phalcon\Cache\Backend\Apc
- โ Removed deprecated
Phalcon\Cache\Backend\Memcache
- โ Removed deprecated
Phalcon\Cache\Backend\Xcache
- โ Removed deprecated
Phalcon\Cli\Console::addModules
- โ Removed deprecated
Phalcon\Debug::getMajorVersion
- โ Removed deprecated
Phalcon\Mvc\Model\Criteria::addWhere
- โ Removed deprecated
Phalcon\Mvc\Model\Criteria::order
- โ Removed deprecated
Phalcon\Mvc\Model\Metadata\Apc
- โ Removed deprecated
Phalcon\Mvc\Model\Metadata\Memcache
- โ Removed deprecated
Phalcon\Mvc\Model\Metadata\Xcache
- โ Removed deprecated
Phalcon\Mvc\View::getParams
- โ Removed deprecated
Phalcon\Mvc\ViewInterface::getParams
- โ Removed deprecated
Phalcon\Paginator\Adapter\Model::getPaginate
- โ Removed deprecated
Phalcon\Paginator\Adapter\Model - $before
- โ Removed deprecated
Phalcon\Paginator\Adapter\Model - $total_pages
- โ Removed deprecated
Phalcon\Paginator\Adapter\NativeArray::getPaginate
- โ Removed deprecated
Phalcon\Paginator\Adapter\NativeArray - $before
- โ Removed deprecated
Phalcon\Paginator\Adapter\NativeArray - $total_pages
- โ Removed deprecated
Phalcon\Paginator\Adapter\QueryBuilder::getPaginate
- โ Removed deprecated
Phalcon\Paginator\Adapter\QueryBuilder - $before
- โ Removed deprecated
Phalcon\Paginator\Adapter\QueryBuilder - $total_pages
- โ Removed deprecated
Phalcon\Security::hasLibreSsl
- โ Removed deprecated
Phalcon\Security::getSslVersionNumber
- โ Removed deprecated
Phalcon\Validation\Validator::isSetOption
- โ Removed
Phalcon\Cli\Console::addModules
in favor ofPhalcon\Cli\Console::registerModules
- โ Removed
Phalcon\Debug::getMajorVersion
due to the fact that we never use this method - โ Removed
Phalcon\Dispatcher::setModelBinding
in favor ofPhalcon\Dispatcher::setModelBinder
- โ Removed
Phalcon\Http\RequestInterface::isSecureRequest
in favor ofPhalcon\Http\RequestInterface::isSecure
- โ Removed
Phalcon\Http\RequestInterface::isSoapRequested
in favor ofPhalcon\Http\Request::isSoap
- โ Removed
Phalcon\Logger\Multiple
- โ Removed
Phalcon\Mvc\Collection::validationHasFailed
- โ Removed
Phalcon\Mvc\Model\Criteria::order
in favor ofPhalcon\Mvc\Model\Criteria::orderBy
- Removed
Phalcon\Mvc\Model\Validator\*
in favor ofPhalcon\Validation\Validator\*
- โ Removed
Phalcon\Mvc\Micro\Lazyloader::__call
in favor ofPhalcon\Mvc\Micro\Lazyloader::callMethod
- โ Removed
Phalcon\Model::reset
#12317 - โ Removed
Phalcon\Validation\Message
andPhalcon\Mvc\Model\Message
in favor ofPhalcon\Messages\Message
- โ Removed
Phalcon\Validation\MessageInterface
andPhalcon\Mvc\Model\MessageInterface
in favor ofPhalcon\Messages\MessageInterface
- โ Removed
Phalcon\Validation\Message
andPhalcon\Mvc\Model\Message
in favor ofPhalcon\Messages\Message
- โ Removed
Phalcon\Validation\Message\Group
in favor ofPhalcon\Messages\Messages
- โ Removed calling
Phalcon\Mvc\Collection::validate
with object of typePhalcon\Mvc\Model\ValidatorInterface
-
v3.4.5 Changes
October 30, 2019- ๐ Fixed segfault in
Phalcon\Mvc\Micro\LazyLoader::__call()
when the handler has a syntax error. #12396 - ๐ Fixed RuntimeException in
Phalcon\Db\Adapter\Pdo
Trying to call method upper on a non-object. #14330 - ๐ Fixed
Phalcon\Storage\Adapter\Redis::delete()
deprecated warning from php-redis #14281
- ๐ Fixed segfault in
-
v3.4.4 Changes
June 30, 2019๐ Fixed
- Generated Dialect Class referring to a PHP class can't be found #13867
- ๐ Changed default gcc's CFLAGS so that, the extension should be properly generated for most hosts, including Docker #13143
Phalcon\Forms\Form::clear()
now correctly clears single fields. #14217- โ Used latest stable Zephir from 0.10.x branch to prevent segfaults with PHP 7.3.6 #14160