Новости Yii 2020, выпуск 5

от автора

Приветствую!

Время очередного выпуска новостей Yii. Как у Yii 2, так и у Yii 3 всё хорошо 🙂

На самом деле, в этом году перед этим выпуском было ещё четыре, как следует из порядкового номера. Но я был так увлечён Yii 3, что забыл про хабр… Почитать их можно прямо на главной https://yiiframework.ru/. Ну или, если больше нравится английский, на нашей странице на OpenCollective.

Наконец, дошли руки обновить страницу с командой на официальном сайте.
Константин Сироткин вернулся и активно занимается расширением Yii 2 ElasticSearch.
Сформирована основная команда Yii 3. Вообще это по факту произошло в конце 2019-го. Имена, вероятно, вам известны так как упоминались в предыдущих выпусках.

Мы частично переместили тесты на GitHub actions. Полёт прекрасный, рекомендуем. Мы добавляем статический анализ через phan
и прогоняем тесты через Infection чтобы ещё больше повысить качество кода.

Я потратил немного времени на YiiPowered, где мы собираем проекты на Yii. Сейчас там 571 проект. Улучшения такие:

  • Можно добавлять проекты на Yii 3.0.
  • Для проектов, для которых не заполнены скриншоты, они делаются и загружаются автоматически каждую ночь.

В прошлом выпуске я упомянул конференцию PHP Russia Online.
Прошла она хорошо. Доступны видео.

В качестве эксперимента, я записал скринкаст во время работы над фреймворком.
Очень хочется узнать ваше мнение. Стоит писать ещё? Хотите узнать про какую-то часть фреймворка или процесс разработки?

Yii 2

Вышла версия 2.0.36. Это важное обновление из-за улучшений в работе
DI-контейнера. Он стал немного ближе к Yii 3.

В action как веб, так и консольного контроллеров теперь можно так:

namespace app\controllers;  use yii\web\Controller; use app\components\BookingInterface;  class HotelController extends Controller {         public function actionBook($id, BookingInterface $bookingService)     {         $result = $bookingService->book($id);         // ...         } }

Ещё одно улучшение в том, что Instance::of() начал работать в массивах:

return [     ContentTypeMiddleware::class => [         '__construct()' => [             Instance::of(StreamFactory::class),             [                 'json' => Intance::of(JsonFormatter::class),                 'yaml' => Intance::of(YamlFormatter::class),             ],         ],     ], ];

Дополнительно были выпущены следующие расширения:

Yii 3

Во-первых, появился шаблон приложения. С него вы можете начать пробовать Yii 3.
Это не финальная версия, но представление о том, что у нас есть, даёт. Обсуждения и конструктивная критика приветствуются.

Общую картину можно наблюдать в Trello.

Новые и переработанные внутренние соглашения:

Новые страницы в руководстве по фреймворку:

Рекомендации к чтению

️ Спасибо!

Хочу сказать спасибо всем спонсорам и разработчикам, благодаря которым стала возможна разработка Yii 3. Вместе у нас всё получится.

Отдельное спасибо тем, кто помог Yii 3 кодом:

ссылка на оригинал статьи https://habr.com/ru/post/510202/


Комментарии

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

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