In some circumstances I have users that need to use an old build of my plugin.
I notice in testing in Rhino8SR34, that it prevents the rhino plugin from loading after running a compatibility check, noting that dotnet runtime should be set to framework. Is it possible to suppress this check and have rhino load the plugin anyway? It seems older SR loaded it without this check but I can’t explicitly check this as I can’t downgrade.
No, there’s no way to suppress that check. The plug-in is blocked before Rhino calls into it, and there’s no flag or setting to override it.
The right fix is to update the plug-in, of course. The check is telling you it uses APIs that don’t exist under .NET Core — if we let it load anyway, you’d just get the failure later as a runtime exception instead of an up-front message. %TEMP%\RhinoCompat\<yourplugin>.txt lists what Compat flagged, so you can see what needs changing.
If you want one package that serves both old and new users, ship a net48 build and a net7.0 build in the standard runtime subfolders alongside your .rhp — Rhino loads whichever matches the runtime it’s in.