EmoryUniversityTheoreticalBiophysics / SirIsaac

Automated dynamical systems inference
MIT License
38 stars 11 forks source link

SloppyCell and SirIsaac #32

Open sbalasbas3 opened 3 weeks ago

sbalasbas3 commented 3 weeks ago

I wanted to try SirIsaac. I encountered this Python package after reading some articles related to parameter estimation of S-systems models of dynamics. I am using Python 3.12.7. I have trouble installing the dependeny SloppyCell and I do not know how to get around this hurdle. What should I have done?

In [1]: pip install git+https://github.com/GutenkunstLab/SloppyCell.git
Collecting git+https://github.com/GutenkunstLab/SloppyCell.git
  Cloning https://github.com/GutenkunstLab/SloppyCell.git to c:\users\myname\appdata\local\temp\pip-req-build-c0oszjc4
  Resolved https://github.com/GutenkunstLab/SloppyCell.git to commit 9aa3382eacac66cc06d6137340e4cb6c66a3d1bb
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'error'
Note: you may need to restart the kernel to use updated packages.
  Running command git clone --filter=blob:none --quiet https://github.com/GutenkunstLab/SloppyCell.git 'C:\Users\myname\AppData\Local\Temp\pip-req-build-c0oszjc4'
  error: subprocess-exited-with-error

  python setup.py egg_info did not run successfully.
  exit code: 1

  [6 lines of output]
  Traceback (most recent call last):
    File "<string>", line 2, in <module>
    File "<pip-setuptools-caller>", line 34, in <module>
    File "C:\Users\myname\AppData\Local\Temp\pip-req-build-c0oszjc4\setup.py", line 2, in <module>
      import numpy.distutils.core as core
  ModuleNotFoundError: No module named 'numpy.distutils'
  [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

Encountered error while generating package metadata.

See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
bcdaniels commented 3 weeks ago

Hi,

It appears that SloppyCell relies on distutils to install itself, and distutils has been removed from the standard installation of python 3.12. This is something that will have to be fixed eventually in SloppyCell. For now, you can try installing setuptools as suggested here: https://stackoverflow.com/questions/77233855/why-did-i-get-an-error-modulenotfounderror-no-module-named-distutils . Let me know if you still have trouble.

sbalasbas3 commented 1 week ago

Hi,

It appears that SloppyCell relies on distutils to install itself, and distutils has been removed from the standard installation of python 3.12. This is something that will have to be fixed eventually in SloppyCell. For now, you can try installing setuptools as suggested here: https://stackoverflow.com/questions/77233855/why-did-i-get-an-error-modulenotfounderror-no-module-named-distutils . Let me know if you still have trouble.

Hello, in my environment, setuptools is already installed. But the error I am getting when installing SloppyCell seems to be related with numpy.distutils. Now I am stuck and I do not know which versions of numpy, scipyand matplotlib should I download in my conda environment to make either SloppyCell or SirIsaac running.

Here are the versions in my environment:

Python version: 3.12.7 | packaged by Anaconda, Inc. | (main, Oct 4 2024, 13:17:27) [MSC v.1929 64 bit (AMD64)] NumPy version: 2.1.3 SciPy version: 1.14.1 Matplotlib version: 3.9.2

And the error that I am getting when trying to install SloppyCell is:

ModuleNotFoundError: No module named 'numpy.distutils'

If I download the ZIP file from the SloppyCell github page and then pip install ., I get the following:

  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'error'
Note: you may need to restart the kernel to use updated packages.
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [6 lines of output]
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "C:\users\~\downloads\sloppycell-master\sloppycell-master\setup.py", line 2, in <module>
          import numpy.distutils.core as core
      ModuleNotFoundError: No module named 'numpy.distutils'
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.