Nodes not visible in dynamo 2.6 revit 2021, turns out it was pyRevit

In Dynamo 2.6 in Revit 2021 my nodes were invisble. I run pyRevit 4.8.4
After a long search i found out that detaching pyRevit from Revit 2021 solved the problem.
after that i tried attaching a “dynamosafe” version of the engine to Revit 2021 (which is 273). But i got this error from the PyRevitLoader:

I saw similar errors about wpf in dynamo before it was fixed.
any ideas on how to both run dynamo and pyRevit without errors?

@TimHevel Thanks for reporting this. Do you have erros with other engines like 2.7.9 or 2.7.10?

Hi Ehsan,

I just tested 277, 278, 279 and 2710
no errors but same node problem as before for all of them.
I put the dynamologs for all engines plus a file with the differences between 273 and the rest, as far as I could spot, in the link below.

Ok. I’m seriously thinking of recompiling IronPython under a different assembly name. There is so much new conflict coming up with every new release of any addon that uses IronPython. Let me dig into this furthur

I’ll sit tight.
In the meantime detaching when I’m using dynamo seems like the best solution.

1 Like

@TimHevel I pushed a major update to pyRevit in the develop branch. If you can checkout this branch and attach to Revit and test the load that would be great. If you can not let me know and I can write instructions here. See this as well


Am I doing something wrong?

I am guessing it has to do with non compiled code in the develop branch, right @eirannejad
got the same issue while trying to do this on my colleagues computer, It still works on mine but I am 1+ commit back.

@TimHevel Are you on develop branch or the CLI screenshot is from the stock pyRevit 4.8.4? Would you mind adding the --debug switch and capture the results and share?

