Релиз Phalcon 2.0.2

от автора

Процесс разработки Phalcon с момента выхода 2.0.0 значительно ускорился. Все больше и больше контрибьюторов находит Zephir легким и понятным для работы. Результатом этого стал релиз Phalcon 2.0.2. Эта версия включает в себя множество новой функциональности, исправлений ошибок и улучшения производительности:

  • Добавлен метод stats() в Beanstalk
  • Устранено падение при doc-блоке без аннотаций #10301
  • Исправлено неверное количество передаваемых параметров при срабатывании события в Mvc\Collection
  • Теперь Mvc\Model проверяет есть ли у атрибута значение по умолчанию, указанное в схеме БД и игнорирует его при генерации SQL для вставки/обновления
  • Исправлен критический баг при вызове Http\Request::hasPut() #10283
  • Phalcon\Text: добавлен метод reduceSlashes() — убирает множественные слешы, заменяя их одиночными
  • Phalcon\Text: добавлен метод concat() — объединяет строки с использованием разделителя без дублирования в местах конкатенации.
  • Добавлено условие в адаптере start() сессии для проверки наличия уже начатой сессии
  • Добавлен метод status() в адаптере сессии для проверки факта начала сессии
  • Внедрение подзапросов в PHQL
  • Повышение производительности, ориентированное на PHP5.6

Подзапросы (Subqueries)

Одна из наиболее востребованных сообществом фич наконец реализована в Phalcon 2.0.2. Теперь вы можете использовать подзапросы:

$phql = "SELECT c.* FROM Shop\Cars c WHERE c.brandId IN (SELECT id FROM Shop\Brands) ORDER BY c.name"; $cars = $this->modelsManager->executeQuery($phql); 

Модели должны принадлежать к той же базе данных для того, чтобы использоваться в качестве источника в подзапросе.

Значения БД по умолчанию

Теперь, в случаях, если столбец имеет значение по умолчанию, описанное в схеме, оно будет использоваться вместо вставки NULL:

$robots = new Robots(); $robots->save(); // use all <code>default</code> values 

Обновление

Данная версия может быть установлена из master ветки, если у Вас еще не установлен Zephir, выполните следующие действия:

git clone http://github.com/phalcon/cphalcon git checkout master cd ext sudo ./install 

Стандартный метод установки также работает:

git clone http://github.com/phalcon/cphalcon git checkout master cd build sudo ./install 

Если Zephir у вас установлен:

git clone http://github.com/phalcon/cphalcon git checkout master zephir fullclean zephir build 

Обратите внимание, что при запуске установочный скрипт заменит любую установленную ранее версию Phalcon.

DLL библиотеки для Windows доступны на странице загрузки.

См. раздел обновление до 2.0.х для получения дополнительных сведений об обновлении с версии 1.3.х.

Скоро

В будущих 2.0.x версияю мы сконцентрируем наши усилия на запросах сообщества:

  • Eager-Loading в PHQL
  • Опциональные пустые строки в ORM
  • PHQL пользовательские функции
  • Case Statements в PHQL
  • Алиасы неймспейсов в PHQL

В дальнейшем мы будем планировать функциональность для включения ее в 2.1, сейчас это:

  • Отказ от PHP 5.3
  • Унификация Phalcon\Mvc\Model\Validation и Phalcon\Validation

Спасибо

Спасибо всем кто принимал участие в создании этой версии, всему сообществу, за их непрырывную работу и обратную связь!

ссылка на оригинал статьи http://habrahabr.ru/post/258769/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *