Dyn file doesn't open on old version(2019) of Revit after modified on recent version(2022)

I can’t see any log.

This is a sample file…
version test.dyn (16.8 KB)

@JacobSmall Anything found?

Hello Jacob thanks for your answer,
I’ve found the log file.
Find it attached and also the .dyn file. I have had a look at the log and maybe it has to do with some packages. It would be strange because i’ve done some tests in computers with no packages installed and the problem still persists. In Revit 2022 works correctly.
Have a nice tuesday.
dynamoLog_8a89d718-8380-47e3-bc6f-9fe71fb11d30.txt (73.8 KB)

dynamoLog_e18ccb13-9044-42f1-a36c-30323e447db4.txt (77.1 KB)
copyFilters_R20-R21.dyn (19.8 KB)

1 Like

It is almost certainly a Revit add-in conflict. Can you try disabling all Revit add-ins and Dynamo packages, and see if that resolves things? If so, add the Dynamo packages back up and see if it is still clear. If it is fine with all Dynamo packages installed then start adding back add-ins a fire at a time until it reproduces. Once you get the error to reproduce you can seek out an update for that add-in or work with the manufacturer to get a patch.

Also it looks as if you are losing the wrong version of Archilab for your Revit year - make sure the version you install ends with the same last two digits as your Revit year. That shouldn’t be complicating things here but you never know.

2 Likes

Hello Jacob thanks again for your help. So I have disabled all addins (and doesn’t work) but I don’t know how to disable packages without uninstalling them, which is annoying if I want to work later on. Any idea also on that?

Rename the directories which contains your packages before starting Dynamo. You can get the actual directories by looking in the node and package paths setting in Dynamo (though this means you will have to restart Revit for the changes to stick.

@Pit did you try removing all packages as a test as per Jacob’s suggestion? :slight_smile:

@Hyunu_Kim I can reproduce your issue in Revit 2019 using your file.
The issue is that this PR:

started serializing dropdowns using a new enum, that enum does not exist in old versions of dynamo, and very old versions of Dynamo 2.x don’t handle this case well, so the whole graph fails to deserialize.

I am not yet sure the range of versions newer than 2.0.4 - but those before this PR went in which are affected by this change.

The bad news, theres no great way to retroactively fix the old version of Dynamo.
the good news is your files can be converted to load in both versions - just find and replace the string “dropdownSelection” and “hostSelection” with “Selection” - and the file will open.

Screen Shot 2022-02-14 at 1.55.02 PM

we are investigating solutions.

6 Likes

Hello solamour thanks for your question. Yes I have deactivate all the addins and still not working.

Hello @Pit - The post above by @Michael_Kirschner2 has found the issue, and provides a workaround in the short-term as we look to make a more comprehensive and cohesive fix. Please use that to unblock right now!

1 Like

After some struggling, I found that only nodes for ‘selection’ cause the error.
My workaround is as follow.

  1. Save as a temporary file after replace all nodes for selection with custom node temporarily on Revit 2022.
  2. Open above file on older version of Revit, then correct the replaced nodes.

Hope this would not be used long.
@JacobSmall @Michael_Kirschner2 @Brendan_Cassidy @theshysnail @solamour @Pit
Thanks for your help.

2 Likes

Thanks for your suggestions. As you can imagine, besides testing if dynamo works as it is supossed to work, I have as well my day to day work related with what dynamo is suposed to properly do. All this kind of issues are making me think if I am In the correct platform to produce. If I were a Dynamo tester i would have tested and accepted the solution before.

I understood Hyunu_Kim solution not the pasted lines of code suggested some days before. After proceeding how Hyunu_Kim suggested the node can be opened but it has to be rebuild again.

As a partial solution It works.

Have a nice day.

2 Likes

We are actively working on a fix for this right now @Hyunu_Kim - so it should only be temporary. We sincerely apologize that this happened :cry: and are improving processes to ensure it doesn’t happen again :pray:

2 Likes

Hello @Pit - Totally understand, and we deeply apologize that this bug made it out into the wild :cry:

We do spend a large amount of time manually testing, and the vast majority of Dynamo nodes/features have tests written for them that will tell us when things go wrong. Beyond this, we are now improving our processes to ensure this particular flavour of problem doesn’t occur again :pray:

As for the solution, I’m glad that the one from @Hyunu_Kim worked for you! In case you were curious, the solution that @Michael_Kirschner2 proposed is as follows (For education and/or fun if nought else):

  1. Dynamo files (file.dyn) can be opened using Notepad.
  2. When you open these up, they use the JSON file format which uses a series of curley braces to demarcate things. If you want to view how this is organized, you can paste your .dyn file into an online JSON viewer.
  3. Inside of the .dyn file, there is a lot of information about things like; what nodes you have, their location, what wires connect to what, if you have groups etc.
  4. @Michael_Kirschner2’s suggestion was to directly edit this file to revert the change that we made that caused the bug.
  5. To do this, you can do a find operation on the text for dropdownSelection and hostSelection and replace them with Selection for any node that was marked as IsInput.
  6. Ensure you do this outside of it being opened, and save it. That means, when Dynamo opens up the file, it will correctly deserialize (i.e. read the data needed to open up your graph in the correct way).

5 Likes

@solamour I wish I could set two solusions. haha.
Using notepad seems pretty easy, but some would prefer my workaround who doesn’t like to deal with strings like me :sweat_smile:.
I believe Dynamo was invented for them at the first place. :slight_smile:
Thanks for your detailed explanation.

3 Likes

@Hyunu_Kim - Definitely! One is a bit more technical, the other is easier to understand :smiley: Just wanted to showcase how you could do it with manual editing!

I just created a simple graph which automatically fix the part and save it as “filename_fixed.dyn”
Dynamo can fix Dynamo…haha :crazy_face:
Thank you @Michael_Kirschner2 @solamour

DynamoRevit2022_BugFix.dyn (15.7 KB)

2 Likes

This is somewhat similar to the approach we are looking at, but would be an extension that automatically does it in the background! :smiley: I too get my kicks out of using Dynamo to interrogate Dynamo stuff.

2 Likes

I will hopefully be creating this extension repo today - will update this reply with a link.

3 Likes

@Michael_Kirschner2 has written a post on this issue, here: [faq] My .dyn/.dyf file from 2.12/2.13 won't open in older versions of Dynamo

Please have a read if you come to this thread! :slight_smile:

2 Likes