Быстрее, надёжнее, стабильнее!
На подходе очередная версия фреймворка Phalcon, 1.2.4.
Данная версия не добавляет новой функциональности (ну разве что самую малость), а только исправляет ошибки, замеченные в предыдущих версиях Phalcon.
Из приятных бонусов — еще более низкое потребление памяти (особенно для PHP 5.3 и 5.4), более тщательное тестирование и некоторые оптимизации, портированные из ветки 1.3.0.
- исправлены все ошибки, найденные статическими анализаторами кода (
cppcheck
,scan-build
) иvalgrind
; - улучшено покрытие кода тестами; в частности, добавлены регрессионные тесты на все ошибки, приводившие к краху PHP;
- исправлены ошибки, связанные с наследованием разрешений в ACL (#905);
- исправлена ошибка отрисовки метки (
<label>
). приводившая к падению PHP (#1210); - исправлены уязвимости XSS (#1216, #1190);
- добавлена поддержка APCu версии 4.0.2 (что особенно актуально для тех, кто использует PHP 5.5) — в 4.0.2 немного сломали API (#1234);
- исправлено некорректное поведение цепочек фильтров в Assets (#1198);
- исправления кода из-за PHP Notice/Warning при использовании сложных запросов PHQL (#1222);
- оптимизация выделения памяти (минус 780 килобайт на прогоне набора тестов Phalcon и примерно на 25 тысяч выделений памяти меньше; #1220);
- исправлено регулярное выражение для проверки email в
Phalcon\Mvc\Model\Validator\Email
(#1243); - исправлены различные ошибки в документации;
- методы
Phalcon\Mvc\Model::hasOne
/hasMany
/belongsTo
/hasManyToMany
/addBehavior()
сделаныpublic
(#1166); - добавлена поддержка типа DOUBLE в MySQL (#1128);
- улучшена поддержка UTF-8 в
jsmin
иPhalcon\Debug
(#1099); - исправлены регрессии в
Phalcon\Http\Request::getRawBody()
(#1091); - реализован метод
Phalcon\Cache\Backend\Memory::queryKeys()
(частично портирован #1093); - перенаправления HTTP теперь используют описания из RFC 2616 (#1175);
- исправлена работа
Phalcon\Config::merge()
с классами, наследующимися отPhalcon\Config
(#1024); - Phalcon\Security::checkHash() позволяет задать ограничения на длину и сложность пароля для предотвращения атак, нацеленных на отказ в обслуживании;
- добавлена поддержка клонирования
Phalcon\Config
(#1277); - различные исправления в Query Builder (#1327, #1396);
- исправлена ошибка при использовании диспетчера событий с
Phalcon\Mvc\Models
(#1314); - Micro Collections теперь возвращают объект, реализующий интерфейс
Phalcon\Mvc\Micro\CollectionInterface
(#1130); - исправлена ошибка в
Phalcon\Forms\Form::getMessages()
, приводящая к фатальной ошибке в случае, если валидация прошла успешно (#1349); - устранены утечки памяти в коде (#1345);
- исправлены ошибки, связанные с неправильным доступом к памяти (#1340);
- исправлены ошибки в
Phalcon\Logger\{Adapter,Formatter}\FirePhp
(#1333); - исправлены ошибки в Phalcon\Validation (#1399);
- исправлена генерация
input type="radio"
иcheckbox
в случае нулевого значение атрибутаvalue
(#947); - исправлены ошибки разбора аннотаций маршрутизации (#1040, #1275);
- исправлена ошибка в Phalcon\Mvc\View\Engine\Volt\Compiler::expression(), приводящая к краху PHP (#1392);
- и другие исправления (так как вести журнал изменений всем лень).
Большое спасибо всем тем, кто помогал в разработке и тестировании, делился идеями и так или иначе участвовал в жизни проекта!
Thanks for flying with Phalcon!
© 2013 सत्यं वद धर्मं चर. Все права защищены. Перепубликация материалов без разрешения автора запрещена.
При использовании материалов блога наличие активной не закрытой от индексирования ссылки на источник обязательно.