Hello World of Dynamo!

Today marks the release of Dynamo Core 2.3, a feature rich release targeting improvements towards stability, performance and helping you as a user to help yourself!



A slew of new user enhancements including Surface Boolean nodes, prevention of package loading conflicts with nested packages, a new preview state for on-going development, advanced connector actions, some performance increases to the Virtual Machine (VM) along with a profiling API, serialization of all packages contained in a graph with a sidebar panel that shows what packages you are missing as well as a range of bug fixes.


What’s new with Dynamo 2.3? 

  • Created new Surface Boolean nodes that provide a substantial performance improvement (The graph runs faster!) when performing Union and Difference operations on surfaces. The old workflow used to involve building solids to union or difference, then slice, and took substantially longer to run. Hurrah for speed increases!

New Surface.Difference and Surface.ByUnion nodes


  • Dynamo will now prevent Packages that contain custom nodes from loading if you already have them loaded in another package. This can occur in situations where a Package contains custom nodes from another Package beyond itself. Specifically, you will no longer see the contents of one package overwrite the contents of another.
  • Dynamo will now understand what Packages the graph contains! There is a now part of the serialization process (Saving data into the .dyn file – Please note that you’ll have to save the Graph in Dynamo 2.3 at least once to save package data into the graph) that saves the package information for any custom nodes used in the graph. This means you no longer have to try and figure out how to find out what a Package is called based on only the name of a node. We also have created a sidebar panel that will pop up if you have missing Packages (i.e if your graph contains nodes in an Error State) and show you what packages you need to install: no longer will you have to try and understand the giant matrix of potentiality that the Package Manager has to offer – hurrah for lower overhead.

Missing packages surfaced in Sidebar Extension window


  • We have added in a new Preview State that will be used on features that are subject to on-going development. We don’t want to keep any of the good stuff behind closed doors when the community can use it, even if it is far from perfect nor polished, so we’ll be releasing some features moving forward with this preview state turned on in order to both showcase features that will evolve over time and provide a vehicle for feedback from the community.

Preview State and feedback link


  • The Notes you create in Dynamo (Control + W) can now be resized vertically. No longer do you have to scroll sideways excessively… a long time coming!

Resize notes vertically


  • There are more advanced ways to control wires between nodes: select + shift + click output moves multiple connectors, and ctrl + click inputs duplicates connectors.


  • A big shout-out to Ryan Porter for his PR on the improving the user experience of the Package Search, by no longer allowing a user to start searching until the data has been returned – a previously confusing state of play.
  • We have created a Performance Tool API for Dynamo in order to enable the profiling of nodes (Showing how long each node takes to run). There will be a subsequent blog post around what you can do with this!
  • We have also improved the performance of the Virtual Machine (VM) up to a whopping 20% in some cases – i.e where many functions are replicated over a large list.
  • We’ve added in a new ViewExtensions Sidebar panel, still in an experimental state and affixed with the preview state. Creators of Extensions can now inject their Extension into this space!
  • We’ve also added in a few new API’s; ProfilingSession and EnableProfiling for measuring the execution time of nodes. Couple this with the NodeExecution event which is enabled when profiling is enabled and you can start building Extensions to interrogate your graphs! This event will tell notify you when a node begins and ends execution.
  • Another big shout-out to Ryan Porter for adding auto-lacing to the right-click context menu.
  • Fixed a range of bugs focused upon reliability, stability and clarity enhancements and collated Dynamo 2.3 Known Issues.

Where can I get Dynamo 2.3?

Currently you can get Dynamo 2.3 through the dynamobuilds.com website or the Github build page – available in the Sandbox version. In the not-to-distant future you can expect to see Dynamo 2.3 (or beyond!) show up in our host integrators (Revit, Civil 3D, FormIt, Alias, Advance Steel).

Release Notes

In order to keep a semblance of propriety to this blog post we’ve skipped a few things! For more information on other minor features, bug fixes, and known issues in Dynamo 2.3, go check out our release notes.

A big shout-out to everyone who contributed to the release and the entire Dynamo community for continuing to support our work. As always, please let us know if you have any feedback or suggestions!


The Dynamo Team