adc-connect / adcc

adcc: Seamlessly connect your program to ADC
https://adc-connect.org
GNU General Public License v3.0
32 stars 19 forks source link

Make pandas and mpl dependencies for optional features #141

Closed maxscheurer closed 2 years ago

maxscheurer commented 2 years ago

mpl is used in two functions, pandas in one function, both could be considered as optional features (see #140). This PR removes the two modules as mandatory dependencies, making adcc a bit more lightweight. 🚀

A new decorator for the functions requiring the modules checks upon call whether the modules are found on the system or not and gives instructions on how to obtain them.

Unrelated to that, I have fixed all broken example python scripts in examples.

mfherbst commented 2 years ago

Good idea! It's always good to keep things as lightweight as possible.

Could you also add this to the docs (installation instruction and the tutorial guide we have). People might expect the analysis features to "just work" only to be presented with an error when they try it ...

maxscheurer commented 2 years ago

Yes, I was going to add docs anyways, but was waiting for your feedback on the idea in general 👍

maxscheurer commented 2 years ago

Docs added. Note that I won't update the local conda recipes anymore, they will hopefully be removed soon...

maxscheurer commented 2 years ago

I noticed that sphinx does not process some files, and as such they do not appear in the docs 😠 Wonder why we didn't notice it before...

mfherbst commented 2 years ago

Wonder why we didn't notice it before...

Probably because no-one checked ...

maxscheurer commented 2 years ago

Now the docs are looking good again 😄