-
Notifications
You must be signed in to change notification settings - Fork 49
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
SlicerRadiomics unavailable for macOS since Slicer Preview 5.3.0 as of 2023-03-31 #77
Comments
Building of the wheel is continuing to fail. Is the SlicerRadiomics/SuperBuild/External_python-pyradiomics.cmake Lines 32 to 35 in aa418a5
|
@jamesobutler I was never involved in any whl-related topics, and unfortunately cannot be of much help. @hugoaerts is the lead of the lab maintaining pyradiomics, so perhaps he can help point to any other folks involved in the maintenance, since I am not sure Joost is actively working on pyradiomics anymore. |
It appears @JoostJM has been actively pushing updates to |
If pyradiomics whl fails to build, it is something that should be fixed in pyradiomics, I would expect. I do not now how whl build in pyradiomics works. The reality is this extension was developed with a funding from a grant that is long over. I am not sure there is anyone funded to provide maintenance of this extension. If anyone it would be Hugo and his team. |
Hi, Currently, SlicerRadiomics builds PyRadiomics from the master branch, keeping it more up-to-date with the PyRadiomics repository (instead of just the latest release). I'll try to find some spare time to update SlicerRadiomics to use the latest release of PyRadiomics. For the forseable future, this should fix the error. Finally, I reviewed the build log. The build step is failing to compile the C-extensions as CMAKE apparently cannot find stdlib.h anymore. On windows, I sometimes got this error when trying to build PyRadiomics inside a virtualenv, but I'm not sure why this error occurs in macOS now. |
@JoostJM It should be fairly straightforward to transition this project to use scikit-build 1 and cibuildwheel2 In the context of the development of scikit-build-core (the new backend for sckit-build), we have funding to transition few projects. Considering all Dependencies
Proposed Plan
@JoostJM In the next week or two, I should be able to tackle this. In the meantime, could you grant me owner access. This would greatly streamline the process. 🙏 Footnotes |
We should install from wheels, back in 2018 I added support for building from source because:
|
@jcfr I've just added you as a maintainer. Will this be sufficient or you need the owner rights? |
Thanks @fedorov . For SlicerRadiomics, since we are not setting up CI and alike that will work well. |
Thank you for your help JC! |
See related discussion in https://discourse.slicer.org/t/radiomics-module-not-working/33382/16 |
@jamesobutler @jcfr is this as simple as removing pyradiomics from CMake and installing it with |
If all dependencies are distributed as wheels, answer would be yes. I can help with that during the project week. |
Hi, is work to resolve this still under consideration? I am running a preview build of Slicer 5.7 and don't see pyradiomics as an extension to install. I'm also still unable to install it via pip in my local python environment. |
@kirbyju what error do you get when you use pip_install? For me on 5.6.1 on a mac book air m2 it installs and imports as expected.
Yes, although I'm not sure anyone has resources to work on it currently. |
Hi @pieper, here's the pyradiomics-pip-error.txt I get when installing with pip3. I think there's already an open issue about this (AIM-Harvard/pyradiomics#872) but I understand the resource issue. I am currently taking a look at MIRP to see if that would be a suitable alternative for our purposes. |
@kirbyju You should be able to successfully install pyradiomics from within Slicer's python by doing Problematic for pyradiomics is that there are no whl files for Python 3.10, 3.11 or 3.12. That would result in the source being downloaded and then the package attempted to be compiled for the given OS which could be problematic if users don't have the correct dependencies. |
Thanks @jamesobutler , yes, using pyradiomics within the Slicer environment's python is a good option. @kirbyju I don't know about MIRP, but from a quick looks okay, but it has an EUPL, which is apparently copyleft like GPL so we wouldn't use it for Slicer purposes. If there are python coders among the pyradiomics user community it would be great for them to step up and help with maintenance. The pyradiomics paper has lots of citations so people must be using it. |
Thanks for the info! |
Just as a follow up on this topic, I was able to use SlicerRadiomics on a mac with the following steps.
|
The SlicerRadiomics extension has had build errors since March 31st, 2023 that has made it unavailable on macOS
https://slicer.cdash.org/viewBuildError.php?buildid=2985286
It is unable to build a macOS whl of
pyradiomics
. Around the time when this extension started to fail,cc: @JoostJM @fedorov
The text was updated successfully, but these errors were encountered: