Новости Yii 2021, выпуск 2

Привет, сообщество!

С вами Александр Макаров, samdark и этой второй выпуск в этом году. Я попросил членов команды написать что-то для вступления, но, похоже, они предпочитают писать код :)

Есть новости по важным обновлениям Yii 3 и набор релизов Yii 2. Также упомянем некоторые интересные проекты, не связанные напрямую с кодом.

Статусная страница

Так как вопрос "Как вообще дела с Yii3?" задают слишком часто, мы сделали страницу с прогрессом по пакетам Yii3. Считается просто: пакет со стабильным релизом считается готовым, пакет без стабильного релиза — нет. Фреймворк не требует релиза абсолютно всех пакетов, так что бета выйдет раньше, чем будет 100%. Чуть позже мы добавим ссылку на эту страницу с главной страницы официального сайта.

Улучшения дизайна

Создатель awesomic пригласил нас использовать сервис бесплатно в качестве благодарности за Yii 2. Сейчас мы не хотим делать полный редизайн сайта так как это существенно отвлечёт нас от Yii3. Поэтому, сделаем следующее:

Сообщество

Сообщество Yii всегда мигрировало с платформы на платформу. Во времена Yii 1 главной площадкой был форум. Он и сейчас является лучшим местом для сложных вопросов потому как отлично индексируется поисковиками. В качестве чата мы использовали IRC. Позже сообщества сформировались в Facebook и StackOverflow. IRC для многих был неудобен, поэтому мы попробовали Gitter и Slack.

Сейчас Yii3 мы больше всего обсуждаем в Telegram и, похоже, он стал более популярен, чем Slack.

Yii 2

Готов большой набор обновлений:

Yii 3

Разработка Yii3 идёт немного медленней, чем хотелось бы. Тем не менее, прогресс мне очень нравится. Мы выпускаем всё больше стабильных независимых пакетов и постоянно улучшаем основы, такие как конфигурацию и контейнер.

Релизы пакетов:

Следующий набор пакетов уже готовится. А теперь время рассмотреть интересные изменения с предыдущего выпуска новостей. Для удобства изменения сгруппируем.

Шаблоны приложений и демо

Роутинг и диспетчер middleware

Asset-ы

Пакет assets близок к релизу: решены все известные проблемы, написана документация, достигнуто отличное покрытие тестами.

DI и Factory

Мы опять поломали синтаксис. __class теперь class, свойства префиксируются $. namespace-ы тоже немного поменяли. Скорее всего это последнее такое изменение в декларативном синтаксисе контейнера.

Эти изменения позволили нам добавить метаданные без какого-либо шанса на конфликт со свойствами:

Конфиги

Новый плагин был отличной идеей. После следующих изменений пользоваться им стало удобно:

Старый плагин был обновлён для совместимости с изменениями в пакетах Yii 3.

На этом мы не останавливаемся. Будут ещё улучшения.

Data response

Translator

Набор пакетов для перевода почти готов к релизу. Кроме общей зачистки мы добавили инструмент для обновления перевода на основе кода и консольную команду для него. По удобству получилось, как минимум так же, как переводы в Yii 2.

Консоль

Начали группировать команды по namespace при выводе их списка.

Docker

Исправил образы Docker, включая образы под Nginx. Теперь они автоматически собираются через GitHub actions и доступны на Docker hub.

Новая и обновлённая документация

Почитать

❤️ Спасибо!

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

Кроме перечисленных нас поддерживают отдельные разработчики и другие компании.

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