DynamoDS / RefineryToolkits

The Autodesk Refinery Toolkit
Apache License 2.0
48 stars 28 forks source link

Autodesk.RefineryToolkits.MassingRevit is not loading into Dynamo 2.0.2 #108

Closed tatlin closed 4 years ago

tatlin commented 5 years ago

I can't get the MassingRevit nodes to load into Dynamo 2.0.2. it looks like this version was built against the Dynamo 2.2 version of the Dynamo Core Nuget package.

notification:System.IO.FileLoadException: Dynamo has detected a conflict with a dependency and may be unstable. If any issues are detected, please uninstall addins or packages and contact the provider.: While loading assembly Autodesk.RefineryToolkits.MassingRevit, Version=2019.3.1.0, Culture=neutral, PublicKeyToken=null, Dynamo detected that the dependency ProtoGeometry, Version=2.2.1.5173, Culture=neutral, PublicKeyToken=null was already loaded with an incompatiable version. It is likely that another Revit Addin has loaded this assembly, please try uninstalling other Addins, and starting Dynamo again. Dynamo may be unstable in this state. It is likely one of the following assemblies loaded the incompatible version: RvtDwgAddon, RvtDwgAddon, RvtDwgAddon, RvtDwgAddon, RvtDwgAddon, Microsoft.GeneratedCode, RvtSteelConnectionsUI, RvtSteelConnectionsUI, RvtSteelConnectionsUI, RvtSteelConnectionsUI, RvtSteelConnectionsUI, DotNetRoots, DotNetRoots, Revit2019Export, ASObjectsMgd, DynamoRevitDS, DynamoRevitDS, DynamoCoreWpf, Microsoft.Practices.Prism, DynamoCore, ProtoGeometry, DSCoreNodes, Tessellation, Analysis, GeometryColor, RevitNodes, SimpleRaaS, SimpleRaaS, SimpleRaaS, SimpleRaaS, RevitRaaS, LibG.ProtoInterface, LibG.ProtoInterface, LibG.ProtoInterface, GeometryUI, DSRevitNodesUI, DynamoRaaS, archilab, DynaWorks18, DynaWorks18, DynaWorks18, Elk, Elk, Elk, Elk, ElkLib, LunchBoxDyn, ProvingGround.Dyn.Utils

notification:System.IO.FileLoadException: Dynamo has detected a conflict with a dependency and may be unstable. If any issues are detected, please uninstall addins or packages and contact the provider.: While loading assembly Autodesk.RefineryToolkits.MassingSandbox, Version=2019.3.1.0, Culture=neutral, PublicKeyToken=null, Dynamo detected that the dependency ProtoGeometry, Version=2.2.1.5173, Culture=neutral, PublicKeyToken=null was already loaded with an incompatiable version. It is likely that another Revit Addin has loaded this assembly, please try uninstalling other Addins, and starting Dynamo again. Dynamo may be unstable in this state. It is likely one of the following assemblies loaded the incompatible version: RvtDwgAddon, RvtDwgAddon, RvtDwgAddon, RvtDwgAddon, RvtDwgAddon, Microsoft.GeneratedCode, RvtSteelConnectionsUI, RvtSteelConnectionsUI, RvtSteelConnectionsUI, RvtSteelConnectionsUI, RvtSteelConnectionsUI, DotNetRoots, DotNetRoots, Revit2019Export, ASObjectsMgd, DynamoRevitDS, DynamoRevitDS, DynamoCoreWpf, Microsoft.Practices.Prism, DynamoCore, ProtoGeometry, DSCoreNodes, Tessellation, Analysis, GeometryColor, RevitNodes, SimpleRaaS, SimpleRaaS, SimpleRaaS, SimpleRaaS, RevitRaaS, LibG.ProtoInterface, LibG.ProtoInterface, LibG.ProtoInterface, GeometryUI, DSRevitNodesUI, DynamoRaaS, archilab, DynaWorks18, DynaWorks18, DynaWorks18, Elk, Elk, Elk, Elk, ElkLib, LunchBoxDyn, ProvingGround.Dyn.Utils

