#yiisoftYiiMiddleware #ПатчРелиз #Релиз
🎁 Yii Middleware 1.0.3
• Добавлена поддержка пакета
🎁 Yii Middleware 1.0.3
• Добавлена поддержка пакета
psr/http-message
версии ^2.0
.🍾5❤2👍2🤝2👨💻1👾1
#yiisoftYiiView #ПатчРелиз #Релиз
🎁 Yii View Extension 6.1.1
• Исправлено: обработчики событий для Yii Debug подключались даже если Yii Debug выключен или не установлен.
🎁 Yii View Extension 6.1.1
• Исправлено: обработчики событий для Yii Debug подключались даже если Yii Debug выключен или не установлен.
❤2👍2👾1
#yiisoftValidator #ПатчРелиз #Релиз
🎁 Yii Validator 1.4.1
• Устранено "протекание" параметров в контексте валидации, что в некоторых случаях приводило к ошибкам при выполнении валидации через контекст (
🎁 Yii Validator 1.4.1
• Устранено "протекание" параметров в контексте валидации, что в некоторых случаях приводило к ошибкам при выполнении валидации через контекст (
$context->validate()
).👍4👾1
#yiisoftRequirements #ПервыйРелиз #МажорныйРелиз #Релиз
🎁 Yii Requirements Checker 1.0
Библиотека позволяет проверить соответствует ли окружение заданным требованиям. Поддерживает вывод результата в виде HTML (для веб-страниц) или в виде текста для консоли.
Пример использования:
🎁 Yii Requirements Checker 1.0
Библиотека позволяет проверить соответствует ли окружение заданным требованиям. Поддерживает вывод результата в виде HTML (для веб-страниц) или в виде текста для консоли.
Пример использования:
<?php
require_once('/path/to/requirements/RequirementsChecker.php');
$config = [
[
'name' => 'PHP version',
'mandatory' => true,
'condition' => version_compare(PHP_VERSION, '7.4.0', '>='),
'by' => '<a href="https://www.yiiframework.com">Yii Framework</a>',
'memo' => 'PHP 7.4.0 or higher is required.',
],
[
'name' => 'PDO MySQL extension',
'mandatory' => false,
'condition' => extension_loaded('pdo_mysql'),
'by' => 'All DB-related classes',
'memo' => 'Required for MySQL database.',
],
);
$requirementsChecker = new RequirementsChecker();
$result = $requirementsChecker
->check($config)
->getResult();
$requirementsChecker->render();
exit($result['summary']['errors'] === 0 ? 0 : 1);
👍14👾1
#yiisoftAppConsole #ПервыйРелиз #МажорныйРелиз #Релиз
🎁 Шаблон консольного приложения 1.0
Первый стабильный релиз шаблона консольного приложения на базе Yii3, который может использоваться для решения таких задач, как:
• работа с очередями;
• работа с вебсокетами;
• выполнение cron-заданий;
• выполнение ручных консольных команд;
• … .
Подробное описание в README.
🎁 Шаблон консольного приложения 1.0
Первый стабильный релиз шаблона консольного приложения на базе Yii3, который может использоваться для решения таких задач, как:
• работа с очередями;
• работа с вебсокетами;
• выполнение cron-заданий;
• выполнение ручных консольных команд;
• … .
Подробное описание в README.
🍾20👍8❤1🔥1👾1
#yiisoftYiiViewRenderer #yiisoftYiiView #МажорныйРелиз #Релиз
🎁 Yii View Renderer 7.0
• Пакет переименован из
• В качестве шаблона (layout) теперь может использоваться только полный путь.
• В конфигурации пакета значения по умолчанию для параметров
• Выполнен рефакторинг кода, отвечающего за получение имени контроллера из его экземпляра. Теперь поиск элемента с окончанием "controller(s)" в пространстве имён контроллера выполняется «жадно».
Инструкция по обновлению на эту мажорную версию описана в файле UPGRADE.md.
🎁 Yii View Renderer 7.0
• Пакет переименован из
yiisoft/yii-view
в yiisoft/yii-view-renderer
.• В качестве шаблона (layout) теперь может использоваться только полный путь.
• В конфигурации пакета значения по умолчанию для параметров
viewPath
и layout
изменены на null.• Выполнен рефакторинг кода, отвечающего за получение имени контроллера из его экземпляра. Теперь поиск элемента с окончанием "controller(s)" в пространстве имён контроллера выполняется «жадно».
Инструкция по обновлению на эту мажорную версию описана в файле UPGRADE.md.
👍5👾3
#yiisoftAppConsole #ПатчРелиз #Релиз
🎁 Шаблон консольного приложения 1.0.1
•
🎁 Шаблон консольного приложения 1.0.1
•
composer.lock
удалён из .gitignore
.👍7🔥2👾2
🌿 #Полезное
Про Yii3 и не только
Выступление Александра Макарова на VI встрече PHP-сообщества Воронежа с докладом о прошлом, настоящем и будущем Yii.
⚡️ Видео на YouTube
Про Yii3 и не только
Выступление Александра Макарова на VI встрече PHP-сообщества Воронежа с докладом о прошлом, настоящем и будущем Yii.
⚡️ Видео на YouTube
👍22❤4🔥2👾1
#yiisoftView #МажорныйРелиз #Релиз
🎁 Yii View 10.0
• Изменена логика поиска шаблона представления в
1)
2)
3) Если строка начинается с
4) В остальных случаях ищем либо в контексте (если задан), либо в базовой директории.
• Удалён метод
• Исключение
🎁 Yii View 10.0
• Изменена логика поиска шаблона представления в
ViewInterface::render()
:1)
./path
— если строка начинается c ./
, то ищем в директории текущего представления, если представления нет — бросаем исключение.2)
//path
— если строка начинается с //
, то ищем в базовой директории.3) Если строка начинается с
/
(в *nix) или содержит :
(в Windows), то используем строку как абсолютный путь.4) В остальных случаях ищем либо в контексте (если задан), либо в базовой директории.
• Удалён метод
ViewInterface::renderFile()
, вместо него теперь используется ViewInterface::render()
.• Исключение
RuntimeException
заменено на LogicException
для случаев, когда ViewInterface::render()
не может разобрать путь к представлению.👍10👾1
#yiisoftYiiViewRenderer #yiisoftYiiView #МинорныйРелиз #Релиз
🎁 Yii View Renderer 7.1
• Поддерживаемая версия Yii View (
🎁 Yii View Renderer 7.1
• Поддерживаемая версия Yii View (
yiisoft/view
) поднята до ^10.0
.👍6👾1
#yiisoftMailer #МинорныйРелиз #Релиз
🎁 Yii Mailer Library 5.1
• В
• Минимальная версия PHP поднята до
• Поддерживаемая версия Yii View (
🎁 Yii Mailer Library 5.1
• В
MessageFactory
добавлена возможность указать значение по умолчанию для поля "from".• Минимальная версия PHP поднята до
^8.1
.• Поддерживаемая версия Yii View (
yiisoft/view
) поднята до ^10.0
.👍3👾3👨💻1
#yiisoftLog #МинорныйРелиз #Релиз
🎁 Yii Logging Library 2.1
• Добавлены новые статические методы в классе
-
-
-
• Добавлена поддержка вложенных значений в переменных шаблона сообщения, например
• Добавлены провайдеры контекста (подробнее в документации).
• Добавлена поддержка
• В классе
• Константа
• В классе
-
-
-
• В классе
-
-
• При генерации сообщений для исключений заменён метод
• В конструкторе
• Исправлена ошибка при парсинге сообщений, содержащих переменные, которые нельзя привести к строке.
• Исправлена ошибка при форматировании трейса, когда нет значений "file" и "line".
🎁 Yii Logging Library 2.1
• Добавлены новые статические методы в классе
Logger
:-
assertLevelIsValid()
,-
assertLevelIsString()
,-
assertLevelIsSupported()
.• Добавлена поддержка вложенных значений в переменных шаблона сообщения, например
{foo.bar}
.• Добавлены провайдеры контекста (подробнее в документации).
• Добавлена поддержка
DateTime
и DateTimeImmutable
в качестве метки времени в контексте.• В классе
Message
добавлены методы category()
, trace()
, time()
и константа DEFAULT_CATEGORY
.• Константа
CategoryFilter::DEFAULT
помечена устаревшей.• В классе
Logger
помечены устаревшими методы:-
validateLevel()
,-
setTraceLevel()
,-
setExcludedTracePaths()
.• В классе
Target
помечены устаревшими методы:-
setCommonContext()
,-
getCommonContext()
.• При генерации сообщений для исключений заменён метод
gettype()
на get_debug_type()
.• В конструкторе
Message
тип параметра $level
изменён на string
.• Исправлена ошибка при парсинге сообщений, содержащих переменные, которые нельзя привести к строке.
• Исправлена ошибка при форматировании трейса, когда нет значений "file" и "line".
👍9👾1
#yiisoftHtml #МинорныйРелиз #Релиз
🎁 Yii HTML 3.5
• Добавлен класс для тега
• Добавлена поддержка массивов в качестве значения атрибута
🎁 Yii HTML 3.5
• Добавлен класс для тега
<hr>
и соответствующий метод Html::hr()
.• Добавлена поддержка массивов в качестве значения атрибута
aria-describedby
.👍3🤡3👾1
#yiisoftErrorHandler #МинорныйРелиз #Релиз
🎁 Yii Error Handler 3.3
• Добавлена кнопка для копирования cURL-запроса.
• Отсортированы заголовки в информации о запросе.
• Упрощён код, генерирующий сообщения для лога ошибок.
• В трейсе добавлена возможность посмотреть полный список аргументов.
• Добавлена возможность настройки глубины регистрации shutdown-функции, вызывающей
• Мелкие исправления в интерфейсе.
🎁 Yii Error Handler 3.3
• Добавлена кнопка для копирования cURL-запроса.
• Отсортированы заголовки в информации о запросе.
• Упрощён код, генерирующий сообщения для лога ошибок.
• В трейсе добавлена возможность посмотреть полный список аргументов.
• Добавлена возможность настройки глубины регистрации shutdown-функции, вызывающей
exit(1)
, по умолчанию — 2.• Мелкие исправления в интерфейсе.
👍4🔥1👾1
#yiisoftYiiSentry #ПатчРелиз #Релиз
🎁 Yii Sentry 2.0.1
• Добавлена поддержка
🎁 Yii Sentry 2.0.1
• Добавлена поддержка
psr/http-message
версии ^2.0
.👍7❤1👾1
#yiisoftYiiRunnerHttp #МажорныйРелиз #Релиз
🎁 Yii HTTP Runner 3.0
• Добавлена возможность изменить размер буфера используемого при отправки содержимого ответа.
• Добавлена возможность задать любой PSR-совместимый логгер для сбора ошибок, которые могут возникнуть в процессе создания контейнера. По умолчанию,
• Удалён класс
• Класс
• Исправлена некорректная обработка ответов с незакрытыми буфферами вывода.
🎁 Yii HTTP Runner 3.0
• Добавлена возможность изменить размер буфера используемого при отправки содержимого ответа.
• Добавлена возможность задать любой PSR-совместимый логгер для сбора ошибок, которые могут возникнуть в процессе создания контейнера. По умолчанию,
NullLogger
.• Удалён класс
ServerRequestFactory
.• Класс
SapiEmitter
помечен только для внутреннего использования.• Исправлена некорректная обработка ответов с незакрытыми буфферами вывода.
👍10👾2🎉1
#yiisoftValidator #МажорныйРелиз #Релиз
🎁 Yii Validator 2.0
• Добавлено правило
• В именах классов/трейтов/методов/переменных слово "attribute" заменено на "property".
• Переименованы правила:
-
-
• При создании правила
• Добавлен PHP-атрибут
• Интерфейс
• Метод
• Параметр
• Выполнен рефакторинг метода
• Выполнен рефакторинг обработчика правила
• Изменён тип параметра
• Изменён тип параметра
• Изменён тип параметра
• Для правил, не реализающих
• Встроенные правила валидации в качестви имени правила теперь возвращают полное имя класса.
• В контекст валидации добавлен параметр
• В сообщения об ошибках валидации добавлены имена валидируемых свойств.
• Во встроенных правила в сообщения о некорректном типе валидируемого значения добавлен тип значения.
• Улучшены сообщения об ошибках валидации в правилах
• Исправлено: правила валидации, заданные в виде PHP-атрибутов объекта, не учитывались при нормализации через
• Исправлено: при использовании правила
• Исправлено: при использовании правила
• Уточнены типы в psalm-аннотациях в классе
• Минимальная требуемая версия PHP поднята до 8.1.
• Добавлен перевод сообщений об ошибках валидации на немецкий язык.
Инструкция по обновлению на эту мажорную версию описана в файле UPGRADE.md.
🎁 Yii Validator 2.0
• Добавлено правило
InEnum
, проверяющее, что значение соответствует одному из значений типизированного перечисления.• В именах классов/трейтов/методов/переменных слово "attribute" заменено на "property".
• Переименованы правила:
-
AtLeast
→ FilledAtLeast
;-
OneOf
→ FilledOnlyOneOf
.• При создании правила
FilledAtLeast
добавлена проверка, что значение свойства $min
меньше или равно количеству проверяемых свойств.• Добавлен PHP-атрибут
Label
позволяющий задать имя свойства в сообщениях об ошибках валидации.• Интерфейс
RuleWithOptionsInterface
переименован в DumpedRuleInterface
.• Метод
getName()
перемещён из метода RuleInterface
в DumpedRuleInterface
.• Параметр
$rules
в методе RulesNormalizer::normalize()
сделан опциональным.• Выполнен рефакторинг метода
Result::add()
: для повышения производительности использование метода array_merge()
вынесено за цикл foreach
.• Выполнен рефакторинг обработчика правила
Json
. Для проверки вместо регулярного выражения теперь используются встроенные функции json_validate()
, json_decode()
и json_last_error()
.• Изменён тип параметра
$escape
в методе Error::getValuePath()
с bool|string|null
на string|null
.• Изменён тип параметра
$skipOnEmpty
в конструкуторах правил с mixed
на bool|callable|null
.• Изменён тип параметра
$rule
в методе RuleHandlerInterface::validate()
с object
на RuleInterface
.• Для правил, не реализающих
DumpedRuleInterface
, RulesDumper
теперь использует в качестве имени полное имя класса правила.• Встроенные правила валидации в качестви имени правила теперь возвращают полное имя класса.
• В контекст валидации добавлен параметр
Each::PARAMETER_EACH_KEY
, доступный во время обработки правила Each
и содержащий текущий ключ.• В сообщения об ошибках валидации добавлены имена валидируемых свойств.
• Во встроенных правила в сообщения о некорректном типе валидируемого значения добавлен тип значения.
• Улучшены сообщения об ошибках валидации в правилах
Json
, FilledOnlyOneOf
и FilledAtLeast
.• Исправлено: правила валидации, заданные в виде PHP-атрибутов объекта, не учитывались при нормализации через
RulesNormalizer::normalize()
.• Исправлено: при использовании правила
Nested
имя свойства не передавалось в сообщения об ошибках валидации.• Исправлено: при использовании правила
Each
в сообщение о некорректном ключе передавался тип значения вместо типа ключа.• Уточнены типы в psalm-аннотациях в классе
Result
.• Минимальная требуемая версия PHP поднята до 8.1.
• Добавлен перевод сообщений об ошибках валидации на немецкий язык.
Инструкция по обновлению на эту мажорную версию описана в файле UPGRADE.md.
👍17❤2🔥2👾1
#yiisoftNetworkUtilities #МинорныйРелиз #Релиз
🎁 Yii Network Utilities 1.1
• Добавлен объект
• Исправлена ошибка при преобразовании IP-адреса в битовое представление в PHP 8.0+.
🎁 Yii Network Utilities 1.1
• Добавлен объект
IpRanges
, который содержит диапазоны IP-адресов и позволяет проверить входит ли конкретный IP-адрес в эти диапазоны.• Исправлена ошибка при преобразовании IP-адреса в битовое представление в PHP 8.0+.
👍4👾3
#yiisoftProxyMiddleware #ПатчРелиз #Релиз
🎁 Yii Proxy Middleware 1.0.2
• Зависимость от
🎁 Yii Proxy Middleware 1.0.2
• Зависимость от
yiisoft/validator
заменена на более простую yiisoft/network-utilities
.👍7👾2
#yiisoftHydratorValidator #ПатчРелиз #Релиз
🎁 Yii Validating Hydrator 2.0.1
• Добавлена поддержка
🎁 Yii Validating Hydrator 2.0.1
• Добавлена поддержка
yiisoft/validator
версии ^2.0
.👍6👾3
#yiisoftInputHttp #ПатчРелиз #Релиз
🎁 Yii Input HTTP 1.0.1
• Добавлена поддержка
🎁 Yii Input HTTP 1.0.1
• Добавлена поддержка
yiisoft/validator
версии ^2.0
.👍6👾3