Yii News 2020 Issue 7
Hello! This is another Yii news release. As usual, this release includes Yii 2 releases, Yii 3 progress, important news about Yii 1 and other news. Enjoy reading and be healthy. - Alexander Makarov
Fund
Since the last release, I had to decently distract myself with the fund, namely, with how funds are transferred from GitHub Sponsors to OpenCollective. They left GitHub normally, but where is a big question. It took a while to figure it out, but the problem was solved.
Another piece of news, partially related to the fund. The author of httpsoft / http-message , Evgeny Zyubin, will probably join the full-time team if / when the fund replenishment allows it. If you or your company wants to get Yii 3 earlier, you can help.
Infrastructure
We are constantly improving the package testing process:
- Added Roave backwards compatibility check to packages with stable version .
It verifies that the public API is not broken compared to the previous stable release. - We continued to translate tests from Travis to GitHub actions for both Yii 2 and Yii 3 . Actions are cool, and Travis recently cut OpenSource support. It's good that we started the transition early.
- We decided not to collect code coverage through PHPUnit and then send it to Scrutinizer CI and now we generate a coverage report by means of Scrutinizer. This is much faster, but the result is the same.
- Psalm proved to be excellent . We recommend it also for your projects.
- The GitHub actions console now displays everything in color. It looks much better!
Few edits have been made to the site. First of all, this is the transition to the new authentication method GitHub API. A number of small front-end improvements have also been made.
The PHPUnit compatibility patches for Yii 2 and Yii 1 have moved to a separate repository . If you suddenly need to test your application on PHP versions 5.3 through 8, the repository will definitely be useful.
Yii 1
- Yii 1.1 Skillshare Onetwist Software.
- Marco van 't Wout - Tremani Yii 1.1.
Yii 2
Yii 2.0.39. DI- PHP 8.
. IDE, PhpStorm, .
:
Yii 3
:
:
- 1.0.0. 3.0.0.
- Yii 3.0 PHP 7.4.
- -. .
- .
Trello , , GitHub issue.
, PHP 8 . .
. , — .
- JWT.
- Yii Swagger.
- API. . .
- Request model. .
- Middleware dispatcher router request-model.
- Error handler yii-web.
- Dockerfile.
- - .
Composer config plugin
PHP 8. AST , PHP 8 AST.
- .
- .
- PHP 8 union type-.
- , ,
'engine' => [EngineFactory::class, 'createMethod']
. - -.
- callable DI .
Reference::toCall()
. - .
Bulma
- , .
- .
- .
- .
-
UrlMatcherInterface::getLastMatchedRequest()
,getCurrentUri()
. UrlMatcher
, .
- NodeJs. asset packagist.
- . app .
- .
- yii-demo Swagger.
/swagger
. - yii-demo .
- yii-demo PSR-7 httpsoft/http-message.
Var dumper
asPhpString()
. , .
Files
Cycle
Data
DBAL ActiveRecord
DBAL, ActiveRecord, Yii 2, , , , .
Arrays
HTML
- .
- Html::generateId().
- "wrapInput" checkbox radio.
- data- "aria".
Html::getAttributeName
.-
escapeJsRegularExpression
,normalizeRegexpPattern
. - : HTML , HTML , JavaScript.
-
decode()
.
Debugger
- API .
- .
- .
- , .
- . , .
- .
- payload-. .
Translator
i18n , translator .
- On not choosing WordPress for the W3C redesign project.
W3C, , -, Craft CMS, Yii 2, . - Composer 2. , .
- Yii 2 PhpStorm.
- PHP 8.0: What's New and Changed.
️!
, Yii 3. .
, Yii 3 :
- Wilmer Arambula.
- Rustam Mamadaminov.
- mj4444.
- Dmitriy Gritsenko.
- Roman Tsurkanu.
- yiiliveext.
- Sergei Predvoditelev.
- DarkDef.
- Viktor Babanov.
- Dzianis Jackievič.
- Alexander Nekrasov.
- Anton Samoylenko.
- Dmitry Derepko.
- Alexey Chernousov.
- Andrii Vasyliev.
- wiperawa.
- Aleksei Gagarin.
- Bruce Aldridge.
- Sergei Iamskoi .
- Maksym Storchak .
- Evgeniy Tkachenko .