radumg commented 5 years ago

Thanks for reporting Matt!

We’ve started the integration work to bring the Massing toolkit into this (they were initially authored separately) so this incompatibility might be a residual issue, we’ll investigate and fix.

tatlin commented 5 years ago

seems like you can just drop back to the 2.0.x nuget, right? Also when I build locally I had to use .NET 4.7.2.

radumg commented 5 years ago

In theory yes. We’re using very specific nuget package versions in the SpacePlanning one to ensure compatibility, which also meant, as far as I remember, targeting .NET Framework 4.7.1 (due to Revit). Can’t speak to Massing one in detail without looking at it, so if Sylvester doesn’t get around to it this week, I’ll have a look next week when I’m back (currently on holiday).

Typed on a tiny screen

On 2 Jul 2019, at 19:19, Matt Jezyk notifications@github.com wrote:

seems like you can just drop back to the 2.0.x nuget, right? Also when I build locally I had to use .NET 4.7.2.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

tatlin commented 5 years ago

I'm going to be using this for my Refinery Dev lab at BiLT NA in two weeks so....

tatlin commented 5 years ago

I thought I had a workaround for this but not sure now

SHKnudsen commented 5 years ago

@tatlin

Is it just the Revit nodes you are not seeing? I just checked on my machine and everything seems fine, even with the error message you are showing.

We recently merged the MassingToolkit into our solution so still need to do some investigating on what is causing the error message, but everything should be working.

what version of Revit and Dynamo are you in?

just to clarify, the Revit nodes will be under RefineryToolkits>Massing>Integrate>RevitNodes image

tatlin commented 5 years ago

I have this working locally, i can issue a PR If you want

tatlin commented 5 years ago

@SHKnudsen I have been using Revit 2019 with Dynamo 2.0.2 and Refinery 0.9.4

The symptom was the View Distance.dyn example was not working because the MassingRevit and MassingSandbox dlls were not loading. You can see the errors from Dynamo in the comments/description for this issue. The root cause is these projects in visual studio were pointing at Dynamo 2.2 Nuget packages instead of Dynamo 2.0.x, thus they were not loading and were causing conflicts when loading into Dynamo 2.0.2.

The fix I did was to repoint the whole solution back to an earlier version of the Dynamo nuget packages and rebuilding clean.

There are some other build cleanliness issues with these projects, namely Copy Local should be set to false for these dlls from nuget. Also the CPU Build Target should match what RevitAPI expects.

A

tatlin commented 5 years ago

@SHKnudsen @radumg see PR https://github.com/DynamoDS/RefineryToolkits/pull/109

tatlin commented 5 years ago

@SHKnudsen also it looks like the other samples like Building Generator - Imperial.dyn are broken with the namespace changes

radumg commented 5 years ago

@tatlin , ready to test again using a clean clone, changes in #111 should fix any issues.

tatlin commented 5 years ago

I'm still seeing MassingSandbox requiring 4.7.2 in the current master

On Mon, Jul 8, 2019 at 2:15 PM Radu Gidei notifications@github.com wrote:

@tatlin https://github.com/tatlin , ready to test again using a clean clone, changes in #111 https://github.com/DynamoDS/RefineryToolkits/pull/111 should fix any issues.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/DynamoDS/RefineryToolkits/issues/108?email_source=notifications&email_token=AAIWZ6CPYMELAW2XPZ55LVDP6N74LA5CNFSM4H45MOR2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODZN5MFY#issuecomment-509335063, or mute the thread https://github.com/notifications/unsubscribe-auth/AAIWZ6BDCGP5N4L7GGIKXWTP6N74LANCNFSM4H45MORQ .

tatlin commented 5 years ago

@radumg Thanks. I can't build Massing because it requires 4.7.2, I unloaded Massing* projects and was able to build SpacePlanning using DebugRevit and do see the nodes in Dynamo 2.0.3 running in Revit 2019.

