Русскоязычное сообщество Yii
Yii — это высокоэффективный основанный на компонентной структуре PHP-фреймворк для разработки масштабных веб-приложений. Он позволяет максимально применить концепцию повторного использования кода и может существенно ускорить процесс веб-разработки. Название Yii (произносится как Yee или [ji:]) означает простой (easy), эффективный (efficient) и расширяемый (extensible).
2.0.28
Быстрый, безопасный и профессиональный PHP Framework
Быстрый
Yii запускает только то, что используется, имеет мощную систему кэширирования и изначально нацелен на отличную работу с AJAX.
Безопасный
В Yii есть всё для обеспечения безопасности: валидация, фильтрация, защита от SQL-инъекций и XSS.
Профессиональный
Yii помогает писать чистый гибкий код. Фреймворк следует MVC и чётко отделяет логику от отображения.
Новости - yiiframework.ru
Опубликовать пост
Yii 2.0.28, расширения и прогресс по Yii 3

Свежие новости от команды Yii.

Yii 2

Была выпущена новая версия 2.0.28. Она включает в себя важное исправление безопасности для Request::getUserIP() при работе с Request::$trustedHost и Request::$ipHeaders.

Также в релиз вошли исправления для обработки ошибок в ActiveField PHP 7 и yii\i18n\Formatter который неправильно использовал сложные строки локалей при выборе языка перевода.

Были выпущены следующие расширения:

Yii 3

На официальном форуме была создана тема "как начать контрибьютить в Yii 3".

Обсуждения с Somogyi Márton и его улучшения вылились в улучшение архитектуры и больше возможностей пакета "yiisoft/data". Он будет использован как основа для списков и гридов. Переписка в тикетах и pull request может быть довольно интересна.

Интерфейс дружественных исключений, который был упомянут в прошлый раз, был выделен в отдельный пакет "yiisoft/friendly-exception". Теперь любой пакет может реализовать интерфейс если хочет, чтобы Yii или другой совместимый обработчик ошибок показывал дополнительную информацию. Обсуждение на форуме.

@romkatsu написал юнит-тесты для redirect middleware.

Дмитрий Дерепко поправил yiisoft/log-target-email.

Благодаря Павлу Иванову DI контейнер теперь обращается к автозагрузке классов если определения в самом контейнере нет. Это позволяет не прописывать явно классы без интерфейса.

Рустам Мамадаминов реализовал middleware для аутентификации.

Павел Чаплыгин портировал компонент Flash.

Рендеринг view стал умнее. Теперь коллизии имён параметров невозможны.

Пакет RBAC приведён в рабочее состояние. Есть несколько концептуальных изменений по сравнению с Yii 2.

В общем мы приближаемся к состоянию когда можно выпустить альфа-версию.

Спасибо!

Спасибо всем, кто участвует в разработке и финансировании Yii. Вместе у нас всё получится.

читать далее...
Yii 2.0.27, Debug 2.1.9 и прогресс по Yii 3

Yii 2

Yii 2 получил очередной релиз версии 2.0.27. В этот раз кроме багфиксов в него вошли несколько улучшений.

Также обновилось расширение debug 2.1.9. В него вошло всего одно, но очень важное, исправление. Неправильно отображалось время относительно прошлого логирования на странице "logs".

Yii 3

  • Wilmer Arambula продолжает заниматься портированием пакетов из Yii 2. На этот раз widgets.
  • Тесты, помогающие стабилизировать код фреймворка, очень важны. romkatsu поделился тестами для CSRF middleware и callback middleware.
  • yiisoft/data прошёл стадию прототипа и теперь является вполне рабочим пакетом благодаря Павлу Чаплыгину и Somogyi Márton. Дизайн пакета ещё будет меняться, но он точно станет отличной базой для построения REST API и дата-виджетов, таких как GridView.
  • Пакет yiisoft/core был убит. Репозиторий был удалён и затем восстановлен чтобы сохранить issue для истории. Общего пакета "ядро", который занимается всем как в Yii 2 не будет. Вместо него будут "объединяющие" пакеты вроде yiisoft/yii-web. Они будут более сфокусированы: классический веб, консоль и так далее.
  • Был проведён эксперимент по использованию Cycle ORM. Первые результаты выглядят многообещающе и, вероятно, Cycle станет одной из официально рекомендуемых библиотек для работы с базами данных.
  • Другой эксперимент по использованию RoadRunner как вебсервер показал вкусные цифры касательно производительности, но была проблема с сессиями. Сейчас она исправлена. Несмотря на то, что в при написании кода стоит очень аккуратно обращаться с состоянием, разница в производительности делает его привлекательным и мы будем проверять фреймворк чтобы он работал в подобных окружениях.
  • Пакет yiisoft/strings был доработан ещё немного.
  • Обработчик ошибок получил возможность получить стектрей для фатальных ошибок, которая присутствовала в Yii 2.
  • Ещё одна интересная возможность для обработчика ошибок — "дружественные исключения". Реализовав интерфейс FriendlyExceptionInterface можно дать пользователю инструкции по тому, как исправить проблему. Они будут показаны на странице исключения.
  • Обновился roadmap.

