Страница 1 из 2

Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.06.11, 10:15
chesar
Стала доступна alfa версия yii 3.0
https://github.com/yiisoft/yii2/release ... 0.0-alpha1

Почему не 2.1? Core team решили все же придерживаться общепринятого semver и все разработки ветки 2.1 релизнуть 3 версией.

Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.06.12, 16:24
springimport
А есть где-то комментарии по этому поводу?

Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.06.14, 12:55
samdark
Что именно интересно? Анонс пока не написан.

Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.06.18, 14:46
Nex-Otaku
Интересует:
1. Что сильно изменилось из старого
2. Что нового добавлено

В двух словах ) Заодно и анонс потом проще напишется ;)

Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.06.18, 15:34
SiZE
Nex-Otaku писал(а): 2018.06.18, 14:46 Интересует:
1. Что сильно изменилось из старого
2. Что нового добавлено

В двух словах ) Заодно и анонс потом проще напишется ;)
https://github.com/yiisoft/yii2/blob/3. ... ANGELOG.md

Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.06.19, 12:43
samdark

Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.06.20, 19:13
Nex-Otaku
Это не в двух словах, а огромная портянка всякой всячины. В том-то и дело.

Да ещё и на английском. Фу.

Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.08.06, 14:10
maleks
А что, yii3 и yii2 уже полностью разошлись путями? Как было с yii1-yii2, когда разные фреймворки?

В yiisoft/yii2 смотрю есть ветка 3.0 и теги там выставляются 3.0.0 для issue и PR

И в тоже время в этом - yiisoft/core - репозитории ядро yii3, в нем ведется разработка yii3?
Неужто все решили по независимым компонентам делать, даже бд и ar orm ?

Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.08.06, 21:10
samdark
Да, решили разделить. Компоненты не все независимые, но мы к этому идём. Совместимости будет больше, чем 1.1 -> 2.0, но полной не будет.

Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.08.07, 12:31
anton_z
А почему решили совсем от SL отказаться? Слишком радикально по мне. Весь Yii вокруг Yii::$app строился (10 лет), доступность этого синглтона дает большую свободу действий, что позволяет быстро решать задачи.

Еще я пользовался возможностью замещения компонентов в модулях (речь о db) https://www.yiiframework.com/doc/guide/ ... in-modules и внедрением в модули, а теперь как что-то подобное делать, чтобы модули были более-менее законченными единицами:

Код: Выделить всё


'modules' => [
    'mymodule' => [
        'components' => [
            'db' => [
                'tablePrefix' => 'module_',
                'class' => Connection::class
            ],
            'my_component' => [
               'class' => MyComoponent::class
            ]
        ],
    ],
],



Модель внутри модуля:

Код: Выделить всё


class MyModel extends ActiveRecord
{

        private $my_component;
        
        
        public function init()
        {
        	$this->my_component = Instance::ensure('my_component', MyComponent::class, MyModule::getInstance())    
        }

	public function getDb()
	{
		return MyModule::getInstance()->get('db');
	}

{


Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.08.07, 12:53
samdark
Контейнер прокинуть в модуль. DI поддерживает наследование контейнеров.

Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.08.07, 13:24
anton_z
samdark писал(а): 2018.08.07, 12:53 Контейнер прокинуть в модуль. DI поддерживает наследование контейнеров.
А можно пример, как именно это сделать, я не понял как прокинуть контейнер. https://github.com/yiisoft/core/blob/ma ... e.php#L156 И что нужно делать чтоб у модуля был свой компонент с id 'db', а у приложения свой.

Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.08.07, 22:43
samdark
Так речь про 3.0, а не про 2.1. Там вот такой контейнер: https://github.com/yiisoft/di

Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.08.08, 01:57
anton_z
samdark писал(а): 2018.08.07, 22:43 Так речь про 3.0, а не про 2.1. Там вот такой контейнер: https://github.com/yiisoft/di
А yiisoft/core, на который я ссылку (на конструктор модуля) привел, это разве не 3.0?

Я понял так, пожалуйста, поправьте, если неправ:

1. Наследуемся от модуля https://github.com/yiisoft/core/blob/ma ... Module.php.
2. В конструкторе своего модуля требуем контейнер.
3. Внутри модуля делаем свой контейнер (new Container), в него устанавливаем модульные зависимости.
4. В Module::get($id) и Module::has($id) опрашиваем сначала внутренний контейнер, потом внешний.
5. Внутри модуля юзаем либо модульный контейнер Module::getInstance()->getContainer()->get($id), либо Module::getInstance()->get($id) как и раньше.

А нельзя для модуля из коробки такое сделать?

Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.08.08, 02:08
anton_z
И еще вопрос, что в Yii 3.x по всему коду будете заменять Yii::$app на внедрение Application через конструктор? Смотрю в yiisoft/core hiqsol уже это делает. Лично меня это настораживает, не по прежним канонам это.

Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.08.08, 18:07
samdark
core - это Yii, да. Его часть.

Для модуля из коробки можно такое сделать, но руки не дошли (и, возможно, не дойдут). Помогайте.
И еще вопрос, что в Yii 3.x по всему коду будете заменять Yii::$app на внедрение Application через конструктор? Смотрю в yiisoft/core hiqsol уже это делает. Лично меня это настораживает, не по прежним канонам это.
От Service Locator уходим, да. От старого надо забирать лучшее и, по возможности, переделывать не очень хорошее.

Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.08.11, 08:39
maleks
anton_z писал(а): 2018.08.08, 01:57 А нельзя для модуля из коробки такое сделать?
Добавили бы туда соответствующее issue, чтоб это наблюдение не пропало даром.

Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.09.27, 16:33
BalykhinAS
когда ждать 3-ку?

Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.09.28, 15:31
samdark
Постоянно :)

А так не ясно, на фуллтайме никого над ним не работает, как со временем будет...

Re: Yii 2.1 не будет, встречайте Yii 3.0

Добавлено: 2018.09.28, 15:31
samdark
Ну и вообще лучше не ждать, а помогать. Так явно быстрее будет.