awslabs / aws-shell

An integrated shell for working with the AWS CLI.
Apache License 2.0
7.15k stars 769 forks source link

ImportError: cannot import name 'textwriter' from 'botocore.docs.bcdoc' (Python3.7.7) #247

Closed EdgarMesa closed 3 years ago

EdgarMesa commented 3 years ago

It lets me pip install aws-shell correctly but when I try to run the shell it keeps giving me the same import error (even for different python versions)

pybeaudouin commented 3 years ago

Confirmed with Python 3.8 also. This seems related to aws-cli and boto3:

EdgarMesa commented 3 years ago

Err Same error for Python3.8.1

gknapp commented 3 years ago

Also seeing this issue on Python 3.8, Windows 10:

$ pip freeze
aws-shell==0.2.1
awscli==1.18.144
boto3==1.15.3
botocore==1.18.3
colorama==0.4.3
configobj==5.0.6
docutils==0.15.2
jmespath==0.10.0
prompt-toolkit==1.0.18
pyasn1==0.4.8
Pygments==2.7.1
python-dateutil==2.8.1
PyYAML==5.3.1
rsa==4.5
s3transfer==0.3.3
six==1.15.0
urllib3==1.25.10
wcwidth==0.2.5
micketallberg commented 3 years ago

Same here, using the latest builds of aws-shell and aws-cli from the repo.

$ pip freeze astroid==2.4.2 aws-shell @ git+https://github.com/awslabs/aws-shell.git@8950f03d9d720879890af6c11537b8f9789ce5a9 awscli @ git+https://github.com/aws/aws-cli@dabd57baa645ac3e56f39ffcc0e8bec76ccfd50a boto3==1.15.8 botocore==1.18.8 certifi==2020.6.20 chardet==3.0.4 colorama==0.4.3 configobj==5.0.6 docutils==0.15.2 idna==2.10 isort==4.3.21 jmespath==0.10.0 lazy-object-proxy==1.4.3 mccabe==0.6.1 prompt-toolkit==1.0.18 pyasn1==0.4.8 Pygments==2.7.1 pylint==2.5.3 python-dateutil==2.8.1 PyYAML==5.3.1 requests==2.24.0 rsa==4.5 s3transfer==0.3.3 six==1.15.0 toml==0.10.1 urllib3==1.25.9 wcwidth==0.2.5 wrapt==1.12.1

nthienan commented 3 years ago

Experiencing the same error

claick-oliveira commented 3 years ago

Experiencing the same error

+1

joguSD commented 3 years ago

Confirming this as an issue. I've opened a fix in: #250

As a temporary working around, you'll need to pin below aws-cli<1.18.140 and boto3<1.15.0.