-
Notifications
You must be signed in to change notification settings - Fork 109
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rhino scripts default install path is wrong for Rhino 8 #1351
Comments
I guess ScriptEditor usage for Rhino8 is still experimental as stated in the Compas documentation: compas/src/compas_rhino/install.py Line 35 in 08f0624
Python library installation directory and Grasshopper are two different directories. What works for me is following: Grasshopper for ScriptEditor Rhino8 CPython on Windows: on mac or the package manager directory (manual upload to Rhino). The python libraries I install as described in compas main page: |
@petrasvestartas I followed this thread and it suggests adding |
This is very good news! Thanks @ChiaChing-Yen ! |
I've run into the same issue: # In Rhino 8 there is no scripts folder
if version == "8.0":
installation_path = compas_rhino._get_default_rhino_ironpython_sitepackages_path(version)
else:
installation_path = compas_rhino._get_rhino_scripts_path(version) So @obucklin suggestion makes perfect sense to install into the In [6]: compas_rhino._get_rhino_scripts_path("8.0")
Out[6]: '/Users/jelle/Library/Application Support/McNeel/Rhinoceros/8.0/scripts' In my view, this is a pressing issue, given that |
not sure i understand what is being proposed. the current installation mechanism is not wrong. in Rhino 8, COMPAS packages should indeed be installed in the site packages folder of the Python flavour and version you intend to use. there are two reasons for this.
if there are other problems with correct versions of packages not being found by other components of Rhino, i would prefer trying to solve those problems specifically. changing the installation mechanism is not the solution in my opinion... |
Sorry, I'm late for the party. @tomvanmele could you please elaborate on point 1.? I don't quite get it. I find installing compas to 3 places is necessary in Rhino8 as there seems to be 3 different interpreters (or 2 in 3 environments):
And the corresponding locations are:
I do agree we should utilize the Another related issue I'm having is I cannot for the life of me import Any of you stumbled upon that or had better luck? |
can we either close this issue or add an update about the current status? based on some of the questions i have been receiving it is a source of confusion for people... |
We need to fix the GH components situation in order to really close this as solved. Right now, GH components of extensions (including those few ones in core), do not work on rhino 8. |
That is my understanding of the situation as well. We're basically retiring the Perhaps we should remove the Rhino8 switch from Once we've dealt with that, I'm fine with closing this issue. Regarding Grasshopper I think the way forward is components with We're currently trying this out with COMPAS Timber. still some things that used to work differently in Rhino7 we're struggling with. will update. For completeness sake I'll just mention that this Finally there's the legacy ironpython components which perhaps we shouldn't support. Maybe we can post updates about the Grasshopper situation somewhere, pinned discussion in the forum? a new issue? |
One open question for me is how to continue supporting Rhino7 Grasshopper component installation. If we continue installing the user objects to the same place we do now ( Evidently, you can get Grasshopper plugins for Rhino7 over Food4Rhino they are then presumably installed to |
it sounds like that way 7.0 and 8.0 are cleanly separated, which allows us to use different installation and dependency management approaches in both cases... |
Agree.
when using YAK, components are installed to Rhino7 components would need the good old |
@tetov ping |
@chenkasirer just fyi... when releasing the new version of RhinoVault through Yak, we noticed that, at least on the Rhino side, you have to be careful with the requirements inside the command scripts. for some strange reason, even if there are no conflicts between versions, having the problem didn't occur as long as we were using locally build packages. for example, a script with however, the same script with |
python -m compas_rhino.install
adds the COMPAS packages to~/.rhinocode/py27-rh8/Lib/site-packages
instead of\AppData\Roaming\McNeel\Rhinoceros\8.0\scripts
. Grasshopper components cannot then import the modules.there is a workaround which is to include
at the top of a python component. This fixes IronPython components.
I'm not sure if it's the same problem, but cpython components built with
invoke build-cpython-ghuser-components
do not instantiate on the canvas and result in aUser Object failed to deserialize
error:Windows 11
Rhino 8 SR6 2024-4-10
COMPAS 2.1.0
Thanks!
The text was updated successfully, but these errors were encountered: