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

Обсуждение:
https://t.me/yii3ru

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

Поддержать разработчиков:
https://opencollective.com/yiisoft
Download Telegram
⚡️ #yiisoftMailer #yiisoftLogTargetSyslog #yiisoftHttp #yiisoftI18n #yiisoftLog #yiisoftLogTargetDb #yiisoftLogTargetEmail #yiisoftMailerSymfony #yiisoftMiddlewareDispatcher #yiisoftMutexPdoOracle #yiisoftMutexRedis #yiisoftRbac #yiisoftRbacDb #yiisoftRbacPhp #yiisoftRequestBodyParser #yiisoftRateLimiter #yiisoftProxy #yiisoftProfiler #yiisoftMutexPdoPgsql #yiisoftMutexPdoMysql #yiisoftMailerSwiftmailer #yiisoftHtml #yiisoftRequestModel #yiisoftRequirements #yiisoftRouter #yiisoftRouterFastroute #yiisoftSession #yiisoftStrings #yiisoftTestSupport #yiisoftTranslator #yiisoftTranslatorMessageDb #yiisoftUser #yiisoftView #yiisoftViewTwig #yiisoftWidget #yiisoftYiiConsole

Сделали изменения в стили кода. Методы, вызываемые «цепочкой», перенесли на новую строку:

- Yii Mailer Library (PR)
- Yii Logging Syslog Target (PR)
- Yii HTTP (PR)
- Yii Internationalization Library (PR)
- Yii Logging Library (PR)
- Yii Logging DB Target (PR)
- Yii Logging Email Target (PR)
- Yii Mailer Symfony Mailer Extension (PR)
- Yii Middleware Dispatcher (PR)
- Yii Mutex Oracle PDO Driver (PR)
- Yii Mutex Redis Driver (PR)
- Yii Role-Based Access Control (PR)
- Yii RBAC Database (PR)
- Yii RBAC PHP File Storage (PR)
- Yii Request Body Parser (PR)
- Yii Rate Limiter Middleware (PR)
- Yii Proxy (PR)
- Yii Profiler (PR)
- Yii Mutex PostgreSQL PDO Driver (PR)
- Yii Mutex MySQL PDO Driver (PR)
- Yii Mailer SwiftMailer Extension (PR)
- Yii HTML (PR)
- Yii Request Model (PR)
- Yii Requirements Checker (PR)
- Yii Router (PR)
- Yii Router FastRoute Adapter (PR)
- Yii Session (PR)
- Yii Strings (PR)
- Yii Test Support (PR)
- Yii Message Translator (PR)
- Yii Translator DB Message Storage (PR)
- Yii User (PR)
- Yii View (PR)
- Yii View Twig Renderer (PR)
- Yii Widget (PR)
- Yii Console (PR)
🔥4👍3
#yiisoftView #ПатчРелиз #Релиз

🎁 Yii View 5.0.1

• Добавлена поддержка yiisoft/cache версии ^2.0 (PR).
⚡️ #yiisoftView

В Yii View добавили новый метод ViewInterface::withBasePath(), который позволяет задать корневую директорию с представлениями (PR).
⚡️ #yiisoftView #yiisoftProfiler

Добавили поддержку Yii Files версии ^2.0 в пакетах:
- Yii View (PR),
- Yii Profiler (PR).
👍1
#yiisoftView #МажорныйРелиз #Релиз

🎁 Yii View 6.0.0

• Добавлен иммутабельный метод ViewInterface::withLocale(), устанавливающий локаль (PR).

• Добавлен метод ViewInterface::withBasePath(), который позволяет задать корневую директорию с представлениями.

• Переименованы методы ViewInterface (PR):
- setLanguage()setLocale();
- withSourceLanguage()withSourceLocale().

• Добавлена поддержка Yii Files версии ^2.0.
🔥3
⚡️ #yiisoftView

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

• Минимальную версию PHP подняли до 8.0, в CI добавили Rector, применили предлагаемые изменения, а также в иммутабельных методах ViewInterface изменили тип возвращаемого значения с self на static (PR).

• В CI добавили проверку транзитивных зависимостей (PR, PR).
👍3
⚡️ #yiisoftView

В Yii View добавили поддержку Yii HTML версии 3.0 (PR).
👍2🔥1
⚡️ #yiisoftView

В Yii View обновили dev-зависимости:
- rector/rector подняли до ^0.15.0 (PR);
- vimeo/psalm подняли до ^4.30|^5.1 и roave/infection-static-analysis-plugin до ^1.25 (PR).
👍5
#yiisoftView #МажорныйРелиз #Релиз

