Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Program does not work immediately after install #10

Open
masoncfrancis opened this issue Aug 16, 2023 · 1 comment
Open

Program does not work immediately after install #10

masoncfrancis opened this issue Aug 16, 2023 · 1 comment

Comments

@masoncfrancis
Copy link

I tried installing clanvas on Ubuntu WSL (Python 3.10) and Windows (Python 3.11), and neither works after install.

Here is the output when I try to run:

Ubuntu WSL

$ clanvas [school url redacted]

Traceback (most recent call last):
  File "/home/mason/.local/bin/clanvas", line 5, in <module>
    from clanvas.clanvas import main
  File "/home/mason/.local/lib/python3.10/site-packages/clanvas/clanvas.py", line 11, in <module>
    import cmd2
  File "/home/mason/.local/lib/python3.10/site-packages/cmd2/__init__.py", line 13, in <module>
    from .cmd2 import Cmd, Statement, EmptyStatement, categorize
  File "/home/mason/.local/lib/python3.10/site-packages/cmd2/cmd2.py", line 48, in <module>
    from . import utils
  File "/home/mason/.local/lib/python3.10/site-packages/cmd2/utils.py", line 73, in <module>
    default_values: collections.Iterable = ()):
AttributeError: module 'collections' has no attribute 'Iterable'

Windows

$ clanvas [school url redacted]

Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "D:\Users\Mason Francis\OneDrive\Coding\clanvas-test\venv\Scripts\clanvas.exe\__main__.py", line 4, in <module>
  File "D:\Users\Mason Francis\OneDrive\Coding\clanvas-test\venv\Lib\site-packages\clanvas\clanvas.py", line 2, in <module>
    import readline
  File "D:\Users\Mason Francis\OneDrive\Coding\clanvas-test\venv\Lib\site-packages\readline.py", line 34, in <module>
    rl = Readline()
         ^^^^^^^^^^
  File "D:\Users\Mason Francis\OneDrive\Coding\clanvas-test\venv\Lib\site-packages\pyreadline\rlmain.py", line 422, in __init__
    BaseReadline.__init__(self)
  File "D:\Users\Mason Francis\OneDrive\Coding\clanvas-test\venv\Lib\site-packages\pyreadline\rlmain.py", line 62, in __init__
    mode.init_editing_mode(None)
  File "D:\Users\Mason Francis\OneDrive\Coding\clanvas-test\venv\Lib\site-packages\pyreadline\modes\emacs.py", line 633, in init_editing_mode
    self._bind_key('space',       self.self_insert)
  File "D:\Users\Mason Francis\OneDrive\Coding\clanvas-test\venv\Lib\site-packages\pyreadline\modes\basemode.py", line 162, in _bind_key
    if not callable(func):
           ^^^^^^^^^^^^^^
  File "D:\Users\Mason Francis\OneDrive\Coding\clanvas-test\venv\Lib\site-packages\pyreadline\py3k_compat.py", line 8, in callable
    return isinstance(x, collections.Callable)
                         ^^^^^^^^^^^^^^^^^^^^
AttributeError: module 'collections' has no attribute 'Callable'
@masoncfrancis masoncfrancis changed the title Program does not work immediately after Program does not work immediately after install Oct 11, 2023
@ashmanskas
Copy link

It seems that in util.py one needs to change

from collections import Iterable

to

from collections.abc import Iterable

and also in the upstream cmd2 package one needs to change utils.py, replacing
'collections.Iterable' with 'collections.abc.Iterable' and replacing 'collections.Mapping' with 'collections.abc.Mapping'

https://stackoverflow.com/questions/53978542/how-to-use-collections-abc-from-both-python-3-8-and-python-2-7/53978543#53978543

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants