Rhino 8 Grasshopper c# IDE random crashes to desktop

I’m experiencing a significant number of crashes when using the built-in c# IDE in Rhino 8 Grasshopper. These are catastrophic crashes to the desktop without warning. I have been unable to identify a pattern. I could be doing any number of things. Even typing sometimes results in a hang and then crash.

I’ll look for a pattern but so far it seems random. I will say that I’ve also noticed quite a few issues with using Linq/lambda expressions inside scripts, including the inability to run the debugger mode as it says I cannot reference in component output variables into the Lamba expression (which I’m definitely not doing).

So far, I’ve noticed crashes when typing, opening, closing the component, changing inputs/outputs, etc.

Today alone I think it has crashed 5-10x on me.

Hey @gruedisueli,

Got a few starting questions for you.

  1. Are you referring to the Script Editor?
  2. Can you run the SystemInfo command in Rhino and either paste the results or attach a .txt with the results in here
  3. When you have the crash can you put your email in, it links crashes to your rhino account which makes tracking them easier :slight_smile:
1 Like

@CallumSykes , yes this is the in-Grasshopper scriptable c# component for Rhino 8.

I think what I’m observing now with respect to events leading up to crashes, I think one symptom is if I start to try debugging a component that uses lambda expressions. The editor throws an error about not being able to run the script (even though it runs fine when not debugging). Furthermore, the editor gets “stuck” on debugging mode and won’t quit, even if I close and reopen the component. At this point, the option is to keep going and risk losing work or close/reopen the script.

The other thing I’ve noticed is that modifying input/output params is not always reflected in the script inside the component. Usually they are auto-updated, but sometimes I have to manually type them in myself. I can’t say this directly leads to crashes but it has been some strange behavior I’ve noted.

Here is my system info:

Rhino 8 SR18 2025-4-10 (Rhino 8, 8.18.25100.11001, Git hash:master @ 5d157e876c23ece334d9c8666b8513ffc6d4a98d)
License type: Commercial, build 2025-04-10
License details: Cloud Zoo

Windows 11 (10.0.26100 SR0.0) or greater (Physical RAM: 63GB)
.NET 7.0.0

Computer platform: LAPTOP  - Plugged in [77% battery remaining]

Hybrid graphics configuration.
  Primary display: Intel(R) Arc(TM) Pro Graphics (Intel) Memory: 2GB, Driver date: 11-26-2024 (M-D-Y).
    > Integrated graphics device with 4 adapter port(s)
        - Windows Main Display is laptop's integrated screen or built-in port
        - Secondary monitor attached to adapter port #1
  Primary OpenGL: NVIDIA GeForce RTX 4070 Laptop GPU (NVidia) Memory: 8GB, Driver date: 2-11-2025 (M-D-Y). OpenGL Ver: 4.6.0 NVIDIA 572.40
    > Integrated accelerated graphics device (shares primary device ports)
        - Video pass-through to primary display device

OpenGL Settings
  Safe mode: Off
  Use accelerated hardware modes: On
  GPU Tessellation is: On
  Redraw scene when viewports are exposed: On
  Graphics level being used: OpenGL 4.6 (primary GPU's maximum)
  
  Anti-alias mode: 4x
  Mip Map Filtering: Linear
  Anisotropic Filtering Mode: High
  
  Vendor Name: NVIDIA Corporation
  Render version: 4.6
  Shading Language: 4.60 NVIDIA
  Driver Date: 2-11-2025
  Driver Version: 32.0.15.7240
  Maximum Texture size: 32768 x 32768
  Z-Buffer depth: 24 bits
  Maximum Viewport size: 32768 x 32768
  Total Video Memory: 8188 MB

Rhino plugins that do not ship with Rhino

Rhino plugins that ship with Rhino
  C:\Program Files\Rhino 8\Plug-ins\Commands.rhp	"Commands"	8.18.25100.11001
  C:\Program Files\Rhino 8\Plug-ins\rdk.rhp	"Renderer Development Kit"	
  C:\Program Files\Rhino 8\Plug-ins\RhinoRenderCycles.rhp	"Rhino Render"	8.18.25100.11001
  C:\Program Files\Rhino 8\Plug-ins\rdk_etoui.rhp	"RDK_EtoUI"	8.18.25100.11001
  C:\Program Files\Rhino 8\Plug-ins\NamedSnapshots.rhp	"Snapshots"	
  C:\Program Files\Rhino 8\Plug-ins\MeshCommands.rhp	"MeshCommands"	8.18.25100.11001
  C:\Program Files\Rhino 8\Plug-ins\IronPython\RhinoDLR_Python.rhp	"IronPython"	8.18.25100.11001
  C:\Program Files\Rhino 8\Plug-ins\RhinoCycles.rhp	"RhinoCycles"	8.18.25100.11001
  C:\Program Files\Rhino 8\Plug-ins\Grasshopper\GrasshopperPlugin.rhp	"Grasshopper"	8.18.25100.11001
  C:\Program Files\Rhino 8\Plug-ins\Toolbars\Toolbars.rhp	"Toolbars"	8.18.25100.11001
  C:\Program Files\Rhino 8\Plug-ins\3dxrhino.rhp	"3Dconnexion 3D Mouse"	
  C:\Program Files\Rhino 8\Plug-ins\Displacement.rhp	"Displacement"	
  C:\Program Files\Rhino 8\Plug-ins\SectionTools.rhp	"SectionTools"	


Oh, one other thing, when it crashes there is no option to report the crash. Rhino literally just closes and nothing else happens.

1 Like

Ah, that is a shame, we’ll want to try and replicate locally then.

I do recall some issues with things like this.

@gruedisueli Do you have some code I can run on my machine to achieve the crash?

And some code I could use to replicate this would be excellent, a small recording would even be super helpful.

Really appreciate you providing all this information! I know it takes time but it really helps us fix your issues.

I was able to recreate several issues, all documented in the same video. I just blocked off the toolbar at the top because it contains some proprietary things. I don’t have anything weird installed, though, so I don’t think a specific plugin is causing a conflict.

  1. Using lambda expressions with brackets {} works if you don’t run the debugger but the debugger throws an error if you try to run any script that has the bracket expressions in it (something with the method that I create when I do that?)
  2. Component output name changes are not being always reflected in the code if you have previously experienced the above debugger error.
  3. Debugger getting “stuck”, easy to recreate if you start running the code in debug, then disable / enable the component before it has completed debugging/debugging has been disabled. I’m not sure if I ever did this earlier this week, but it is entirely possible as I will sometimes disable and reenable to force a component to recompute.
  4. If you put the debugger in a stuck state, then return to Rhino, you’ll see debug commands in the command line that you can click (“continue” etc). If you click them, you’ll see another error in Grasshopper.

While I was not able to recreate a crash, to me without looking under the hood this smells like a threading or memory issue that might be triggered using the steps above, given that the crashes are not handled by Rhino and thus are not able to reported as “errors” with the standard reporting dialog.

All error messages themselves can be found in the video.

Thanks @CallumSykes and the video can be downloaded here!

@CallumSykes were you able to download the video? I am wondering if there has been any progress in debugging the various issues I have identified. I continue to experience these problems.

Sorry I sent this to Ehsan as he is Mr Script Editor.

@eirannejad :backhand_index_pointing_left: prod