🎁 Yii View 7.0.0

• В иммутабельных методах ViewInterface изменён тип возвращаемого значения с self на static.

• Минимальная версия PHP увеличена до 8.0.

• Добавлена поддержка Yii HTML версии 3.0.
👍4
#yiisoftView #ПатчРелиз #Релиз

🎁 Yii View 7.0.1

• Добавлена поддержка yiisoft/arrays версии ^3.0.

😎 Релиз подготовил Александр Макаров.
👍4
#yiisoftView #МажорныйРелиз #Релиз

🎁 Yii View 8.0

• Добавлена поддержка yiisoft/cache версии ^3.0.

• Конфигурация пакета адаптирована к соглашению Yii об именах групп конфигураций.

😎 Релиз подготовил Сергей Предводителев.
👍4
#yiisoftView #МажорныйРелиз #Релиз

🎁 Yii View 9.0

• Добавлены методы для получения локали: View::getLocale() и WebView::getLocale().

• Добавлен иммутабельный метод ViewInterface::withTheme().

• Добавлены корректные типы в сигнатуре метода CachedContent::cache().

• Параметры $basePath и $eventDispatcher сделаны опциональными в конструкторах классов View и WebView.

• Добавлена возможность указать fallback-расширения для файлов шаблонов.

• Расширены возможности конфигурации: теперь через параметры можно задать рендерреры и расширение файла по умолчанию.

• Методы ViewInterface::withDefaultExtension() и ViewInterface::getDefaultExtension() помечены устаревшими в пользу withFallbackExtension() и getFallbackExtensions() соответственно.

• Исправлен сброс состояния объектов View и WebView между запросами в долгоживущих приложениях (не восстанавливались параметры по умолчанию).

• Исправлен некорректный поиск файла шаблона, содержащего в названии точку.

• Для параметра $value в методах ViewInterface::setParameter() и ViewInterface::addToParameter() указан тип mixed.
👍122🔥2👾2❤‍🔥1
#yiisoftView #МажорныйРелиз #Релиз

🎁 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
#yiisoftView #МажорныйРелиз #Релиз

🎁 Yii View 11.0

• В методе ViewInterface::getParameter() добавлен variadic-параметр $default.

• Удалены устаревшие методы withDefaultExtension() и getDefaultExtension() из интерфейса ViewInterface.

• В конфигурации пакета параметр defaultExtension переименован в fallbackExtension.

• Минимальная версия PHP увеличена до 8.1 и выполнен соответствующий рефакторинг.

• Улучшены psalm-типы результатов методов в классе WebView: getLinkTags(), getCss(), getCssFiles(), getJs() и getJsFiles().

• Исправлено некорректное поведение при использовании пустой строки или строки "0" в качестве ключа в методах WebView: registerCss(), registerStyleTag(), registerCssFile(), registerJs(), registerScriptTag() и registerJsFile().
4👍8
#yiisoftView #ПатчРелиз #Релиз

🎁 Yii View 11.0.1

• Зависимость psr/event-dispatcher сделана опциональной.
1👍7
#yiisoftView #МажорныйРелиз #Релиз

🎁 Yii View 12.0

• Добавлен метод ViewInterface::deepClone(), позволяющий клонировать объект вместе с состоянием (параметры, тема, локаль и т. д.). При обычном клонировании состояние остаётся общим для объектов.

• Добавлена возможность передавать null в методы withBasePath() и withContext() интерфейса ViewInterface.

• Добавлен сброс темы при вызове методов View::withClearedState() и WebView::withClearedState().
👍81👾1
#yiisoftView #МинорныйРелиз #Релиз

🎁 Yii View 12.1

• В методе ViewInterface::render() добавлена возможность использовать путь к представлению, начинающийся с ../ (родительская директория относительно текущего представления).

• Исправлено указание текущего представления в сообщении исключения, которое бросается когда используется относительный путь вне текущего представления.

• Ограничение версии PHP в composer.json изменено на 8.1 - 8.4.

• Для опциональных nullable-параметров явно прописан тип с null для совместимости с PHP 8.4.
👍6👾1
#yiisoftView #МинорныйРелиз #Релиз

🎁 Yii View 12.2

• Добавлена возможность передавать Stringable-объекты в метод WebView::setTitle().

• Исправлена ошибка, возникающая, если в конфигурации пакета в параметре yiisoft/view → theme → pathMap передать массив путей тем.
👍5👾3
#yiisoftView #ПатчРелиз #Релиз

🎁 Yii View 12.2.1

• В конфигурации пакета для параметра basePath добавлена возможность указывать значение null.
👍3👾1