Тот факт, что вы require
пакет, не имеет значения, следует ли считать его зависимостью или devDependency (в смысле npm).Например, многие проекты используют API веб-пакетов (т.е. const webpack = require('webpack')
), но перечисляют его как devDependency.
Причина также объясняется в сообщении, на которое вы ссылаетесь: когда вы publish
свой пакет, если потребительский проект нуждаетсядругие пакеты, чтобы использовать ваш, тогда они должны быть перечислены как dependencies
.
Если ваш пакет использует некоторые модули только для сборки, тестирования или связывает их в файл dist (то есть то, что будет использоваться потребителем)проект), то эти модули не должны быть упомянуты в dependencies
.Мы по-прежнему перечисляем их в devDependencies
для разработки.
Теперь в случае электронного приложения маловероятно, что вы будете использовать свое приложение в качестве модуля узла потребительского проекта, поэтому приведенное выше соглашение не являетсядействительно актуально.
Кроме того, мы попадаем в случай, когда пакет electron
связан как часть встроенного вывода.Пользователю не нужно получать electron
от npm, чтобы использовать ваше встроенное приложение.Следовательно, оно хорошо соответствует определению devDependency.
При этом IIRC некоторые упаковщики электронов упаковывают ваш dependencies
во встроенное приложение, поэтому вам все же нужно немного тщательно заполнить этот список.