SafeEyes
SafeEyes copied to clipboard
Is croniter an optional dependency?
Describe the bug
In the AUR package, python-croniter is listed as an optional dependency.
However, in setup.py
, croniter is listed in the requires
array.
As a result, when Arch users try to run SafeEyes, they will encounter the situation as described in this comment.
pkg_resources.DistributionNotFound: The 'croniter' distribution was not found and is required by safeeyes
If it is required for the program to run, then python-croniter should be moved to the depends
array in the PKGBUILD.
If it is optional, then the Python setup script has to be tweaked. (I am not sure but perhaps it's extras_require
?)
In the AUR package, python-croniter is listed as an optional dependency.
Please can you share the source of this information? I can't see anything in the source code that indicates crontier is optional.
@AdamPS
Line 25 of PKGBUILD :
optdepends=("xprintidle: for Smart Pause plugin" "python-croniter: for Health Stats plugin" "wlrctl: for Do Not Disturb plugin in Wayland")
versus:
https://github.com/slgobinath/SafeEyes/blob/3e89aa4fcfdf34580536f2c6b50e5d178750791e/setup.py#L6-L12
As the AUR package seems to be (semi-) official (Gobinath is also one of the AUR package maintainers), I raised the issue here.
I see thanks for explaining. Gobinath granted me commit rights here as he's not active at the moment, but I can't do anything to fix it. I guess you would be better raising it with AUR.
This could be fixed by migrating to using pyproject.toml, as that allows specifying optional dependencies: https://packaging.python.org/en/latest/specifications/pyproject-toml/#dependencies-optional-dependencies
For now, should we move it to a hard dependency instead of an optional dependency? I have write-access to the AUR package
The app seems to run without issues when croniter is not installed.