2016-04-29_0635

Dear Dynamo Community

We are so excited to release Dynamo 1.0.0! There are many things that this release is, and many things that it is not.  At a high level, Dynamo 1.0.0 DOES represent a stabilization of Dynamo’s internal software organization and DOES NOT indicate that we are “done”. This milestone release means that we are committed to supporting functionality going forward, and giving developers and users a clear pathway for upgrade.  The major changes between 0.9 and 1.0 are a cleaning up and refactoring of the underlying Application Programming Interface (API) and a large number of bug fixes.  One simple result is that users and Package Developers can confidently rely on packages to extend and enhance their Dynamo experience by eliminating breaking changes between releases.

FAQ

Does v1.0 mean that Dynamo is “baked” and static and done?

No, Dynamo is still a rapidly evolving application and we will continue to enhance the user interface, performance, browser organization, etc.  We will now do these kinds of changes without ripping out whole sections of the API.  When we make major renovations, we will be indicating this with versioning that reflects the severity of the changes. What does that mean on a practical level?  Packages made in 1.0.0 will work all the way through version 1.x.x, and developers will need to do some work at version 2.0.0.  Want to know more?  Check this concise summary by Ian.

Does v1.0 mean I’ll never crash again?

No, we will still provide users with all sorts of ways to shoot themselves in the foot.  However, this does mean that we will be more conservative about how major changes are put into the application. Over the past two year large structural changes have been a major source of instability in Dynamo (eggs breaking, omelettes).    Essentially we will make fewer fundamental changes and the ones we make will be carefully considered. This will allow us to make steady progress on increasing the robustness of what is already there.  Please take a look at the extensive list of bug fixes that only represent the last 2 months.

Will my v0.9 Packages run on v1.0?

Most v0.9 packages that ran in 0.9.1 and 0.9.2 will be just fine.  We encourage everyone to try out their existing work flows right away and package developers to update their work when they can.  As always, we ask package developers to post the version information of their packages to reflect the Dynamo builds that they were made against. (Check out Mesh Toolkit for a clear version history matched to Dynamo builds).

Package developers should review these resource pages to understand what code changes will affect their work

https://github.com/DynamoDS/Dynamo/wiki/Dynamo-Node-Changes

https://github.com/DynamoDS/Dynamo/wiki/API-Changes

Can I still have side by side installations of old and new versions of Dynamo?

Yes, installation of Dynamo 1.0.0 will install beside previous versions of Dynamo. If you are happily working away in 0.9 or 0.8, go ahead and add 1.0.0 to the mix without worrying about conflicts.  You are given the option to launch different versions when first starting Dynamo per Revit session.

2016-04-28_2241

You may also notice in your installed application that there is now a “Dynamo Core”, in addition to Dynamo Revit and/or Autodesk Dynamo Studio or React Structural Analysis.  Dynamo Core contains the functionality common to all implementations of Dynamo.  While this currently only effects Dynamo Studio and Dynamo for Revit, we expect to grow the community of tools that utilize a common base installation.

2016-04-28_1206

There are also some new default locations for packages now in Studio and Revit

Dynamo4Revit: C:\Users\<username>\AppData\Roaming\Dynamo\Dynamo Revit\1.0
For Studio: C:\Users\<username>\AppData\Roaming\Dynamo\Dynamo Core\1.0

And, as always, folks who have been using Pre-Release builds should do a full uninstall of these early builds before getting the official release.

OK, fine, where’s my new stuff?

General Computation

– 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. While List.Combine and List.Map still do what they have always done, there are many many work flows that “just work” without them. This deserves it’s own blog post, soon to come.

 

– Graphics performance enhancements that cut the time of many operations in half!  See this post for details.

 

Revit Specific

– Direct Shape:  Dynamo in Revit 2017 can now take advantage of faster and more sophisticated direct shape creation. In the past, Dynamo had 2 choices for creating arbitrary geometry in Revit.  With import, Dynamo needed to essentially write a file to disk, then have Revit import the solid. DirectShape.ByGeometry was a faster way to directly write into the Revit file, but it could only create meshed elements.  Thanks to some fantastic work from the Revit team, Dynamo can now pass surfaces and solids directly into the Revit environment without having to write anything to disk.  In most cases, solid and surface geometry can be sent directly into the Revit environment as smooth (rather than tessellated) analytic surfaces and solids, and categorized in whatever manner is needed.  In the cases where a smooth element cannot be created, Revit will fall back to creating a tessellated object.  There are a number of cases where this happens, and we will continue to narrow down these situations over time.

– Dynamo in the Revit Manage Tab:  If you haven’t already noticed it in Revit 2017, Dynamo’s location is now in the Manage tab. A small change, but one which represents a continued commitment by the Revit team to “Dynamo as an essential Feature” instead of “Dynamo as an Addin.”

 

Dynamo Studio Specific

Autodesk Dynamo studio will continue to be our vanguard for trying out new components and features.  Some of these tools will migrate to being in all things Dynamo, but need to stay in this one application for now.

– Send to Web: formerly known as Share Workspace, we have improved the ability to create Customizer views and interact with Dynamo online. Visit https://dynamo.autodesk.com to get started.

 

– File Export:  Users can now author DWG files in the Translation section of Dynamo Studio.

 

Documentation

– New sections of the DynamoPrimer.

DWG Import in Dynamo Studio
DirectShape tools in Dynamo for Revit
Direct Manipulation of geometry
Automatic Node Layout Cleanup
Freeze Functionality

There are also lots of updated Images as a result of UI changes, fixed typos, and other minor upgrades.  DynamoPrimer is also an open project, learn how to contribute and report Github issues related to the Primer.

– 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

 

Bug Fixes

– An extensive list can be found here: http://dynamobim.org/incoming-bug-fixes-for-dynamo-1-0-0

 

Known Issues

– Listed here: https://github.com/DynamoDS/Dynamo/wiki/Known-Issues

 

As always, we look forward to your feedback, both the good and the bad.  More details on things mentioned above in later posts, but this is hopefully enough to get you started.

Love,

The Dynamo Team