PS C:\Users\thevel> pyrevit clone develop --dest=C:\Users\thevel\AppData\Roaming\pyrevit-develop --branch=develop
PS C:\Users\thevel> pyrevit attach develop 277 2021
Error: Sequence contains no elements
Run with "--debug" option to see debug messages 
PS C:\Users\thevel> pyrevit attach develop latest 2021
Error: Sequence contains no elements
Run with "--debug" option to see debug messages 
PS C:\Users\thevel> pyrevit attach develop latest 2021
Error: Sequence contains no elements
Run with "--debug" option to see debug messages 
PS C:\Users\thevel> pyrevit attach develop latest 2021 --debug
<clone_name> = develop
attach = True
latest = True
<revit_year> = 2021
Debug: Checking for all: wiki 
Debug: Missing: wiki 
Debug: Checking for all: blog
Debug: Missing: blog
Debug: Checking for all: docs
Debug: Missing: docs
Debug: Checking for all: source
Debug: Missing: source
Debug: Checking for all: youtube
Debug: Missing: youtube
Debug: Checking for all: support
Debug: Missing: support
Debug: Checking for all: env
Debug: Missing: env
Debug: Checking for all: update
Debug: Missing: update
Debug: Checking for all: clone
Debug: Missing: clone
Debug: Checking for all: clones
Debug: Missing: clones
Debug: Checking for all: attach
Debug: Try getting config as dict "environment:clones" 
Debug: Try getting config "environment:clones" 
Debug: Config "environment:clones" = "{"master":"C:\\Users\\thevel\\AppData\\Roaming\\pyRevit-Master","basex":"C:\\Users\\thevel\\AppData\\Roaming\\pyRevit-basex","develop":"C:\\Users\\thevel\\
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyRevit-Master" 
Debug: Searching for valid clones above: C:\Users\thevel\AppData\Roaming\pyRevit-Master 
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyRevit-Master" 
Debug: Checking pyRevit clone validity "C:\Users\thevel\AppData\Roaming\pyRevit-Master"
Debug: Checking clone validity by directory structure...
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyRevit-Master\pyrevitlib"
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyRevit-Master\pyrevitlib\pyrevit"
Debug: Checking pyRevit path "C:\Users\thevel\AppData\Roaming\pyRevit-Master\pyrevitlib\pyrevit"
Debug: Checking clone validity by git repo...
Debug: Valid pyRevit clone "C:\Users\thevel\AppData\Roaming\pyRevit-Master"
Debug: Valid clone found at: C:\Users\thevel\AppData\Roaming\pyRevit-Master
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyRevit-Master"
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyRevit-Master"
Debug: Checking pyRevit clone validity "C:\Users\thevel\AppData\Roaming\pyRevit-Master"
Debug: Checking clone validity by directory structure...
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyRevit-Master\pyrevitlib"
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyRevit-Master\pyrevitlib\pyrevit"
Debug: Checking pyRevit path "C:\Users\thevel\AppData\Roaming\pyRevit-Master\pyrevitlib\pyrevit" 
Debug: Checking clone validity by git repo...
Debug: Valid pyRevit clone "C:\Users\thevel\AppData\Roaming\pyRevit-Master" 
Debug: Verified clone "master=C:\Users\thevel\AppData\Roaming\pyRevit-Master"
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyRevit-basex"
Debug: Searching for valid clones above: C:\Users\thevel\AppData\Roaming\pyRevit-basex
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyRevit-basex"
Debug: Checking pyRevit clone validity "C:\Users\thevel\AppData\Roaming\pyRevit-basex"
Debug: Checking clone validity by directory structure...
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyRevit-basex\pyrevitlib"
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyRevit-basex\pyrevitlib\pyrevit"
Debug: Checking pyRevit path "C:\Users\thevel\AppData\Roaming\pyRevit-basex\pyrevitlib\pyrevit"
Debug: Checking clone validity by git repo...
Debug: Valid pyRevit clone "C:\Users\thevel\AppData\Roaming\pyRevit-basex"
Debug: Valid clone found at: C:\Users\thevel\AppData\Roaming\pyRevit-basex
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyRevit-basex"
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyRevit-basex"
Debug: Checking pyRevit clone validity "C:\Users\thevel\AppData\Roaming\pyRevit-basex"
Debug: Checking clone validity by directory structure...
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyRevit-basex\pyrevitlib"
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyRevit-basex\pyrevitlib\pyrevit"
Debug: Checking pyRevit path "C:\Users\thevel\AppData\Roaming\pyRevit-basex\pyrevitlib\pyrevit"
Debug: Checking clone validity by git repo...
Debug: Valid pyRevit clone "C:\Users\thevel\AppData\Roaming\pyRevit-basex"
Debug: Verified clone "basex=C:\Users\thevel\AppData\Roaming\pyRevit-basex"
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop"
Debug: Searching for valid clones above: C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop"
Debug: Checking pyRevit clone validity "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop"
Debug: Checking clone validity by directory structure...
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop\pyrevitlib"
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop\pyrevitlib\pyrevit"
Debug: Checking pyRevit path "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop\pyrevitlib\pyrevit"
Debug: Checking clone validity by git repo...
Debug: Verifying repo validity "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop"
Debug: Valid pyRevit clone "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop" 
Debug: Valid clone found at: C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop 
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop"
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop"
Debug: Checking pyRevit clone validity "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop"
Debug: Checking clone validity by directory structure...
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop\pyrevitlib"
Debug: Normalized as "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop\pyrevitlib\pyrevit"
Debug: Checking pyRevit path "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop\pyrevitlib\pyrevit"
Debug: Checking clone validity by git repo...
Debug: Verifying repo validity "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop"
Debug: Valid pyRevit clone "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop"
Debug: Verified clone "develop=C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop"
Debug: Updating config "environment:clones = {"master":"C:\\Users\\thevel\\AppData\\Roaming\\pyRevit-Master","basex":"C:\\Users\\thevel\\AppData\\Roaming\\pyRevit-basex","develop":"C:\\Users\\t
Debug: Saving config file "C:\Users\thevel\AppData\Roaming\pyRevit\pyRevit_config.ini" 
Debug: Normalized as "C:\Users\thevel\develop"
Debug: Attaching on latest engine...
Debug: Engine configuration found: IPY273
Debug: "kernel" : "IronPython"
Debug: "version" : "273"
Debug: "runtime" : "true"
Debug: "assembly" : "pyRevitLoader.dll"
Debug: "description" : "IronPython Engine"
Debug: Error parsing clone "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop" engines configs from "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop\PyRevitfile" | No row with key
Error: Sequence contains no elements (System.InvalidOperationException)
   at System.Linq.Enumerable.First[TSource](IEnumerable`1 source)
   at pyRevitCLI.PyRevitCLI.ProcessArguments()
   at pyRevitCLI.PyRevitCLI.Main(String[] args)
==> Registered Clones (full git repos)
develop | Branch: "develop" | Version: "4.8.4:450dbe9" | Path: "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop"
master | Deploy: "basepublic" | Branch: "master" | Version: "4.8.4" | Path: "C:\Users\thevel\AppData\Roaming\pyRevit-Master"
PS C:\Users\thevel> pyrevit clones
develop | Branch: "develop" | Version: "4.8.4:450dbe9" | Path: "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop"
==> Registered Clones (deployed from archive/image)
basex | Deploy: "basex" | Branch: "master" | Version: "4.8.4" | Path: "C:\Users\thevel\AppData\Roaming\pyRevit-basex"
master | Deploy: "basepublic" | Branch: "master" | Version: "4.8.4" | Path: "C:\Users\thevel\AppData\Roaming\pyRevit-Master"
PS C:\Users\thevel> pyrevit attach develop latest 2021
Error: Sequence contains no elements
Run with "--debug" option to see debug messages
PS C:\Users\thevel> pyrevit switch develop
Error: Sequence contains no elements
Run with "--debug" option to see debug messages
PS C:\Users\thevel> pyrevit clone dev --dest="C:\Users\thevel\AppData\Roaming\pyRevit-dev" --branch=develop
PS C:\Users\thevel> pyrevit attach dev latest 2021
Error: Sequence contains no elements
Run with "--debug" option to see debug messages
PS C:\Users\thevel> pyrevit clones
==> Registered Clones (full git repos)
dev | Branch: "develop" | Version: "4.8.4:450dbe9" | Path: "C:\Users\thevel\AppData\Roaming\pyRevit-dev\dev"
develop | Branch: "develop" | Version: "4.8.4:450dbe9" | Path: "C:\Users\thevel\AppData\Roaming\pyrevit-develop\develop"
==> Registered Clones (deployed from archive/image)
basex | Deploy: "basex" | Branch: "master" | Version: "4.8.4" | Path: "C:\Users\thevel\AppData\Roaming\pyRevit-basex"
master | Deploy: "basepublic" | Branch: "master" | Version: "4.8.4" | Path: "C:\Users\thevel\AppData\Roaming\pyRevit-Master"

@TimHevel Yes. there has been changes to how engines work on the develop branch. The CLI is returning an error since the CLI version is actually older than the one on the develop branch. If you are not familiar with compiling pyRevit from the develop branch locally, then please disregard my request to test. I’ll release 4.8.5 soon and will let you know how to test it with that release

1 Like

I would be interest in knowing how to compile from the dev branch with a little guidance. :innocent:

If you could write instructions for us, please.
Lets see how far i can get.

I installed 4.8.5 and set it up with the new IronPython 2711 engine and im still having the same problems unfortunately.

running 4.8.6 and 2711 engin, no issue
one of my colleagues got the same kind of issue. pinned down on sysque addin in Revit. but hard to track as hell as uninstalling installing one way or the other did not always solved the issue. also some packages in dynamo were causing trouvle (archilabs - bakery if I remember well)

Yes it is an issue that can occur with any number of addins not just pyRevit.
but in my case dynamo works fine when I detach pyRevit.

1 Like

finally got around to testing what is wrong.
It had to do with a conflict between the Archi-lab_Mandrill package and pyRevit. after deleting the package Dynamo and pyRevit work fine again.

2 Likes