При работе над новой функцией, а также при обновлении существующей зависимости прежде чем добавлять новую зависимость в репозиторий Dynamo, следует оценить следующие аспекты.
Какая лицензия используется для новой или обновленной зависимости? Не все лицензии на решения с открытым исходным кодом можно утвердить без обращения в юридический отдел Autodesk.
После разрешения лицензии занесите зависимость и версию во внутреннюю справку.
Если это лицензия LGPL
, GPL
или Apache
, файл лицензии необходимо скопировать во вложенную папку Open Source Licenses в сборке Dynamo.
Если это лицензия LGPL
, полный исходный код всех сторонних компонентов, а также текстовые копии соответствующих лицензий на решения с открытым исходным кодом должны быть выгружены на страницу www.autodesk.com/lgplsource
Меняется ли тип лицензии при переходе на новую версию?
Является ли зависимость кросс-платформенной?
Есть ли в решении нативные компоненты (например, CEFSharp
или ImageMagick
)? Это затруднит кросс-платформенное развертывание.
В зависимости есть ссылки только для Windows? Если да, она не должна представлять собой зависимость DynamoCore или других кросс-платформенных частей Dynamo (уровень модели).
Зависимость корректно вложена в папку bin при сборке вместе со всеми необходимыми зависимостями?
Будут ли удалены какие-либо файлы в результате обновления? Предназначена ли эта версия Dynamo для промежуточного выпуска основных программ? Если да, необходимо сохранить старые двоичные файлы до года глобального выпуска для поддержки установщиков исправлений. См. здесь.
Конфликтует ли зависимость или ее дерево зависимостей с другими зависимостями в Dynamo?
?? Конфликтует ли зависимость или ее дерево зависимостей с существующими зависимостями в программах, которые интегрируют Dynamo в процессе (Revit, Civil и т. д.)? Это важно, поскольку эти проблемы можно обнаружить только во время интеграции, если не решить их заранее.