v4.0.0-alpha.5
Pre-release
Pre-release
sergeyklay
released this
18 May 20:47
·
5734 commits
to master
since this release
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. #14012Phalcon\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.