Обновление пакетов и библиотек Dynamo для Dynamo 4.x
Введение
В этом разделе содержатся сведения о проблемах, которые могут возникнуть при переносе графиков, пакетов и библиотек в Dynamo 4.x. В версии Dynamo 4.0:
существенно выросла производительность;
повышена стабильность, исправлены ошибки;
модернизирована база кода;
удалены API, ранее отмеченные как устаревшие в версии 1.x;
среда выполнения обновлена с .NET 8 до .NET 10;
теперь обработчиком Python по умолчанию для всех новых узлов Python является PythonNet3.
Переход на .NET 10 гарантирует соответствие Dynamo технологическому плану Microsoft задолго до окончания поддержки .NET 8 в ноябре 2026 г.
При запуске Dynamo 4.0 появится запрос на обновление до версии .NET 10, если это обновление еще не было установлено. Для обеспечения полной совместимости авторы пакетов должны обновить свои проекты до целевой версии .NET 10.
Все новые узлы Python, создаваемые в Dynamo 4.0 или более поздней версии, по умолчанию используют PythonNet3. Не беспокойтесь об обратной совместимости. Тем, кто работает на предприятиях с несколькими версиями (например, Revit или Civil 3D 2025/2026), следует установить пакет PythonNet3 Engine в Dynamo 3.3–3.6 для обеспечения совместимости. Дополнительную информацию см. здесь.
API и узлы, помеченные как устаревшие в версии 1.x, удалены из Dynamo 4.0. Ознакомиться с полным списком изменений можно здесь.
Совместимость пакетов
Использование пакетов Dynamo 2.x и 3.x в Dynamo 4.x
Поскольку Dynamo 4.x теперь работает на базе среды выполнения .NET 10, то работа пакетов, созданных для Dynamo 2.x (с использованием .NET 48) и Dynamo 3.x (с использованием .NET 8), в Dynamo 4.x не гарантирована. При попытке скачать пакет в Dynamo 4.x, который был опубликован в версии Dynamo, предшествующей 4.0, отображается предупреждение о том, что пакет взят из более ранней версии Dynamo.
Это не означает, что пакет не будет работать. Это просто предупреждение о возможных проблемах с совместимостью. В целом, рекомендуется проверить наличие более поздней версии, специально предназначенной для Dynamo 4.x.
Кроме того, подобное предупреждение можно заметить в файлах журнала Dynamo во время загрузки пакета. Если все работает корректно, его можно игнорировать.
Использование пакетов Dynamo 4.x в Dynamo 2.x
Маловероятно, что пакет, созданный для Dynamo 4.x (с использованием .NET 10), будет работать в Dynamo 2.x. Кроме того, при попытке установить пакеты, созданные для Dynamo 4.x, в Dynamo 2.x также отображается следующее предупреждение.
Использование пакетов Dynamo 4.x в Dynamo 3.x
Пакет, созданный для Dynamo 4.x (с использованием .NET 10), может работать в Dynamo 3.x при условии, что все API, используемые в пакете, есть в .NET 8. Но нет никакой гарантии, что это сработает. Кроме того, при попытке установить пакеты, созданные для Dynamo 4.x, в Dynamo 3.x также отображается следующее предупреждение.
Практические советы для авторов пакетов
Рекомендуется использовать многоцелевую сборку проекта как для .NET 8, так и для .NET 10, изменив файл CSPROJ.
Это обеспечит следующее:
поддержку версий Dynamo в Revit, которые по-прежнему используют .NET 8;
совместимость с однопользовательской версией Dynamo 4.x на платформе .NET 10.
Last updated