3.0.4 (2017-02-20)
- Исправлена ошибка, из-за которой проверка Isnull была некорректной, когда поле модели по умолчанию было пустой строкой. #12507
- Элемент
Phalcon\Forms\Element::label
теперь принимает 0 в качестве метки вместо проверки её на пустоту. #12148
-
Phalcon\Crypt::getAvailableCiphers
, Phalcon\Crypt::decrypt
, Phalcon\Crypt::encrypt
были исправлены путём получения пропущенных псевдонимов для шифров. #12539
- В
Phalcon\Mvc\Model
был добавлен пропущенный оператор use
для ResultsetInterface
. #12574
- Исправлено добавление роли после установки действия по умолчанию. #12573
- Исключения в
Phalcon\Validation\Validator\Uniquenss
теперь позволяют использовать поля, отличные от уникальных полей.
- Очищены
Phalcon\Translate\Adapter\Gettext::query
и удалена возможность передавать пользовательский домен. #12598, #12606
- Исправлен метод
Phalcon\Validation\Message\Group::offsetUnset
, чтобы корректно сбрасывать сообщение по индексу. #12455
- Исправлено использование
Phalcon\Acl\Role
и Phalcon\Acl\Resource
в качестве параметров для Phalcon\Acl\Adapter\Memory::isAllowed
.
- Исправлены ошибки в
Phalcon\Mvc\Collection
, связанные с установкой грязных состояний при сохранении/создании.
3.0.3 (2016-12-24)
- Реализация интерфейса Iterator в
Phalcon\Forms\Form
была исправлена, чтобы избежать предупреждения во время выполнения.
- Методы
Phalcon\Cache\Backend\Redis::get
и Phalcon\Cache\Frontend\Data::afterRetrieve
теперь могут возвращать пустые строки из базы данных Redis. #12437
- Метод
Phalcon\Cache\Backend\Redis::exists
теперь корректно проверяет наличие ключа кэша для пустого значения в базе данных Redis. #12434
- Проверка токена безопасности
Phalcon\Security::checkToken
была улучшена для предотвращения возможных атак по времени. #12418
- Сохранение снимка при кэшировании было исправлено в
Phalcon\Mvc\Model\Resultset\Simple
.
- Обработка заголовков авторизации в
Phalcon\Http\Request::getHeaders
была улучшена. #12480
- Обработка заголовка
X-HTTP-Method-Override
в Phalcon\Http\Request::getMethod
была улучшена. #12478
- Работа методов
Phalcon\Mvc\Model\Criteria::limit
и Phalcon\Mvc\Model\Query\Builder::limit
с параметрами limit
и offset
была улучшена. #12419
- Ошибки в
Phalcon\Forms\Form
, связанные с проверкой формы и установкой сообщений для элементов, были исправлены. #12465, #11500, #11135, #3167, #12395
- Ошибка в
Phalcon\Cache\Backend\Libmemcached::queryKeys
, связанная с запросом существующих ключей кэша, была исправлена. #11024
- Построение расширения для ImageMagick 7 было улучшено. mkoppanen/imagick#180
- Возможность бесконечного сохранения данных была добавлена в
Phalcon\Cache\Backend\Redis::save
. #12327
3.0.2 (2016-11-26)
- Проблема с сохранением данных снимка во время кэширования модели была решена. #12170, #12000
- Отправка правильного заголовка статуса была улучшена в
Phalcon\Http\Response\Headers::send
. #12179
- Проблемы с методами
Phalcon\Mvc\Model::setSnapshotData
и Phalcon\Mvc\Model\Resultset\Simple::toArray
, вызванные использованием Zephir, были решены. Перевод текста на русский язык:
#11205, #12147
- Исправлен
Phalcon\Cache\Backend\Memcache::flush
, чтобы после очистки memcached удалять все ключи запроса #12182.
- Исправлен
Phalcon\Cache\Backend\Memory::delete
, чтобы корректно удалять элементы из Phalcon\Cache\Backend\Memory::$_data
.
- Исправлены
Phalcon\Cache\Frontend\Data::afterRetrieve
, Phalcon\Cache\Frontend\Igbinary::afterRetrieve
и Phalcon\Cache\Frontend\Msgpack::afterRetrieve
, чтобы десериализовать только необработанные данные #12186.
- Исправлен
Phalcon\Mvc\Model::cloneResultMapHydrate
, чтобы правильно создавать массивы/объекты из данных по карте столбцов с типами #12191.
- Исправлен
Phalcon\Validation\Validator\Confirmation::validate
, чтобы использовать fieldWith
вместо field
при поиске значения для labelWith
.
- Исправлен
Phalcon\Cache\Backend\Redis::_connect
, чтобы использовать внутреннюю функцию select
redis только тогда, когда index
больше нуля.
- Исправлен
Phalcon\Config\Adapter\Ini::_cast
, чтобы разрешить создание расширенных конфигурационных адаптеров #12230.
- Исправлены
Phalcon\Tag::appendTitle
и Phalcon\Tag::prependTitle
, чтобы складывать добавление и добавление заголовка #12233.
- Исправлена
Phalcon\Debug::getVersion
, чтобы предоставить действительную ссылку на последнюю основную версию Phalcon #12215.
- Исправлены
Phalcon\Session\Adapter\Libmemcached::read
, Phalcon\Session\Adapter\Libmemcached::destroy
, Phalcon\Session\Adapter\Memcache::read
, Phalcon\Session\Adapter\Memcache::destroy
, Phalcon\Session\Adapter\Redis::read
и Phalcon\Session\Adapter\Redis::destroy
в соответствии с API session_set_save_handler
#12206.
- Исправлена
Phalcon\Validation::getValue()
, чтобы использовать фильтры при наличии сущности.
- Исправлены
Phalcon\Db\Dialect\Mysql::describeReferences()
и Phalcon\Db\Dialect\Postgresql::describeReferences()
, чтобы возвращать правильный SQL.
- Исправлен
Phalcon\Db\Column::hasDefault
, чтобы возвращать false
для столбцов автоинкремента phalcon/phalcon-devtools#853.
- Исправлены
Phalcon\Db\Dialect\Postgresql::createTable
, Phalcon\Db\Dialect\Postgresql::addColumn
и Phalcon\Db\Dialect\Postgresql::modifyColumn
, чтобы правильно экранировать значения по умолчанию #12267, phalcon/phalcon-devtools#859.
- Исправлен
Phalcon\Forms\Form::bind
, чтобы очистить элементы формы #11978, #12165, #12099, #10044.
- Исправлен
Phalcon\Tag::resetInput
, чтобы правильно использовать без попыток очистить $_POST
#12099.
- Исправлены
Phalcon\Db\Dialect\Mysql
и Phalcon\Db\Dialect\Postresql
, чтобы правильно проверять схему в отсутствующих методах.
- Исправлен
Phalcon\Cache\Backend\Apc::flush
, чтобы удалять только свои собственные ключи по префиксу #12153.
- Исправлен
Phalcon\Acl\Adapter\Memory::isAllowed
, чтобы вызывать замыкания при использовании подстановочного знака #12333.
- Исправлен массив
Phalcon\Validation\Validator\File
для преобразования строк в minResolution
и maxResolution
#12349.
- Исправлен
Phalcon\Cache\Backend\File::queryKeys()
, чтобы сравнить имя файла с проанализированным префиксом.
- Идентификаторы базы данных теперь правильно экранированы #12410.
3.0.1 (2016-08-24)
- Исправлен
Phalcon\Cache\Backend\Redis::flush
, чтобы правильно очищать кэш.
- Исправлен
Phalcon\Mvc\Model\Manager::getRelationRecords
, чтобы правильно использовать множественные отношения. Фалкан: события, модели, контроллеры и другие изменения
- Событие Phalcon\Events\Event::isCancelable было удалено.
- Метод Phalcon\Events\Manager::dettachAll был переименован в Phalcon\Events\Manager::detachAll.
- Метод Phalcon\Mvc\Model\Criteria::getOrder был переименован в Phalcon\Mvc\Model\Criteria::getOrderBy.
- В интерфейс Phalcon\Mvc\Model\RelationInterface был добавлен метод getOption().
- Была добавлена возможность подмены метода HTTP-запроса.
- В адаптер Phalcon\Db\Adapter\Pdo\Mysql был добавлен тип индекса FULLTEXT.
- Было исправлено использование аннотации маршрутизатора с пространственными контроллерами.
- Были добавлены интерфейсы Phalcon\Acl\RoleAware и Phalcon\Acl\ResourceAware. Теперь можно передавать объекты в функцию Phalcan\Acl\AdapterInterface::isAllowed как roleName и resourceName, они также будут автоматически переданы в функции, определённые в Phalcan\Acl\AdapterInterface::allow или Phalcan\Acl\AdapterInterface::deny по типу.
- Функции Phalcan\Acl\AdapterInterface::allow и Phalcan\Acl\AdapterInterface::deny имеют 4-й аргумент — функция, которая будет вызываться при использовании Phalcan\Acl\AdapterInterface::isAllowed.
- Функция Phalcan\Acl\AdapterInterface::isAllowed имеет 4-й аргумент — параметры, можно передать аргументы для функции, определённой в Phalcan\Acl\AdapterInterface:allow или Phalcan\Acl\AdapterInterface::deny, в виде ассоциативного массива, где ключ — это имя аргумента.
- В интерфейс Phalcan\DispatcherInterface был добавлен метод getActionSuffix().
- Параметры CLI теперь обрабатываются согласованно.
- Был добавлен интерфейс Phalcan\Mvc\Controller\BindModelInterface и связанная загрузка типа подсказки модели через диспетчер.
- Добавлена функция Phalcan\Dispatcher::hasParam().
- Консоль Phalcan\Cli\Console и приложение Phalcan\Mvc\Application теперь наследуют Phalcan\Application.
- Исправлена ошибка, из-за которой событие afterFetch не отправлялось на поведение.
- Исправлена проблема с радиокнопкой, которая не проверялась, когда значение по умолчанию равно 0.
- Исправлена проблема, из-за которой Model::__set обходил сеттеры.
- Исправлена проблема, из-за которой Model::__set устанавливал скрытые атрибуты напрямую, когда сеттеры не были объявлены.
- Добавлены интерфейсы Phalcan\Cli\DispatcherInterface, Phalcan\Cli\TaskInterface, Phalcan\Cli\RouterInterface и Phalcan\Cli\Router\RouteInterface.
- Добавлены функции Phalcan\Mvc\Collection::update, Phalcan\Mvc\Collection::create и Phalcan\Mvc\Collection::createIfNotExist.
- Из всех интерфейсов был удалён __construct.
- При возникновении исключения во время диспетчеризации срабатывает событие dispatch:beforeException.
- Для методов Phalcan\Mvc\Model\Query\Builder: betweenWhere, notBetweenWhere, inWhere и notInWhere добавлен оператор OR.
- Исправлен баг метода destroy адаптера Phalcan\Session\Adapter\Libmemcached.
- Добавлен метод addServers в Phalcan\Cache\Backend\Memcache, чтобы включить пул серверов для memcache.
- В ответ Phalcan\Http\Response добавлен метод setLastModified.
- Добавлен валидатор Phalcan\Validation\Validator\Date.
- Добавлена команда \Phalcan\Queue\Beanstalk::ignore(), которая удаляет именованную трубку из списка наблюдения для текущего соединения.
- Добавлена команда \Phalcan\Queue\Beanstalk::pauseTube(), которая может отложить любое новое задание на заданное время.
- Добавлена команда \Phalcan\Queue\Beanstalk::kick(), которая перемещает задания в готовую очередь. Если есть какие-либо скрытые задания, она будет только выбивать скрытые задания. В противном случае она выбьет отложенные задания.
- Добавлена команда \Phalcan\Queue\Beanstalk::listTubeUsed(), которая возвращает трубку, используемую клиентом в данный момент.
- Добавлена команда \Phalcan\Queue\Beanstalk::listTubesWatched(), которая возвращает список трубок, за которыми в настоящее время следит клиент.
- Добавлена команда \Phalcan\Queue\Beanstalk::peekDelayed(), которая возвращает отложенное задание с наименьшим оставшимся сроком задержки.
- Добавлена команда \Phalcan\Queue\Beanstalk::jobPeek(), которая возвращает задание.
- Mcrypt заменён на openssl в Phalcan\Crypt.
- По умолчанию алгоритм шифрования в Phalcan\Crypt теперь изменён на AES-256-CFB.
- Из интерфейса Phalcan\CryptInterface удалены методы setMode(), getMode() и getAvailableModes().
- В менеджер Phalcan\Assets\Manager добавлена функция exists() для проверки существования коллекции.
- Менеджер Phalcan\Mvc\Model\Manager::load() теперь может... На основе предоставленного текста можно сделать вывод, что основной язык запроса — русский.
В запросе представлен обзор изменений в программном обеспечении Phalcon. В тексте описаны различные улучшения и исправления ошибок в различных компонентах и функциях программного обеспечения.
Вот перевод текста на русский язык:
- Загрузка моделей из пространств имён с псевдонимами:
- Phalcon\Mvc\Model\Transaction\Manager теперь корректно учитывает транзакции #11554.
- Phalcon\Db\Dialect\Sqlite теперь сопоставляет дополнительные типы столбцов с эквивалентами столбцов SQLite.
- Теперь используется Phalcon\Security\Random.
- Обеспечено, чтобы методы Phalcon\Security::getToken() и Phalcon\Security::getTokenKey() возвращали случайное значение для каждого запроса, а не для каждого вызова.
- Методы Phalcon\Security::getToken() и Phalcon\Security::_numberBytes используются вместо переданного аргумента или жестко заданного значения.
- Исправлена некорректная работа методов Phalcon\Security::hash() с CRYPT_STD_DES, CRYPT_EXT_DES, MD5, CRYPT_SHA256.
- В методах Phalcon\Security::hash() исправлена неправильная длина соли для CRYPT_SHA512.
- Добавлены недостающие модульные тесты для Phalcon\Security.
- Исправлено поведение метода Filter::add #11581.
- Удалён Phalcon\Session #11340.
- Метод Tag::getTitle() показывает заголовок в зависимости от prependTitle и appendTitle.
- Используется устанавливаемая переменная для имени службы подключения Mongo вместо жёстко заданной строки #11725.
- Добавлен новый метод получения Phalcon\Mvc\Model\Query\Builder::getJoins() для получения частей соединения из построителя запросов.
- Исправлен метод Phalcon\Db\Dialect\Oracle::prepareTable() для корректного создания SQL для псевдонимов таблиц #11799.
- Исправлен метод Phalcon\Mvc\Model\Resultset::update() — удалены бесконечные циклы запросов.
- Адаптеры бэкэнда кэша теперь возвращают логическое значение при вызове Phalcon\Cache\BackendInterface::save.
- Исправлен обратный вызов сеанса записи #11733.
- Добавлены '\Phalcon\Loader::registerFiles' и '\Phalcon\Loader::getFiles'. Это позволяет добавлять файлы в автозагрузчик.
- Добавлены методы Phalcon\Security::hasLibreSsl и Phalcon\Security::getSslVersionNumber.
- Добавлен новый установщик Phalcon\Escaper::setDoubleEncode() для включения/отключения двойного кодирования.
- Добавлена поддержка Msgpack для внешнего интерфейса кэша Phalcon\Cache\Frontend\Msgpack.
- Phalcon\Debug\Dump пропускает отладку di, исправляет обнаружение частных/защищённых свойств.
- Добавлена возможность проверки нескольких полей одним валидатором (также исправлен валидатор уникальности), а также удалён ненужный model => $this в Phalcon\Validation\Validator\Uniqueness.
- Валидатор Phalcon\Validation\Validator\Alpha теперь правильно проверяет символы, отличные от ASCII #11386.
- Валидатор Phalcon\Validation\Validator\Digit теперь правильно проверяет цифры #11374.
- Добавлен валидатор комбинированных полей Phalcon\Validation\CombinedFieldsValidator, который будет передавать массив полей этому валидатору при необходимости.
- Добавлена возможность автоматического экранирования флэш-сообщений #11448.
- Исправлен Phalcon\Config::merge для работы с php7.
- Добавлена возможность использовать пользовательский разделитель для Phalcon\Text::camelize и Phalcon\Text::uncamelize #10396.
- Поддерживаются методы HTTP CONNECT, TRACE и PURGE.
- Рефакторинг Phalcon\Http\Request::getHttpHost. Теперь он всегда возвращает имя хоста или пустую строку. При необходимости проверяет и очищает имя хоста #2573.
- Добавлен метод Phalcon\Http\Request::getPort для получения информации о порте, на котором сделан запрос.
- Добавлены Phalcon\Http\Request::setStrictHostCheck и Phalcon\Http\Request::isStrictHostCheck для управления строгой проверкой имени хоста.
- Исправлено сопоставление имени хоста методом Phalcon\Mvc\Route::handle при использовании порта текущего имени хоста #2573.
- Исправлен динамический метод Phalcon\Text:dynamic() для разрешения пользовательского разделителя #11215.
- Исправлен метод Phalcon\Validation::appendMessage для разрешения добавления сообщения в пустой стек #10405. Phalcon\Session\Flash::getMessages теперь возвращает пустой массив в случае запроса несуществующего типа сообщения #11941.
Были внесены изменения в Phalcon\Mvc\RouterInterface и Phalcon\Mvc\Router. Добавлены пропущенные методы addPurge, addTrace и addConnect.
Исправлена некорректная работа запроса при использовании NULL-полей с Phalcon\Validation\Validator\Uniqueness.
Исправлен метод Phalcon\Forms\Form::getValue. Теперь элементы могут иметь имена, которые соответствуют внутренним методам получения значений формы #10398.
Добавлен метод setContentLength() в Phalcon\Http\Response.
Исправлен Phalcon\Mvc\Model\Manager::_mergeFindParameters — слияние условий #11987.
Переименованы методы Phalcon\Http\Request::isSoapRequest в Phalcon\Http\Request::isSoap и Phalcon\Http\Request::isSecureRequest в Phalcon\Http\Request::isSecure. Оригинальные функции оставлены как псевдонимы и помечены как устаревшие.
Исправлено наследование с использованием подстановочных знаков в Phalcon\Acl\Adapter\Memory #12004.
Прекращена поддержка Oracle #12008.
Улучшен метод Phalcon\Mvc\Collection::findById. Добавлена проверка того, что id имеет допустимый формат #12010.
Добавлена опция convert в Phalcon\Validation\Validator\Uniqueness для преобразования значений перед поиском в базе данных #12005.
Опубликовать ( 0 )