Superseded
by php-phalcon - 3.0.0-build9-ppa1~trusty
Published
Changelog
php-phalcon (3.0.0-build7-ppa1~trusty) trusty; urgency=low
* PHP 5.3 and 5.4 are now fully deprecated
* `Phalcon\Mvc\Model\Validation` is now deprecated in favor of `Phalcon\Validation`
* Changed default hash algorithm in `Phalcon\Security` to `CRYPT_BLOWFISH_Y`
* Changed constructor of `Phalcon\Mvc\Model` to allow pass an array of initialization data
* Removed support for prefixes strategy in `Phalcon\Loader`
* Now `Phalcon\Mvc\View` supports many views directories at the same time
* An absolute path can now be used to `Mvc\View::setLayoutsDir`
* Fixed odd view behavior[#1933] related to setLayout() and pick()
* `Phalcon\Di` is now bound to services closures allowing use `Phalcon\Di` as $this to access services within them
* If an object is returned after firing the event `beforeServiceResolve` in `Phalcon\Di` this overrides the
default service localization process
* Placeholders `:controller` and `:action` in `Mvc\Router` now defaults to `/([\\w0-9\\_\\-]+)` instead of `/([\\a-zA-Z0-9\\_\\-]+)`
* Modifier `#u` (PCRE_UTF8) is now default in regex based routes in `Mvc\Router`
* Return 'false' from an action disables the view component (same as `$this->view->disable()`)
* Return a string from an action takes it as the body of the response (same as return `$this->response->setContent('Hello world')`)
* Return a string from an `Mvc\Micro` handler takes it as the body of the response
* `Mvc\Router\Route` now escapes characters such as . or + to avoid unexpected behaviors
* Closures used as handlers in` Mvc\Micro` are now bound to the $app instance
* Routes now can have an associated callback that can override the default dispatcher + view behavior
* `Phalcon\Mvc\Model` now implements `JsonSerializable` making easy serialize model instances
* When destructing a `Mvc\Model\Manager` PHQL cache is clean
* Method `isSetOption` in `Phalcon\Validation\ValidatorInterface` marked as deprecated, please use `hasOption`
* Added internal check "allowEmpty" before calling a validator. If it option is true and the value of empty, the validator is skipped
* Added default header: `Content-Type: "application/json; charset=UTF-8"` in method `Phalcon\Http\Response::setJsonContent`
* Now `Phalcon\Events\Event` implements `Phalcon\Events\EventInterface`
* `Phalcon\Events\Event::getCancelable` renamed to `Phalcon\Events\Event::isCancelable`
* Removed `Phalcon\Events\Manager::dettachAll` in favor of `Phalcon\Events\Manager::detachAll`
* `Phalcon\Mvc\Model\Criteria::getOrder` renamed to `Phalcon\Mvc\Model\Criteria::getOrderBy`
* Added method `getOption()` in `Phalcon\Mvc\Model\RelationInterface`
* Added ability to spoof HTTP request method
* Added FULLTEXT index type to `Phalcon\Db\Adapter\Pdo\Mysql`
* Fixed the use of the annotation router with namespaced controllers
* Added `Phalcon\Acl\RoleAware` and `Phalcon\Acl\ResourceAware` Interfaces, Now you can pass objects to `Phalcon\Acl\AdapterInterface::isAllowed` as `roleName` and `resourceName`, also they will be automatically passed to function defined in `Phalcon\Acl\AdapterInterface::allow` or `Phalcon\Acl\AdapterInterface::deny` by type
* `Phalcon\Acl\AdapterInterface::allow` and `Phalcon\Acl\AdapterInterface::deny` have 4th argument - function, which will be called when using `Phalcon\Acl\AdapterInterface::isAllowed`
* `Phalcon\Acl\AdapterInterface::isAllowed` have 4th argument - parameters, you can pass arguments for function defined in `Phalcon\Acl\AdapterInterface:allow` or `Phalcon\Acl\AdapterInterface::deny` as associative array where key is argument name
* Added method `getActionSuffix()` in `Phalcon\DispatcherInterface`
* CLI parameters are now handled consistently.
* Added `Phalcon\Mvc\Controller\BindModelInterface` and associated model type hint loading through dispatcher.
* Added `Phalcon\Dispatcher::hasParam()`.
* `Phalcon\Cli\Console` and `Phalcon\Mvc\Application` now inherit `Phalcon\Application`.
* Fixed `afterFetch` event not being sent to behaviors
* Fixed issue with radio not being checked when default value is 0 [#11358]
* Fixed issue with `Model::__set` that was bypassing setters [#11286]
* Fixed issue with `Model::__set` that was setting hidden attributes directly when setters are not declared [#11286]
* Added `Phalcon\Cli\DispatcherInterface`, `Phalcon\Cli\TaskInterface`, `Phalcon\Cli\RouterInterface` and `Phalcon\Cli\Router\RouteInterface`.
* Added `Phalcon\Mvc\Collection::update`, `Phalcon\Mvc\Collection::create` and `Phalcon\Mvc\Collection::createIfNotExist`
* Removed `__construct` from all interfaces [#11410]
* Fires the `dispatch:beforeException` event when there is any exception during dispatching [#11458]
* Added `OR` operator for `Phalcon\Mvc\Model\Query\Builder` methods: `betweenWhere`, `notBetweenWhere`, `inWhere` and `notInWhere`
* Fixed bug of `destroy` method of `Phalcon\Session\Adapter\Libmemcached`
* Added `Phalcon\Cache\Backend\Memcache::addServers` to enable pool of servers for memcache
* Added `setLastModified` method to `Phalcon\Http\Response`
* Added `Phalcon\Validation\Validator\Date`
* Added `\Phalcon\Queue\Beanstalk::ignore()` It removes the named tube from the watch list for the current connection.
* Added `\Phalcon\Queue\Beanstalk::pauseTube()` Can delay any new job being reserved for a given time.
* Added `\Phalcon\Queue\Beanstalk::kick()` It moves jobs into the ready queue. If there are any buried jobs, it will only kick buried jobs. Otherwise it will kick delayed jobs.
* Added `\Phalcon\Queue\Beanstalk::listTubeUsed()` Returns the tube currently being used by the client.
* Added `\Phalcon\Queue\Beanstalk::listTubesWatched()` Returns a list tubes currently being watched by the client.
* Added `\Phalcon\Queue\Beanstalk::peekDelayed()` Return the delayed job with the shortest delay left.
* Added `\Phalcon\Queue\Beanstalk::jobPeek()` Return job.
* Mcrypt is replaced with openssl in `Phalcon\Crypt`
* Default encrypt algorithm in `Phalcon\Crypt` is now changed to `AES-256-CFB`
* Removed methods setMode(), getMode(), getAvailableModes() in `Phalcon\CryptInterface`
* Added `Phalcon\Assets\Manager::exists()` to check if collection exists
* `Phalcon\Mvc\Model\Manager::load()` now can load models from aliased namespaces
* `Phalcon\Mvc\Model\Transaction\Manager` now correctly keeps account of transactions [#11554]
* `Phalcon\Db\Dialect\Sqlite` now maps additional column types to SQLite columns equivalents.
* `Phalcon\Security` is using now `Phalcon\Security\Random`
* Enforced that `Phalcon\Security::getToken()` and `Phalcon\Security::getTokenKey()` return a random value per request not per call
* `Phalcon\Security::getToken()` and `Phalcon\Security::getTokenKey()` are using now `Phalcon\Security::_numberBytes` instead of passed as a argument or hardcoded value
* `Phalcon\Security::hash()` corrected not working CRYPT_STD_DES, CRYPT_EXT_DES, MD5, CRYPT_SHA256
* `Phalcon\Security::hash()` CRYPT_SHA512 fixed wrong salt length
* Added missing unit-tests for `Phalcon\Security`
* Fixed `Filter::add` method handler [#11581]
* Removed `Phalcon\Session` [#11340]
* Phalcon\Tag::getTitle() shows a title depending on prependTitle and appendTitle
* Using a settable variable for the Mongo Connection Service name instead of a hard coded string [#11725]
* Added new getter `Phalcon\Mvc\Model\Query\Builder::getJoins()` - to get join parts from query builder
* Fixed `Phalcon\Db\Dialect\Oracle::prepareTable()` to correctly generate SQL for table aliases [#11799]
* Fixed `Phalcon\Mvc\Model\Resultset::update()` - removed endless loop queries
* The cache backend adapters now returns boolean on call `Phalcon\Cache\BackendInterface::save`
* Fixed the Session write callback [#11733]
* Added '\Phalcon\Loader::registerFiles' & '\Phalcon\Loader::getFiles'. This allows you to add files to the autoloader
* Added `Phalcon\Security::hasLibreSsl` and `Phalcon\Security::getSslVersionNumber`
* Added new setter `Phalcon\Escaper::setDoubleEncode()` - to allow setting/disabling double encoding
* Added `Phalcon\Cache\Frontend\Msgpack` - Added Msgpack Support for Frontend Cache
* `Phalcon\Debug\Dump` skip debugging di, fix detecting private/protected properties
* Added option to validate multiple fields with one validator(fix uniqueness validator as well), also removes unnecessary `model => $this` in `Phalcon\Validation\Validator\Uniqueness`.
* `Phalcon\Validation\Validator\Alpha` now correctly validates non-ASCII characters [#11386]
* `Phalcon\Validation\Validator\Digit` now correctly validates digits [#11374]
* Added `Phalcon\Validation\CombinedFieldsValidator`, validation will pass array of fields to this validator if needed
* Added ability to autoescape Flash messages [#11448]
* Fixed `Phalcon\Config::merge` for working with php7
* Added ability to use custom delimiter for `Phalcon\Text::camelize` and `Phalcon\Text::uncamelize` [#10396]
* Added support of `CONNECT`, `TRACE` and `PURGE` HTTP methods
* Refactored `Phalcon\Http\Request::getHttpHost`. Now it always return hos
* Added `Phalcon\Http\Request::getPort`. To get information about the port on which the request is made.
* Added `Phalcon\Http\Request::setStrictHostCheck` and `Phalcon\Http\Request::isStrictHostCheck` to manage strict validation of host name.
* Fixed matching host name by `Phalcon\Mvc\Route::handle` when using port on current host name [#2573]
* Fixed `Phalcon\Text:dynamic()` to allow custom separator [#11215]
* Fixed `Phalcon\Validation::appendMessage` to allow append message to the empty stack [#10405]
* Fixed `Phalcon\Session\Flash::getMessages`. Now it returns an empty array in case of non existent message type request [#11941]
* Amended `Phalcon\Mvc\RouterInterface` and `Phalcon\Mvc\Router`. Added missed `addPurge`, `addTrace` and `addConnect` methods
* Fixed incorrect query when using NULL fields with `Phalcon\Validation\Validator\Uniqueness`
* Fixed `Phalcon\Forms\Form::getValue`. Now Elements can have names that match with the internal Form getters [#10398]
* Add `setContentLength()` method to `Phalcon\Http\Response`
* Fixed `Phalcon\Mvc\Model\Manager::_mergeFindParameters` - Merging conditions [#11987]
* Renamed `Phalcon\Http\Request::isSoapRequest` to `Phalcon\Http\Request::isSoap` and `Phalcon\Http\Request::isSecureRequest` to `Phalcon\Http\Request::isSecure`. Left the originals functions as aliases and marked them deprecated.
* Fixed wildcard inheritance in `Phalcon\Acl\Adapter\Memory` [#12004]
* Dropped support of Oracle [#12008]
* Improved `Phalcon\Mvc\Collection::findById`. Added check if a `id` in a valid format [#12010]
* Added `convert` option to `Phalcon\Validation\Validator\Uniqueness` to convert values to do the database lookup [#12005]
-- Serghei Iakovlev <email address hidden> Sat, 30 July 2016 02:00:00 +0300