Skip to content

Npm Packager

Konstantin Dyachenko edited this page Mar 21, 2023 · 6 revisions

Ладно, возвращаемся к зависимостям. Сейчас есть единственный способ установить зависимость от другого пакета. Давайте для примера использовать нотацию связей. Пусть 0 это отсутствие ссылки на другую связь.

(from type to)

Так вот под использованием связи другой связью я имею ввиду следующее: Допустим есть связь a. Тогда другая связь может её использовать так:

(a 0 0) - в качестве from
(0 a 0) - в качестве type
(0 0 a) - в качестве to

Так вот, если связь a находится в другом пакете, то есть существует связь (package1 Contain a), то package1 будет зависимостью пакета package2 если существует одна из следующих связей:

(package2 Contain (a 0 0))
(package2 Contain (0 a 0))
(package2 Contain (0 0 a))

Из этого следует две проблемы: У нас сейчас нет механизма задать зависимость между пакетами никаким другим способом. А значит если package2 явно не использует связи из package1 как показано выше, то package1 никак не станет зависимостью пакета package2. Если вы используете в handler те пакеты, которые не являются зависимостью для package2 то deep.id имеет риск не обнаружить их, так как они не установятся автоматически при установке пакета.

И вопрос заключается вот в чём - у вас уже возникла ситуация которая попадает под проблему или нет?

И да, всё это время вы использовали @deep-foundation/core пакет именно как зависимость, он абсолютно такой же пакет как и любой, единственная разница, что он устанавливается сразу в миграциях Дипа, то есть ещё до его первого запуска.

Clone this wiki locally