Roestlab / massdash

MassDash: A web-based dashboard for streamlined DIA-MS visualization, analysis, prototyping, and optimization
https://massdash.streamlit.app/
BSD 3-Clause "New" or "Revised" License
16 stars 3 forks source link

[FIX] dependencies #22

Closed singjc closed 10 months ago

singjc commented 11 months ago

@alhigaylan can you test this branch if it addresses issue #20 for you on a fresh conda env. I tested it on my machine and it works.

the pip install -e . will install MassSeer and all dependencies

the pip install -r requirements.txt will only install the dependencies, but not MassSeer itself.

alhigaylan commented 11 months ago

Yes I can confirm this worked! Fresh conda env with python = 3.9. I used pip install -r requirements.txt followed by pip install -e . and it installed perfectly fine.

But when I launch the GUI, I get the following error: File "/opt/anaconda3/envs/mseer/lib/python3.9/site-packages/streamlit/runtime/scriptrunner/script_runner.py", line 534, in _run_script exec(code, module.dict) File "/Users/alhigaylan/Desktop/massseer/massseer/gui.py", line 17, in from massseer.plotter import Plotter, draw_many_chrom_data, draw_many_consensus_chrom File "/Users/alhigaylan/Desktop/massseer/massseer/plotter.py", line 6, in from scipy.signal import savgol_filter

It seems like Scipy was not installed and there was no error or warning during the installation process. I had to install Scipy separately to get it to work. Not sure why scipy was ignored. This was the list of packages prior to manually installing Scipy

Package Version Editable project location


altair 5.1.2 attrs 23.1.0 blinker 1.7.0 bokeh 2.4.3 cachetools 5.3.2 certifi 2023.7.22 charset-normalizer 3.3.2 click 8.1.7 contourpy 1.2.0 cycler 0.12.1 Cython 0.29.32 fonttools 4.44.0 gitdb 4.0.11 GitPython 3.1.40 idna 3.4 importlib-metadata 6.8.0 importlib-resources 6.1.0 Jinja2 3.1.2 jsonschema 4.19.2 jsonschema-specifications 2023.7.1 kiwisolver 1.4.5 markdown-it-py 3.0.0 MarkupSafe 2.1.3 MassSeer 0.1.0a0 /Users/alhigaylan/Desktop/massseer matplotlib 3.8.1 mdurl 0.1.2 numpy 1.26.1 packaging 23.2 pandas 2.1.2 Pillow 10.1.0 pip 23.3 protobuf 4.25.0 pyarrow 14.0.0 pydeck 0.8.1b0 Pygments 2.16.1 PyMSNumpress 0.2.2 pyopenms 3.1.0 pyparsing 3.1.1 python-dateutil 2.8.2 pytz 2023.3.post1 PyYAML 6.0.1 referencing 0.30.2 requests 2.31.0 rich 13.6.0 rpds-py 0.12.0 setuptools 68.0.0 six 1.16.0 smmap 5.0.1 streamlit 1.28.1 tenacity 8.2.3 toml 0.10.2 toolz 0.12.0 tornado 6.3.3 typing_extensions 4.8.0 tzdata 2023.3 tzlocal 5.2 urllib3 2.0.7 validators 0.22.0 wheel 0.41.2 zipp 3.17.0

singjc commented 11 months ago

Strange... scipy is in both the setup.py and the requirements.txt file. When you manually installed scipy, you just use pip to install right? I wonder if this is also some Mac issue, but I don't see why it would be...

alhigaylan commented 11 months ago

Strange... scipy is in both the setup.py and the requirements.txt file. When you manually installed scipy, you just use pip to install right? I wonder if this is also some Mac issue, but I don't see why it would be...

yeah when I installed scipy I simply use pip install scipy. If you are using Mac and there is no problem with install, I think it is problem with my setup then? it is not a big problem though. At least the installation goes through without errors/warning and you have to install scipy separately. I also wonder if specifying the version of scipy to install in requirements.txt would help?

singjc commented 11 months ago

Strange... scipy is in both the setup.py and the requirements.txt file. When you manually installed scipy, you just use pip to install right? I wonder if this is also some Mac issue, but I don't see why it would be...

yeah when I installed scipy I simply use pip install scipy. If you are using Mac and there is no problem with install, I think it is problem with my setup then? it is not a big problem though. At least the installation goes through without errors/warning and you have to install scipy separately. I also wonder if specifying the version of scipy to install in requirements.txt would help?

I unfortunately don't have a Mac to test on, only Linux. Specifying the scipy version might, help, but I'm not sure. It should call the latest stable release from pypi if no version is specified :confused:

singjc commented 11 months ago

@alhigaylan @jcharkow I removed the dependencies for PyMSNumpress and cython, and switched over to using pyopenms for MSNumpress decoding.