Size: a a a

2020 September 01

АН

Александр Некрасов... in Yii Framework 3
нужно в игнор поставить, чтоб не чекал
источник

DS

Dmitriy S in Yii Framework 3
Александр Некрасов
это понятно, но src/Container.php#L105
Call to possibly undeclared method attach on type \Yiisoft\Di\CompositeContainer|\Psr\Container\ContainerInterface (\Psr\Container\ContainerInterface does not declare the method)
Это анализатор туповат) В $this->rootContainer не может быть некомпозитного контейнера)
источник

DS

Dmitriy S in Yii Framework 3
Он все контейнеры, которым ты делегируешь засовывает в композитный
источник

А

Алексей R in Yii Framework 3
Dmitriy S
Это анализатор туповат) В $this->rootContainer не может быть некомпозитного контейнера)
Может тогда в аннотации указать типы
источник

АН

Александр Некрасов... in Yii Framework 3
Алексей R
Может тогда в аннотации указать типы
+
источник

DS

Dmitriy S in Yii Framework 3
Хотя вот это, да, я чет не туда глянул, думал в конструкторе
источник

DS

Dmitriy S in Yii Framework 3
Поправил тип
источник

AM

Alexander Makarov in Yii Framework 3
У меня вопрос. Зачем на deferredprovider?
источник

AM

Alexander Makarov in Yii Framework 3
точнее даже не так... зачем нам их два вида?
источник

AM

Alexander Makarov in Yii Framework 3
и ещё я что-то не могу воткнуть в https://github.com/yiisoft/di/pull/143
источник

AM

Alexander Makarov in Yii Framework 3
:)
источник

DS

Dmitriy S in Yii Framework 3
Alexander Makarov
точнее даже не так... зачем нам их два вида?
deferred где есть сопутсчтвующие тяжелые операции. Теоретически такое может быть.
источник

AM

Alexander Makarov in Yii Framework 3
А почему все их не сделать deferred?
источник

AM

Alexander Makarov in Yii Framework 3
ну то есть чтобы они все возвращали конфиги, а не регистрировали зависимости
источник

DS

Dmitriy S in Yii Framework 3
Alexander Makarov
А почему все их не сделать deferred?
Потому что провайдер создается в конструкторе контейнера
источник

AM

Alexander Makarov in Yii Framework 3
Dmitriy S
Потому что провайдер создается в конструкторе контейнера
Юзается, ты хотел сказать?
источник

AM

Alexander Makarov in Yii Framework 3
перефразирую вопрос
источник

AM

Alexander Makarov in Yii Framework 3
Чем провайдеры лучше фабрик с __invoke()?
источник

AM

Alexander Makarov in Yii Framework 3
ну кроме названия :)
источник

DS

Dmitriy S in Yii Framework 3
Alexander Makarov
Юзается, ты хотел сказать?
Нет. У тебя есть три отложенных провайдера А, B и С, в провайдере А есть зависимость Car, в провайдере B эта зависимость в конструкторе. В итоге все зависимости провайдера А будет зарегистрированы до того как прповайдер С зарегистрирует свои. Приходим к тем же конфликтам
источник