[PHP, Yii] Новости Yii 2020, выпуск 6
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Всем привет!
Почти три месяца прошло с последнего выпуска новостей. От нас почти ничего не было слышно. Мы работали. После расширения команды Yii 3 я больше занимаюсь управлением, ревью, проектированием и обсуждениями, чем непосредственно кодом. Получается неплохо. В общем темп ускорился, и мы всё ближе к нашим целям.
Активность на официальном форуме и форуме yiiframework.ru стала совсем низкой если сравнивать со временами Yii 1 и Yii 2. Сообщество перешло в разные социальные сети и чаты.
Я думаю, что такая миграция — это плохо. В соцсетях и чатах практически невозможно найти предыдущие ответы. Одни и те же вопросы повторяются практически каждый день и ответы не оседают в поиске. Почти уверен, что тот, кто первым
начнёт собирать вопросы и ответы и публиковать их как статьи в wiki или посты в блоге, станет довольно популярным.
А теперь перейдём к тому, что же интересного случилось с последнего выпуска.
Yii 1
Со мной связались Onetwist Software и предложили добавить поддержку PHP 8 в Yii 1.1 в обмен на пополнение фонда Yii (из которого мы частично финансируем Yii 3). В итоге в master версии 1.1 теперь есть поддержка PHP 8. Релиза пока не было. Ждём баг-репортов. Также:
- Пайплайны перетащили с TravisCI на GitHub actions.
- Тесты запускаются на версиях от PHP 5.3 до PHP 8.0. Пришлось пропатчить старый PHPUnit, но в итоге всё заработало. Части патча пригодятся и для Yii 2.
Из других новостей Yii 1.1, Marco van 't Wout, давний пользователь Yii, вызвался разбирать тикеты и, вероятно, неофициально поддерживать Yii 1.1 после планируемого окончания поддержки. Посмотрим как пойдёт...
Yii 2
- Yii 2.0.37. Улучшено дополнение в PhpStorm и отображение исключений в консольных приложениях в режиме отладки.
- Yii 2.0.38. Поддержка PHP 8. Поддержка последних версий баз данных. Фикс на тему безопасности.
- ElasticSearch 2.1.0. Поддержка версий с 5 по текущую 7.
- ApiDoc 2.1.5. Фиксы для совместимости с PHP 7.
- Документация к Yii и расширениям в различных форматах.
Мы постепенно переводим шаблоны приложения и расширения Yii 2 на GitHub actions. Это позволит нам нормально работать над будущими релизами.
Yii 3
2020 год не прост и много чего идёт не по плану. Вероятно, сдвинутся предполагаемые даты релиза, о которых я уже несколько раз неосторожно заявил. Тем не менее, публичный API меняется всё меньше, и значительная часть кода направлена на исправление ошибок и мелкие доработки, а не на перепроектирование API. Конечно, некоторые части, включая конфигурацию,
всё ещё сильно меняются. Конфигурацией я пока не вполне доволен.
Команда выпустила стабильные версии некоторых пакетов. Все они фреймворко-независимые и могут быть использованы в любом PHP-приложении:
Готовятся и другие релизы.
Ниже разберём интересные изменения и дополнения.
Тесты и причёсывание
- PHP 8 был добавлен как поддерживаемая версия в composer.json всех пакетов. Большинство уже совместимы, но пока не все.
- После довольно длительного использования phan мы переходим на Psalm. Он более популярный и поддерживается PhpStorm.
- Для многих пакетов реализованы дополнительные тесты, во многих пакетах тесты значительно улучшены на основе результатов мутационного тестирования через Infection. Вместе с общей зачисткой исправлено значительное количество ошибок.
- Был создан пакет для поддержки тестов. Сейчас он используется командой Yii 3 для самого фреймворка, но, вероятно, его можно будет использовать и в своих приложениях.
Пакеты
- Был создан пакет yiisoft/yii-event. Он предоставляет конфигуратор для событий и используется как в веб-приложении, так и в консоли.
Для конечного пользователя это выражается, прежде всего, в том, что зависимости автоматически подставляются в обработчики событий.
- Пакет data response был выделен из yii-web. Он даёт возможность отвечать сырыми данными, которые форматируются в XML, JSON и т.д. позже.
- Появился новый пакет request body-parser. В нём middleware для разбора тела запроса в зависимости от content-type.
- Доработан пакет Bulma. Сейчас он используется для оформления шаблона приложения по умолчанию.
- Главный пакет очередей практически стабилизировался. Готова начальная реализация драйвера для AMQP.
- Улучшена структура пакета валидации.
- В интеграции с Cycle ORM появилась команда cycle/schema/clear и фильтруемый data reader.
- Продолжается зачистка слоя абстрации над базами данных и его драйверов. Выглядят пакеты всё лучше. Очень вероятно, что они будут готовы к релизу основного фреймворка.
- В роутере реализовано сопоставление по хосту.
- В диспетчере событий заменили подход с friendly-классом на более понятный.
- В формах теперь поддерживаются вложенные атрибуты (через разделитель-точку).
- Cookies переехали из yii-web в отдельный пакет.
- На основе применения с Cycle ORM почищены интерфейсы в пакете data.
- В пакет arrays добавлены дополнительные модификаторы. Плюс он подвергся лёгкому рефакторингу и был покрыт дополнительными тестами.
- Роутер стал более гибким. Появилась возможность заменить то, как запускается совпавший маршрут.
- Конфигурацию валидатора теперь можно экспортировать в виде массива. Это полезно для сериализации правил в JSON и передачу фронтенд-части для клиентской валидации.
- В пакете по работе с файлами появилась возможность очистить директорию не удаляя её.
- CSRF переехал в отдельный пакет из yii-web и прилично изменён.
- То же произошло с сессиями.
- В пакет миграций добавлен интерфейс RevertibleMigrationInterface.
- Из Yii 2 портирован слой для работы с Redis.
- Улучшен сбор отладочных данных. API отладчика практически готов. В процессе разработки черновая версия просмотрщика данных на Angular в процессе. Нам всё ещё предстоит придумать, как удобно реализовать предоставление панелей сторонними пакетами, но, в остальном, всё двигается неплохо.
- Готов план по изменению архитектуры перевода сообщений. Реализация в процессе.
Демо приложение и шаблон приложения
- Расширено и отрефакторено демо приложение. Оно уже ближе к тому, как должно выглядеть приложение, но некоторые хорошие решения из yiisoft/app всё ещё не применены. Верно и обратное.
- Для yiisoft/app в качестве реализации PSR-7 и PSR-17 мы пробуем httpsoft/http-message вместо nyholm/psr7. Причина — производительность.
- Мы начали менять Composer config plugin и стало понятно что текущая архитектура должна быть переосмыслена. Реализация в процессе.
Основные задачи, над которыми мы работаем, показаны на доске в Trello. Там есть и те, которых нет на GitHub. Например, редизайн страницы ошибки.
Если хотите присоединиться к разработке, пишите мне в почту, на форум, в Telegram или по любому другому каналу.
Команда
Команда ещё выросла. Текущий состав есть на сайте:
- Paweł Brzozowski присоединился помогать с тикетами Yii 2.
- Сергей Предводителев присоединился к разработке Yii 3.
Также на страницу был добавлен Дмитрий Дерепко. На самом деле над Yii 3 он работает уже не мало, а вот на страницу мы как-то забыли его добавить :)
Новые и переработанные внутренние соглашения:
Обновлённые страницы в руководстве по фреймворку:
Другие новости
- На YiiPowered уже 597 проектов. Если вы не добавили свои — добавляйте. Можете даже не загружать скриншоты. Они подтянутся с реального сайта ночью.
Рекомендации к чтению
️ Спасибо!
Хочу сказать спасибо всем спонсорам и разработчикам, благодаря которым стала возможна разработка Yii 3. Вместе у нас всё получится.
Отдельное спасибо тем, кто помог Yii 3 кодом:
- Wilmer Arambula.
- Alexander Nekrasov.
- Dmitry Derepko.
- Viktor Babanov.
- Rustam Mamadaminov.
- wiperawa.
- yiiliveext.
- Roman Tsurkanu.
- Mister-42.
- Maksym Storchak.
- Alexey Kopytko.
- Sergei Predvoditelev.
- Dmitriy Gritsenko.
- Anton Samoylenko.
- Arman Poghosyan.
- Leonid Chernenko.
- Andrii Vasyliev.
- Yuriy Mamaev.
- DarkDef.
- Aleksei Gagarin.
- Michael Härtl.
Также спасибо Ihor Sychevskyi за улучшения сайта yiiframework.com.
===========
Источник:
habr.com
===========
Похожие новости:
- [DevOps, PHP, MySQL, PostgreSQL, Разработка веб-сайтов] Среда разработки PHP на базе Docker
- [PHP] Улучшения покрытия PHP кода в 2020 году (перевод)
- [WordPress, PHP, Управление разработкой, Монетизация IT-систем] Проблемы монетизации продуктов на WordPress
- [PHP] HTTP-клиент на стероидах
- [Разработка веб-сайтов, PHP] Использование HAProxy и Docker на машине разработчика при разработке сайтов
- [Сетевые технологии, CRM-системы, Системное администрирование, PHP, Asterisk] Разбираемся с FreePBX и интегрируем его с Битрикс24 и не только
- [PHP, Анализ и проектирование систем, Конференции, Микросервисы] 26 сентября приглашаем на оффлайн-митап HOT Backend&Web в Краснодаре
- [Oracle, PHP, PostgreSQL] Кто победит: человек — венец творения или обратный слэш?
- [1С-Битрикс, JavaScript, PHP] Меняем страницу просмотра элемента универсальных списков в коробочном Битрикс24
- [PHP, Программирование] Перечисления в PHP
Теги для поиска: #_php, #_yii, #_php, #_yii, #_yii_3, #_php, #_yii
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 18:26
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Всем привет! Почти три месяца прошло с последнего выпуска новостей. От нас почти ничего не было слышно. Мы работали. После расширения команды Yii 3 я больше занимаюсь управлением, ревью, проектированием и обсуждениями, чем непосредственно кодом. Получается неплохо. В общем темп ускорился, и мы всё ближе к нашим целям. Активность на официальном форуме и форуме yiiframework.ru стала совсем низкой если сравнивать со временами Yii 1 и Yii 2. Сообщество перешло в разные социальные сети и чаты. Я думаю, что такая миграция — это плохо. В соцсетях и чатах практически невозможно найти предыдущие ответы. Одни и те же вопросы повторяются практически каждый день и ответы не оседают в поиске. Почти уверен, что тот, кто первым начнёт собирать вопросы и ответы и публиковать их как статьи в wiki или посты в блоге, станет довольно популярным. А теперь перейдём к тому, что же интересного случилось с последнего выпуска. Yii 1 Со мной связались Onetwist Software и предложили добавить поддержку PHP 8 в Yii 1.1 в обмен на пополнение фонда Yii (из которого мы частично финансируем Yii 3). В итоге в master версии 1.1 теперь есть поддержка PHP 8. Релиза пока не было. Ждём баг-репортов. Также:
Из других новостей Yii 1.1, Marco van 't Wout, давний пользователь Yii, вызвался разбирать тикеты и, вероятно, неофициально поддерживать Yii 1.1 после планируемого окончания поддержки. Посмотрим как пойдёт... Yii 2
Мы постепенно переводим шаблоны приложения и расширения Yii 2 на GitHub actions. Это позволит нам нормально работать над будущими релизами. Yii 3 2020 год не прост и много чего идёт не по плану. Вероятно, сдвинутся предполагаемые даты релиза, о которых я уже несколько раз неосторожно заявил. Тем не менее, публичный API меняется всё меньше, и значительная часть кода направлена на исправление ошибок и мелкие доработки, а не на перепроектирование API. Конечно, некоторые части, включая конфигурацию, всё ещё сильно меняются. Конфигурацией я пока не вполне доволен. Команда выпустила стабильные версии некоторых пакетов. Все они фреймворко-независимые и могут быть использованы в любом PHP-приложении: Готовятся и другие релизы. Ниже разберём интересные изменения и дополнения. Тесты и причёсывание
Пакеты
Демо приложение и шаблон приложения
Основные задачи, над которыми мы работаем, показаны на доске в Trello. Там есть и те, которых нет на GitHub. Например, редизайн страницы ошибки. Если хотите присоединиться к разработке, пишите мне в почту, на форум, в Telegram или по любому другому каналу. Команда Команда ещё выросла. Текущий состав есть на сайте:
Также на страницу был добавлен Дмитрий Дерепко. На самом деле над Yii 3 он работает уже не мало, а вот на страницу мы как-то забыли его добавить :) Новые и переработанные внутренние соглашения: Обновлённые страницы в руководстве по фреймворку: Другие новости
Рекомендации к чтению ️ Спасибо! Хочу сказать спасибо всем спонсорам и разработчикам, благодаря которым стала возможна разработка Yii 3. Вместе у нас всё получится. Отдельное спасибо тем, кто помог Yii 3 кодом:
Также спасибо Ihor Sychevskyi за улучшения сайта yiiframework.com. =========== Источник: habr.com =========== Похожие новости:
|
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 18:26
Часовой пояс: UTC + 5