-
Notifications
You must be signed in to change notification settings - Fork 634
Release Notes
- As a Dynamo user, I want to install a package that I know will work for my specific environment.
- Dynamo PackageManager client could display compatibility data defined by package author from PackageManager website and future version of Dynamo
- Introduce an optional syntax to allow package authors to specify version compatibly data for their packages.
- Dynamo users can see in the package manager search UI or package details panel compatibly info. PR PR
- Dynamo user can understand if the install button is installing the latest vs a specific version chosen based on compatibility.
- Dynamo user can click install and get the version of the package that will work for their environment.
- Dynamo user can filter among packages in different compatible states. PR
- As a Dynamo user, I want to use Dynamo profiler - TuneUp view extension OOTB
- TuneUp is available for use OOTB and delivered as part of Dynamo under Dynamo\Built-In Packages\packages PR PR
- Dynamo user using Dynamo 3.4 release would be able to control built-in package loading by leveraging Preferences Panel
- TuneUp is set to Show groups of nodes by default
- TuneUp would work on Graph set to run in Periodic mode PR
- TuneUp would work in both DynamoRevit and DynamoC4D context
- Dynamo user can distinguish renamed nodes v.s. other nodes and check their original names
- Dynamo user can sort nodes by name or execution time
- Dynamo user can click on group or node to zoom to fit the selected content PR
- If both the OOTB version and the package version of TuneUp exist,
- the loading sequence is determined by package loading sequence from Preferences
- Downloading the same version or other version of TuneUp on PackageManager will give user proper warning
- As a Dynamo user I want to use meshtoolkit functionality OOTB
- As a Dynamo Package author, I want to update package version information from website
- Introduce a compatibility syntax to allow package authors to specify version compatibly data for their packages.
- Package authors can login and check
my packages
- Package authors can edit some metadata for existing published packages (ie update the description and compatibility info) on the Package Manager website
- Improved PythonNet 3 backed Python engine
- Operator overloading does not function in PythonNet 2.5 but works now in PythonNet 3
- PythonInt to BigInt conversion is working now in PythonNet 3
- Python enums returned from a Python node end up as Enums in .Net/Dynamo instead of integers (as they used to) now in PythonNet 3
- Fix Interface method inheritance
- Reimplement PySeq to .Net List conversion
- Reimplement ModuleObject improvements
- Reimplement support for calling .net extension methods
- Reimplement ModuleObject improvements: Don't stop pre-loading when loading names from a namespace fails
- PythonNet 3 engine does not include common Python libraries out-of-the-box
- Fixed a bug where line number of Python errors missing
- In PythonNet3, error when .Net property returns None (null)
- Fixed a bug where string .Contains .Net method returns 1 instead of true
- Fixed a bug where first time running PythonNet3 engine gives warning
- Quality of life improvements
- Dynamo user can now enjoy clearer TSpline nodes descriptions so that they have better understanding of the purposes of them
- Dynamo user can now enjoy more properly handled infinity value in Dynamo PR
- Dynamo user can now launch Dynamo homepage website from such menu option under Help menu PR
- Dynamo Player user selecting a large number of Revit elements can check the list of element ids selected to more clearly match the element count.PR PR
- Dynamo user can now switch between current workspace and Dynamo home seamlessly PR
- Dynamo user can now check Dynamo version and host version mapping clarifications in Dynamo Primer2
- Dynamo user can now access a drop-down on Dynamo Home page to show Sample Graph folder and Sample Dataset PR
- Dynamo user can now add pin to groups so moving group will move pins attached to connectors PR PRPR
- Dynamo user can now enjoy improved node and package search in a way that has better results for entries with empty space PR
- Dynamo user can now use Dynamo with Autodesk 2026 product family. PR
- Dynamo user can now access updated unit node based on Forge Units schema PR
- Dynamo user can now preserve information regarding python engine package and version when used in a graph PR
- Dynamo user can now access update splash screen image for Dynamo 3.4 release and beyondPR
- Fixed a bug where the "Show Connectors" feature fails to register newly placed nodes. If the 'Hide Connectors' feature is enabled, any new node placed must also have their wires turned off. PR
- Fixed a bug where turning off "Show Connectors" doesn't keep them off when file is reopened even though setting still says they are off PR
- Fixed a bug where number node converts 1 or 2 decimal values to integers when reopening script in Swedish culture computers. PR
- Fixed a bug where dash in the middle of a sentence in a note popup editor also converted to bullet PR
- Fixed a bug where warning text was not selectable so that user could copy paste content from node states to search for the cause. PR
- Fixed a bug where copy-paste text to node library search would copy the currently selected node on canvas as well PR
- Fixed a bug where node help example files are missing for several nodes PR
- Fixed a bug where some geometry nodes are missing images in node help documentation PR
- Fixed a bug where Dynamo crashes upon exporting results if the destination file is open PR
- Fixed a bug where search in library gives empty results when searching for nodes with special characters PR
- Fixed a bug where user not able to add new lines to package description PR
- Fixed a bug where zero touch and UI nodes from package do not show purple overlay when zoomed out PR
- Fixed a bug where scale factor serialized in graph would change when loading in Civil3D PR
- TuneUp is still missing localization and it will be available in a future release
- Updated RestSharp as a dependency to Dynamo from v108 to v112. Any package sharing the same dependency will need to update as well to be compatible with Dynamo 3.4+ because there is API breaking changes for RestSharp in between.
- Binary changes
- TuneUp profiler under Built-In Packages\packages\TuneUp
- New files under
\libg_231_0_0\asm_deps
- these can be safely ignored by dynamo core clients and integrators.
Bug Fixes (backported from newer versions) PR
- Handle null values in watch node or preview bubbles PR
- Close Preferences' toast notification when Dynamo closes PR
- Fix for Packages tour (preventing crash). PR
- Fix a bug where ghost warnings were displayed in zoomed out graph even after resolving them PR
- Fix crash by adding null check for note view loaded. PR
- Fix a crash when removing item from package publish list PR
- Fix groups loose associations with notes and nested groups when a custom node is created - Fix crash when undoing a group to group addition. PR
- Fix bug where Data.OpenXMLImport node is sometimes bringing in Data, sometimes Formulas PR
- Fix a crash
List.AllIndicesOf
node that used to crash as soon as the checked list has any null entry PR - Fix a hang on startup caused by analytics PR
- Enable TuneUp profiler extension in Dynamo 3.X so that user can download and use updated TuneUp profiler from package manager in Dynamo 3.X.
- TuneUp open in the right side panel no longer brings performance side effects to current Dynamo session
- User can launch TuneUp anytime during the session to measure current workspace
- User can sort data by clikcing on headers PR
- User can access groups of nodes' execution time in list view so comparing group performance becomes possible PR
- User can export performance data from TuneUp to check offline PR
- User can access revise TuneUp controls layout for a cleaner profiler view
- Ensure package authors and consumers a joyful experience when creating, updating and downloading packages from Dynamo PackageManager in Dynamo.
- Dynamo package author can publish package online right after it was published locally. PR
- Dynamo package author can access Deprecation option for undeprecated package only and not the other way around. PR
- Dynamo package author can now include package size automatically during publish and package consumer can access size info in package details. PR
- Dynamo package author, when publishing a new package, can add files and folder from different locations and rely on retain folder structure toggle to keep folder structure. PR
- Dynamo package consumer can search packages by package author. PR
- Dynamo package consumer can access clearer descriptions for the Autodesk own Dynamo packages
- CPython engine improvements and migration help
- Create a PythonNet3 backed CPython package for Dynamo
- Reimplement PyDict to Dictionary conversion
- Reimplement GetManagedObject to return managed object wrapped by PyObject
- Introduced menu item from Edit menu and workspace context menu to efficiently update Python engine versions for selected Python nodes at once. PR
-
Released the Engine package with the GraphEngine node, which runs a Dynamo graph file in a separate instance of Dynamo.
-
Improved node help documentation
- Quality of life improvements
- Dynamo user can access redesigned node icons with higher resolution for all OOTB nodes PR
- Dynamo user can accees redesigned state icons with high-resolution for warning/error/info bubble states. PR
- Dynamo user can get item from list with negative index. PR
- Dynamo user can access updated List.IndexOf node to return null as node value when index not found instead of -1 because of the change above. PR Notice that: if any saved graph is relying on -1 index check as part of the graph, the graph author will need to update to use null check instead after Dynamo 3.3.0 release.
- Dynamo user can access a better hierarchy of Graph Elements Scale settings in Preferences panel. PR
- Dynamo Player user can select a large number of Revit elements with the fact the list of element ids selected will more clearly match the element count. PR
- BIM manager can now configure video tutorials on Dynamo Home.PR
- Dyanamo is not loading after using a fake xml file to override settings. PR
- TuneUp shouldn’t change the graph view when opened. PR
- TuneUp causes infinite loop situation / extreme lag when used in a large graph. PR
- TuneUp will fail to register if not closed between graph runs. PR
- Fixed a bug that extended characters did not display on English OS in Node Help from Documentation Browser. PR
- Fixed a bug where Curve.CoordinateSystemAtParameter and Curve.PlaneAtParameter no longer throw a warning when using parameter 1 for closed polycurves.
- Fixed a bug where package install status do not reflect correctly in package search window. PR
- Used internal crash/error reporting system information to harden Dynamo, making connecting nodes more robust. PR
- Fixed a bug where placing node from library places multiple copies of it in a long lasting Dynamo session. PR
- Fixed a bug where DateTime.Components node shows unit of seconds(0-999) for millisecond port. PR
- Fixed a bug where default values for ports do not display in documentation browser when Dynamo is in a different locale other than English. PR
- Fixed a bug where search term for nodes with spaces in the name did not give expected results. PR
- Fixed a crash where Solid.Repair node fails in Civil3D context would cause a crash
- Fixed a potential crash where an older version of DynamoCore not containing the PanelSurface type is run with Player pointing to a new version of DynamoCore that contains that type. PR
- Fixed a Revit crash when click on trust confirmation message that stays on screen after accessing Dynamo Preferences setting and closing Dynamo. PR
- Used internal crash/error reporting system information to harden Dynamo, making port height render more robust PR
- Used internal crash/error reporting system information to harden Dynamo PR
- Used internal crash/error reporting system information to harden Dynamo, making Connector Redraw more robust. PR
- Used internal crash/error reporting system information to harden Dynamo, making web component display more robust. PR
- Used internal crash/error reporting system information to harden Dynamo, making library view initialization more robust. PR
- Used internal crash/error reporting system information to harden Dynamo, making refesh in Workspace Reference view Extension more robust PR
- Used internal crash/error reporting system information to harden Dynamo, making package filtering by host more robust PR
- Used internal crash/error reporting system information to harden Dynamo, making tab folding in Python editor more robust PR
- Signatures for Dynamo binary Dynamo.Microsoft.Xaml.Behaviors.dll now signed correctly
- Even though import statements in code block nodes are not executed they still import assemblies into the VM
- When using TuneUp, Clicking on group does not focus on group yet on canvas. This will be available in the future
- When using TuneUp v1.0.12 and below, if the export results file is open and user tries to export again, this would crash Dynamo -> Connector pin is not placed in the first position yet from clean up node layout function
- Removed one xml from Dynamo build to reduce build size. PR
- Fixed an issue where Dynamo would crash when rendering the background preview with the instancing turned on. PR
- Fixed an issue where code blocks did not render geometry correctly to the background preview with instancing turned on. PR
- Fixed duplicate package nodes in Library and Add-ons section.PR
- Updated pythonNet binaries which would fix the issue where dynamically emitted types don't emit correctly on net std. PR
- Node improvements
- Added two new PanelSurface nodes to the Dynamo geometry library: ByCustomOrthogonalLattice to create custom panel patterns, and SetTransform to apply translations, rotations, and scaling to panels.
- Added new DefineData node that checks the type of incoming data. PR
- Improved the DefineData node through a class refactor, view customization, and tests refactor. PR
- Added a default name to an input node in custom node workspaces to prevent a warning state. PR
- Look and feel
- Home page improvements
- Added default actions to the Open button (open file) and New button (new workspace) on the Dynamo homepage. PR
- Localized the Open and New buttons and the options under them on the homepage. PR
- Localized the new Dynamo Home. PR
- Added thumbnails for guided tours on the homepage. PR
- Enabled grid/list view selection on the homepage to persist across sessions. PR
- Added analytics coverage for the new Dynamo Home. PR
- Simplified the way homepage settings are serialized as part of Dynamo preferences. PR
- Ensured that updates to properties of recent graphs are reflected on the list of recent files on the homepage. PR
- Enabled localization of Dynamo Home on the web component level, which is independent of the Dynamo localization experience. PR
- Added localization on Dynamo Home (backup resources). PR
- Performance
- Improved performance in graphs that have errors, warnings, and info states, reducing the test case time from 1 minute to 3 seconds. PR
- Updated a warning about package version incompatibility. PR
- Modified the DefaultNodeAutocompleteCandidates functionality so it is executed only once. PR
- Fixed async tests by using setup/cleanup virtuals and enforcing the use of the proper SyncContext and Dispatcher. PR
- Ensured expected search results when typing fast in search. PR
- Fixed an issue that prevented the user from undoing group collapsing and renaming. PR
- Fixed a legacy issue where input and output symbol nodes were shown in the home workspace context, even though they are only useful in custom node workspaces. PR
- Fixed the way the Packages guide logs when the user completes it, ensuring more accurate usage data. PR
- Addressed an edge case where custom node placement would send a GUID instead of a node name for analytics, ensuring more accurate usage data. PR
- Fixed an issue where Dynamo would crash when placing List selector archi-lab Dynamo nodes on the canvas. Now, instead of Dynamo crashing, the node will fail to be placed. PR
- Fixed an issue with custom properties in the Graph Properties Extension where opening a custom node would clear custom properties present in the open graph file. PR
- Fixed an issue with custom properties in the Graph Properties Extension where automatic naming when adding a new property would produce identical property names in some situations. Now, custom properties will always produce a unique name when adding a new custom property. PR
- Fixed an issue where Dynamo would crash when selecting a node with a view extension. PR
- Fixed a bug that allowed incompatible lists. PR
- Improved the RemovePIIData API to accurately remove only sensitive personal information. PR
- Fixed an issue where Dynamo would crash when the ViewModelBases was null. PR
- Added crash protection to the DynamoMessageBox display code during window owner assignment. PR
- Fixed an issue with extension assembly paths for Linux that was causing loading issues. PR
- Fixed a regression for the message box. PR
- Fixed an issue where the same graph opened twice would appear twice on the Dynamo homepage. PR
- Fixed an issue where Dynamo would crash when inserting a graph after changing language. PR
- Remove unnecessary dependencies in DynamoServices brought in by the MetadataLoadContext package PR
- Handle exceptions coming from 3d party packages PR
- Updating IssueTypePredicter workflow to use .NET 8 PR
- Alert user when publishing duplicated named files PR
- Define Data node revisions PR
- Add new boundary condition node PR
- Use new feature flag for ML data ingestion pipeline PR
- System.Buffers.dll
- System.Collections.Immutable.dll
- System.Memory.dll
- System.Numerics.Vectors.dll
- System.Reflection.Metadata.dll
- System.Runtime.CompilerServices.Unsafe.dll
- In DynamoSandbox or Dynamo for Revit, clicking the Open button in the HomeApp component (or any other functionality that opens a dialog from a React component) opens OpenFile dialog. Then, after some seconds, Dynamo freezes or crashes due to a internal WebView2 issue already reported in the WebView2Feedback repo.
- Implemented Ctrl + T as a shortcut for creating a template-based workspace
- Enabled opening a template to create a new home workspace that inherits all graph elements from the template, including graph properties PR
- Notification center experience
- Added a translated message when there are no notifications PR
- New ASM paneling interface in experiment mode
- Added icons for paneling nodes
- Added help docs, screenshots, and sample DYNs for paneling nodes
- Improved boundary condition input for Paneling nodes
- Added node and port XML documentation for all paneling nodes
- Added node for conversion of panels to surface/polygons
- Created a node to return all vertices for a given panel
- Performance improvements
- Look and feel
- T-Spline nodes
- New Dynamo home experience, consistent with other Autodesk design tools (Dev Build only)
- Released new Dynamo Home experience for locally built Dynamo, with more updates expected in the 3.2 release
- Enabled drag and drop of .dyn files to open them in new Dynamo home PR
- Quality of Life improvements
- Included pins on wires when using the Tab key to select neighboring nodes PR
- Indicated that the Preferences panel is a blocking action PR
- Improved the run preview setting tooltip to better describe its functionality PR
- Allowed a node to remain selected when dragging it into a group PR
- Prevented conversion of dashes in the middle of sentences to bullets in notes PR
- Improved the Packages guided tour PR
- Corrected confirmation message wording when resetting package upload changes PR
- Saved "Don't show this screen again" setting upon closing the splash screen PR
- Provided a consistent experience when using the Dynamo number slider PR
- Added a warning message for 2.x packages loaded on Dynamo 3.0 PR
- Fixed a bug where undoing renaming in a nested group caused visual artifact PR
- Fixed a bug that caused a paste operation in the library to trigger a paste in the workspace PR
- Fixed a bug to ensure the Node Autocomplete popup disappears after deleting a parent node PR
- Fixed a bug that allowed a package author to publish a version of another user’s package PR
- Fixed a bug where a large text string in Custom Selection nodes overlapped with controls on the left side PR
- Fixed a bug where unhandled exceptions from extensions caused Dynamo to crash PR
- Fixed a bug where node search wasn't working for parameter keyword-related cases in DynamoRevit PR PR
- Fixed a bug where Clockwork nodes weren't working with the IronPython2 package from the Dynamo team
- Fixed a bug where the package manager wasn't preserving sort order after a search PR
- Fixed a bug where the "Python.Included.SciPy.dll" file was not versioned PR
- Fixed a bug where the latest solar analysis package from the Dynamo team wasn't loading nodes
- Fixed a bug where unlocalized strings were displayed in the Issue Viewer dialog in Dynamo Player PR
- Fixed a bug where Dynamo wouldn't start from Revit due to Python engine failing to load PR
- Fixed a regression where typing an uppercase "V" in search pasted the clipboard PR
- Fixed a bug where the close button on the Dynamo splash screen wasn't working PR
- Fixed a bug where certain buttons and tooltips on the Dynamo splash screen weren't localized PR
- Fixed a bug where an invalid timestamp was displayed for LaunchDarkly.Logging.dll in the DynamoForRevit add-in
- System.Buffers.dll
- System.Collections.Immutable.dll
- System.Memory.dll
- System.Numerics.Vectors.dll
- System.Reflection.Metadata.dll
- System.Runtime.CompilerServices.Unsafe.dll
- DSOffice.resources.dll
- Localization of panel nodes help documentation will be available in the next Dynamo release (3.2.0).
- Fix incorrect confidence score display in ML suggestions. PR
- Fix Export workspace as Image option from Menu Item. PR
- Fix a bug that launching Dynamo Preferences panel would cause preview bubble to display incorrectly.PR
- Re-enable copy/paste capabilities for library searchBar PR
- Fix a bug certain binaries are not correctly signed PR
- Fix a bug that closing splash screen with "Dont show this again" will not persist such setting PR
- Fix graph update for primitive input nodes that are first initialized to null PR
- Fix the bug that offset not working for a straight PolyCurve in Dynamo PR
- Fix crash/freeze on systems with no AdskIdentityManager or any ADSK product PR
- Add warning text to selection node's initial warning. PR
- Multiline string to be better readable in Watch Node.PR
- Refine the node autocomplete ML confidence settings.PR
- Skip Lucene indexing process in UIless mode.PR
- Show not authenticated message when user tries to use ML node autocomplete feature when not logged in. PR
- Feature flags retrieval and client startup should be controlled by
NoNetworkMode
startup configuration option PR - Fix crash when ASM (adsk geometry lib) is not found in sandbox. PR
- Add analytics for ML data pipeline. PR
- ASM 229 is no longer supported, ASM 230 is the only version of the geometry library this release supports. PR
- Apply the renaming tool to nodehelp docs so files with long names are hashed to shorter names with originial files deleted as duplicate. PR
- Fix the bug that warning dialog should only show up once when the user has attempted to load an existing dll from another path. PR
- Update Dynamo Samples PR PR
- Fix the bug that the 'AddPath' button came with the wrong style and behavior. Part of the Package Manager / Publish a Package /Markdown File Path. PR
- Fix the bug that the retain folder structure toggle in Package Manager publish workflow does not work as expected PR
- DynamoMLDataPipeline.dll
An extension for DynamoMLDataPipeline(DynamoMLDataPipeline_ExtensionDefinition.xml) has been added into the Dynamo extensions(bin/*/extensions) folder
- Updates to Node AutoComplete ML TOU PR
- Modified the PackageVersions list so it will return the packages versions descending. PR
- PM: Removes retain folder structure option until it's fully baked. PR
- Multiline string readability is now improved in Watch Nodes. PR
- Add con(text) to selection node initial warning. PR
- Updated sample files for Revit category. PR
- Updated NodeAutoComplete ML data collection TOU blog hyperlink. PR
- Package publish documentation is updated and restored access by clicking an info icon at Package Manager window. PR
- Fixed the unresponsive Publish Current Workspace option, now a message box is displayed to the user if user tries to publish an unsaved custom node workspace. PR
- Export workspace as Image option from Menu Item and ribbon restored. PR
- Graphic Scale Units setting dropdown localization restored. PR
Supports ASM229 and ASM230.
- Added new "NoNetwork" mode to command line arguments used in starting up Sandbox, DynamoCLI, and DynamoWPFCLI. PR. This mode runs Dynamo offline and disables the following features:
- Sign-in and the ability to publish packages online
- Notification center
- ML node autocomplete requests are blocked
- Disables usage agreement (consent dialog)
- Additionally, the
DisableAnalytics
flag can be used to disable analytics even when Dynamo is running online. - Auto-migration of Formula node to Codeblock node during workspace deserialization. PR
- Return more results for object based node autocomplete when using custom node output ports. PR
- Display the proper language in the Splash Screen. PR
- Updated Chart Nodes for Net6. PR
- Add node info event and API under DynamoServices package for ProtoCore so libG could raise info message instead of warning message. Add mechanism for graph run to consume runtime infos and connect each of them with node. PR
- Update sample graphs. PR
- Progression work on the Package Manager - interactions between different parts of the package manager and between package manager and preferences screen - added empty, loading, idle screens - work on the PacakgeDetailsExtension to allow hosting inside the PackageManager - misc refactor. PR PR PR
- Switching from using the legacy search to the use of Lucene Search in the Dynamo Library. PR
- Fixed remove item functionality by updating datacontext to the correct one containing the command. PR
- PM: Versions now a drop-down allowing to install selected version instead of always installing the latest - install to selected folder option resurrection. PR
- Clear any element binding data from DYN upon SaveAs. PR
- PM: Pm search for packages – filters. PR
- PM: removed the spacing between the filters bar and the datagrid. PR
- Removing legacy search in Dynamo. PR
- PM: when downloading package, use will get notified with a short status message in the bottom-hand side of the UI - this message existed before, it is now brought back in the UI. PR
- Update of splash screen image. PR
- Set Dynamo locale based on setting or host. PR
- Search: Support added for Select All (Ctrl-A). PR
- PM: adding changes connected to the votes behavior - voting for packages functionality reinstated - checking for user votes on loading - if the user has already voted for a package prevents from voting again - ui updates. PR
- Dynamo now has the Gate node in the Out of the Box Library. The gate node allows you control the execution in sections of you graph. An open Gate passes data through unchanged. A closed Gate sends no data downstream. PR
- For Dynamo Player, the legacy behavior for setting an output was a renamed Watch node. This method was still supported when the IsOutput property was introduced. Dynamo Player is now deprecating the renamed Watch node method and adding support via Dynamo config file. This config option will be removed in a future release. PR
- Data.ParseJson and Data.StringifyJson nodes have been improved to support serialization of most Dynamo standard data types. This includes all Geometry types except Topology and Color, Location and Image. Data.Remember node has been moved from the GenerativeDesign package to Dynamo core library. The new node has improved accuracy in how it stores and restores data. PR
- PM: Now displays empty screen message if the user has not logged in. PR
- Implemeting Lucene Search Category Based. PR
- PM: now able to publish new package version from my packages. PR
- Fix for regression in PolyCurve.ByThickeningCurveNormal node.
- Fixed a bug that caused BoundingBox.ToCuboid to return null for a zero-height (2D) bounding box.
- The coordinate system of a bounding box created by. BoundingBox.ByMinimumVolume is now less likely to flip its axes when the input geometry varies.
Bug Fixes:
- Assigning a specific weight for each field (previously only node Name had a different weight) and increasing weight for Category. PR
- Fix groups loose associations with notes and nested groups when a custom node is created - Fix crash when undoing a group to group addition. PR
- Failure expanding library sub categories. PR
- Fixing missing nodes in Lucene nodes search. PR
- Remove componentDidMount function from LibraryItem component that forced the scroll to bottom on library search results. PR
- Fixing regressions related to Node Autocomplete. PR
- Removes useless functions and commented legacy code - Updates according to ES6+ and javaScript recommended standards. PR
- Fix an issue where deleting a watch3d node would break rendering of meshes in the main background preview. PR
- This PR renames the function that dispatch forward delete. event dispatchEvent to eventDispatcher avoiding side effects that prevent navigation to the clicked library category. PR
- Fix for Packages tour (preventing crash). PR
- Fix cast crash in HelixWatch3DViewModel. PR
- Fixed the expected behavior for the search box to be disabled while the packages are being loaded. PR
- Fix memory leaks from opening and closing Dynamo Splash Screen. PR PR PR
- Fix bug with numeric display in preview bubbles. PR
- Updated numeric input in PM: free input or use carets to increase/decrease number - used and restyled the IntegerUpDown control from DotNetProjects.Extended.Wpf.Toolkit, which is already part of DynamoCoreWpf. PR
- Fixed an issue with double indexing of code block nodes within DynamoModel. PR
- Quality of Life improvements to Graph Node Manager. PR
- Improve searching speed in package manager. PR
- Documentation: Changing the path of the PythonScript.txt so the warning message will be according to the user path. PR
- Fix for element binding messagebox display on saveas. PR
- Now only shows warning prompt if the node is a Python node. PR
- Performance: Prioritize json loading over xaml loading. PR
- Performance: Lucene search improvements. PR
- Refine the node autocomplete ML confidence settings. PR
- Nodes: changed order of zoom out states to favor package over preview off - priorities are Error > Warning > Info ; Frozen > Package > Preview > None. PR
- Make sure the low confidence section only appears under ML recommendation mode. PR
- Multiple Dynamo sessions can now use search independently. PR
- Crash fix: Users with no votes are now able to start Dynamo. PR
- PM: Previously the dependency property of the numeric control was an integer, which would work, but would be raising a conversion error in the background. PR
- PM: just shows the currently selected package download path. PR
- PM: fixed a bug where my package would not initiate an install - attached RequestDownload handler. PR PR
- PM: height offset conversion - removed - AmbiguousMatchException - caused by the extended PackageManagerSearchElementViewModel hiding the Model property inside the base class. Renaming to SearchElementModel solved the issue - refactor - created PackageManagerSearchElementViewModel property getters to allow the View to bind to the ViewModel, and not directly to the Model. PR
- Set a timeOut value of 100 in Dynamo Preference Settings and apply that configuration on notification service request. PR
- PM: disables the search bar functionality while the results are being loaded - removed the double-binding through textchanged AND property binding - simplified code for timed trigger of search via the DispatcherTimer - added value difference check to stop reapplying the same one over and over - removed unnecessary un-subscriptions. PR
- PM: now honors active filters while searching - refactor existing filter workflow. PR
- Fix unintended serialization of the SelectedIndex for Input nodes. PR
- PM: removed the ability to update package version if not the creator of the package. PR
- Dynamo no longer truncates the rare case of Node Warnings that are a combination of multiple runtime and build warnings. PR
- Trace mechanism has dropped support for insecure SOAP deserialization, and now requires clients to use strings. Data is still intended to be opaque for users. PR
- Replace Application.Current with HostAnalyticsInfo.HostName check. PR
- Fix performance issue with feature flags, and deadlock with CLI wrapper. PR PR
- Add legacy trace warning when opening workspace. PR
- Allow Watch3D nodes to run in software mode. PR
- Add Guard for circular references that can impact Stringify.JSON and Remember node. PR
- Improve Dynamo PreferenceSettings.Instance singleton behavior. PR
- Fix a crash when using Dynamo for Revit dropdown nodes. PR
- PM: The Publish package dialog now goes back to the first page when navigating away from the tab (on cancel only). PR PR
- Enhance dragging experience: created an invisible border to occupy the title bar to help with dragging experience. PR
- PM: attempt to fix a crash when uploading a package and clearing the upload handle on success. PR
- PM: dynamo would issue a warning and fail to publish a package if an unqualified file is being used, such as a dyf file already under package control - this check is done when publishing the package locally, but I have incorrectly added it to the process of creating a build preview, which stops the process for both local and online submit workflow. PR
- PM: dynamo would issue a warning and fail to publish a package if an unqualified file is being used, such as a dyf file already under package control - this check is done when publishing the package locally, but I have incorrectly added it to the process of creating a build preview, which stops the process for both local and online submit workflow. PR
- PM: now allows package version to start with 0 - cannot have 0.0.0 package version. PR
- Graphic Element scale dropdown: Added a switch case that converts enum to their. respective resource strings for units. PR
- Add dropdown selection handler after binding. PR
- Fixing Regressions reported after changes related to Category Based Search. PR
- Don't save file to recent files list if saveas is canceled. PR
- Block recommended nodes when TOU is not accepted. PR
- Fix a bug where installing the ironPython package from the workspace references extension can add 2 ironPython items to the engine dropdown on python node. PR
- Cherrypick Heartbeat Log and NodeAutocomplete crash fix. PR
- Fix crash when parent node is deleted while node autocomplete menu is displayed. PR
- Zoom Extents for the background preview is now more accurate and predictable regardless of the size of the Dynamo application window. PR
- The login button on splash screen reflects the current login state from in-process integrators
- Displays correct user name information for the packages that have missing user.
- Fix an issue where Dynamo launch could be significantly slower if lots of packages installed contain custom nodes
- Fix an issue where graphic helper scale preference (gizmos) would not work. PR
- Fix an issue where preferences would not save and load correctly in host integrations. PR
- Revert AvalonEdit to version 4.3 to align with Revit 2024 to avoid potential conflicts. PR
- Disable network traffic when using the DisableAnalytics flag. PR
- Fixed the condition in which the Edit Port Properties will be visible for all Nodes. PR
- Trust location warning mis-display after adjusting zoom scale. PR
- Fix sort icon on package manager. PR
- Fix Civil3D hostname to fix psuedo warning for package users. PR
- Fixing the location of the engine label in the PythonScriptFromString node. PR
- CLI fixes. PR
- Splash screen fixes. PR PR
- Fixes a bug where enum backed dsobjects are not disposed fully. PR
- Fixing height value for CustomColorPicker. PR
- Fix python editor crash inside custom node. PR
- Fixing bug that is hiding some ColorPicker controls when the machine scale > 100% PR
- Fix for searching missing nodes in incanvas search. PR
- Fix in Group Styles section for showing styles added correctly. PR
- Node Autocomplete: Fix buttons placement in localized setting. PR
- Preventing crash when inserting xml dyn graph files into workspace. PR
- Fixing Lucene search result for overloaded nodes. PR
- Fix the bug that deletion of search term in package search would make the results not respecting sort order. PR
- Fixing crash after opening and closing the PackageManager. PR
- Fix groups loose associations with notes and nested groups when a custom node is created - Fix crash when undoing a group to group addition. PR
- Color picker improvements. PR
- Replacing preview images and dyn files for PythonScript and PythonScriptFromString nodes. PR
- Make single sign on usable from graphs. PR
- Support enum default values in zero touch import. PR
- Change the Watch3D node into a VariableInputNode. PR
- Node UI improvements - hover state and pinning. PR
- Python editor docking and undocking. PR PR
- Changed the shortcut combination for the Insert command - now uses Ctrl + Shift + I instead of Ctrl + I. PR
- Aligned DesignScript class keyword color with Python. PR
- Handle TabFolding edge-case inside Python editor. PR
- Upgrade Greg Version to 2.5.0.5076 PR
- Implementation of the Search functionality in the InCanvasSearch popup using Lucene.NET. PR PR
- Removed IronPython2 Warning Dialog message. PR
- Improved chart node in-depth documentation by adding more detail, providing examples, and clarifying input data structures. PR
- Implement a dynamic height resizing for notifications popup based on Notification Center height. PR
- Minor changes in the Lucene Search functionality. PR
- Added white border to preference view to increase visibility. PR
- Dynamo user can now choose if they prefer the export file path include time stamp or not. PR
- Lucene search in package manager. PR
- Indexing installed package nodes using LuceneNET. PR
- Created initial Package Manager View containing the separate functionalities (tabs) - reused existing controls, where possible, creating User Controls - created new User Controls - single View Model containing all separate View Models used for the individual controls - added unit and system tests for new functionalities (old view models were reused as is) - new style dictionary specific to the Package Manager added PR
- Migration Assistant visual refresh. PR
- Removed margin bottom offsets to the last 2 grid rows as to lessen the amount of offset the Toast row is pushed up from the bottom of the window. The figma mock-up shows a thick gray bottom line which partly hides the gap - that line is not to be implemented, though, and was present in the figma document by mistake (checked with the team). PR
- A small fix around a limitation in how warnings were read - now captures the case where a warning does not have an href tag to it - will now display the full multiline text of a warning that does not have an href tag PR
- Implementing the Lucene Search in Node Autocomplete Search functionality. PR
- Implement UI changes that showcases to users what nodes come from a package. - Ensure Zoom State hierarchy is correct and test all cases where three states may be present. - Inject Package name into Description of each node. - Ensure Python Script node that has Engine text doesn’t overlap with new triangle corner package signifier. PR
- Implements forward delete functionality for searchBar input in librariejs and the mechanism in dynamo to "binding" accelerator keys that are not supported in webview2. In other words we track accelerator keys in Dynamo and use javascript dispatchEvent method to trigger the librariejs event that execute the forward delete method. PR
- Lucene: Assigning a specific weight for each field (previously only node Name had a different weight) and increasing weight for Category. PR
- Make Linter Extension and API public. PR
- Stability improvements to Curve.Extend methods for most Curve types.
- Fix for regression in PolyCurve.ByThickeningCurveNormal node by aligning the default value of the normal with the positive Z-axis.
- Fixed a regression by allowing zero-height BoundingBox to create a zero-height Cuboid.
- A
File -> SaveAs
command in Dynamo running in the context of a host can break element binding with the currently open host document. This is a change in behavior from Dynamo 2.17. To preserve element binding data, choose to onlySave
the DYN file to save changes. - Opening and/or running a Dynamo graph in the context of a host application no longer marks the DYN dirty and therefore does not prompt a
Save
on closing it. This can lead to any element binding data generated on the previous execution being lost as it will not be saved to the DYN file. This in turn will lead to element binding being broken on a subsequentOpen
andRun
of the same graph. To prevent this it is necessary to always save the workspace after a graph run even if it isn't marked dirty.
- CommandLine.dll
- DotNetProjects.Wpf.Extended.Toolkit.dll
- J2N.dll
- Lucene.Net.Analysis.Common.dll
- Lucene.Net.dll
- Lucene.Net.Queries.dll
- Lucene.Net.QueryParser.dll
- Lucene.Net.Sandbox.dll
- Microsoft.Extensions.Configuration.Abstractions.dll
- Microsoft.Extensions.Primitives.dll
- MimeMapping.dll
- Prism.dll
- System.Diagnostics.DiagnosticSource.dll
- System.Runtime.CompilerServices.Unsafe.dll
- System.ValueTuple.dll
- nodes\UnitsNodeModels.customization.dll
- nodes\UnitsNodeModels.dll
- nodes\en-US\UnitsNodeModels.resources.dll
- Fix slider localization bug that would cause slider max to change PR
- Fix the bug where File Trust warning horizontal center position could shift PR
- Fix the bug in File Trust Message behavior PR
- Improvement - Leave RenderPackage data intact when passed to AggregateRenderPackages PR
- Fix the bug that the export image button shortcut does not do anything PR
- Fix the crash by checking webview2 installed before launching DynamoSandbox PR
- Fix the bug that custom node renamed itself after backup kicks in PR PR
- Fix a crash when using the code folding in the Python editor PR
- Align DS class keyword color with python editor PR
- Collision between isolate and insert shortcuts PR
- Fix an issue with the
Surface.ToNurbsSurface
node PR - Fix a change in behavior to allow DynamoPlayer to pass extra arguments to DynamoCLI invocactions PR
- Fix a change in behavior where file logging was disabled during CLI invocations in all contexts PR
- Live Charts display a clear description and detailed description PR
- Insert multiple instances of the same graph from extension with unique GUIDs PR
- Block Dynamo shortcuts when inside interactive guide mode PR PR PR
- Removed node font size setting from preferences PR
- Updated color picker UI to align with visual refresh PR PR PR
- Enable language selection in preferences panel PR PR
- Enable python zoom scale in preferences panel PR
- Add an option to remember last opened Extensions in Dynamo that can be enabled/disabled from preference panel PR
- Add new Edit Python Port Properties option to rename and manage ports in
Python Script
node PR - Update preferences layout alignment PR PR
- Update Python node editor documentation PR
- Update Documentation Browser default start page content PR PR
- Watch nodes will persist custom size across sessions PR
- Handle null values in watch node or preview bubbles PR
- Add tooltips for node categories in Library PR
- Add new backup settings in preference panel to manage backup interval and location PR
- Add new Live Chart nodes PR PR
- Add documentation and tooltips related to Machine learning Node autocomplete feature PR
- Removed round edges from node icons and multiple UI fixes PR
- Update DynamoCore internals visibility for Dynamo Player rewrite PR
- Adjust color of highlighted items for better visibility in watch nodes and preview bubbles PR
- Add Pause Splash Screen and Run Preview option tooltip in preference panel PR
- Populate Color Picker with custom colors from group styles PR
- Updated Python Node help documentation PR
- Updated Node help images and dynamo example files (#13568) PR
- Set relevant library font size as per the height of the library PR
- Updated splash screen labels now localized PR
- Add cross-platform local build configuration for dotnet6.0 PR
- Add horizontal scroll bar in package details view PR
- Upgrade DynamoSample revit file to point to Revit 2024 PR
- Move Dynamo solution to VS2022 PR
- Identify the location of the tag inside markdown help files and correctly injects HTML code for that row PR
- Add new Working Range menu to workspaces that is isolated from the geometric scaling set in preferences PR
- More projects moved to cross-platform build PR
- Add new Insert graph feature to insert a graph definition into the workspace PR
- Avoid installing all the npm dependencies, instead use npm pack to fetch them PR
- Bring Dynamo window to the foreground after login PR
- Add new library zoom scaling option in preference panel to ajust and persist library zoom setting PR PR
- Introduce Dynamo Service Mode as new CLI flag PR
- Dynamo now includes some popular Python Modules out of the box PR
- Python Node Editor Visual Update PR
- Python Node Editor Visual Update -- Align editor color scheme with the CBN design script PR
- Add support for Net6 target in DynamoCoreTests.dll PR
- Update LibG package reference to include linux binaries PR
- Hide missing ML autocomplete controls if option is set to hide it PR
- Update Live Chart Nodes Search Tags PR
- Restrict logging in service mode PR
- Add more logs for ASM load failures during tests PR
- Add better error messages for ZT import failure PR
- Make Linter Extension and API public PR
- Support embedded interop types when importing types from assemblies PR
- Fix notification window now appears in the center of the screen PR
- Fix String from Object node to respect Number Format precision setting PR
- Fix a bug where Dynamo doesn't refresh the status of some packages after being loaded PR
- Fix a crash
List.AllIndicesOf
node that used to crash as soon as the checked list has any null entry PR - Remove all usage of IsOptedIn for ADP and Added
USEEXCEPTIONTRACE
option for CER PR - Fix a bug where ghost warnings were displayed in zoomed out graph even after resolving them PR
- Fix serializing dynamic python engines selection PR
- Fix a bug where Custom Nodes were renamed when auto-save functionality was triggered. PR
- Update mouse pointer when switching from geometry view back to graph view PR
- When duplicate node recommendations are returned from ML API relevant ports are connected PR
- Fix crash by adding null check for note view loaded. PR
- Fix trust warning location displayed incorrectly after adjusting zoom scale PR
- Fix Civil3D hostname to not display incorrect warning for package users PR
- Include all files from Markdown Directory to published package PR
- Fix docs browser and docs generator produce .md files with names that are too long. PR
- Fix Docs browser and docs generator md files with names that are too long. PR
- Adding localization for the sign in button states PR
- Fix bug where Data.OpenXMLImport node is sometimes bringing in Data, sometimes Formulas PR
- Update localized resource in Documentation Browser PR
- Fix scientific notation values that are read from Excel files PR
- Fix build by removing redundant entry for libg package in csproj PR
- Fix NodeView serialization to be consistent each time a graph is saved PR
- Fix contrast ratio between a group's background and group's text PR
- Fix input and output port menu when in zoomed out or zoomed in state PR
- Fix the memory issue that caused the serial tests to timeout PR
- Fix crash from using special characters in file paths by wrapping them in quotes PR
- Rename some long documentation files and add more logging to rename command. PR
- Fix sort icon on package manager. PR
- New ToNurbsSurface node with added option to unlimit the input surface before converting it to NURBS and Update Curve.ByBlendBetweenCurves node documentation PR
- Update geometry nodes icons PR
- Fix regression with Curve.SplitByPoints and Curve.SplitByParameter for PolyCurve PR
2.18 introduces dependencies on
-
Python.Included.SciPy
PR
- Language selection will default to English in Dynamo due to technical limitations that require re-architecting part of Dynamo. This means a host application (i.e. Revit, Civil 3D) in a language (i.e. German, Polish) will open up in English until set back to a users chosen language. Once set, this will persist for all future sessions.
- A
File -> SaveAs
command in Dynamo running in the context of a host can break element binding with the currently open host document. This is a change in behavior from Dynamo 2.17. To preserve element binding data, choose to onlySave
the DYN file to save changes.
- Hide control to select node autocomplete option from Autocomplete search dialog when autocomplete options are turned off for users. PR
- option to hide or show preview for nodes in group. PR
- improve package manager search order. PR
- unified UI info icons. PR
- do not force users to sign in for non authenticated package routes. PR
- Fix a potential 30 second hang on Dynamo / DynamoPlayer startup. PR
- defend against null references in workspace references. PR
- Don't return a non zero exit code when shutting down the geometry library. PR
- Fix regression with
Curve.SplitByPoints
andCurve.SplitByParameter
forPolyCurve
.PR
- Some nodes, like variable input nodes don't correctly display custom documentation in the docs browser.
- Improvements to Notification Center, PR
- 'Mark all as read' functionality in Notification panel, PR
- Disabled Network traffic When Notification Center is disabled, PR
- Publish upload scan message box before publishing a package, PR
- Updated versions for Greg(PackageManager client) and Analytics packages, PR
- Disabled package install and added visual indications for deprecated packages, PR
- Import and Export Dynamo settings functionality in Preferences panel, PR
- Updated the Node.js install instructions in the DynamoDS ReadMe.md, PR
- Updated to WebView2 library, PR
- Added more settings to Preferences panel, PR, PR
- Default font size for Group styles, PR
- Type identifiers in preview compact bubble, PR
- Added new access keys for Dynamo toolbar items, PR
- Update NewtonSoftJson to 13.0.1 to align with other ADSK product, PR
- Splash-screen in Dynamo Sandbox, PR
- Localized Node Help Docs, PR
- Zoom text in Python editor, PR
- More options in wire context menu, PR
- Updated descriptions for several nodes in the Core Node Models library to improve clarity and consistency: PR, PR
- Remove Gallery feature, PR
- Enabled Graph Preview States for new node, PR
- ForgeUnits reference is updated to latest version, PR
- Updated Documentation-browser view extension, PR, PR
- Login Authentication in Dynamo, PR
- Update Date Time node description on how to use it, PR
- Dynamo Preference Settings include information about the user-folders in Dynamo Player and Generative Design, PR
- Improvements to interactive guided tour, PR
- Node Autocomplete improvements, PR
- Machine Learning suggestions for Dynamo Node autocomplete, PR
- Update ML NodeAutocomplete Documentation, PR
- Improves API for localizing obsolete node messages, PR
- LibG updates, PR, PR
- Fix DynamoRevit crash when WebView2 is initialized, PR
- Fix for Dynamo generic crash, PR
- Fix crash in Dynamo-Revit, when closing Dynamo with notifications panel opened, PR
- Fix slider going out of control while sliding in localized environments, PR
- Fix regression in Dynamo where after installing a package during a session the node preview bubble and background preview would not operate correctly, PR
- Fix bug for the File Trust dialog, PR
- Multiple globalization UI bug fixes, PR
- Fix issue loading file if it contains null list of workspace references, PR
- Fix dropdown input nodes when running from player with Dynamo open, PR
- Bug fixes in LibG, PR
- Fix crash when interacting with Dynamo notifications window, PR
- Fix regressions in background preview render for some list of objects and update API behavior for AggregateRenderPackages: PR
- Watch3d Updates fixes some regressions, PR
- Fix CustomNode view layout after it is saved, PR
- Fix misalignment of the sub-list dots, PR
- Fix an issue where a notification is shown if a package has no node libraries in a protected location, PR
- Fix Dynamo Popup Directions, PR
- Attempted to improve rendering of curves that should be hidden by meshes when geometry is far from camera, PR
- Support latest ADSK geometry kernel, update to ASM 229, PR
- Add icons for new geometry nodes, PR, PR
- Dynamo can hang or crash on certain computers at startup time due to WPF render thread failures. Currently, these issues have been found to occur only on Windows machines with multiple GPUs and look to be related to WebView2. There are a couple of workarounds that one can try before you restart Dynamo:
- Set the
UseHardwareAcceleration
property tofalse
in the Dynamo preference settingsDynamoSettings.xml
file and restart Dynamo. - With
UseHardwareAcceleration
set totrue
, force your Dynamo application (e.g. DynamoSandbox.exe or Revit.exe) to run with the high-performance GPU on your machine and try relaunching Dynamo. - Disable one of the GPUs and try relaunching Dynamo.
- Set the
- Fixed regression with selection nodes in Revit. PR
- Fixed regression where after installing a package during a session the node preview bubble and background preview would not operate correctly.PR
- Applied the same bug fix in 2.15.1
- This version now requires ASM 228.5 minimum to function, support for ASM 227 -228.4 is dropped in order to better support polycurves.
- Enabled
ArbitraryDimensionArrayImport
attribute for function return values, PR - Updated the
File Path
node to open the last set file path in the file open dialog, PR, PR - VM performance optimization in determining types in arrays, PR
- Performance optimizations in the calculation of workspace references, PR
- Enabled watch node to have a minimum height when displaying a list, PR
- Resized the Group Styles panel in the Preferences window, PR
- Cache information about the user being the author of a package to avoid multiple API calls upon right-clicking on the package in package manager preferences UI, PR
- Visual restyling of dialogs, PR
- crash window restyle
- agreement to collect usability data restyle
- about box restyle
- node name edit restyle; added inline rename when close-up (zoomed-in)
- (package manager) terms of use restyle
- New notifications UI, PR
- Added right-click context menu to allow
Pin wire
, PR - Added a new set of context menu items to allow the user to
Show/Hide all Wires
(connectors) from a group of selected Nodes, PR - Updates to toast notification messages, PR
- Set the
null
color in the Preview and Watch Nodes, PR - More visual restyling updates, PR
- high-density design applied to various dialog windows
- various dialog windows can now allow resizing to accommodate for long text displays
- placement of buttons on the default Dynamo Message Box changed
- added TitleBarButton icons for dark and light theme
- light/dark theme for textboxes
- quality of life improvement - minimum grip height to scroll bars
- New keyboard shortcut,
Alt + left
click to Ungroup Target Group, PR - WebBrowser component used in
Guided Tours
replaced by WebView2, PR - Added ability to resize watch node when there is a lot of data as a single item in a collection, PR
- Added capability to close an open guided tour when switching to a new workspace, PR
-
Graph Node Manager
localization updates, PR - Added capability to allow users to turn off
Notification Center
from the Preferences Panel, new look and feel for notification bell, PR - Series of bug fixes or updates to the
Graph Node Manager
view extension, see PR - Replaced WebBrowser by WebView2 in
DocumentationBrowser
view extension, PR - Added a new node that allows the user to pre-define a dropdown menu with an arbitrary number of customizable menu items, PR
- Added
Trust Warning
learning content to Dynamo documentation browser, PR - Added documentation around package scanning, PR
- Added notifications for users with infected package uploads, PR
-
FileTrustUI
andGuidedTours
popups continue to show when the Dynamo window is inactive (focus has shifted away from Dynamo) and active again, PR - Fixed a bug where wires disappeared when moving group, PR
- Updated text on Copy node contents from "Copy" to "Copy Contents", PR
- Fixed
Dictionary.Values
to make it return arbitrarily ranked values as expected, PR - Fixed icons for
List.Reverse
andList.SetDifference
- Fixed a bug where a collapsed group changed width when the user moved it horizontally, PR
- Fixed inconsistencies in some UI text, PR
- Fixed an issue where Notes in Groups display a skewed vertical margin causing the Note to overlap when in the top position or push the boundary unrealistically when in the bottom position inside the Group, PR
- Fixed a crash when the interactive guide is launched with an unaddressed file trust popup, PR
- Prevented Shift-Drag crash when a single group selected, PR
- Trusted locations edit path now works as expected for subdirectories, PR
- Fixed function indicator bar on an output port, PR
- Pinned Note correctly aligns to the Node once a warning is dismissed, PR
- Fixed some edge cases where the
Inports
/Outports
are wrongly colored when run at manual mode, PR - Fixed an engine regression in 2.15 where modified input nodes that were assigned non-primitive values were not updating, PR
- Fixed a typo in a code block error message, PR
- Fixed a bug where after panning, sometimes zooming did not zoom into the mouse position, PR
- Fixed node alignment issues when they are inside a Group, PR
- Fixed a bug in
Show Run Preview
feature where connectors were not colored as "invalid" when connecting an existing node to a newly added node, PR - Added proper handling of trusted location message in a custom node workspace, PR, PR
- Localized UI strings in
Color Palette
node, PR - Fixed a crash when the geometry library is not loaded and a direct manipulator is created by preventing loading the extension in this scenario, PR
- Fixed a bug with the
Getting Started Guide
, PR
- Added new
PolyCurve
improvements and nodes-
ByJoinedCurves
andByGroupedCurves
now support trimming of input curves that might otherwise overlap - New
Heal
node to heal a self-intersecting curve by returning a new one that isn't self-intersecting
-
- Added new
Curve.NormalAtParameter
node with an option to choose a consistent side of the curve for normals to point at -
Curve.Offset
has been replaced byCurve.OffsetMany
which can return one more offset curves - Fixed
Cone
andCylinder
orientation when constructed using a reference coordinate system - Fixed context coordinate system for
Arc
,Ellipse
,Circle
, andEllipseArc
- Fixed context coordinate system for
BoundingBox
- Added
Solid
andSurface
Repair
nodes to repair invalid geometry - Added Minimum volume bounding boxes -
BoundingBox.ByMinimumVolume
,Geometry.OrientedBoundingBox
nodes - Loft operations now fail with a warning when one or more of the guide curves are invalid instead of producing wrong results silently
- Added new .SAT and .SAB Import nodes that allow better control of how sat units are interpreted
- Fixed an crash and broken background preview when starting Dynamo with the DisableAnalytics flag set to TRUE
- Fixed an issue with preview bubble and tessellation for the background preview. After installing a package during a session both would stop working correctly
- Fixed an issue that version numbers of some analytics dlls were not updated
- Improved default group styles experience
- Default group styles are now localized in the preferences and group context menus PR
- The context menus for
Group Styles
,Colors
, andFont Size
now have a fixed width - Group style names can now be a single character
- A new Getting Started guided tour is available, showing users how to add and connect nodes and run the graph
- Improved security warning settings and messages for Dynamo(with UI) users
- Security tab is now available in the Preferences panel PR
- Users can add or remove any file path as a trusted location. The trusted location is enabled recursively
- Users can enable or disable the file trust warning, which is shown when a graph is opened from an untrusted location
- Users can click
Yes
on the warning to grant one-time trust to the file - Users can click
No, close file
on the warning to close the file and leave it untrusted - Users can click
Settings
on the warning to manually add the file path as trusted location - Users can check
Trust this file's location in the future.
when clickingYes
to grant long-term trust to the file location and add it to the trusted locations list - When a new trusted location is added not through the preferences panel, the notification will pop up
- No behavior change for Dynamo CLI users
- Users can click
- Added a workspace footer to display additional information about nodes in warning/error/info states PR
- Clicking through the warnings or errors in the footer will cycle through and focus on each node in the warning/error state
- New OOTB Graph Node Manager view extension is available, which allows users a quick one-stop-shop solution for graph management. In this vein, the Graph Node Manager reveals insights in a number of areas, including a list of all current nodes in the graph, with information displayed for each node. Users can also export the current state to a CSV or JSON file or zoom in to the selected node. They can also add filters or search for nodes.
- Management of Type - Function, Input, or Output
- Management of State - Frozen, Preview Off, or Info
- Management of Issues - Warnings, Errors, and Missing Content
- Management of Outputs - Null and Empty List result
- Two new types of run status messages are now available
- Node selection can now be undone
- Updated all Primer references in Dynamo to point to the newer version of the Primer
- Allowed Dynamo packages to partially load if some of the assemblies are good PR
- Added an icon to the
String.GetNumber
node PR - Updated the Dynamo About box to include more information about licenses PR
- Added a Keep alive option to the
WPFCLI
PR - Prevented users from entering certain special characters as part of the package name in the Publish Package feature PR
- Performance improvements
- Added launch darkly support so that in the future, Dynamo features can be enabled after distribution PR
- Reduced Watch node default size in certain cases PR PR
- Updated port color based on node function state PR
- Dynamo now supports CER, but the feature will be hidden under a feature flag for now PR
- Added internal API for Dynamo integrators to modify the library layout for their built-in packages PR
- Updated the Python version used in Dynamo to
3.9.12
PR - Added an icon to each node alignment option PR
- Added additional node help documentation to DynamoCore PR
- Assigned
F1
as the hotkey to display node help documentation PR - New workspace will inherit the current workspace scale factor setting PR
- Added package links to the Package details view PR
- A notification is raised at startup if an installed package targets a different host PR
-
List.RemoveIfNot
now supports C# type such as that returned from Object.Type PR - Data types are now colored differently (same as CBN) in a Watch node and preview bubble PR
- Added consistent crash error reporting experience for Autodesk integrations of Dynamo
- Localization bug fixes
- Fixed Node To Code for list indexing expressions PR
- The Extensions menu now correctly shows whether the Documentation Browser is open or closed PR
- Fixed a bug where the default color (black) was not being set when the color palette node was placed using Node Autocomplete PR
- Fixed a bug where a node in info state did not have a blue bar PR
- Fixed a bug where publishing a new version of a package with content deleted would crash Dynamo PR
- Addressed guided tour issues with the Terms of Use window [https://github.com/DynamoDS/Dynamo/pull/12872]
- Simplified Dynamo Model initialization about HostName PR
- Fixed a bug where the margin was too tight on the context menu PR
- Fixed a package publishing regression so that Dynamo marks the node library correctly PR
- Fix a package publishing regression where user was unable to remove an item after publishing it it the next version PR
- Fixed a bug where the installation spinner for packages spins forever in localized Dynamo PR
- Fixed a bug where the user could not undo pinning a note to node PR
- Fixed a bug where opening a graph results in a silent crash PR
- Fixed ghost warnings appearing when opening graphs [https://github.com/DynamoDS/Dynamo/pull/13015]
- Improved render time and memory usage required for the 3D Preview when drawing many primitives PR
- GraphicDataProvider optimization for repeated calls to get similar object types for tessellation PR
- Fixed a bug with the
TsplinesSurface.ByExtrude()
node, where the profile spans and uniform inputs were not used PR - Fixed a bug where a point projected to a plane or surface resulted in two projection directions PR
- Improved point/polysurface projection performance, taking our test graph from ~2m 45s down to ~33s (5x faster) PR
- Added new
GetNumber
node PR - Added ability to load new python engines dynamically
- Added lacing/list@level support to variable-input logic nodes
- Added a new option "unpin from node" in the Note context menu
- The method
InUse
will only check if the package is used in the Dynamo model regardless of the package load status - Improvements to the rendering of coincident line/point/mesh geometry
- "Learn more" link added to warning message in the
Point.ByCoordinates(x,y)
node - Thread-safe Point-Mouse Manipulator and some speed improvements
- Implemented saving and loading the group styles in preferences settings XML file
- Always display
Add-ons
section together with+
button to import new files - Added Undo action to unpin a note from a node
- Added Control + Click to nodes and notes to remove from the current group PR
- Enabled Group Style settings in the Preferences dialog
- Enabled the Dynamo Core selection styling to expose it in selection nodes in hosts such as Dynamo Revit
- Enable Shift + Left click to select more groups
- Added analytics tracking for installing packages, sorting, and viewing package details
- Enable
Create Group
context menu option when the selection includes groups - Improved clarity of "Add to group" context menu item, by calling out the group target with "Add to this group"
- Added Node help docs in Dynamo Repo. See PR for details.
- Added the Group style submenu in the Group context menu for the user to be able to select different group styles
- Added commands and APIs to allow a workspace to be created from JSON content. See PR for details.
- Added styling of several message boxes for UI consistency
- Added triggers for showing the highlight when the mouse is over one of the Group Styles in the context menu
- Made the Group Style name in TextBox a mandatory field in
Preferences->General->Group Styles
panel - Added appropriate tooltips for Input and Output Nodes
- Added localization support for Group style buttons
- Add visual-cue glyphs when the graph is zoomed-in/out. See PR for details.
- Increased max-width of the label that counts the number of steps of the guided tour
- Several changes for the AnnotationView context menu for showing group styles and colors. PR
- Mark workspace as modified when performing add/remove operation on Groups
- Hover interactions in the
Manage Preferences
dialog made consistent - Added new node Info state in addition to error and warning states. The new state can be seen in the Integer-slider node.
- Visual updates to Dummy/unresolved node. PR
- Do not include elements in collapsed group to box selection. PR
- Visual indications for nodes acting as
Function
s. See PR for details.
- Fixed performance issue with error/warning bars on nodes
- Fix for Dynamo UI blocking during concurrent save/run operations
- Fixed crash with direct manipulation of points
- Fixed a graphics/rendering crash
- Null values are now converted to Boolean: False, arrays of null can be converted to Arrays of Boolean: False
- Fix in Package Manager Search for the filter to get the result by doing an intersection instead of a union
- The title in the "install a package" popup in the package guide tour is now localized
- Dynamo Freeze context menu item should be enabled when multiple nodes are selected
- Crash fixes by making Dynamo warnings thread-safe
- Fixed location of popup dialogs to always show at the center of parent dialogs PR, PR
- Fixed bugs with nested language blocks used in DesignScript code in code block nodes. See more details in PR
- Fixed a deserialization issue such that Dynamo no longer produces files that cannot be read by dynamo versions < 2.12 (See API changes document for new
NodeInputData.Type2
property) -
List.Contains
now gives consistent results withEquals
node for number equality. - Fixed annotation deselect behavior for a group with nested group
- Fixed error/warning count increasing on node upon doing unrelated graph actions
- Fixed an issue where the save method on the CustomNodeWorkspaceModel model was never called
- Fixed an issue to format package labels properly when version strings are long in
Preferences->Package Manager->Installed Packages
- Fixed multiple issues with errors and warnings on nodes:
- Compile-time and runtime warnings are now displayed on code block nodes correctly as multiple unique warnings
- Copy-pasting a CBN with warnings correctly shows warnings on the new node
- Obsolete node warnings are displayed as expected
- Node to code warnings on the resulting code-block node
- Dummy/unresolved node warnings are treated as persistent warnings so that they don't disappear on graph execution
- Display appropriate error message when a corrupt file is opened
- Fixed an issue to hide the delete button for default group styles
- Fixed node help markdown files search issue for nodes with overloads so nodes like
Point.ByCoordinates(x, y, z)
can query help docs correctly - Fixed crash in "Node to code" by preventing it if any of the selected nodes are in an error state
- Fixed issue with Dynamo console log not updating for geometry scale preferences setting
- Fix a bug with node autocomplete window
- Fix for
Undo
stacks for adding multiple groups into a single group - Fixed an issue with dismissing in-canvas search box
- Fixed an issue where unsaved changes were being discarded when the save dialog was dismissed
- New optional parameter
CutEndOff
forSurfaceBySweep
,SurfaceBySweep
, andSolidBySweep
- Projecting a curve onto a plane will treat the plane as an infinite geometry
-
Edge.CurveGeometry
now returns exact curve types
- Upgrade DynamoSample RVT to target Revit 2023 release. PR
- Lock icon dimensions in library. PR
- Disabling the package text search, filtering and sorting results options in the package guided tour. PR
- Hide All context menu in workspace when displaying node context menu. PR
- Update the foreground color of selection element description for Selection Node. PR
- Fix a crash bug when removing node from group that contains note. PR
- Fix popup alignment when windows setting is set as right-handed. PR
- Remove part of the shadow that is part of the popup pointer in guided tours as it is giving the impression that is not part of the popup. PR
- Fix to visual bug when plugging a wire from an output port into an input port of a collapsed group. PR
- Fix the cleanup node layout feature to not impact the contents of groups unless explicitly used on them. PR
- Fix the issue where the description and tooltip information of DynamoUnits ZT nodes were missing in Dynamo 2.13. PR
- Fix UI hang issue during concurrent save/run operations. PR
- Adjustments to improve legibility of code block port representation in a collapsed group. PR
-
Dynamo Visual Refresh
- Updated look and feel to the adopt the Autodesk Human Interface Guidelines and dark grey theme
- Node Redesign
- Nodes, Groups, Wires, Ports, Context Menus, Tooltips, etc updated to Autodesk HIG with dark grey theme
- Ability to pin/unpin wires
- Ability to break existing wire and add watch node in between with auto connection
- Ability to drag node into group
- Ability to collapse groups
- Ability to select up/down stream node
- Updated context menus on all visual elements
- More visible error and warning states
- Package Manager Redesign
- New Package Search & Publish UI
- Updated to Autodesk HIG with dark grey theme
-
Dynamo Tours
- Tours implemented with the Autodesk HIG with dark grey theme
- Dynamo First Time Experience
- Packages Guided Tour
-
Expanded Workspace References Panel
- Added Local Definitions
- Added External Files
-
Package Manager Preferences
- Added package states
- Unload/Load Built-In packages
- Added filtering of packages based on the state
- Resolving package conflicts
- Alert the user if there are conflicts loading packages from different locations
- Config file option to disable the built in library loading location
- Toggles for disabling loading packages from built-in package path and custom package paths
- Packages work after downloading, regardless of the order of the dependencies being downloaded, without a restart, if possible
- Option to install a package even though its dependencies are the wrong version
- Schedule to unload packages in directories that are removed from the package search path
- Added package states
-
Units
-
Analytics
- All analytics network traffic eliminated when ADP disable flag is set
- Additional crash data
- Node group actions
- Pin/Unpin note actions
- Node context menu actions
- Wire management actions
- Package Manager actions
- Workspace dependencies
- Updated analytics to use ADP 4
-
Python
- Python3 Autocomplete
- Removed IronPython from Dynamo Core and provided it as a package in Package Manager
-
Performance improvements
-
Load custom UI node views from separate WPF-based assemblies in packages
-
Security Updates
- Resolved issues identified by security scans in 3rd party dependencies
- Validated current level of package certificate verification
- Validated the current limits on package loading paths
- Adopted OAuth2 in Package Manager for those host applications that provide an OAuth token
-
Removed CEFSharp and replaced with MSWebBrowser - PR
-
Added a menu item to hide/show Preview Bubbles
-
Graphics Improvements
- LibG Tessellation Improvement
-
Group discrete curve paths into one or more PolyCurves
-
Updated the Agreement to Collect Usability Data Dialog to use the new Autodesk logo - PR
-
DynamoCoreWPF
- Many WPF controls which are no longer used are removed.
-
LibG
- New methods
- PolyCurve.ByGroupedCurves
- PolyCurve.ByThickeningCurveNormal
- Deprecated Method
- PolyCurve.ByThickeningCurve
- New methods
-
ProtoCore
- New methods
- Utils.StringUtils.BreakTextIntoLInes
- Utils.StringUtils.IsStringSpacesWithTabs
- Utils.StringUtils.SpaceToTabConversion
- Utils.StringUtils.TabToSpaceConversion
- ProtoFFI.CLRModuleType.FFIMethodAttributes
- New methods
-
DynamoCore
- New constructors
- Dynamo.Graph.Annotations.AnnotationModel.AnnotationModel
- Dynamo.Graph.Notes.NoteModel.NoteModel
- New methods
- Dynamo.Graph.Annotations.AnnotationModel.ContainsModel
- Dynamo.Graph.Nodes.NodeModel.SelectDownstreamNeighbours
- Dynamo.Graph.Nodes.NodeModel.SelectUpstreamNeighbours
- Dynamo.Graph.Nodes.NodeModel.SelectUpstreamAndDownstreamNeighbours
- New constructors
-
DynamoUtilities
- New methods
- DynamoUtilities.PathHelper.FileInfoAtPath
- DynamoUtilities.PathHelper.GetFileSize
- New methods
-
New Python Engine APIs
- New APIs have been added to the "Dynamo.PythonServices" namespace, located in the DynamoServices assembly
-
Some of the highlights:
- IronPython2 evaluator is no longer delivered as part of Dynamo. It is however available as a package on https://www.dynamopackages.com
- Available python engines will be queryable through Dynamo.PythonServices.PythonEngineManager.Instance.AvailableEngines collection
- API users can interact with each available python engine through the Dynamo.PythonServices.PythonEngine class.
- Fixed Vertices are cloned every time a new input is connected to the ByCombinedTSplineSurfaces node
- Fixed T-Spline surface from Alias can't be combined with a TS surface from Dynamo
- Fixed Package Manager ordering based on downloads is reversed - PR
- Fixed Installing a package with dependencies tries to uninstall packages unnecessarily - PR
- Fixed Installed packages view is cut off and some packages cannot be viewed
- Fixed NodeAutocomplete on node with multiple output port creates wire from the first port
- Fixed entering a wrong path in CBN and zoom to object causes a crash
- Fixed tooltip on the Python editor’s Save button
- Fixed Node warnings must not be cleared when a Point.ByCoordinates or Curve.PointAtParameter node is unselected
- Fixed IsVisibleInDynamoLibrary attribute not working for ZT public classes
- Fixed Dynamo menu access keys don't work properly - PR
- Fixed Certain user action should set workspace hasunsavedchanges = true - PR PR
- Fixed Installed Packages Expander is not listing installed packages
- Fixed CRASH: Delete node with right-click at the same time - PR
- Defended against CRASH: NullReferenceException when drawing background preview - PR
- Defended against CRASH: PathTooLongException in DynamoViewModel.ShowSaveDialogAndSaveResult
- Defended against CRASH: NullReferenceException when mouse is released on the dynamoworkspace view - PR
- Defended against CRASH: InOutPortPanel on NodeView calls measure on its children - PR
- Defended against CRASH: NullReferenceException when drawing background preview - PR
- Defended against crashes loading blocked assemblies
- Defended against some XamlParseExceptions
- Fixed Similar DS code blocks give inconsistent results
- Fixed When a path is removed and later restored, the package nodes are duplicated
- Fixed VM dispatching call to wrong method at runtime
- Fixed Crash in helix when unplugging laptop from external monitor while leaving Dynamo open
- Fixed Built-In Packages can be uninstalled
- Fixed Missing localization for Built-In Packages
- Fixed Buttons looks strange when not hovered
- Fixed Package deprecation options are visible to non-owners
- Fixed Package nodes are duplicated when packages are reloaded on closing and reopening the preferences dialog
- Fixed TuneUp (When downloaded) still show's up under View - PR
- Fixed Crash when altering function in code block
- Fixed ASM complains converting TSM files to B-Rep if created with a T-Splines version greater than the version currently loaded - PR
- Fixed Creating a circular dependency, then correcting it or Undoing, puts all downstream nodes into a bad state
- Fixed Design Script function cannot be found when opening a graph
-
Collapsed Groups - These will be resolved in a future release and don't impact graph execution behavior.
- Code Block nodes with wires coming out of Collapsed Groups (Either parent or child) are visually broken.
- Collapsed Groups can enter a visually strange state when using
Cleanup Node Layout (Ctrl + L)
where wires and ports do not line up until you select the group.
-
In DynamoSandbox, node state bars appear and disappear slowly.
-
In the Packages Interactive Guide, you must have the Library open for the tour to behave correctly as the tour will not open the Library automatically for you yet.
-
Files containing selection or dropdown nodes, which are marked
IsInput
will fail to open in Dynamo versions previous to 2.12. This will be fixed in a newer version of Dynamo, for other workarounds see this forum post
- Hotfix release to address a security issue for D4R.
- Updated Greg.dll (Package Manager Client) and RestSharp references - verified that downloads from DPM are using TLS 1.2 in Sandbox. PR
- Removed Greg and RestSharp references from LibraryViewExtension and ViewExtensionLibraryTests.
- Fix a bug that Node AutoComplete Results for certain Node Model nodes are incorrect. PR
- Fix a bug that turning on Show Edges setting causes blank Geometry View. PR
- Fix a bug that in some edge cases deleting a node with no connection or deleting a node which is the right end edge of the graph will not mark the graph as modified. PR
- Fix a crash that would happen when Node Autocomplete triggered on the output port of watch node.PR
- Fix a bug that on certain user machines, string values can not be displayed correctly. PR
- Fix a crash when the entire line of python code is removed during migration. PR
-
Node Autocomplete
- Improve Node Autocomplete UI to match the Dynamo Visual Refresh styling. PR
- Enable Node Autocompletion for output ports of Dynamo nodes. PR
- Enable Node AutoComplete for custom nodes. PR
- Add dedicated Node AutoComplete section in Dynamo Getting Started tour PR
- Added dedicated Node Autocomplete documentation which can display in the right-side panel. PR
- Improve the placement experience of a new node from Node AutoComplete feature user picked. PR PR
- Improve node-autocomplete search so that instead of using only the node name to match the search key, include node's keywords and description as well.PR
- Node Autocomplete can now be triggered using double left-click instead of Alt + left Click. PR
-
Reorganized Dynamo menu UI PR PR PR and more
- Remove icons that were inconsistent and only display for certain menu items
- Create dedicated Extensions top-level menu item for extensions related user actions
- Create dedicated Dynamo top level menu item to host About, Agreement to Collect Usability Data, Preferences, Exit Dynamo
- Remove Settings menu item and create a dedicated Preferences Panel to host Dynamo settings
-
Add a dedicated Preferences Panel to host Dynamo settings
-
Packages management
- Add a dedicated Package Manager subpanel in Preferences panel to host all package management-related settings. PR
- Add documentation related to publishing a package to Package manager inside dynamo. PR
- Move package search paths to preferences settings PR
- Move Installed Packages list control to the new Preferences Panel.PR
- Add a dropdown to list all package paths where packages can be downloaded. PR
- Add Dynamo Built-In Packages path as part of the default search paths under Node and Package Path expander.PR
- Dynamo now informs users conflict loading packages from different locations while built-in packages path will come with the highest priority. PR
- Add Package states under Debug mode for Dynamo developers. PR
- Legacy installed packages view removed. PR
-
Add Graph properties view extension which user can set the following properties to help annotate the graph PR
- Description
- Author
- GraphDocumentationURL
- Thumbnail
- CustomProperties which can be saved in graph ExtensionWorkspaceData
-
New OpenXML nodes
- Add OpenXML nodes to import/export data from/to excel spreadsheet. While using these two nodes, installation of MS office is no longer a requirement before running the graph. PR
- Return bool instead of void for node OpenXMLExportExcel to indicate if the node has successfully written data into spreadsheet. PR
- Add new samples for OpenXML export/import excel nodes. PR
-
Add new If node that would simply return the true value or false value based on the test condition with list level and lacing support. PR PR
-
CopyFile node now returns true if the copy action succeeded for the user, return null with a warning if the action failed, plus do DestinationPath validation.PR
-
Linter
- Add new Linting view extension which works with Graph status tab in the right-side panel to reveal home workspace issues. PR PR
- Add new dialog when a user saves the graph while there are unresolved linting issues in the graph. The Dialog gives two options either continue to save the graph with the issues or cancel the save and show the Graph Status extension. PR
- Add a new Graph Type section in the GraphMetadataViewExtension that displays and links the active linter if there are any selected.PR
- Add a persistent notification when issues are present in the graph. PR
-
Add expander in the Workspace References panel to fold all package references.PR
-
Python
- Add migration support to migrate clr.AddReferenceToFileAndPath() to clr.AddReference() in python migration tool. PR
- Add a Reset button in Preferences Panel to reload CPython modules and mark graph HasUnSavedChanges to help dynamo users who write their own python modules in CPython deal with the difference in module import/reload between CPython and IronPython. PR
- Add Python dependency info to packages and display it in PackageManager UI. PR
-
Updated node description for List.IndexOf node to reduce confusion on usage. PR
-
Enable NTML authenticator to support users behind proxy env to use Dynamo package manager. PR
- Dynamo workspace now adds a few new properties to support better DYN documentation PR
- New Thumbnail property to the workspace model, which stores a Base64 encoded string to represent the thumbnail
- New Author property to the workspace model, which stores a normal string to represent the author of the graph
- New GraphDocumentationURL property to the workspace model, which stores a URL string to represent a link to the documentation page for this workspace
"Thumbnail": "",
"GraphDocumentationURL": null,
"Author": "None provided"
- Add documentation for exceptions thrown by UpdateModelValue API. PR
- Add Linting APIs which includes a Linter manager that handles subscription to the active linter and manages all the linter issues in the graph. PR
- Improve existing ReadyParams API so that we can have better control over graph opening and closing operations as part of an extension. PR
- Deleted ChangeScaleFactorCommand property on DynamoViewModel.
- Improve geometry nodes performance and memory optimization for the render pipeline. PR PR PR
- Treat Plane as infinite geometry for intersections and Point projections
- Fixed a bug with Sweep operation using PolyCurve as sweep path. See forum issue.
- Geometry node documentation improvements
-
Co-incident curve-plane intersection:
Before: Just the coincident curve is returned
After: Both coincident curves and points of intersection are returned -
Order of intersection results returned with Plane-PolyCurve intersections is different
- Node help control removed in this release since node help docs will now be displayed in Documentation Browser. PR
- New binaries:
- DocumentFormat.OpenXml.dll for the new excel node on OpenXML standards
- GraphMetadataViewExtension.dll for graph properties feature set
- LintingViewExtension.dll for the linter feature set
- Invoking node autocomplete on a port that is not a valid designscript identifier may trigger a crash.
- The
Show Preview Bubble
setting is missing from the Preferences Panel and will be added in the next release. - When new custom node workspace created, an extra property of
Author
is added into dyf while it currently does nothing - Files containing selection or dropdown nodes, which are marked
IsInput
will fail to open in Dynamo versions previous to 2.12. This will be fixed in a newer version of Dynamo, for other workarounds see this forum post
Bug Fixes:
- Address an issue were some network traffic is still present even with ADP disable flag active.
Bug Fixes:
- Address known issue where geometry operations might lose trimming edges.
-
As a consequence of this fix - the following improvement has been reverted and delayed:
-
NurbsSurface operations should return exact types in more cases.
-
User Enhancements:
- Add ExportExcel node with
write as string
option. PR - Improve migration.xml lookup for entries without exact signatures. PR
- Third-party licenses updated. PR
- Lots of improved node descriptions, names, and tooltips.
- Watch Node is now resizable!
- Multi node graph modifications should be much faster! PR
- Improved UI for publishing packages when marking node libraries. PR
- Python2/IronPython2 engine warnings will be now be displayed if graphs use IronPython2 or packages which use IronPython2!!
- Crash reports should include loaded packages when posting to github. PR
- Improved performance of undo/redo. PR
- Improve layout of new nodes placed by node autocomplete. PR
- Documentation available inside package publish view regarding marking binaries as node binaries. PR
API Changes:
- Add basic standard library support (loading location) for internal use only. PR
- Dock and Undocking of view extensions should use static ID and will raise warning otherwise. PR
- Extensions now support api for saving and loading data! PR
- Add new configuration option to StartupConfiguration to disable analytics for the entire process. PR
Bug Fixes:
- Improve sanitization of markdown docs.
- Fix a regression in node2code when converting binary operators. PR
- Fix a bug with Python3 engine hanging at startup time in multithreaded environments. PR
- Fixed a bug in Python3 engine where properties on base classes could hide derived class methods.
- Fix a bug where node autocomplete functionality might close by itself. PR
- Fix a bug with sandbox geometry library lookup. PR
- Fix a bug in Alias where the gallery might be shown on every startup. PR
- Fix a bug where Dynamo crashes after being idle for many hours. PR
- Improve issue where Dynamo failed to load latest port names and tooltips by using node model attributes. PR
Geometry Fixes:
- Significantly reduced memory use/leak when lofting solids.
- Significantly reduced memory use/leak in polycurve workfflows.
- Significantly reduced memory leaks when nodes return an exception/warning when failing to create geometry.
- Fixed bugs when using transformed points as input to point projection and prune methods.
- Pt/Pt distance calculations are twice as fast in most cases.
- Updated docs for
ProjectInputOnto
nodes. - NurbsSurface operations should return exact types in more cases.
- Fix crash when passing empty list to point.prune duplicates.
- Fix issue were scaling a trimmed surface non uniformly would untrim the surface during conversion to nurbssurface.
- Fix a crash when using non utf-8 characters in paths to geometry library during Dynamo startup.
- When one or more
NurbsSurface
s are used in a Boolean operation such as Surface.Difference, Geometry.Trim, etc. the resulting surface may have trimming curves. If this surface with the trimming curves is used in a downstream operation (such as Geometry.Explode) it could result back in a NurbsSurface without the trimming curves and therefore lose its trimmed edges. This is a regression in 2.11 and will be fixed in a subsequent update. - Files from Dynamo 2.12 or newer containing selection or dropdown nodes, which are marked
IsInput
fail to open. This will be fixed in a newer version of Dynamo, for other workarounds see this forum post
User Enhancements:
- Updated to include Revit 2022 sample rvt PR
- Added package loading analytics support PR
- No longer aggregate node execution in analytics PR
- Revised icons for AnyTrue and AnyFalse nodes PR
Bug Fixes:
- Fixed a bug where no adsk signature applied to Analytics.Net.ADP.dll PR
- Fixed a bug where Dynamo hangs the first time evaluating a CPython node in Revit/Civil3D by switching to use sync version of CPython setup/installation method PR
- Fixed a bug where the output when a dictionary is provided to nodes like
String from Array
andString from Object
was not meaningful PR - Fixed a bug where an exception thrown in console about int64 slider was not accurate PR
- Fixed a bug where Dynamo crashes when any view extension returning random GUIDs is getting undocked PR
- In the CPython3 engine,
IDisposable
types can now be disposed by using a with statement PR
User Enhancements:
- NodeAutoComplete - primitive types display hardcoded list of suggestions PR
- ViewExtensions can be undocked from the extension sidebar. PR
- ViewExtensions remember their windowed or docked state and position. PR
- RevitAPI dlls are now excluded from compatibility checks to reduce notification noise for users consuming packages. PR
- New nodes!
AnyTrue
andAnyFalse
PR - New
Math.Random
nodes that take a seed input parameter - this lets you create repeatable random data sets.PR
API Changes:
- Addition of new base class for ViewExtensions
ViewExtensionBase
which adds aClosed
hook that can be used to react when an extension's view is closed. PR - PortModel.DefaultValue setter becomes Public.PR
- Obsolete CompleteCodeBlockList and replace it with a Dictionary in both core and executable. PR
- Add additional constructors for AllChildrenOfType enum node.PR
- Add ASM search API that accepts product install key.PR
- DynamoCLI.exe and DynamoSandbox.exe can now be passed
-hn
flag to control host name - used for analytics.
Bug Fixes:
- Fix a regression in multioutput node preview display. PR
- Fixed a crash when deleting codeblocks containing function definitions.PR
- Fixed a case where CustomNodes did not bind correctly to trace data while replicating. There are additional cases listed in known issues that will be addressed in future releases. PR
- Fixed a crash when calling a hidden static method which should have resulted in a warning instead. PR
- Fixed a bug in codeblock node autocomplete - only show unique class names and hide members which are hidden by others. PR
- Fixed a bug when installing python std library multiple times where path var would overflow. PR
- Fix a visual bug in python documentation when resizing docs browser. PR
- Localize notifications panel. PR
- Improve ASM search logic to fallback to using display name of product instead of uninstall key. PR
- VariableInputNodes like PythonNode can no longer have their default ports accidentally removed. PR
- WebRequest node now sets user agent. PR
- node2Code now escapes string nodes PR
- nodes that should have lacing disabled will not have lacing activated when it's modified as a bulk operation. PR
- Fix sorting for number keys in List.SortByKey PR
Geometry Bugs:
- Fixed a crash when creating an arc or ellipse when doing a projection to a plane.
- Improve robustness of parameter at point on curves.
- Fix curve offset for linear curves - fixes Github issue and Github issue, and forum issue
Known Issues:
- CustomNode instances which use trace/elementBinding rebind to the same data when replicating. This is not a regression.
- Files from Dynamo 2.12 or newer containing selection or dropdown nodes, which are marked
IsInput
fail to open. This will be fixed in a newer version of Dynamo, for other workarounds see this forum post
Binary Changes: removal of:
\bin\Assimp32.dll,
\bin\Assimp64.dll,
\bin\AssimpNet.dll
\bin\Office.dll
\bin\Python.Runtime.NETStandard.dll
\bin\SharpDX.Direct3D11.Effects.dll
\bin\SharpDX.Toolkit.Compiler.dll
\bin\SharpDX.Toolkit.dll
\bin\SharpDX.Toolkit.Graphics.dll
\bin\stdole.dll
\bin\en-US\DynamoPython.resources.dll
\bin\nodes\DSIronPython.dll
\bin\D3DCompiler_43.dll
- Removal of empty python project from the Dynamo.All.sln.
User Enhancements:
- Dynamo now support ASM 227,226,225 which mean users can run DynamoSandbox on top of Revit 2022 Preview, Revit 2021, Revit 2020
- Dynamo users can now use node autocomplete feature by pressing Alt + left mouse click on any input port to open the node autocomplete UI and look for suggestions to adopt PR
- The node chosen from the suggestion list will be placed relative to the initial node PR
- Node autocomplete UI will be placed relative to the input port PR
- When algorithm fails to provide a suggestion for user, Dynamo will provide built-in inputs as suggestions PR
- User can search through the suggested nodes using the textblock attached to node autocomplete UI PR
- Nodes' names and descriptions are more descriptive for beginners PR
- Integer slider now support 64bit ints PR
- Operations that may result in an integer overflow in DesignScript code or core nodes now display a warning when one occurs. Learning content also added in right side panel PR
- Point.PruneDuplicates node now perform much faster PR, executing 49x faster on our test graph.
- PolyCurve.ParameterAtPoint now perform much faster PR
- Dynamo CLI now support "keepalive" flag to enable loaded extensions to control process lifetime PR
- Right side extension panel can now grow without bounds PR
- New PolyCurve.ByThickeningCurveNormal node introduced with icon PR
- New Solid.ByRuledLoft node introduced with icon PR
- New Solid.Separate node introduced new icon PR
- Equal nodes now have a more precise description PR
- Transformed surfaces are now supported in operations like Surface.TrimWithEdgeLoops PR
- Workspace references extension window is now styled to be more consistent with respect to Dynamo PR
- User can now expect right side extension bar will be visible with the right tab displayed after view extension added PR
- Analytics added for NodeAutoComplete PR
- Analytics added for python operations.PR
Bug Fixes:
- Fixed a layout issue that in localized env, run button could display incorrectly PR
- Fixed a display issue that in localized env, right side panel handle could display incorrectly PR
- Fixed a display issue that in localized env, certain extension names are not localized PR
- Fixed a crash due to Helix edge double values including PositiveInfinity, NegativeInfinity and NaN PR
- Fixed a bug where the description of Curve.SplitByParameter in the library would show up a description of an obsoleted overload PR
- Fixed a bug where tooltip to preview disabled nodes do not display PR
- Fixed a bug where Dispose() for extensions are called one extra round PR
- Fixed a bug where small icons for custom node do not load correctly PR
- Fixed a crash when weird syntax found in Python code migration PR
- Fixed a bug where pan/orbit state not reflecting correctly to the current session PR
- Fixed a bug where unintended node movement happened after using Ctrl+drag to copy a node PR
- Fixed a bug where long.MinValue in Design Script not parsed correctly PR
- Fixed a bug where unbounded identifiers were not recognized in some binary expressions PR
- Fixed a bug where a parser incompatibility with typed parameters in a function signature when these contained a namespace declaration PR
- Fixed a bug where Python migration assistant not working for integrator who removed IronPython PR
- Fixed a bug where Python migration assistant can be applied when Python3 engine selected PR
- Fixed a bug where point-line geometry when selected does not appear when hidden by mesh geometry (solids and surfaces) PR
Known Issues:
- Node autocomplete can not applied to output ports for now
- Node autocomplete can not be used inside custom node workspaces, and activating it inside a custom node workspace can stop the functionality from working for a session.
- Node placed from node autocomplete UI may be misplaced because of DPI scale value
- Primitive types are excluded from node autocomplete for now because too many results are returned PR
-
Point.PruneDuplicates
may crash if passed an empty list[]
- Files from Dynamo 2.12 or newer containing selection or dropdown nodes, which are marked
IsInput
fail to open. This will be fixed in a newer version of Dynamo, for other workarounds see this forum post
User Enhancements:
- Gallery updates introducing Python3 Engine PR
- Added backwards compatibility messaging for Python3 nodes to Gallery and Documentation Browser PR
- Introduced Python migration assistant to help users migrate their Python2 code to Python3 PR
- Added Python Migration assistant messaging when no code conversions are required between Python2 and Python 3 PR
- Added user messaging to fix errors found in IronPython code before proceeding with code migration PR
- Added Migration Assistant textual support for 'Python Node from String' to sidebar panel PR
- Set/frozenset and dictionary view types in Python3 are marshaled out as lists PR
- Convert tabs to spaces automatically when using CPython3 engine in the Python script editor PR
- Perform a reindentation to convert spaces to tabs after migrating Python2 code to Python3 PR
- Ability to set default python engine to either IronPython or CPython3 PR
-
Instance.None
syntax is no longer allowed in python3 but migration assistant offers suggestion on how to fix it PR - Python standard
print
function now logs print messages to Dynamo console for both IronPython and CPython3 PR - CPython engine supported added to Dynamo For Revit PR
- Opening custom nodes that reference IronPython2 with the
python2obsolete
debug mode turned on displays the python migration warning and info dialog - Added UI affordance to disable Python dialog warnings as a way to make them less intrusive
-
dir()
returns the members/attributes of a namespace as expected in CPython3 PR - Improved python script editor UI, added tooltips for buttons
- Ability to turn on or off whitespace character display in the Python editor window PR
- IronPython engine is now optionally available to Dynamo host integrations and is posted as a separate package on the package manager
- When missing, the IronPython engine package appears as a required dependency that can be installed from Workspace References panel PR
- Implemented Dynamic extension method binding for .NET types called in CPython engine
- Added support to CPython3 engine to return Python class objects from python node
- Added
__dynamoskipconversion__
attribute for Python class authors to use to skip marshaling Python objects as lists PR - Supported method resolution for an overloaded CLR method in CPython3 when providing mixed
float
andint
arguments - Added support for .NET BigInteger marshaling in CPython3 engine PR
- Added support to CPython3 to decode a .NET IEnumerable or IList from a Python list and a .NET IDictionary from a python dictionary PR, PR and PR
- Added support to CPython3 to execute python that references threading and Winforms code
- Curve.ToNurbsCurve node now supports PolyCurves
-
PolyCurve.Curves
and few other geometry nodes likeCurve.Offset
now return exact types instead of base types. See https://github.com/DynamoDS/Dynamo/issues/3451 - Sweep operations now supported for non-G1 (non-tangent-continuous) curves
Bug Fixes:
- Fixed broken anti-aliasing in Dynamo 2.7
- Fixed regression in Dynamo 2.7 in "Isolate Selected Geometry" feature PR
- Fixed crash arising from exception thrown from
ToString
method for a custom type PR - Fixed crash when undoing and redoing deleted nodes quickly PR
- Fixed issue with node preview hiding when hovering over it when it was wider than the node PR
- Fixed resizing issues with annotation box (node groups)
- Fixed incorrect line number reported for error messages from IronPython nodes
-
Curve.SweepAsSolid
andCurve.SweepAsSurface
geometry methods are now more robust - Fixed issue with deleting code written following a function definition in Code Block Nodes did not update output ports
- Appending a path to the
sys.path
environment variable in Python3 now persists only for the scope of the Python node PR - Added support for undo-redo and copy-paste for some node properties PR, and PR
- Fixed issue where node with preview turned off could not be renamed PR
- Fixed a regression introduced in 2.7 in the
Isolate Selected Geometry
feature PR - Fixed issue in T-Splines geometry where vertices were unexpectedly cloned using
TSplineSurface.PullVertices
- Fixed an issue with missing line numbers in the error bubble when using CPython3 engine
Known Issues:
- Point and curve geometry, when selected in "Isolate Selected Geometry" mode may at times be occluded (stay un-isolated) by overlapping isolated geometry. This is a regression introduced in 2.7 that stays unresolved in 2.8.
- Python Migration assistant fails to work in Dynamo running in host environments.
- Files from Dynamo 2.12 or newer containing selection or dropdown nodes, which are marked
IsInput
fail to open. This will be fixed in a newer version of Dynamo, for other workarounds see this forum post
User Enhancements:
- Better autocomplete behavior in codeblocks PR
- More consistent multiple definition warnings in codeblocks PR
- More consistent Node2Code in codeblocks for hidden classes PR
- If Dynamo runs out of memory while trying to draw many 3d meshes, it will not crash, but disable 3d preview.PR
- Improved speed of package download via workspace references extension. PR
- Improved speed of UI display for manage packages dialog.
- Improved search speed for package manager.
- Added a new node
String.ToTitle
PR - Introduces first Python3 interop with Dynamo using PythonNet library.PR
- PythonEngine version label is shown on nodes which execute python. PR
- PythonEditor now has more clear tooltips. PR
- Improved 3d graphics performance utilizing updated Helix and Sharp.DX libraries.
- Added the ability to select geometry in the background preview and highlight the corresponding node in the graph view.
API Changes:
- Introduction of Autodesk Analytics into Dynamo Core.
- Introduction of DebugModes using config file.
- Obsoleted
ListRequiredPackageVersions
- Obsoleted
PackageUtilities
- Obsoleted
FilterFuturePackages
- Obsoleted
UpdateCmdLineInterpreter
- PythonNodes now have a property
Engine
. Be cautious in referencing this as it may change as we iterate on the Python 3 interop. - Many changes in DynamoCoreWPF related to Helix/SharpDX version. We have determined that these changes should only affect a small number of extensions. We will move forward with these changes to update our aging helix version to a modern one incorporating bug fixes, memory leak fixes, and removing the need for older directX versions on our user's machines which are no longer included in ADSK products, or Windows 10. https://dynamobim.org/dynamo-graphics-updates/
-
System.Collections.Immutable
now added as nuget package dependency. PR - Nugets updated to include .net 4.8 folder. PR
- Increased testing coverage throughout DynamoCore.
- Increase performance and unify rendering of point and line visualization using shaders. PR
- In
TestMode
Dynamo will no longer log to a file, instead, we log to std.out. PR
Bug Fixes:
- Fixed a bug where
Surface.FlipNormal
lost the trimming edges for the surface. These are correctly retained now. - Updated Greg binary using new package manager routes for faster querying of individual package version information during download and UI display.PR
- Fixed a problem where custom nodes were unresolved after loading a zero-touch packagePR
- Fixed a crash that occurred when dependency ids of a package were null. PR
- Fixed an issue that could keep a Dynamo process stuck open when extension UI was not cleaned up. PR
- Fixed an issue where multiple node entries were added to package contents under manage package dialog.PR
- Fixed a crash that occurred when deleting code block nodes using imperative language. PR
- Fixed an issue where
AND
andOR
nodes would cause upstream nodes to return null. PR - Fixed a crash where calling a static method with an instance would crash if the instance was not provided. i.e.
Curve.Patch();
PR - Fixed an issue where an instance method passed a list containing an empty list did not replicate properly. PR
- Fixed an issue where installing a package could cause a crash.
- Fixed incorrect warning message on unit conversion node.
- Fixed an issue where the geometry library would fail to load if Navisworks or Inventor was installed on the user's machine. PR
- Fixed a crash when XML docs were badly formatted. PR
- Fixed a bug where code block output ports would not update. PR
- Fixed a bug where the DesignScript garbage collector was not called when creating a new workspace. PR
- Fixed an issue where
'
in path caused issues when loading packages. PR - Fixed a crash in the VM stemming from the transpose function. PR
- Fixed an issue where previously working custom nodes became unresolved. PR
Known Issues:
- Files from Dynamo 2.12 or newer containing selection or dropdown nodes, which are marked
IsInput
fail to open. This will be fixed in a newer version of Dynamo, for other workarounds see this forum post
Binary Delivery Changes: 2.7 introduces dependencies on
-
PythonNet
, -
Python.Included
, -
Helix 2.11
, -
SharpDx 4.0.2
-
In addition to support
PythonNet
DynamoCore now targets .net framework 4.8. https://dynamobim.org/dynamo-now-targets-net-4-8/ -
LibG now requires VC2019 c++ redistributables. https://visualstudio.microsoft.com/downloads/ (scroll down other tools and frameworks)
- If your host application defines a pathResolver with a set of default libraries to load
DSCPython
should be added to it to properly support the new CPython3 engine.
- Hotfix release to address a security issue for D4R.
- Updated Greg.dll (Package Manager Client) and RestSharp references - verified that downloads from DPM are using TLS 1.2 in Sandbox. PR
- Removed Greg and RestSharp references from LibraryViewExtension and ViewExtensionLibraryTests.
User Enhancements:
- Obsoleted Google instrumentation and adopt ADP instrumentation which is consistent with rest of Autodesk products
User Enhancements:
- Update DynamoRevit Sample file titles PR
- Close Workspace References Extension automatically when workspace is closed. PR
- Add a new version of NodeLibrary extension to Dynamo that does not require CEFSharp PR
- Default ports now show in italics if enabled. PR
- CodeBlockNodes show line numbers - there is a global option to disable this behavior. PR
- Large performance/memory improvement by avoiding memory allocation for CLR objects on the Dynamo VM heap - as this functionality was not used. PR
- Large (up to 100x) performance improvement in PolyCurve intersection, and improved performance with PolyCurves in general.
- Documentation Browser extension is added to core.
- Nodes which were manually renamed display a tag, and the original name is added to the node description tooltip.
API Changes:
- Obsolete methods on the
HelixRenderPackage
class using Geometry types for setting transforms - in the future this should be done with matrices directly. -
HandlingEventTrigger
Obsoleted. -
ToggleIsUsageReportingApproved
Obsoleted.
Bug Fixes:
- Update System.Windows.Interactivity to align with Revit to address an issue where the UI would become unresponsive and NodeViews would not load. PR
- Fix a crash with node2Code PR
- Fix a crash with undo/redo and unresolved nodes. PR
- Update UI around analytics to make options more clear and better respect user's choices. PR
- Fix a crash that could occur if LibG was not loaded.PR
- Fixed a crash that occurred when drawing curves on lowest precision setting.
- Fixed an issue where using the scroll wheel in the node library would stop working.
Known Issues:
- Dummy nodes(unloaded zero touch nodes) and unloaded custom nodes will not have renamed tag displayed. Instead, the tag will be displayed after nodes are resolved.
- Files from Dynamo 2.12 or newer containing selection or dropdown nodes, which are marked
IsInput
fail to open. This will be fixed in a newer version of Dynamo, for other workarounds see this forum post
Binary Delivery Changes:
User Enhancements
- Update UI around analytics to make options more clear and better respect user's choices. PR
- Large performance improvement when graph contains many nodes and creates Revit elements PR
Bug Fixes:
- Fix A crash when entering a syntax error into a code block node inside a custom node. PR
- Various memory leak improvements in core. PR
-
KeepListStructure
did not work reliably when set on a node using right click menu. PR
- Hotfix release to address a security issue
- Hotfix release to address an internal issue for AutoCAD vertical integrators
https://github.com/DynamoDS/Dynamo/compare/RC2.4.1_master..RC2.5.0_master?expand=1
User Enhancements:
- Dynamo Integration documentation added to the repo: here (how to add Dynamo to your application) PR
- Improved Stability of LibG (Dynamo geometry). Users should no longer see hangs with large amounts of geometry - where memory use does not increase. 🎉
- When a package is installed, ZeroTouch nodes which are unresolved will be resolved without reopening the graph. PR
- UnresolvedNode messages are much more helpful, pointing to the real assembly or type name of the missing node instead of DynamoCore. PR
-
Workspace Dependencies Viewer
renamed toWorkspace References
and tooltips made more clear. PR - Workspace References Viewer will raise an alert if Dynamo requires a restart to finish uninstalling a package. PR
- Cleanup margins and UI rough edges of Workspace References Viewer extension.
- Add refresh capability to Workspace References Viewer. PR
- Remove downvote from PackageManagerClient to reduce confusion. PR
- Small performance improvement in preparing data for rendering of geometry. PR
- Add text to Filter button in packageManager UI to make finding this functionality easier. PR
- Deprecate menu item is no longer shown for packages one does not own. PR
- Better interoperation with Python int64 types. PR
- Large performance improvement (order of magnitude) when creating elements in Revit when running a large graph. 🎉 PR
API Changes:
- LibG no longer requires manual disposal of geometry which goes out of scope in c# or python. This is only required when using threads. See this forum post for more info.
-
-gp
flag to load a specific ASM version - useful for those integrating Dynamo into products. PR - Added
ViewModelCommandExecutive
to expose more ViewModel commands to ViewExtension authors. PR - Add additional equals node with tolerance. PR
- Added PerformanceBenchmark CI test failure when performance degrades. PR
- Support ASM226, drop ASM 223 support. PR
- Addition of
DummyNodesReloaded
event toWorkspaceModel
PR - Update to latest versions of Greg.dll to avoid package upload size limitations and timeouts. PR
- transform_all.bat file used for assembly version generation was made more robust on all visual studio versions. PR
- XMLtoMarkdown project removed. PR
-
Microsoft.Office.Interop.dll
is no longer included in DynamoCore packages. PR - A new package load location is added where packages can be installed for all users of a machine - this location requires packages to be signed with a valid certificate. PR
- Added API for hiding analytics controls. PR
Bug Fixes:
- Coordinate Systems render with correct colors for each axis.
- Cleanup many viewModel and view memory leaks. PR
- Fix a crash that occurred when users tried to call static functions that did not exist. PR
- Fix list node descriptions.
- Include d3d43Compiler to support background preview of geometry on clean windows 10 installations.PR
- Fix regression in ExtensionLibraryLoader API
LoadNodeLibrary
stopped adding ZeroTouch nodes to library - this is fixed. PR - Fixed description of
List.Diagonal
Left
andRight
- Fix Crash when python editor was used on workspace that had been closed. PR
- Fix a crash that occurred when
DynamoScheduler
thread is aborted before shutdown is called while LibG Geometry still in finalizer queue. PR - Signed some binaries which had been missed.
Known Issues:
- Files from Dynamo 2.12 or newer containing selection or dropdown nodes, which are marked
IsInput
fail to open. This will be fixed in a newer version of Dynamo, for other workarounds see this forum post
Binary Delivery Changes:
+ d3dCompiler_43.dll
+ LibG_226_0_0 .dlls
- Microsoft.Office.Interop.Excel.dll
- LibG_223_0_1 .dlls
Bug Fixes:
- Use invariant culture when parsing hardcoded strings PR
- Dynamo sandbox might not start with NavisWorks Manage 2020 installed PR
- Dynamo sandbox should report exception when it crashes, not crash silently PR
User Enhancements:
- WIP - Enhance the UI of the workspace dependency viewer, including states, installation directly from the extension view and simple conflict resolution. PR
- Publish packages with a marked external application dependency, and filter packages when searching by this value. For example, you can filter all packages that require Revit. PR
- Display these required applications in the package search view. PR
- Make numeric comparisons more predictable by using platform comparison. No longer use a fixed tolerance. PR
- Better warning messages for over indexing or indexing a null. PR
- Update to IronPython 2.7.9 PR
API Changes:
- Core sample files now work complete in sandbox and don't require Revit nodes. Revit specific samples have been created. PR
- Add PackageDependencyState API. PR
- Add PackageInstaller API to ViewExtensions PR
- Sandbox will look for the geometry library in Robot Structural Analysis. PR
Bug Fixes:
- Use UICulture correctly to select localized languages more precisely. PR
- No longer overwrite localized tooltips with data saved in the .dyn PR
- Wrap longer tooltips on ports. PR
- Installing a custom node package missing from a currently open workspace, in automatic run mode might cause a crash - PR
-
Publish Current Workspace
andPublish Selected Nodes
commands might appear to stop working PR
Known Issues:
- After installing a zero touch package through the workspace dependency viewer, the package will show as
missing
until the graph is reopened. - Adding or removing nodes does not currently refresh the dependency viewer - you can reopen the graph or reopen the viewer from the view menu to refresh it manually for now.
- Files from Dynamo 2.12 or newer containing selection or dropdown nodes, which are marked
IsInput
fail to open. This will be fixed in a newer version of Dynamo, for other workarounds see this forum post
- Hotfix release to address a security issue for D4R.
- Updated Greg.dll (Package Manager Client) and RestSharp references - verified that downloads from DPM are using TLS 1.2 in Sandbox. PR
- Removed Greg and RestSharp references from LibraryViewExtension and ViewExtensionLibraryTests.
User Enhancements:
- New Surface Boolean nodes added to the geometry library - these provide a substantial performance improvement when performing 2d boolean operations on surfaces, for example trimmed polygon surface union, which previously required creating and differencing solids.(PR)
- Prevent packages which contain customNodes which are already loaded in another package from being loaded. This change prevents the case where one package overwrites the contents of another package. (PR) (PR)
- graphs saved in version 2.3 now serialize a the
NodeLibraryDependencies
property which currently contains which packages the graph was using when saved. (PR)(PR) - When a graph is opened with missing package dependencies these are shown in the right side panel. (PR)
- PreviewFeature flag with feedback link has been added to make collecting feedback on new experimental features easier and more productive. (PR)
- More advanced connector actions (
select + shift + click output
moves multiple connectors) and (ctrl + click inputs
duplicates connectors) (PR) (PR) - SetValue dialog (notes and node name editing) is now resize-able (PR)
- PackageSearch cannot be started unless package data has been returned from package manager. (Thanks Ryan Porter!) (PR)
- Update about box content(PR)
- PerformanceTool is now added to Dynamo Repo. Watch for a blog post on what you can do with this tool. (PR) (PR) (PR) (PR)
- Performance Improvements to the VM up to
20%
in some cases where many functions are replicated over a large list. (PR)
API Changes:
- New ViewExtensions side panel on the right side of the Dynamo UI, API is still experimental.(PR)
- Addition of the
ProfilingSession
andEnableProfiling
APIs for measuring execution time of nodes(PR) - Addition of
NodeExecution
event which is enabled when profiling is enabled - can be used to be notified when each node begins and ends execution. (PR) - Don't reset the user's preference setting for analytics if they have already set it. (PR)
Bug Fixes:
- Fix loading of packages which have interdependencies or share ZeroTouch assembly dependencies. (PR)
- Dynamo respects the
RunSettings.Enabled
flag when runs are requested.(PR) - Auto lacing added to context menu - (Thanks Ryan Porter). (PR)
-
stringFromArray
represents lists in Dynamo 2.0 syntax (PR) - Fix a crash that occurred when a codeblock containing a function definition was deleted if that function definition used default arguments. (PR)
- Improve testing cases for replication of mixed type and rank. (There are still some remaining tracked cases) (PR)
- customNode element binding has been improved - the specific case is described in (PR) (PR)
- hide
return_reserved
in codeblock autocomplete (PR) - Coordinate Systems now display their background preview geometry correctly when the geometry scale factor is changed.
Known Issues:
- Installing a custom node package which contains nodes that are used in the current graph might cause a crash.As a workaround put the graph into manual run mode before installing the missing package. This is fixed in 2.4
-
Publish Current Workspace
andPublish Selected Nodes
menu and context commands do not work - instead usePublish
andPublish a Version
commands and manually add the custom nodes you wish to publish. This is fixed in 2.4. - Files from Dynamo 2.12 or newer containing selection or dropdown nodes, which are marked
IsInput
fail to open. This will be fixed in a newer version of Dynamo, for other workarounds see this forum post
- LibrarieJS crash was fixed when loading packages containing many custom nodes (PR)
- Many language level fixes cherry picked from 2.2 release: (PR) These changes include:
- Do not allow indexing into a list or single item with a
[]
operator that is greater than the rank of the list - Allow string indexing
- Fix a case where replication would fail with nested sublists with
null
orempty lists
as first item in outer list. - Lists containing elements of different ranks, but with same type ie.
[[[2]],[1]]
will now replicate correctly. There is still one remaining failing case when the elements are of different types:[["string"],[1]]
, instead the node will return null.
- Do not allow indexing into a list or single item with a
- Maintain imperative for loop behavior allowing iteration over a single item (PR)
For example in Dynamo 2.0.2 the designScript 100[0];
Would return 100
, but this should have thrown an indexing exception
as it did in Dynamo 1.3.
If you need this behavior you can still use List.FirstItem
or List.GetItemAtIndex
2.0.3 Sandbox will not connect to the package manager after August 3 TLS cut over. Use a newer sandbox available from https://dynamobuilds.com or use Dynamo from an up to date Revit version.
- Files from Dynamo 2.12 or newer containing selection or dropdown nodes, which are marked
IsInput
fail to open. This will be fixed in a newer version of Dynamo, for other workarounds see this forum post
- LibG managed dlls share versioning scheme with Dynamo - (PR)
User Enhancements:
- Crash reporting dialog does not automatically populate stack trace.(PR)
- The render precision preference is now saved between dynamo sessions.(PR)
- Performance improvement related to loading element binding data. Graphs that create lots of elements should run much faster on load than they did before (2 -10x) depending on number of elements created. (PR)
- Image capture functionality now creates uniquely named image files.(PR)
API Changes:
- Python template can be set at Dynamo startup via the API.(PR)
- Removed support for older versions of Geometry library.(PR)
- New custom node inputs no longer support spaces in their names. This unifies the parsing of identifier names.
-
GetGeometeryFactoryPath
will fallback to find older versions of geometry library.(PR) - Start delivering debug symbols of DynamoCore (for developers) (PR)
Bug Fixes:
- Untranslated strings in some geometry nodes were fixed.(PR)
-
AllowRankReductionAttribute
was enabled on properties of ZeroTouch classes.(PR) - Fixed dropdown nodes failing to load correctly when selected item names contained special characters.(PR)
- IronPython auto complete is faster and provides better hints.(PR)
- Fix replication over lists where first item is
null
orempty list
(PR)
Enhancements:
- Library search performance improvements in general leading to faster search and more accurate key words matching. (Issue, PR1, PR2, PR3)
- There is a new Dynamo public nuget available for those who want easy access to localized Dynamo Samples. Please check out DynamoVisualProgramming.DynamoSamples
- CEF component in Dynamo Library updated to v65 to align with Revit version, user should see interaction like scrolling more fluent there
- IronPython updated to v2.7.8, please check out details at link. Also note that IronPython is now installed inside DynamoCore folder instead of being system-wise installed.
- DynamoCore finished necessary geometry library update to support newer version of host integration clients, e.g. Revit 2020, Civil 3D 2020
- Any node produce dictionary as output can now connect to Python node, vice versa (Issue, PR)
- Any node produce dictionary as output can now connect to Zerotouch node accepting IDictionary. (PR)
- Dynamo CLI clients now can specify ZeroTouch dependencies before running a graph. (PR)
- User will now get a dialog asking them to not use special characters when creating custom nodes, thus prevent crashes in that case. (PR)
- Package node migration for Dynamo 2.0+ graphs enabled. (PR)
Known Issues:
-
Nodes
- Dictionary links for individual nodes are removed from each node, user can still access Dictionary using the links on startup page
-
DesignScript
-
Nested associative blocks inside of imperative blocks causes a crash
-
DesignScript does not support syntax for string literals. This is by design and the use of String node is recommended for string literals for now. Refer to the "Bug Fixes" section of 1.3 Release Notes for an explanation of escape characters and character escape sequences.
-
There are existing bugs with nodes not replicating properly over nested homogeneous lists with the first element having a rank (dimensionality) smaller than the rank of the element(s) following it. There is also an existing bug with nodes not replicating properly over nested heterogeneous lists (with each element having rank greater than or equal to zero). For example, A nested list containing a list of integers and a list of points would not replicate properly (
[[1,2,3],[p1,p2,p3]]
). -
There is a known issue with replication failing when the first item in nested list data structure is
[null]
or anempty list
. These issues can manifest as replication failing to pass the correct data to nodes, and an error suggesting the correct method cannot be found.-
workaround: use
list.clean
to remove the null or empty lists from your data structure.
-
workaround: use
-
-
.Net 4.7
- Dynamo now targets .net 4.7 - Microsoft has acknowledged a bug which manifests as a hang when interacting with certain WPF controls when using screen resolution scaling. If you encounter hangs/freezes when using watch nodes, this is likely the cause: https://github.com/Microsoft/dotnet/issues/604. We are evaluating solutions and will review when Microsoft releases an update fixing this issue. In the meantime we have rolled back to some WPF 4.5 algorithms to avoid the issue.
- DynamoCore public nugets lib paths have been updated to reflect .Net 47 migration, 3rd party developers using 2.1.0 nugets will most likely need to update their project reference settings to continue building the project.
-
DynamoRaaS package AKA Dynamo Daylighting Workflows package is no longer supported in DynamoCore by default.
-
Files from Dynamo 2.12 or newer containing selection or dropdown nodes, which are marked
IsInput
fail to open. This will be fixed in a newer version of Dynamo, for other workarounds see this forum post
Bug Fixes:
- Fixed a regression introduced in Dynamo 2.0.2 that crashed Dynamo when launched on a computer without Revit, user should now be able to use DynamoSandbox independently, although geometry nodes are still depending on other Autodesk products being installed for now. (PR)
- Node Surface.Join obsoleted, user will be forwarded to use PolySurface.ByJoinedSurface. (PR)
- Fixed a bug causing graph with Heterogeneous list update end up hanging Dynamo session. (PR1, PR2)
- Fixed a bug when entering three dots into a code block node inside a custom node workspace would crash Dynamo. (Issue, PR)
- Fixed a bug that DynamoRevit 2.x dropdowns produces inconsistent results between Revit versions. (Issue, PR)
- Fixed a bug so that now Dynamo supports namespace conflict resolution inside imperative blocks. (Issue, Forum Issue, PR)
- Fixed a bug so that Dynamo no longer crashes on Node2Code of a node having namespace conflicts. (Issue, PR1, PR2)
- Fixed a bug so that putting [IsVisibleInDynamoLibrary] in Dynamo Nodes code still hide node properly in Library. (Issue1, Issue2. PR)
- Fixed a bug so that string indexing re-enabled in Dynamo 2.X. (Issue, PR)
- Fixed a bug so that Dynamo avoids namespace collisions when collapsing graph to custom node. (PR)
- Fixed a bug so that Image.pixels node now read full image without offset. (Issue, PR)
- Fixed a bug so that Keep List Structure selection on node context menu is respected again. (Issue, PR)
- Fixed a bug so that state changes for the IsOutput and IsInput node will set the graph "needs save" flag. (Issue, PR)
- Fixed a bug so that IsOutput flag and InitialValue are now serialized correctly for Integer Sliders with Dynamo 2.1. (PR)
- Fixed a bug so that node preview of CBN with multi output port will now expand with Dictionary output. (PR)
- Fixed a bug so that Upstream Geometry Preview enable/disable options are removed in right click context menu as well as other places. (Issue, PR)
- Fixed a bug so that when Dynamo Player continuously open a graph for edit, view information will stay up-to-date. (PR)
New Functionality:
- Add Refinery support. More details can be found at link
Bug Fixes:
- Fix broken behavior of [IsVisibleInDynamoLibrary] attribute with interface and enums, where UI node would not be hidden properly in the Library browser Github Issue
- Fix the bug which created duplicate annotations and notes in custom nodes, resulting in file bloat Github Issue
- Fix List.MaximumItem erroring with mixed types Github Issue
- Dictionary preview now works properly in CodeBlock Nodes
- Fix for incorrect warning displayed with partial multi-output custom node Github PR
- Fix so that library searching now used spaces and special characters properly Github PR
- Fix "bad read of entry . . ." error when downloading some packages, such as Lunchbox. Github Issue
Enhancements:
- Improved security for Package Manager interactions (Compatibility with Transport Layer Security protocol 1.2)
- Dynamo rendering precision now allows for much lower resolution faceting for faster graphics Github PR
Geometry:
- Three T-Splines geometry nodes have been deprecated in favor of new ones. Refer to the Dynamo Node Changes Wiki page for details.
Bug Fixes:
- Fix "bad read of entry . . ." error when downloading some packages, such as Lunchbox. Github Issue
Enhancements:
- Improved security for Package Manager interactions (Compatibility with Transport Layer Security protocol 1.2)
Geometry:
- Three T-Splines geometry nodes have been deprecated in favor of new ones. Refer to the Dynamo Node Changes Wiki page for details.
Known Issues:
- Green Cloud update won't work for 1.3.4 as we already have a version (2.0.1) that's higher than this version. Please go to dynamobuilds.com to download and install 1.3.4
Bug Fixes:
- Library search works when special characters are used.
- The library now functions when other Windows services are running. For example, antivirus software no longer has conflicts with the library and performs as expected.
- Comments for Input nodes in custom nodes are now saved to JSON.
- View blocks in custom nodes are correctly serialized after editing and saving custom node properties.
- PolyCurve.ByJoinedCurves works as it did in 1.x. This node has also been updated with a new tolerance parameter.
- File Path node is now compatible with Dynamo Player inputs.
Known Issues:
- pyRevit installs can conflict with ICSharpCode.AvalonEdit.dll in Dynamo 2.0 and cause python nodes to fail. Workaround: Remove pyRevit or update to the latest pyRevit version (4.5) on your machine to make python nodes work again.
- Reverting to Dynamo 2.0 requires registry updates. Please follow the same update instructions found here: http://dynamobim.org/working-with-dynamo-in-revit-2016-and-revit-2019-simultaneously/
New Functionality:
- Change from XML based file format to JSON to facilitate future use and reuse of Dynamo graphs in non-Windows, web-friendly environemnts. With the exception of some deprecated functionality as noted below, all information in 1.x files will be preserved and migrated to the new 2.0 format. To prevent data loss, a copy of the 1.x file will be saved in the specified backup location as [original_Name]_xml.dyn.
- A new web-compatible node library that can be reused in other contexts has been introduced
- Custom nodes and packages will now appear separately from out-of-the-box nodes in the Add-ons section of the library
- Out-of-the-box nodes have been reorganized in the library to allow for easier browsing
- Nodes without DesignScript equivalents have been renamed without the misleading "dot" notation, e.g., "List.Create" is now "List Create"
- Several DesignScript changes have been made to simplify the language for easier maintenance and increasing legibility. See the the wiki for a list of changes.
- A new Dictionary data type has been introduced to DesignScript, allowing users to index collections of data with Strings (instead of integers) and pass them around as compact custom data objects identified by a “key value”.
- The introduction of this new data type also introduces new initialization syntax for for both dictionaries and lists. Dictionaries use the following syntax {key:value}; Lists use the following syntax [value,value,value]
- Python editor improvements including multiple editor window support, re-execution capability from the window, and custom template loading.
- Integer data type promoted to 64 bit
- Addition and update of nodes including:
- Color Picker node
- File.AppendText
- GetDirectory Contents with recursive access to subfolders
- Updated ImportExcel node to suppress launching of Excel window
- Modulo operator (%) now follows the standard behavior of Python, Excel, and Google calculator, returning a modulo which follows the sign of the divisor.
- Introduced new "Auto" lacing option on nodes. Nodes set to "Shortest" lacing in 1.x graphs will automatically be migrated to have "Auto" lacing in 2.0.
- Method resolution errors are more succinct and contextually relevant
- Dynamo Sandbox is delivered with 2.0 installer in "Program Files\Dynamo\Dynamo Core\2"
Deprecated Functionality:
- Redundant nodes have been consolidated. For example, instead of List.Flatten and Flatten, or List.Count and Count, there is simply List.Flatten and List.Count
- Overload nodes that had inputs that varied in rank only have been consolidated.
- Drag and drop of nodes from the library to specific locations in the canvas is no longer supported
- Presets
- Preview Upstream
- Saved pin state of the preview bubble
- NewtonRootFind1DNoDeriv and NewtonRootFind1DWithDeriv
- Custom nodes cannot be located among out-of-the-box nodes and categories
- Package library locations on disk are no longer automatically migrated from earlier versions to 2.0 package locations.
- Number nodes no longer support range syntax. Note: 1.x graphs containing number nodes with range syntax will automatically be migrated to code block nodes in 2.0.
Dynamo for Revit issues:
- Revit Model Curves, Detail curves, Tags, and Text notes that are selected are no longer automatically rendered in geometry previews. This is by design to make them consistent with other Revit elements and prevent certain crashes. Users can still use Element.Geometry and Element.Curve to visualize the curves. Tags and Text notes do not have real geometry to visualize, as they are View specific elements.
- Due to conflicts with the Chromium Embedded Framework (CEF) component found in Revit 2019, the library can scroll erratically.
- Some keyboard shortcuts do not work in Dynamo for Revit 2019.0. These include Ctrl+Z for Undo and Ctrl+C/Ctrl+V for Copy/Paste.
- When upgrading with the Green Cloud in Revit, two dialogs will appear. In order for the update to occur, you must close Revit before closing the second dialog.
For Package Developers:
- Please consult the list of API changes for any ZeroTouch or NodeModel migrations that will be necessary to implement: https://github.com/DynamoDS/Dynamo/wiki/APIChanges. Additionally, you can utilize this guide to help you with the transition from 1.x to 2.0: https://github.com/DynamoDS/Dynamo/wiki/Update-Packages-from-1.3-to-2.0.
- Introduction of new dictionary and list syntax may cause issues with ZeroTouch inputs, specifically for default arguments. When opening graphs, migration of 1.x lists to new 2.0 syntax will be done for all cases except for default argument attributes in ZeroTouch nodes.
Bug Fixes:
- Previous version of Dynamo accumulated at least 10 mb of memory on open of each graph
- Volume conversion fixed in "Convert Between Units" node
Known Issues:
- For custom nodes, using dot-notation in node Names or Categories will result in additional nested sub-categories. The "." will work as a delimiter to determine the additional hierarchy. This is new behavior in the library for Dynamo 2.0.
- Dynamo 2.0 has a conflict with Revit 2018.2’s implementation of PnID Modeler resulting in a blank library browser pane. This issue is not present in 2018.1 or 2018.3, or Revit 2019, just 2018.2. If you want to use 2.0 with Revit 2018.2, you will need to remove the the manifest file C:\Program Files\Autodesk\Revit 2018\AddIns\PnIDModeler\PnIDModeler.addin
- If the network drive pointed to by “Manage Node and Package paths” is > 1TB in size loading Dynamo may take a minute or more, irrespective of actual package size. We recommend drive size of 100GB or smaller.
- Toggling the freeze state can cause a node to be executed twice after editing a Code Block Node.
- Installers fail to prompt for missing VC++ components which causes Dynamo to silently crash at load time
- Packages that deliver DynamoServices.dll may have corrupted multi-output port nodes; instead of multiple output ports, they will be collapsed into a single output port.
- Some JSON graphs may open and erroneously appears to have unsaved changes as shown by the asterisks in the workspace tab.
- If your workstation contains multiple major versions of Dynamo, e.g, Dynamo 1.x and Dynamo 2.x, Dynamo Player will start with whichever version you select for Dynamo for that session.
- Custom node libraries that contain the same category and node names result in unexpected library organization.
- Special characters are ignored in the Library Search.
- Namespace conflicts in Imperative Blocks cause unexpected input ports to appear. See the Github issue for more info. To get around this, define the function outside of the Imperative Block like this:
pnt = Autodesk.Point.ByCoordinates;
lne = Autodesk.Line.ByStartPointEndPoint;
[Imperative]
{
x = 1;
start = pnt(0,0,0);
end = pnt(x,x,x);
line = lne(start,end);
return = line;
};
1.3.3
New Functionality:
- Compatibility with Revit 2019
Known Issues:
- Some keyboard shortcuts do not work in Dynamo for Revit 2019.0. These include Ctrl+Z for Undo and Ctrl+C/Ctrl+V for Copy/Paste.
1.3.0
See http://dynamobim.org/dynamo-1-3-release/ for a full report
New Functionality
Core:
- Geometry Working Range, a solution that adjusts numerical precision to accommodate these large numbers.
- Isolate Selected Geometry
- A direct link to the Dynamo Dictionary is added at the bottom of help menu popup window for each node. Definitions are currently available for the out-of-the-box core Dynamo nodes, and we are actively working on Revit nodes.
- Multi-output port re-connect feature using Shift+Left-Click
- Highlight geometry from selection in preview bubbles and watch nodes.
- DateTime.Format: (shout out to Radu Gidei!)
Dynamo Studio:
- Translate (CAD import) functionality now supports 3DM (Rhino) and SAT file formats, in addition to DWG and DXF. (Additionally, import of FBX, OBJ, STL, and SKP formats are supported, but there is currently limited downstream capabilities with these meshes.)
Dynamo for Revit:
- Revit allows for duplicate parameter names in a file, and Dynamo is now able to consistently pick between Named or Built-In parameters.
- Preview Bubbles enabled for Revit Selection nodes
- New Revit nodes: a number of Creation methods for System Families, added access to Global Parameters, and exposed file auditing tools with the Performance Advisor.
Bug Fixes:
- Fixed line break issue in for group titles, increased group titles font size
- Convert between units now gives correct Hectares for Area conversion
- Fixed File Paths with spaces sometimes converting paths to escaped URI path
- Fixes to Arc.ByCenterPointRadiusAngle, Arc.StartAngle, and Arc.EndAngle
- Fixes to escape character (
\
) behavior and character escape sequences that are similar to C#: Now there are only certain characters that can be escaped and that qualify as valid syntax. All other character escape sequences are not valid and will result in syntax errors when used in strings in a code block node.
\' – single quote, needed for character literals
\" – double quote, needed for string literals
\\ – backslash
\0 – Unicode character 0
\a – Alert
\b – Backspace
\f – Form feed
\n – New line
\r – Carriage return
\t – Horizontal tab
\v – Vertical quote
\uxxxx – Unicode escape sequence for character with hex value xxxx
Other character escape sequences may have worked in 1.2 but they were really bugs as they were inconsistent with standard escape character rules.
String node is recommended for the purpose of using string literals as DesignScript doesn't have any native syntax for string literals.
1.2.1
Important Bug Fixes:
- Full Installation of Dynamo for Revit included in the Revit 2017.1 release will no longer remove Dynamo 1.x installations in previous versions of Revit. Dynamo for Revit 1.2 will now also be installed for any installation of Revit 2015 or 2016 as well.
- Dynamo for Revit is now included in Revit 2017.1 network deployments.
- Dynamo Player no longer takes all of 1 processor when launched.
1.2.0
New Functionality :
- New out-of-the-box Revit functionality, including FaceBased Family creation, Coordinates, Detail Curves, Dimensions, Filled Region, Filters, Location enhancements, Materials, Parameters, Revisions, Rooms, Tag, Text notes, and Element queries.
- New list management tools found on node input ports that can greatly simplify many workflows and reduce the need for List.Map and List.Combine in most places.
- Geometry Preview state of nodes shown in color change
Important Bug Fixes:
- 4 most common crashes identified through crash error reporting have been fixed. These failures were a combination of divide by zero and Null reference exception thrown from preview and some issues during initialization with Revit, which account for 30% of all reported crashes in Dynamo 1.1.
- Graphs with large vertex counts consume 1 processor when program is idle
- All Elements Of Category fails for Views
- Package Manager Crash and upload fixes
- Custom node can only place family instance(s) in isolation. Multiple use of same CN on graph results in 'last node wins'
- Number from Feet and Inches rounds input text incorrectly and output is confusing
- Circle.ByBestFitThroughPoints is always horizontal
- Preview Control Crash when deleting ObjectSelector node before running completed
- Crashes with adjacent install of some Autodesk products
- Solid By Sweep 2 Rails incorrect with rotated NURBS curve
- Opening dyn file whose dyn extension is missing corrupts Dynamo
- Arc.ByStartPointEndPointStartTangent doesn't work well with all Tangents
- Graphs with large vertex counts consume whole processor when program is idle
- CoordinateSystem Scale methods do not work
- Add option to Curve.ByBlendBetweenCurves to create G2 continuous blend curves
1.1.0
New Functionality :
- A whole new bunch of Library added for T-Spline Nodes. You can turn on this option from Settings to view the T-Spline nodes in Library. T-Splines modelling technology is now exposed in Dynamo to enable new organic and freeform geometry creation tools. There are approximately 150 new nodes that are a subset of the existing geometry library. Since this is an advanced functionality that may be useful only in certain non-standard workflows these nodes by default will be hidden in the library and will not interfere in node search results unless explicitly turned on in the Settings -> Experimental menu. The new functionality offers a wide range of capabilities to create and edit T-Spline surfaces and also conversion to and from NURBS and meshes.
- New notification center provides you with more details on system crashes and errors, such as when DLL incompatibilities between Dynamo and other Revit Addins are detected at startup
- New Settings menu option to Show or Hide Preview Bubbles
- We have fixed the long pending issue of Screen Capture, now it doesn't matter how big your graph is, everything will be visible at whatever zoom level you are at when you use Export Workspace as Image.
Important Bug Fixes:
- Element Binding (the ability of Dynamo to track and modify rather than duplicate or replace elements in Revit) had some regressions in Revit 2017. These are fixed.
- Freeze does not delete elements created in Revit anymore.
- Fixed issue related to FamilyInstance.SetRotation, now you can use this node with Run Automatic mode as well and your first instance won't get placed randomly in a different location and crash issues have been addressed
- Fixed long pending issue with Importing series of Swept Solids, Now while after importing all Surfaces are there.
- Localization crash fixes with Norwegian, German and French
- Dynamo for Revit no longer crashes at startup with non-compliant Views (not 3D)
- When selecting any labeled item only that item's label gets displayed, no additional labels are displayed
- Fixed errors on Code Block Nodes and String Nodes that are published to Web and accessed from the Customizer view
- Read-only nodes and directories can now be loaded in Dynamo.
- Mapping flatten nodes and flatten on single values no longer replaces data with null values
- Arc.ByStartPointEndPointStartTangent no longer fails using a normalised vector
- Direct Shape now recognizes material input properly
- /verysilent install of Dynamo for Revit now completes without user interaction
- Fixed crash with closed curve as input to Surface.ByLoft
- Dot product no longer returning erroneus scalars
- Zero radius and related bad geometry errors no longer create crash
- Turning off "Revit Background Preview" no longer turns off "Background Preview" on relaunch of Dynamo.
Other Changes:
- Now once you add a new path for Package location then all the packages from the new path will get loaded without relaunching Dynamo.
- We have improved the preview bubble for its Pin and hover over related issues.
- Updated the compact view of the preview bubble to display information about the number of items in an output list.
- Quick Access to "Getting Started" from Help menu
- From this release, we stopped migrating of 0.6.3 and 0.7.0 files. If your old files contain nodes from above two releases then you have to open those files on an earlier version (till 1.0.0) and the save them.
Known Issues:
- Installing Dynamo 4 Revit 1.1 Will require a reinstallation of Dynamo Studio with Studio 1.1 (1.0 and 1.1 cannot co-habitate). This issue will not happen in the future, when Future Dynamo Core installation will work with older versions of Products.
- Simplification of some overload methods will result in minor changes in behavior. Please see this document for specific nodes affected: https://github.com/DynamoDS/Dynamo/wiki/Dynamo-Node-Changes
1.0.0
-
API Stabilization: 1.0.0 is a commitment to stable code that allows for smoother and more reliable movements from one version to another. To more clearly express this, we have been moving to “semantic versioning” to illustrate the nature of changes in each release. We will be using the fairly standard version naming with an x.y.z system, where x incrementing represents breaks to the API (requiring developer refactors), y indicates changes that are still backwards compatible, and z are smaller bug fixes. Package creators and maintainers are encouraged to assess changes to the previous code, which can be found here
https://github.com/DynamoDS/Dynamo/wiki/Dynamo-Node-Changes
https://github.com/DynamoDS/Dynamo/wiki/API-Changes
-
Graphics performance enhancements: see this post for details
https://github.com/DynamoDS/Dynamo/pull/6356 -
Documentation: Along with new sections of the DynamoPrimer (http://DynamoPrimer.com), we have started an online documentation of the Dynamo API with a searchable index of public API calls for core functionality. This will be expanded to include regular nodes and Revit functionality. http://dynamods.github.io/DynamoAPI/
-
Licensing: Dynamo Studio is now using a new version of the Autodesk installer that allows for easier access to network and token flex licensing tools
-
Install: we have created a separate installation for "core" Dynamo functionality, those tools used by all implementations of Dynamo, and Revit, and Studio installations. This allows for the sharing of a common core of Dynamo code and packages.
-
List Management: Changes to "replication" or automated matching of different data streams in nodes and Code Block nodes eliminates the need for List.Map and List.Combine in many situations
-
Send to Web: formerly known as Share Workspace, we have improved the ability to view and interact with Dynamo online with Customizers
-
File Export: Users can now author DWG files in the Translation section of Dynamo Studio.
-
Direct Shape: Dynamo in Revit 2017 can now take advantage of faster and more sophisticated direct shape creation. In most cases, solid and surface geometry can be sent directly into the Revit environment as smooth (rather than tesselated) surfaces and solids, categorized to whatever is needed. In the cases where a smooth element cannot be created, a tesselated (mesh) object is created, as was the case previously.
Bug Fixes
- An extensive list can be found here: http://dynamobim.org/incoming-bug-fixes-for-dynamo-1-0-0
Known Issues
0.9.1
Dynamo Core
- Direct manipulation: Sometimes numerical manipulation isn’t the right approach. Now you can manually push and pull Point geometry when in navigating in the background 3d preview.
- Freeze Functionality: When you have long running portions of your graph, or don’t want to export data to other applications, or want to debug some logic, don’t unplug your nodes. Now you can suspend execution of specified nodes in the graph by using Freeze in the right-click contextual menu
- Search Enhancements: Only look at the node libraries you want to with new filtering tools. See more options at once by using a compact view, or get more information with the detail view.
- Zoom re-center: Select a node, then zoom and recenter your orbit on it in the 3d Preview Navigation
- CNtrl-drag: Copy/Paste nodes in a familiar way
- Add comments to custom node inputs and full default states for complex data types
- More forgiving DesignScript syntax: Users can now write instance methods (ex. MyCurve.PointAtParameter(0.5)) as Static Methods (ex. - Curve.PointAtParameter(MyCurve, 0.5))
Known issues
-
No backwards compatibility with 0.9.0 and before. This is due to neccessary changes to the Dynamo API in advance of 1.0. These changes can be found in the API Changes document
-
In some situations, placement of Adaptive components requires a change in list structure. The AC placement nodes now expect to receive lists of lists of placement coordinates. In the past, the nodes expected to only place one AC, now it expects to place many. If you are going to only place a single component, it needs to be nesting into a list.
-
With Win10 the Dynamo Background Preview is blank. If your Win10 workstation contains a graphics card that used to work with Dynamo running Win7 or 8 and you experience an inability to render graphics you may wish to consult:
https://github.com/helix-toolkit/helix-toolkit/issues/257#issuecomment-194145932
Dynamo Studio
- Share your work online: Share interactive parametric models online. Just publish your Dynamo graph and send a link to your colleagues or the whole world. People can view and interact with your designs in a regular web browser with no Dynamo installed
- ImportExport: Read directly from DWG files and only pull out those pieces of the file that you want.
- When a user downloads a dyn from the Customizer (or Shared Workspace), the dyn's Run setting is automatically set to "Manual". This may be confusing to some users when they open the dyn in Dynamo and see all Nulls in the outputs: simply click the Run button.
- Users have been reporting that the Customizer (Shared Workspaces) functionality is missing in Studio 0.9.1. If this is happening to you, please try uninstalling Studio 0.9.1 and reinstalling it. We are aware of the bug and a fix will be available soon. Please reach out to us if you experience any other related issues.
Dynamo for Revit
- Batch placement of adaptive components : Huge improvements to the speed and reliability of placing large numbers of adaptive components. Note that the nodes now expect lists of lists as inputs, so you may have to update your 9.0 graphs.
0.9.0
Create DirectShape Elements in Dynamo
- You can now wrap meshes, solids, and surfaces in a DirectShape and place it into your Revit Model
Library Enhancements
- The library is now organized in a tree view to make it easier to find the nodes you want. Node types have also been color-coded to make it easier for you to locate create, action, and query nodes in the library
Manage Custom Node and Package Paths
- Add paths to makes nodes and packages show up in the library
Node Layout Cleanup Improvements
- Clean up layouts considering groups as a whole or clean up layouts within groups
Background Preview works on Remote Desktop and Parallels
- For remote systems with GPUs and virtual machines with hardware-acceleration, background preview is now visible.
Additional Updates and Improvements
- New Chapters and expansion of the Dynamo Primer
- Easier to read Search Results
- Node to Code Stabilization
- Improved 'Canvas Snapshot' functionality
- Move to .NET 4.5
- Lots of bug fixes
0.8.2
Local Network Package and Definition location
- use a common shared network folder within an office environment.
Preset Graph States
- Keep track of different states of your graph and develop design options with Presets, found in the Edit menu
Color on surfaces
- Square arrays of color can now be applied to surfaces with the Display.BySurfaceColors node
Node2Code
- Select groups of nodes and automatically create Code Block Nodes from the selection
- Known issues that we will continue to work on
Search/Browse
- Tooltips and search algorithm improvements for in canvas search (via right click)
Localization
- Now localized to 12 languages (Dynamo for Revit and Dynamo standalone)
- Define the localization for Dynamo standalone Instructions here
Documentation
- 4 New Chapters for the Dynamo Primer
- New and updated Nuget packages for developers
Command Line Interface
- DynamoCLI now available for executing non-Revit Dynamo graphs
Package Manager
- Publish a package locally from Dynamo for Revit
Known Issues
- Current list of known issues
0.8.1
New Graphics pipeline
- Modernized geometry visualization capabilities to take more advantage of graphics hardware.
- Color: Dynmo now can represent colored geometry. Check out the Display.ByGeometryColor capabilities.
- See http://dynamoprimer.com/04_The-Building-Blocks-of-Programs/4-5_color.html
- Known issues for graphics hardware https://github.com/DynamoDS/Dynamo/wiki/Known-Issues
Graph Management
- Add Groups to your graph organization from the right click menu
- See http://dynamoprimer.com/03_Anatomy-of-a-Dynamo-Definition/3-4_best_practices.html
Excel
- Improved handling of Excel.Read, including more robust management of null values and ragged lists
- Excel.Read now has a ReadFromFileAsString toggle, to preserve text imputs if desired
- Excel.Write now has the option to completely overwrite data in a sheet, or only the affected cells
- Excel.Write ignores popup messages
Lists
- List.Transpose now keeps indices of lists consistent
- List.Clean removes null and empty lists from a given list, with or without preserving indices
- IF nodes will now lace over test input. Example, list with inputs {true, false, true}, {1,2,3}, {a,b,c} will result in {1,b,3}. Previously, result would be {{1,2,3},{a,b,c},{1,2,3}}. See submission https://github.com/DynamoDS/Dynamo/pull/4464
Revit
- FamilyInstance.SetRotation node
Localization
- Dynamo for Revit is now localized based on the Operating System locale.
UI
- Control the preview state of multiple nodes at once in right-click menu
- Node port tooltips now show default inputs
- In canvas search available via Shift-DoubleClick and Right-Click
- Drag and drop nodes from the browser
- ExportToSAT now has units control
- Backup files are now created to recover lost work. Backup folder location available in the Start page
Known Issues
- Current list of known issues
0.8.0
User interface:
- More visually understandable and scannable node functionality with icons in the node library
- Expanded tooltip information in the node browser
- Improved keyword search capabilities
Custom Nodes:
- Lacing for Custom Nodes
- Default Values for Custom Nodes
- Type input tooltips for Custom Nodes
Localization:
- Unicode (Special Character) handling in Code Block Nodes and Data exchanged with other applications (like getting and setting Revit parameters)
Geometry
- Fillet and Chamfer for Solids and Polysurfaces
- New Mesh tools available on the Package Manager from MeshToolkit
Units
- Overhaul of the existing 0.7 Units handling for more legible interactions. Details here: http://dynamobim.com/units-in-dynamo-0-8-2/
Run Auto
- default state for new documents
- Run state is now saved per file (rather that set per session)
Development
- Revit libraries have been seperated out and now live in their own repository: https://github.com/DynamoDS/DynamoRevit
- Refactoring to provide a strong separation between what a Dynamo graph is and how it is displayed. This makes it easier for users to write powerful nodes, and for us to move the Dynamo platform forwards. https://github.com/DynamoDS/Dynamo/pull/3449
Namespace Collisions:
- Existing Code Block Nodes no longer affected by name collisions with functions that come from installed packages. For instance, Point.ByCoordinates in a Code Block Node was affected by a collision with a Point. operation in the popular Rhynamo package and would throw an error saying “Warning: Dereferencing a non-pointer. Dereferencing a non-pointer.”
Hardware Acceleration in Revit 2015
- Hardware Acceleration was turned off when running in Revit 2015. Graphic speed and clarity is greatly improved
- 0.8 is in a new folder structure to enable side by side installs with 0.7. There is a one time only copy/paste of existing Packages from the 0.7 folder to 0.8 for your convenience
- Current list of known issues
0.7.5
- SAT files read from disk can be automatically updated in Dynamo graph using Geometry.ImportFromSAT
- Floor creation for structural types is now supported
- Element.Geometry and Element.Face no longer crashes when used in Revit 2015 when executed on large groups of Revit geometry.
- Upgraded Excel.Write nodes no longer show as “Unresolved”.
- View.ExportAsImage will now export views other than default {3d}
- Dynamo does not conflict with other addins. Previously, Dynamo would fail to launch in Revit when Unifi, Maxwell, Enum, or Kiwi Bonus Tools or a few other add-in were installed on Revit 2015.
- Users can now run Dynamo as an external program for debugging libraries in Visual Studio
- Better error messaging in Code Block Nodes
- modelcurve.bycurve no longer creates duplicate elements when adding to an array
- Copy/Paste of nodes now maintains lacing setting
- Many more bug fixes
- Current list of known issues
0.7.4
- Automatic update of Dynamo from changes to files on disk. Use File.FromPath nodes to drive changes from external files like Excel, images, and text files. Files being read from disk are not locked, so you can edit them on the fly.
- Added hooks to allow for Dynamo for Structural Analysis (additional Package) workflows with Autodesk Robot.
- LoopWhile node for iterative workflows
- Package Manager sync and display improvements
- Easier to use Structural Framing nodes
- List.UniqueItems now works on Revit elements, strings, numbers, and geometry and also handles null values.
- Migration tools for 3rd party Library loading
- View selection via a dropdown
- Improvements to Autocomplete (Autocomplete is off for comment areas, better handling of conflicts with 3rd party library class names, commit for autocomplete only with tab, enter, dot and single left clicking)
- Crash fixes for Package Manager
- Libraries loaded from disk or packages now only exposed needed nodes
- Changing Lacing triggers re-execcution of the graph
- Consistent notation for booleans (true/false)
- Import instance does not create multiple instances when regenerated
- Code Block Node output port positioning improvements
- GroupByKeys, List.Map, List.Scan fixes
- Surface.byLoft and Solid.byLoft fixes
- Error message improvements
- Changing location in revit is not picked up as a document change in Dynamo
- Custom node creation fixes (crash and bad input ports on creation)
- Curve extraction from surfaces now works on all surfaces
- Revit element creation and modification improvements, particularly around Views and Levels
0.7.3
###0.7.3 ###
- Autocomplete in Code Block Nodes
- Share user-created binaries (.dll files) through the Package Manager
- Share sample content (.rvt, .rfa, .dyn files and more) through the Package Manager
- Improvements to the core threading model (Scheduler)
- Reduced incidence of unresponsive graph
- Better error messages
- clearing and updating error messages
- Many small geometry improvements/fixes
0.7.2
- Significant Stability Improvements
- More robust interaction with Revit elements
- Fixes to many small geometry tools
- Installer overhaul
- Preview Geometry in Revit (2015 Sundial Release only)
- Smaller download
- Directly open Samples folder from Help menu
- Object type is properly labeled on nodes for geometry outputs
- Improved documentation for 3rd party developers
- Advanced Tutorial Content
- Vast Regression Testing overhaul
- Solid.DifferenceAll(take one solid and get the Boolean difference with it versus a list of other solids0
- Copy Lacing and Nickname settings when copy/pasting
- List.UniquItems now works for geometry elements
- Improved handling of large numbers of geometric elements
- Improved Align Selection
- Improved converting Revit Walls to Dynamo geometry
- Improvements to search speed
- Improved handling of updates to 0.6.3 packages
- Improvements to If node uses in custom nodes
- Fixed Vasari-specific compatibility issues
- Fixed Model Line creations from Dynamo curves
- Fixed Surface.ByPatch error with closed polycurve
- Fixed Solid.ThinShell
- Fixed crashes in Revit document switching
- Fixed Mesh improperly scaled when extracted from Topography
- Fixed Curve.TangentAtParameter on curve from offset Polycurve crashes Dynamo
- Fixed crash using PolyCurve.Offset
- Fixes to Curve.Project behavior
- Fixes to Curve.PullOntoPlane behavior
- Fixed StructuralFraming.Location
- Fixed CBN not being parsed as a culturally invariant string
- Fixed Background preview level of detail for curves
- Fixed Copy/Paste of Code Block node problems
- Fixed nested List.Map
- Fixed Lacing issues on many nodes
- Fixed for Integer/Double interactions
- Fixed negative values in range expressions
- Fixes to multi-output nodes (Raybounce node and others)
- For more fixes, see https://github.com/DynamoDS/Dynamo/issues?q=is%3Aclosed+is%3Aissue+sort%3Aupdated-desc
- Installer can now run silently for custom deployments
- MVVM refactoring: Standard Code separation and formatting for greater legibility and code reusability
- Separation from Revit dependencies for easier porting of Dynamo to new applications
- Recursion: ScopeIf node for use in recursive custom node workflows (experimental)
Looking for help with using the Dynamo application? Try dynamobim.org.
- Dynamo 2.0 Language Changes Explained
- How Replication and Replication Guide work: Part 1
- How Replication and Replication Guide work: Part 2
- How Replication and Replication Guide work: Part 3