sollan / alma

Fully automated (rodent) limb motion analysis toolbox for behavioral analysis with bodypart coordinate data, building upon markerless pose estimation.
GNU General Public License v3.0
13 stars 5 forks source link

Issue while opening ALMA #34

Closed mano2991 closed 9 months ago

mano2991 commented 1 year ago

I have trouble in installing the ALMA package.

when i try to open python alma.py I'm facing this error. i have also searched in the issue section, based on the sugesstion issue 25 . I have downgraded the Matplotlib 3.6.2->3.5.3 and Seaborn 0.12.3 -> 0.11.1 still the error pops up

Traceback (most recent call last): File "alma.py", line 2, in from Panels import Start, AnalyzeStride, AnalyzeFootfall, RandomForest, PCA File "/home/venkateshlab/Downloads/alma/Panels/RandomForest.py", line 3, in from Functions import ConfigFunctions, DataAnalysisFunctions File "/home/venkateshlab/Downloads/alma/Functions/DataAnalysisFunctions.py", line 7, in import seaborn as sns File "/home/venkateshlab/miniconda3/envs/alma/lib/python3.8/site-packages/seaborn/init.py", line 2, in from .rcmod import * # noqa: F401,F403 File "/home/venkateshlab/miniconda3/envs/alma/lib/python3.8/site-packages/seaborn/rcmod.py", line 82, in if LooseVersion(mpl.version) >= "3.0": File "/home/venkateshlab/miniconda3/envs/alma/lib/python3.8/site-packages/setuptools/_distutils/version.py", line 55, in init warnings.warn( DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead.

sollan commented 1 year ago

Hi! Issue 25 was referencing a different error (not "DeprecationWarning"). Were you facing a different error before downgrading the two dependencies? Also, could you please run pip freeze and paste the output here?

oaaij-gnahz commented 1 year ago

Hi. I came across the same DeprecationWarning with distutils Version classes. This is the output from pip freeze in my conda environment:

cycler==0.11.0
fastdtw==0.3.4
fonttools==4.42.1
joblib==1.3.2
kiwisolver==1.4.5
matplotlib==3.5.3
numpy==1.19.0
opencv-python==4.2.0.34
packaging==23.1
pandas==1.0.3
Pillow==10.0.0
pyparsing==3.1.1
python-dateutil==2.8.2
pytz==2023.3
PyYAML==6.0.1
scikit-learn==1.3.0
scipy==1.6.3
seaborn==0.11.1
six==1.16.0
threadpoolctl==3.2.0
wxPython==4.1.0

Do you have some suggestions here?

oaaij-gnahz commented 1 year ago

It seems like this website provides an answer: https://stackoverflow.com/questions/71666214/deprecation-warnings-distutils-and-netcdf-file

I guess when I use conda to install the environment, it by default installed a newer version of setuptools which caused the deprecation warnings. I added the environment variable SETUPTOOLS_USE_DISTUTILS=stdlib to my conda environment variable and the GUI is displaying fine. As suggested in the link, it may not be an optimal solution. I have not tested if it breaks anything else in the software yet.

Thanks for open-sourcing ALMA!

sollan commented 1 year ago

Hi @oaaij-gnahz ! I've replicated the DeprecationWarning. And it seems the latest seaborn version no longer references the setuptools module. I managed to work around the warning by removing the ceiling for seaborn version (installing seaborn-0.12.2 instead).

We don't suppress any output to stay aware when the program is in the users' hands, but unfortunately that could break the wxPython UI unintentionally. Thanks for the initiative to find a fix and share it! I've been a Rice 🦉 as well so good luck with your research! ;)

sollan commented 1 year ago

@mano2991 Perhaps the solutions above will help resolve the issue you were having?

sollan commented 9 months ago

Closing this for now.