Today I started the task of going through our company package node-by-node… High time for a clear out as I upgrade to Revit 25. I am finding it really dull and tedious, to help the boredom I noted some low and high points.
‘xrange’ no longer exists but ‘range’ does the exact same thing
string.uppercase. now has to be string.ascii_uppercase.
My company’s nodes are riddled with legacy code from ancient packages (hello Bakery).
If I type, “input” into the search while making a custom node I have to scroll almost to the very bottom of the list to find the Input node. However if I type, “inpu” the Input node is right at the top… Well this was the case in the morning, but by afternoon ‘input’ was the better option to type.
Check for JSON files or you’ll feel like a giant moose.
The Input node syntax is way more important in R25
The more I learn, the less I realise I actually know.
But something I have found, an absolute highlight… you can zoom in and out in the Python window!! Dynamo programmers, my aging eyes thank you so, SO much!
If this is the case, open the dyn as a text document, then String.Replace("xrange","range"), save the resulting text as a new file and you’re done. Process all the .dyn files and you’re off to the races.
Similarly to above, but use String.Replace("string.uppercase","string.ascii_uppercase"). Or better still use the two in sequence.
Identifying packages in use should be your first task; I’ve posted about ‘how’ a few times now so you can likely find the threads with instructions. You can then identify which of those are unwanted from the list used, and move onto replacements.
Learning how to search for a particular node in the 8 versions of Dynamo I opened today is a life skill no one should need to learn, but ‘existing’ versions can’t really be tweaked. Monocle’s simple search can help quite a bit as it’s more stable across builds.
Or camel.
Yes; each version change in Dynamo has added new requirements to dyf structures; it’s not quite yet time for a big review, but I expect that will be needed in a few more builds (which sadly means we’ll break existing things again… sorry in advance).
Realizing this is the biggest advantage actually, and I’d encourage you to actually implement some of your other skills into this; as an example, why not move your existing .dyf nodes into a zero touch (dll) based package?
I managed to put off getting glasses by 3 months thanks to that change…
Nope. Find and replace is unsupported in code blocks, python, and canvas view at this time. Feel free to add an idea to the roadmap if you’d like to see it though!