FS#79599 - [woob] missing python-rich as dependency

Attached to Project: Arch Linux
Opened by Moviuro (Moviuro) - Thursday, 07 September 2023, 07:18 GMT
Last edited by Antonio Rojas (arojas) - Thursday, 07 September 2023, 08:13 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Bruno Pagani (ArchangeGabriel)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:

Installing only woob without python-rich makes woob unusable:

```
~ $ pacman -Qq python-rich
error: package 'python-rich' was not found
1 ~ $ woob --help
usage: woob [--version] <command> [<args>]

Use one of this commands:
bands (unable to load: No module named 'woob_applications')
bank (unable to load: No module named 'woob_applications')
[SNIP]
For more information about a command, use:
$ man woob-<command>
or
$ woob <command> --help
1 ~ $ woob bank
Traceback (most recent call last):
File "/usr/lib/python3.11/site-packages/woob/launcher.py", line 52, in load_app
app_module = importlib.import_module("woob.applications.%s" % app)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 940, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/usr/lib/python3.11/site-packages/woob/applications/bank/__init__.py", line 19, in <module>
from .bank import Appbank
File "/usr/lib/python3.11/site-packages/woob/applications/bank/bank.py", line 41, in <module>
from woob.tools.application.repl import ReplApplication, defaultcount
File "/usr/lib/python3.11/site-packages/woob/tools/application/repl.py", line 38, in <module>
from .console import BackendNotGiven, ConsoleApplication
File "/usr/lib/python3.11/site-packages/woob/tools/application/console.py", line 32, in <module>
from rich.progress import Progress, TaskProgressColumn, BarColumn, TextColumn
ModuleNotFoundError: No module named 'rich'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/bin/woob", line 8, in <module>
sys.exit(Launcher.run())
^^^^^^^^^^^^^^
File "/usr/lib/python3.11/site-packages/woob/launcher.py", line 106, in run
return cls.run_app(sys.argv[1], sys.argv[2:])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/site-packages/woob/launcher.py", line 60, in run_app
app_class = cls.load_app(app)
^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/site-packages/woob/launcher.py", line 54, in load_app
app_module = importlib.import_module("woob_applications.%s" % app)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
File "<frozen importlib._bootstrap>", line 1126, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
File "<frozen importlib._bootstrap>", line 1140, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'woob_applications'
```

Additional info:
* woob 3.6-1
* installing python-rich fixes the issue
* only installing python-colorama (woob optdepend) doesn't fix the issue

Steps to reproduce:

```
pacman -Syu woob
pacman -Qq python-rich || woob --help
```
This task depends upon

Closed by  Antonio Rojas (arojas)
Thursday, 07 September 2023, 08:13 GMT
Reason for closing:  Fixed
Additional comments about closing:  woob 3.6-2
Comment by Toolybird (Toolybird) - Thursday, 07 September 2023, 08:08 GMT
Seems to also need python-setuptools to run. Although, that might be a different bug:

$ pip check
woob 3.6 requires rich, which is not installed.
pycountry 22.3.5 requires setuptools, which is not installed.

Loading...