Хроники Yii3
627 subscribers
43 photos
1.7K links
Описание процесса разработки фреймворка из первых рук 😎

Обсуждение:
https://yangx.top/yii3ru

Сводка по всем пакетам:
https://www.yiiframework.com/status/3.0

Поддержать разработчиков:
https://opencollective.com/yiisoft
加入频道
#yiisoftTranslatorMessagePhp #ПатчРелиз #Релиз

🎁 Yii Translator PHP Message Storage 1.0.5

• В конфигурации пакета алиас @message заменён на @messages (PR, PR, PR).
⚡️ #yiisoftYiiDebug

Yii Debug адаптировали к последним изменениям в Yii Queue (PR, PR).
⚡️ #yiisoftYiiDevTool

Несколько улучшений в Yii Development Tool.

• Добавлена возможность указать владельца пакетов с помощью конфигурационного файла owner-packages.php, по умолчанию — yiisoft (PR).

• Добавлена команда github/forks для создания форков (PR).
👍2
⚡️ #yiisoftValidator

В Yii Validator при использовании правила Callback через атрибуты добавлена возможность указать в качестве функции обратного вызова метод проверяемого объекта (PR).

Пока доступны только публичные статичные методы. Например:

final class Author
{
#[Callback(method: 'validateName')]
private string $name;

public static function validateName(mixed $value, object $rule, ValidationContext $context): Result
{
$result = new Result();
if ($value !== 'foo') {
$result->addError('Value must be "foo"!');
}

return $result;
}
}
⚡️ #yiisoftYiiDebug

В пакете Yii Debug в отладочную информацию добавлены имена используемых сборщиков (PR).
⚡️ #yiisoftYiiMiddleware

В Yii Middleware поправили тесты, которые сломались после последних изменений в валидаторе (PR).
⚡️ #yiisoftYiiDebugApi

В Yii Debug API добавлена команда analyse/psalm для запуска статического анализатора psalm (PR).
#yiisoftCacheFile #ПатчРелиз #Релиз

🎁 Yii Cache File Handler 2.0.1

• Для установки прав при создании папки теперь используется функция chmod() (PR). Ранее на права создаваемой папки, которые указываются с помощью метода withDirectoryMode(), влияло значение umask (особенность работы функции mkdir).
⚡️ #yiisoftRequestModel

В Yii Request Model обновили версию dev-зависимости yiisoft/test-support до ^3.0 (PR).
⚡️ #yiisoftYiiDevTool

Несколько доработок в Yii Development Tool.

• Добавлена команда github/sync для синхронизации форков (PR).

• Исправили дублирование пакетов, возникающее в некоторых случаях при выводе результата выполнения команды release/what (PR).
👍3
#yiisoftVarDumper #МинорныйРелиз #Релиз

🎁 Yii VarDumper 1.3.0

• Добавлен метод VarDumper::asJson(), позволяющий получить дамп в виде JSON (PR, PR, PR, PR).
🔥2
⚡️ #yiisoftYiiDebugApi

В Yii Debug API объекты теперь выводятся в виде массива (для чего используется новый метод VarDumper::asJson()), а не строки (PR, PR, PR).
⚡️ #yiisoftDb #yiisoftDbMssql #yiisoftDbMysql #yiisoftDbOracle #yiisoftDbPgsql #yiisoftDbSqlite

Продолжается разработка пакетов для работы с базами данных.

• Добавлен метод QuoterInterface::ensureColumnName() (гарантирует, что название колонки будет обёрнуто в [[ и ]]). Выполнен рефакторинг метода batchInsert, позволивший отказаться от использования Quoter).
- Yii DB (PR),
- Yii DB MSSQL Server Extension (PR),
- Yii DB MySQL Extension (PR, PR),
- Yii DB Oracle Extension (PR),
- Yii DB PostgreSQL Extension (PR, PR),
- Yii DB SQLite Extension (PR).

• Выполнили рефакторинг класс Quoter, предназначенного для экранирования составляющих SQL-запроса (имена таблиц и полей, значения и т. д.), который позволил избавится от зависимости ConnectionInterface.
- Yii DB (PR),
- Yii DB MSSQL Server Extension (PR),
- Yii DB MySQL Extension (PR),
- Yii DB Oracle Extension (PR),
- Yii DB PostgreSQL Extension (PR),
- Yii DB SQLite Extension (PR).
👍3
⚡️ #yiisoftRequestModel

В readme пакета Yii Request Model добавили информацию о подключении мидлвари (PR).
⚡️ #yiisoftActions

Обновления в Yii GitHub Actions.

• Добавили экшн rector для запуска инструмента Rector, предназначенного для автоматического улучшения кодовой базы (PR, PR, PR).

• Добавили экшн composer-require-checker для запуска инструмента Composer require checker, используемого для выявления транзитивных зависимостей (PR).

• Поправили использования кэша Composer в экшенах (PR).
👍2
⚡️ #yiisoftPackageTemplate

Несколько улучшение в шаблоне для пакетов Yii Package Template.

• Подняли версию PHP до ^8.0 (PR).

• В readme в команде для установки пакета через Composer убрали флаг --prefer-dist, так как Composer по умолчанию использует dist при установке пакета (PR).

• В GitHub Actions добавили конфигурацию для запуска Rector (PR).
🔥2
#yiisoftYiiTesting

Новый пакет Yii Testing, который будет помогать создавать приёмочные тесты без запуска сервера, или функциональные тесты в терминологии Codeception.

Уже добавлены раннер, абстрактный класс для тестов и другие классы (PR), проработана возможность работы с пакетами, подключенными через символические ссылки (PR). Также в GitHub Actions добавлена конфигурация для запуска Rector (PR).
🔥4
⚡️ #yiisoftYiiDevTool

Обновление Yii Development Tool.

• Добавили пакеты yiisoft/yii-testing (PR) и yiisoft/actions (PR).

• Добавили проверку возможности SSH-подключения к GitHub перед выполнением команд (PR).

• Добавили возможность указать ветку (опция branch) в команде sync (PR).

• Изменили поведение команд update и composer/update: символические ссылки на пакеты теперь создаются после обновления каждого из пакетов, а не после обработки всех пакетов, как было ранее. А при выполнении команды install символические ссылки создаются только для устанавливаемых пакетов (PR).

• Удалили пакет mailer-swiftmailer, который в настоящее время уже закрыт (PR).

• Удалили использование upstream-веток; если необходимо, то репозиторий можно прописать в packages.local.php (PR).

• В GitHub Actions добавили конфигурацию для запуска Rector и применили предлагаемые изменения (PR).

• Composer-зависимости обновили до актуальных версий (PR).
👍4
🔥 #Новости

Yii уже традиционно участвует в проекте HacktoberFest 2022.

Цель проекта — поддержать Open Source сообщество.

Как это работает?

1) Регистрируемся на сайте проекта с 26 сентября по 31 октября.

2) Делаем 4 пулл-реквеста в публичные репозитории на GitHub'е, участвующие в проекте, в период с 1 по 31 октября.

3) Если ваши пулл-реквесты будут приняты и слиты, то вы получите приз от HacktoberFest: футболку и сувениры.

🎁 Приз получат первые 40 000 участников.

Как сделать первый пул-реквест?

В пакетах Yii мы стараемся помечать тикеты, с которых можно начать контрибьютить, специальным тегом good first issue.

⭐️ Список тикетов
🔥7👍1