#yiisoftMailer #ПатчРелиз #Релиз
🎁 Yii Mailer 6.0.1
• Ограничение версии PHP в
• Для опциональных nullable-параметров явно прописан тип с
🎁 Yii Mailer 6.0.1
• Ограничение версии PHP в
composer.json
изменено на 8.1 - 8.4
.• Для опциональных nullable-параметров явно прописан тип с
null
для совместимости с PHP 8.4.👍5👾1
#yiisoftForm #МинорныйРелиз #Релиз
🎁 Yii Form 1.4
• Доработано оформления поля
• При выводе поля
• Область видимости полей
• Ограничение версии PHP в
🎁 Yii Form 1.4
• Доработано оформления поля
Checkbox
в теме "Bootstrap 5 Horizontal".• При выводе поля
Hidden
игнорируется любой HTML, кроме самого тега <input>
.• Область видимости полей
$beforeInput
и $afterInput
в классе PartsFeild
изменена на protected
.• Ограничение версии PHP в
composer.json
изменено на 8.1 - 8.4
.👍3👾2
#yiisoftHtml #МинорныйРелиз #Релиз
🎁 Yii HTML 3.10
• В статических фабриках
• В метод
• HTML атрибут
• Ограничение версии PHP в
• Для опциональных nullable-параметров явно прописан тип с
🎁 Yii HTML 3.10
• В статических фабриках
Button
параметр $content
сделан опциональным.• В метод
Select::value()
разрешено передавать null
.• HTML атрибут
loading
теперь выводится перед src
.• Ограничение версии PHP в
composer.json
изменено на 8.1 - 8.4
.• Для опциональных nullable-параметров явно прописан тип с
null
для совместимости с PHP 8.4.👍6👾1
#yiisoftRbac #МинорныйРелиз #Релиз
🎁 Yii Role-Based Access Control 2.1
• В классе
• Ограничение версии PHP в
• Исправлена ошибка: в методе
🎁 Yii Role-Based Access Control 2.1
• В классе
Manager
добавлена опциональная зависимость ClockInterface
для получения текущего времени.• Ограничение версии PHP в
composer.json
изменено на 8.1 - 8.4
.• Исправлена ошибка: в методе
Manager::userHasPermission()
не учитывались роли по умолчанию.👍5👾1
🌿 #Полезное
Диёрбек Ибрагимов, один из участников сообщества Yii3, начал записывать серию видеоуроков по Yii3.
Но есть нюанс — уроки на узбекском языке.
В дальнейшем автор планирует добавить русские субтитры. Ну а пока для тех, кто знает узбекский:⚡️ Плейлист на YouTube
Диёрбек Ибрагимов, один из участников сообщества Yii3, начал записывать серию видеоуроков по Yii3.
Но есть нюанс — уроки на узбекском языке.
В дальнейшем автор планирует добавить русские субтитры. Ну а пока для тех, кто знает узбекский:
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥31😁14👍5⚡2👾2
#yiisoftYiiBootstrap5 #ПервыйРелиз #МажорныйРелиз #Релиз
🎁 Yii Bootstrap 5 1.0.0
Первый стабильный релиз пакета с виджетами для Bootstrap 5:
• Accordion
• Alert
• Breadcrumbs
• Button
• Button Group
• Button Toolbar
• Carousel
• Collapse
• Dropdown
• Modal
• Nav
• NavBar
• Offcanvas
• Progress
• Progress Stack
• Toast
Пример виджета:
🎁 Yii Bootstrap 5 1.0.0
Первый стабильный релиз пакета с виджетами для Bootstrap 5:
• Accordion
• Alert
• Breadcrumbs
• Button
• Button Group
• Button Toolbar
• Carousel
• Collapse
• Dropdown
• Modal
• Nav
• NavBar
• Offcanvas
• Progress
• Progress Stack
• Toast
Пример виджета:
echo Carousel::widget()
->id('carouselExampleOnlyText')
->items(
CarouselItem::to(
Div::tag()
->addClass('bg-primary text-white p-5 text-center')
->addContent(
H2::tag()->content('Title 1'),
P::tag()->content('This is the first slide with text.'),
),
),
CarouselItem::to(
Div::tag()
->addClass('bg-success text-white p-5 text-center')
->addContent(
H2::tag()->content('Title 2'),
P::tag()->content('This is the second slide with text.'),
),
),
CarouselItem::to(
Div::tag()
->addClass('bg-danger text-white p-5 text-center')
->addContent(
H2::tag()->content('Title 3'),
P::tag()->content('This is the third slide with text.'),
),
),
);
👍15🔥11👾1
#yiisoftCookies #ПатчРелиз #Релиз
🎁 Yii Cookies 1.2.3
• Ограничение версии PHP в
• Добавлена возможность использовать реализацию
🎁 Yii Cookies 1.2.3
• Ограничение версии PHP в
composer.json
изменено на ~7.4.0 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0
.• Добавлена возможность использовать реализацию
ClockInterface
(PSR-20) для получения текущего времени.👍7👾2
#yiisoftErrorHandler #МинорныйРелиз #Релиз
🎁 Yii Error Handler 4.1
• Добавлена новая фабрика ответа
Например, можно создать свой провайдер для запросов из библиотеки htmx:
И добавить его в конфигурацию фабрики:
•
• Рендереры ответа для исключений теперь добавляют в заголовки ответ тип содержимого.
• Исправлено отображение аргументов функции в тёмном режиме.
🎁 Yii Error Handler 4.1
• Добавлена новая фабрика ответа
Yiisoft\ErrorHandler\ThrowableResponseFactory
с поддержкой провайдеров рендереров.Например, можно создать свой провайдер для запросов из библиотеки htmx:
final readonly class HtmxRendererProvider implements RendererProviderInterface
{
public function get(ServerRequestInterface $request): ?ThrowableRendererInterface
{
if ($request->hasHeader('Hx-Request')) {
return new PlainTextRenderer();
}
return null;
}
}
И добавить его в конфигурацию фабрики:
ThrowableResponseFactoryInterface::class => [
'class' => ThrowableResponseFactory::class,
'__construct()' => [
'rendererProvider' => DynamicReference::to(
static fn(ContainerInterface $container) => new CompositeRendererProvider(
new HeadRendererProvider(),
new HtmxRendererProvider(),
new ContentTypeRendererProvider($container)
)
)
],
],
•
Yiisoft\ErrorHandler\Factory\ThrowableResponseFactory
помечен как устаревший.• Рендереры ответа для исключений теперь добавляют в заголовки ответ тип содержимого.
• Исправлено отображение аргументов функции в тёмном режиме.
👍4👾1
#yiisoftValidator #МинорныйРелиз #Релиз
🎁 Yii Validator 2.3
• Добавлено правило валидации
🎁 Yii Validator 2.3
• Добавлено правило валидации
Uuid
, проверяющее, что значение является строкой с корректным UUID.👍15❤1👾1
#yiisoftYiiRunnerRoadrunner #МинорныйРелиз #Релиз
🎁 Yii RoadRunner Runner 3.1
• Добавлена поддержка Temporal.
• Доработан
- обработка ошибок;
- использование
- проверка конфигурации событий;
- использование DI-контейнера.
• Требуемая версия
• Ограничение версии PHP в
• Для опциональных nullable-параметров явно прописан тип с
🎁 Yii RoadRunner Runner 3.1
• Добавлена поддержка Temporal.
• Доработан
RoadRunnerGrpcApplicationRunner
, добавлены:- обработка ошибок;
- использование
bootstrap
;- проверка конфигурации событий;
- использование DI-контейнера.
• Требуемая версия
yiisoft/error-handler
поднята до ^4.0
.• Ограничение версии PHP в
composer.json
изменено на 8.1 - 8.4
.• Для опциональных nullable-параметров явно прописан тип с
null
для совместимости с PHP 8.4.👍11🔥1👾1
#yiisoftPsrEmitter
✨ Yii PSR Emitter
Вытащили эмиттер из Yii HTTP Runner в отдельный пакет, содержащий:
• интерфейс эмиттера для отправки PSR-7 ответа;
•
•
•
Вытащили эмиттер из Yii HTTP Runner в отдельный пакет, содержащий:
• интерфейс эмиттера для отправки PSR-7 ответа;
•
SapiEmitter
— эмиттер, отправляющий ответ с помощью стандартного PHP Server API;•
FakeEmitter
— фейковый эмиттер, который ничего не отправляет, просто запоминает ответ (предназначен для тестов);•
EmitterMiddleware
— мидлварь, запускающая эмиттер.Please open Telegram to view this post
VIEW IN TELEGRAM
👍4👾1
#yiisoftView #МинорныйРелиз #Релиз
🎁 Yii View 12.2
• Добавлена возможность передавать
• Исправлена ошибка, возникающая, если в конфигурации пакета в параметре
🎁 Yii View 12.2
• Добавлена возможность передавать
Stringable
-объекты в метод WebView::setTitle()
.• Исправлена ошибка, возникающая, если в конфигурации пакета в параметре
yiisoft/view → theme → pathMap
передать массив путей тем.👍5👾3
#yiisoftHttpMiddleware
✨ Yii HTTP Middleware
Новый пакет под мидлвари, нацеленные на работу с HTTP. На текущий момент представлена только одна мидлварь:
•
В ближайшее время планируется добавить ещё одну новую:
•
… и перетащить в этот пакет существующие из Yii Middleware:
•
•
•
•
Новый пакет под мидлвари, нацеленные на работу с HTTP. На текущий момент представлена только одна мидлварь:
•
ContentLengthMiddleware
— добавляет/убирает к ответу заголовок Content-Length
в соответствие с настройками.В ближайшее время планируется добавить ещё одну новую:
•
HeadRequestMiddleware
— удаляет содержимое из ответа для HEAD-запросов.… и перетащить в этот пакет существующие из Yii Middleware:
•
CorsAllowAll
•
ForceSecureConnection
•
HttpCache
•
TagRequest
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9👾1
#yiisoftPsrEmitter #ПервыйРелиз #МажорныйРелиз #Релиз
🎁 Yii PSR Emitter 1.0
Первый релиз PSR-7 совместимого эмиттера. Пакет предоставляет интерфейс
•
•
Использование эмиттера предельно простое:
🎁 Yii PSR Emitter 1.0
Первый релиз PSR-7 совместимого эмиттера. Пакет предоставляет интерфейс
EmitterInterface
, который отвечает за отправку PSR-7 HTTP ответов, а также несколько реализаций:•
SapiEmitter
— отправляет ответ с помощью стандартного PHP Server API;•
FakeEmiiter
— эмиттер, который не делает ничего, только запоминает ответ (предназначен для тестов).Использование эмиттера предельно простое:
/**
* @var \Psr\Http\Message\ResponseInterface $response
*/
$emitter = new \Yiisoft\PsrEmitter\SapiEmitter();
$emitter->emit($response);
👍7👾1
#yiisoftDi #МинорныйРелиз #Релиз
🎁 Yii Dependency Injection 1.4
• Добавлен метод
• Улучшена производительность контейнера.
• Параметр
• Исключения
• Ограничение версии PHP в
• Для опциональных nullable-параметров явно прописан тип с
🎁 Yii Dependency Injection 1.4
• Добавлен метод
TagReference::id()
, возвращающий идентификатор тега, по которому можно получить сервисы.• Улучшена производительность контейнера.
• Параметр
$config
в конструкторе контейнера сделан опциональным.• Исключения
BuildingException
и NotFoundException
теперь реализуют FriendlyExceptionInterface
.• Ограничение версии PHP в
composer.json
изменено на 8.1 - 8.4
.• Для опциональных nullable-параметров явно прописан тип с
null
для совместимости с PHP 8.4.👍4👾2
#yiisoftCache #МинорныйРелиз #Релиз
🎁 Yii Caching Library 3.1
• Добавлен интерфейс
• В классе
• Минимальная версия PHP повышена до 8.1 и выполнен соответствующий рефакторинг.
• Ограничение версии PHP в
• Для опциональных nullable-параметров явно прописан тип с
🎁 Yii Caching Library 3.1
• Добавлен интерфейс
SerializerInterface
и его реализация PhpSerializer
.• В классе
CacheKeyNormalizer
метод normalize()
сделан статическим.• Минимальная версия PHP повышена до 8.1 и выполнен соответствующий рефакторинг.
• Ограничение версии PHP в
composer.json
изменено на 8.1 - 8.4
.• Для опциональных nullable-параметров явно прописан тип с
null
для совместимости с PHP 8.4.10👍3👾1
#yiisoftCsrf #ПатчРелиз #Релиз
🎁 Yii CSRF Protection Library 2.2.2
• Для опциональных nullable-параметров явно прописан тип с
🎁 Yii CSRF Protection Library 2.2.2
• Для опциональных nullable-параметров явно прописан тип с
null
для совместимости с PHP 8.4.10👍3🔥2👾2
#yiisoftLog #ПатчРелиз #Релиз
🎁 Yii Logging Library 2.1.1
• Выполнен небольшой рефакторинг внутреннего класса
• Для опциональных nullable-параметров явно прописан тип с
🎁 Yii Logging Library 2.1.1
• Выполнен небольшой рефакторинг внутреннего класса
ContextValueExtractor
.• Для опциональных nullable-параметров явно прописан тип с
null
для совместимости с PHP 8.4.10👍5👾1
#yiisoftHttpMiddleware #ПервыйРелиз #МажорныйРелиз #Релиз
🎁 Yii HTTP Middleware 1.0.0
Пакет предоставляет набор PSR-15 мидлварей, ориентированных на работу с HTTP-функциональностью.
•
•
•
•
•
•
🎁 Yii HTTP Middleware 1.0.0
Пакет предоставляет набор PSR-15 мидлварей, ориентированных на работу с HTTP-функциональностью.
•
ContentLengthMiddleware
— управляет заголовком Content-Length
в ответе, автоматически добавляет/удаляет заголовок в соответствии с параметрами ответа и конфигурацией мидлвари.•
CorsAllowAllMiddleware
— добавляет CORS-заголовки, разрешающие запросы с любых источников.•
ForceSecureConnectionMiddleware
— перенаправляет небезопасные HTTP-запросы на HTTPS и добавляет заголовки, повышающие уровень безопасности.•
HeadRequestMiddleware
— удаляет тело ответа для HEAD-запросов.•
HttpCacheMiddleware
— реализует HTTP-кеширование с использованием заголовков Cache-Control
, ETag
и Last-Modified
.•
TagRequestMiddleware
— добавляет в запрос специальный заголовок, который можно использовать для логирования или отладки.10🔥12❤1👾1
#yiisoftHttpMiddleware #МинорныйРелиз #Релиз
🎁 Yii HTTP Middleware 1.1
• Добавлена мидлварь
🎁 Yii HTTP Middleware 1.1
• Добавлена мидлварь
RemoveBodyMiddleware
, которая удаляет тело ответа для ответов с заданными статусами.10👍6👾1
#yiisoftHtml #МинорныйРелиз #Релиз
🎁 Yii HTML 3.11
• Добавлены классы для тегов
• Добавлен psalm-тип
• Для опциональных nullable-параметров явно прописан тип с
🎁 Yii HTML 3.11
• Добавлены классы для тегов
pre
и code
, а также соответствующие методы в классе Html
.• Добавлен psalm-тип
OptionsData
в классе Select
.• Для опциональных nullable-параметров явно прописан тип с
null
для совместимости с PHP 8.4 (в прошлый раз пропустили в нескольких местах).👍4👾1