hyperledger-archives / indy-sdk

indy-sdk
https://wiki.hyperledger.org/display/indy
Apache License 2.0
668 stars 735 forks source link

Invalid Syntax in faber.py #828

Closed MagicIndustries closed 6 years ago

MagicIndustries commented 6 years ago

I'm following instructions here: https://github.com/hyperledger/indy-node/blob/stable/environment/vagrant/training/vb-multi-vm/TestIndyClusterSetup.md

I'm on MacBook Pro (15-inch, 2017)running OSX High Sierra 10.13.4 (17E202)

Everything has worked so far, but when I try to follow the instructions for starting up the agents, I get a syntax error.

I ran:

cd indy-node/environment/vagrant/training/vb-multi-vm vagrant ssh agent01 python /usr/local/lib/python3.5/dist-packages/indy_client/test/agent/faber.py --port 5555

That last python command gives me this error:

File "/usr/local/lib/python3.5/dist-packages/indy_client/test/agent/faber.py", line 99 async def bootstrap_faber(agent): ^ SyntaxError: invalid syntax

I'm not hugely up with Python so I haven't tried debugging it myself yet, just wasn't sure what I might be missing - have I somehow gotten the wrong version of python or something for these not to work as described?

I've followed all the instructions on the above page, no errors so far except for this.

lodo1995 commented 6 years ago

What version of Python are you using? The error references a line that uses the async keyword, which is only available starting in python 3.5.

It might be that you have multiple installations of python, and that the default one that gets executed when you type python is an old one.

You can check the default python version with python --version.

MagicIndustries commented 6 years ago

Well that's what concerns me - isn't that operation happening in the version of python provisioned on the agent01 instance that I've ssh'd into? I'm just following documentation so these are generated instances from the various scripts in the getting started guide.

On my mac it seems the default install of python is 2.7.10: Python 2.7.10 (default, Oct 6 2017, 22:29:07) [GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.31)] on darwin Type "help", "copyright", "credits" or "license" for more information.

I checked and the you're right, the version on the instance once I ssh in is 2.7.12. Replacing "python" with "python3" in that last command did the trick, python3 was already installed on the instance. Thanks for the pointer!