Smithsonian / ngehtsim

A repository of simulation material for the ngEHT collaboration
MIT License
5 stars 3 forks source link

Dependency breaking for Windows installations #16

Open dpesce opened 8 months ago

dpesce commented 8 months ago

Currently the ehtim package has paramsurvey as a dependency, which in turn uses the resource package:

https://docs.python.org/3/library/resource.html

This package does not work on Windows machines, so installation of ngehtsim breaks.

wumpus commented 8 months ago

I don't have WIndows to test, but I'd be happy to hack together a Windows version if I have a person to test. It's just 2 things.

dpesce commented 8 months ago

I also don't have a Windows machine to test it on; this issue was initially uncovered through unit tests being run with Github actions in a Windows environment. I think @ryan-chaves-sao may have a Windows machine though?

wumpus commented 8 months ago

I think I can YOLO this one in a pull request, it's simple enough of a change. Let me finish being on vacation first (back Jan 9 -- hello from Tokyo.)

ryan-chaves-sao commented 8 months ago

I believe it's due to paramsurvey's use of the resource module, which appears to be UNIX-only.

(.venv) > pytyhon .\gendata.py
Warning: No NFFT installed!
Warning: scikit-image not installed! Cannot use hough transform
Warning: networkx not installed! Cannot use image_agreements()
Traceback (most recent call last):
  File "C:\Users\RChaves\OneDrive - Smithsonian Institution\projects\ngEHT\ngeht-arrayperformance-sims\sims\simulation002\gendata.py", line 2, in <module>
    import ehtim as eh
  File "C:\Users\RChaves\OneDrive - Smithsonian Institution\projects\ngEHT\ngeht-arrayperformance-sims\.venv\lib\site-packages\ehtim\__init__.py", line 45, in <module>
    import ehtim.survey
  File "C:\Users\RChaves\OneDrive - Smithsonian Institution\projects\ngEHT\ngeht-arrayperformance-sims\.venv\lib\site-packages\ehtim\survey.py", line 25, in <module>
    import paramsurvey
  File "C:\Users\RChaves\OneDrive - Smithsonian Institution\projects\ngEHT\ngeht-arrayperformance-sims\.venv\lib\site-packages\paramsurvey\__init__.py", line 6, in <module>
    from . import psmultiprocessing
  File "C:\Users\RChaves\OneDrive - Smithsonian Institution\projects\ngEHT\ngeht-arrayperformance-sims\.venv\lib\site-packages\paramsurvey\psmultiprocessing.py", line 10, in <module>
    from . import utils
  File "C:\Users\RChaves\OneDrive - Smithsonian Institution\projects\ngEHT\ngeht-arrayperformance-sims\.venv\lib\site-packages\paramsurvey\utils.py", line 7, in <module>
    import resource
ModuleNotFoundError: No module named 'resource'