Problem Description:
I am running a local Rhino.Compute server (compute.geometry) on my machine by cloning the GitHub repository “compute.rhino3d” with the branch 8x and then running the compute.geometry through Visual Basic debugging like this.
When I execute a Grasshopper script that does not use any external plugins, it runs perfectly and returns the expected response.
However, when I try running a Grasshopper script that includes an external plugin like Pufferfish, I get the following error in the Compute.Geometry logs:
CG [16:41:23 DBG] Received a HTTP POST request to the /grasshopper endpoint
CG [16:41:23 ERR] An exception occurred while processing request
System.Exception: GH - Missing Definition Objects
Despite this error, Compute.Geometry logs show that Pufferfish is being loaded when the server starts:
CG [16:55:11 DBG] Logging to C:\Users\Administrator\AppData\Local\Temp\Compute\Logs
CG [16:55:11 INF] Child process started at 3/3/2025 4:55:11 PM
CG [16:55:12 INF] Compute 8.0.0.0, Rhino 8.15.25019.13001
CG [16:55:12 DBG] Rhino system directory: C:\Program Files\Rhino 8\System
CG [16:55:16 DBG] Hosting starting
CG [16:55:23 INF] (1/4) Loading rhino commands plugin
CG [16:55:23 INF] Successfully loaded commands plugin
CG [16:55:23 INF] (2/4) Loading rhino scripting plugin
CG [16:55:24 INF] Successfully loaded scripting plugin
CG [16:55:24 INF] Configured scripting plugin for compute
CG [16:55:24 INF] (3/4) Loading grasshopper
Grasshopper has started loading all component libraries
* Loading Grasshopper core assembly...
* Loading CurveComponents assembly...
* Loading FieldComponents assembly...
* Loading GalapagosComponents assembly...
* Loading IOComponents assembly...
* Loading Kangaroo2Component assembly...
* Loading MathComponents assembly...
* Loading RhinoCodePluginGH assembly...
* Loading ScriptComponents assembly...
* Loading SurfaceComponents assembly...
* Loading TriangulationComponents assembly...
* Loading VectorComponents assembly...
* Loading XformComponents assembly...
* Loading Pufferfish3-0 assembly...
* Loading BitmapComponent assembly...
* Loading GrasshopperHyperGooComponents assembly...
* Loading ShapeDiverSquid assembly...
* Loading Hops assembly...
* Loading GhPython assembly...
CG [16:55:36 INF] (4/4) Loading compute plug-ins
CG [16:55:37 DBG] Found module compute.geometry.FixedEndPointsModule
CG [16:55:37 DBG] Found module compute.geometry.RhinoGetModule
CG [16:55:37 DBG] Found module compute.geometry.RhinoPostModule
CG [16:55:37 DBG] Found module compute.geometry.ResthopperEndpointsModule
CG [16:55:37 INF] Now listening on: http://localhost:5000
CG [16:55:37 INF] Application started. Press Ctrl+C to shut down.
CG [16:55:37 INF] Hosting environment: Production
CG [16:55:37 INF] Content root path: C:\Users\Abhay sharma\Downloads\compute.rhino3d-8.x\compute.rhino3d-8.x\src\bin\Debug\compute.geometry
CG [16:55:37 DBG] Hosting started
Steps I Have Tried:
- Ensured Pufferfish is installed in C:\Users<Username>\AppData\Roaming\Grasshopper\Libraries.
- Unblocked the Pufferfish.gha file.
- Confirmed that Pufferfish works inside Grasshopper (manually tested components inside Rhino).
- Tried running Compute.Geometry as Administrator to avoid permission issues.
- Set the plugin path explicitly before running Compute.Geometry
- Checked if Grasshopper shows errors when loading Pufferfish—no issues found.
- Expanded all clusters in my .gh script to ensure Compute.Geometry can recognize the components.
- Checked Rhino and Pufferfish versions for compatibility (I’m using Rhino 8).
System Details:
- Rhino Version: Rhino 8.15.25019.13001
- Compute.Geometry Version: 8.0.0.0
- Pufferfish Version: 3.0
- OS: Windows
Questions:
- Why is Compute.Geometry failing to find Pufferfish components in my script, even though it appears to load successfully?
- Are there additional steps required to make external plugins work with Compute.Geometry?
- Has anyone successfully used Pufferfish with Rhino.Compute? If so, what setup worked for you?
Any insights would be greatly appreciated!