EqualityAI / EqualityML

Evidence-based tools and community collaboration to end algorithmic bias, one data scientist at a time.
Apache License 2.0
34 stars 3 forks source link

Dependency issue on Tkinter while using on databricks jupyter notebooks #17

Open lanterno opened 1 year ago

lanterno commented 1 year ago

Hello, I'm trying to install equalityml on databricks which is an environment that doesn't allow us to install system libraries using something like apt install python-tk.

Here's a screenshot of the error I get:

Screenshot 2023-03-10 at 04 18 11

I started investigating the issue until I found this ticket https://github.com/Trusted-AI/AIF360/pull/415

from the above issue, I realized that tkinter is not needed anymore as a dependency. However Aif360 hasn't had a new release since September, and I got no response from them so far when I asked for a newer release.

I've tried installing AIF360 from source, but the lastest commit has other newer dependencies that created issues.

That's why I've created a fork of AIF360 to have a quick fix for this issue until they make a new release including the fix. https://github.com/lanterno/aif360

so, I'm opening this PR to see if anyone else is having a similar issue, and also to propose a solution.

I've tried modifying EqualityML dependencies with the fork I mentioned above, but it still didn't work because the complex interconnected dependencies that caused conflicts in dependencies.

The final solution that I finally managed to get to work came after switching the dependency management to poetry instead pip.

Poetry has better dependency resolution, and I was lucky that it solved the dependency issue without problems.

I'm not sure if the plan for EqualityML to switch to poetry, but it does seem like a good alternative since it really gives more power than a classic requirements.txt and setup.py

I will have a PR ready soon, and we can discuss it.