However, I'm still getting the same errors in the log related to the newer nuget packages: notification:System.IO.FileLoadException: Dynamo has detected a conflict with a dependency and may be unstable. If any issues are detected, please uninstall addins or packages and contact the provider.: While loading assembly Autodesk.RefineryToolkits.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null, Dynamo detected that the dependency ProtoGeometry, Version=2.2.1.5173, Culture=neutral, PublicKeyToken=null was already loaded with an incompatiable version. It is likely that another Revit Addin has loaded this assembly, please try uninstalling other Addins, and starting Dynamo again. Dynamo may be unstable in this state. It is likely one of the following assemblies loaded the incompatible version: RvtDwgAddon, RvtDwgAddon, RvtDwgAddon, RvtDwgAddon, RvtDwgAddon, Microsoft.GeneratedCode, RvtSteelConnectionsUI, RvtSteelConnectionsUI, RvtSteelConnectionsUI, RvtSteelConnectionsUI, RvtSteelConnectionsUI, DotNetRoots, DotNetRoots, ASObjectsMgd, DynamoRevitDS, DynamoRevitDS, DynamoCoreWpf, Microsoft.Practices.Prism, DynamoCore, ProtoGeometry, DSCoreNodes, Tessellation, Analysis, GeometryColor, RevitNodes, SimpleRaaS, SimpleRaaS, SimpleRaaS, SimpleRaaS, RevitRaaS, LibG.ProtoInterface, LibG.ProtoInterface, LibG.ProtoInterface, GeometryUI, DSRevitNodesUI, DynamoRaaS, PrimitiveGeometry.DynamoConverter, PrimitiveGeometry.DynamoConverter, RefineryFunctions, RefineryFunctions, RefineryFunctions, DynamoManipulation, ClimateData, DynamoSolarAnalysis, DynamoSolarAnalysis, JointDesignUtils, JointDesignUtils, JointDesignUtils, JointDesignUtils, ASRepository, ASRepository notification:System.IO.FileLoadException: Dynamo has detected a conflict with a dependency and may be unstable. If any issues are detected, please uninstall addins or packages and contact the provider.: While loading assembly Autodesk.RefineryToolkits.SpacePlanning, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null, Dynamo detected that the dependency ProtoGeometry, Version=2.2.1.5173, Culture=neutral, PublicKeyToken=null was already loaded with an incompatiable version. It is likely that another Revit Addin has loaded this assembly, please try uninstalling other Addins, and starting Dynamo again. Dynamo may be unstable in this state. It is likely one of the following assemblies loaded the incompatible version: RvtDwgAddon, RvtDwgAddon, RvtDwgAddon, RvtDwgAddon, RvtDwgAddon, Microsoft.GeneratedCode, RvtSteelConnectionsUI, RvtSteelConnectionsUI, RvtSteelConnectionsUI, RvtSteelConnectionsUI, RvtSteelConnectionsUI, DotNetRoots, DotNetRoots, ASObjectsMgd, DynamoRevitDS, DynamoRevitDS, DynamoCoreWpf, Microsoft.Practices.Prism, DynamoCore, ProtoGeometry, DSCoreNodes, Tessellation, Analysis, GeometryColor, RevitNodes, SimpleRaaS, SimpleRaaS, SimpleRaaS, SimpleRaaS, RevitRaaS, LibG.ProtoInterface, LibG.ProtoInterface, LibG.ProtoInterface, GeometryUI, DSRevitNodesUI, DynamoRaaS, PrimitiveGeometry.DynamoConverter, PrimitiveGeometry.DynamoConverter, RefineryFunctions, RefineryFunctions, RefineryFunctions, DynamoManipulation, ClimateData, DynamoSolarAnalysis, DynamoSolarAnalysis, JointDesignUtils, JointDesignUtils, JointDesignUtils, JointDesignUtils, ASRepository, ASRepository, Autodesk.RefineryToolkits.SpacePlanning, Autodesk.RefineryToolkits.SpacePlanning, Autodesk.RefineryToolkits.SpacePlanning Dynamo is up to date. ERR_ABORTED

radumg commented 4 years ago

Closing this as we couldn't replicate after fix. Please feel free to re-open @tatlin if you encounter it again !