Rhino Plugin Development + Version Management

Hello forum,

A little context, I am on course to release a plugin that manages some custom geometries for my company’s design process workflow. This plugin will continue to evolve, as our clients evolve.

The issue that I foresee is that at some point, we might need to go back to a project that depends on a plug-in version which isn’t the current one.

When this happens, the user will need to go to PlugInManager, remove the plugin, download the past version, then re-open rhino and work with the compatible plugin. Is this the way it is intended to work?

Thanks in anticipation for any contribution!

Yep! As long as you version your plugin you can install/uninstall versions and use whichever one makes sense. In the PackageManager there is a setting to automatically update on load, you’ll want to make sure that is unchecked before someone downgrades.

1 Like

But isn’t package manager specific to grasshopper plugins? My plugin is oriented for rhino.

Package Manager supports both Rhino and grasshopper plugins, for macOS and for Windows

2 Likes

Then I got another question… For my Plugin to exist inside the package manager, does it need to be public (as in everyone can search for it and see it) or can it be held privately (hidden from everyone)? I don’t think I would be allowed to upload it freely.

There was a way to define custom server for hosting plugins, but I cannot find it at the moment…

There was also local RHI Installer, but I think it is obsolete from some time already. Package manager should replace it.

1 Like

Let me see if I find anything on that custom server workflow. Thanks for the input!

You could also mark your plugin as prerelease so everyone would get idea what they are dealing with if it is still work in progress.

It’s not that, it is related to legal technicalities,

You don’t need to publish the plugin to use yak packages and the package manager. yak packages can be drag dropped onto your Rhino, or you can just put the yaks in a folder everyone can access and add that to your yak source paths in the Rhino advanced settings under Rhino.Options.PackageManager.Sources

3 Likes

Excellent! Thanks everyone for your help!