FS#59882 - [pychess] Needs dependency python-pexpect
Attached to Project:
Community Packages
Opened by Stefan G (itaton) - Thursday, 30 August 2018, 18:42 GMT
Last edited by Alexander F. Rødseth (xyproto) - Thursday, 13 September 2018, 16:44 GMT
Opened by Stefan G (itaton) - Thursday, 30 August 2018, 18:42 GMT
Last edited by Alexander F. Rødseth (xyproto) - Thursday, 13 September 2018, 16:44 GMT
|
Details
Description:
pychess needs python-pexpect as a dependency to run, which is apparently not included as dependency in the PKGBUILD. Without python-pexpect pychess does not start and crashes with the following error: ``` Traceback (most recent call last): File "/usr/lib/python3.7/site-packages/pychess/Savers/pgn.py", line 16, in <m odule> import pexpect ModuleNotFoundError: No module named 'pexpect' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/bin/pychess", line 199, in <module> from pychess.Main import PyChess File "/usr/lib/python3.7/site-packages/pychess/Main.py", line 21, in <module> from pychess.System.debug import print_obj_referrers, print_muppy_sumary File "/usr/lib/python3.7/site-packages/pychess/System/debug.py", line 7, in < module> from pychess.widgets.BoardView import BoardView File "/usr/lib/python3.7/site-packages/pychess/widgets/BoardView.py", line 11, in <module> from pychess.Savers import pgn File "/usr/lib/python3.7/site-packages/pychess/Savers/pgn.py", line 18, in <module> from pychess.external import pexpect File "/usr/lib/python3.7/site-packages/pychess/external/pexpect/__init__.py", line 75, in <module> from .pty_spawn import spawn, spawnu File "/usr/lib/python3.7/site-packages/pychess/external/pexpect/pty_spawn.py", line 14, in <module> from .spawnbase import SpawnBase File "/usr/lib/python3.7/site-packages/pychess/external/pexpect/spawnbase.py", line 224 def expect(self, pattern, timeout=-1, searchwindowsize=-1, async=False): ^ SyntaxError: invalid syntax ``` After installing python-pexpect pychess runs normally. Additional info: * package version(s): pychess-0.99.2-1 Steps to reproduce: - Install pychess with from the official repo without having python-pexpect installed - Run pychess |
This task depends upon
Closed by Alexander F. Rødseth (xyproto)
Thursday, 13 September 2018, 16:44 GMT
Reason for closing: Fixed
Thursday, 13 September 2018, 16:44 GMT
Reason for closing: Fixed
Alongside several other things.
The justification is "to get it working in Debian", apparently.
...
For obvious reasons, this bundling garbage should not be happening, and we should not be including it. In this case it is somewhat more drastic, since their ancient copy of pexpect uses the async keyword as a function name, which is a syntax error on modern python.
Solution: remove pychess.external, add python-gbulb to the repositories, and add that as well as python-pexpect to the dependencies.
It appears that scoutfish and chess_db which are also in that directory, are optional dependencies only included as stub libraries to divert into the forked pexpect copy. They normally need to be downloaded at runtime, in order to build non-python binaries which are, of course, executed using pexpect...
The updated package will appear in [community] shortly.