На англоязычных форумах идут интересные дискуссии. Стоит почитать "Using Cycle ORM" и "Yii3 Properties".

Несколько человек высказали желание заняться портированием слоя для работы с базами данных из Yii 2. Если всё пойдёт хорошо, то можно будет работать в привычном стиле... или использовать Cycle или Doctrine.

читать далее...
Yii 2.0.26 и прогресс по Yii 3

На прошлой неделе выпустить релизы не удалось так как часть pull request-ов в Yii 2 нуждались в полировке, но сегодня релиз был тегнут.

Обновление исправляет ряд ошибок и ничего не должно ломать.

Что касается Yii 3, работы идут. В частности, есть прогресс по новым провайдерам данных. Код ещё не финальный, местами грубый. Общая идея описана на форуме.

Параллельно с пакетом data, Wilmer Arambula продвинулся в работе над view в процессе добавив дополнительные методы в пакет files.

Hubert Strychalski реализовал несколько важных тестов для middleware.

читать далее...
Релизы apidoc, debug и прогресс по Yii 3

Команда Yii выпустила два релиза расширений:

Прогресс по Yii 3 за неделю:

  • Отполировали кеш. Драйверы распилили в отдельные пакеты. Это позволит как релизить независимо, так и использовать в composer зависимости типа ext-*. Спасибо, Александр Картавенко!
  • Причесали логгер.
  • Написана документация по request и response.
  • Удалось запустить Yii 3 под RoadRunner. Время ответа радует.
  • Рустам Мамадаминов реализовал CSRF middleware. Спасибо!

В дополнение, написана статья в wiki, рассказывающая как переместить исходники в приложении на Yii 2 в директорию src.

читать далее...
Yii 2.0.25, расширения и прогресс по Yii 3

Yii 2

  • Yii 2.0.25. Багфикс-релиз. Ничего сломать не должен, но почитать CHANGELOG, как обычно, полезно.
  • Bootstrap 4 2.0.7. Добавлена возможность менять CSS-классы через конфиг DI-контейнера.
  • Gii 2.1.1.

Yii 3

  • Serializer выделен в отдельный пакет.
  • Архитектура пакета Cache пересмотрена. Стало проще и, вероятно, эффективней.
  • В Yii demo добавлен пример отсылки почты, простой layout и logout/login. Выглядит пока немного сложновато, но мы работаем над тем, чтобы было проще.
  • В Yii web появились сессия, user и identity.
  • Html был выделен в отдельный пакет.

Спасибо Александру Картавенко, Булату Дамдинову и Wilmer Arambula за помощь. Работать вместе эффективней и приятней.

читать далее...
Bootstrap 4, Debug, Yii 2 и прогресс по Yii 3

Вот и прошёл ещё один релизный вторник. На этот раз выпущены два расширения.

Bootstrap 4 обзавёлся документацией по миграции с Bootstrap (3) и синтаксическим сахаром, который был в старом расширении, но был потерян при переписывании под новую версию Bootstrap.

Такие потери и возвращения довольно типичны и, вероятно, их будет не мало в Yii 3.

Раширение Debug радует улучшениями:

  • На страницу со списком запросов добавлено время обработки и потребление памяти.
  • Улучшена ошибка при отсутствии отладочных дампов для отображения.
  • Улчшена совместимость со старыми браузерами.
  • Замыкания теперь сериализуются при помощи opis/closure, с ними будет ещё меньше проблем.
  • В модуль добавлена опция tracePathMappings, позволяющая настроить ссылки в stacktrace для работы с образами Docker в которые примонтирована файловая система хоста.

Релиз Yii 2 в этот раз не удался. Travis сломал окружение для тестов и на его частичное восстановление было потрачено слишком много времени. Но, несмотря на это, в Yii 2 было слито значительное число исправлений, которые войдут в релиз на следующей неделе. Если есть возможность, попробуйте их на своих проектах.

Yii 3 на этой неделе разрабатывался немного меньше, но поделиться есть чем:

На форуме созданы две интересные темы:

читать далее...
Yii 2.0.23 и разработка Yii 3

Yii 2

Выпущена версия 2.0.23. В основном, исправления касаются работы с MSSQL. Спасибо Александру Картавенко за фиксы!

Также была поправлена ошибка в Yii 2 плагине для composer.

Yii 3

читать далее...