You are viewing a single comment's thread from:

RE: How to install Steem-Python

in #programming7 years ago (edited)

Edit: This is good work, thank you for answering my questions/concerns relating to this.

For anyone that attempts this method, I just loaded up a vbox to try it (ubuntu 16.04) and confirm it works. I received some errors with the command python3 -m install -U git+git://github.com/Netherdrake/steem-python stating the python3 had no module install. Miniconda installs a pip client so you can simply use pip install git+git://github.com/Netherdrake/steem-python and you will have the same results but the reason for the error is in the miniconda environment configuration you have to allow it to source to pip first. You should also be able to use the conda install -U git+git://github.com/Netherdrake/steem-python command and receive the same result (you do not need the -m for conda as you do not need to forward the module into it)

A few problems with this tutorial there @themarkymark

One of the things is that there is still a dependency issue with TOML where it says it requires a version that technically doesn't exist.

Second, and more importantly, is the steem-python library (unless set otherwise with the steem-cli wallet) automatically attempts to connect to depreciated servers.

Now unless these issues have been changed in the past, Idk, 7 days (I had to format my hard drive and reinstall it, 7 days ago and fix these issues) then your tutorial is misleading and will lead to a lot of errors that are going to frustrate first time devs. It is also important to note that steem-python runs on python3.6 (and later) and this important note comes from you using the python command when it is more accurate to state python3.6 as many linux systems (like ubuntu) come with python2.7.X preinstalled and is using it for system dependencies (meaning uninstalling will lead to problems) and defaults the python command to python2.7

This can be fixed using the command: alias python=python3.6
However this fix may lead to issues when the OS goes to run one of the system python scripts as some configurations use the python default command instead of the version specific. This can be changed with configurations (and I believe was fixed a few version back in ubuntu but other distros may still have problems)

This isn't a criticism or stating that you are incorrect, just stating that there is some information that is potentially crucial for new users (like the ones that will need a tutorial on installing this) and that without it.

Sort:  

These issues are resolved in @furion’s version and conda, but something I would do manually with the official version.

Okay, I didn't realize the TOML issue (or the default node) were changed in furions version, my bad.

Yeah, did it by hand before and helped many people doing it for their witness feeds and it was a huge pain. The nodes are fixed as well in this version but I still set them to my own full node and the ones I choose as api.steemit.com is very buggy.

Sorry the pip was left out in the command so it was looking for install module not pip. I fixed it after I posted it but it didn’t seem to save.

python3 -m pip install

I use that because I want to be sure it is using conda’s python and not system. Conda works as well but wanted to keep it simple.

No worries, I am glad it got fixed to prevent any confusion!

As I said there was a way to bypass this with environment configurations but I thought that would be more confusing to post about. Thanks for making this btw, it will likely help others out a lot!

Yeah didn't want to touch ENVs as I wanted to keep it simple and most people won't be using them.

One of the things is that there is still a dependency issue with TOML where it says it requires a version that technically doesn't exist.

The git version by furion fixes this issue. I installed it recently.

Plus installing the latest Miniconda3 should have the newest python. Do not remember if i needed to upgrade it after.

I have never used miniconda3 (I am not a big fan of python to begin with so I do not see why I would download more stuff for it 🍌)

But there is some fear, if it updates the default alias, as many systems are configured to call python to run python2.7 scripts so if you are on a misconfigured system (a lot are) then you run the risk of many system errors if this method overrides the default alias.

yes, but it is only for the local user as it is a localized version and not systemwide.

Okay that makes more sense. My apologies