Repository: scrtlabs/catalyst

Issue #245: Is Catalyst pip install broken?
Created: 2018-02-23T03:23:57Z
Dear Catalyst Maintainers,
Pip install seems to be broken
I am trying to install a fresh virtualenv for Catalyst on Ubuntu 16.04. When I do pip install enigma-catalyst matplotlib, I get the following error:
(.envc-unstable) > $ pip install enigma-catalyst matplotlib
Collecting enigma-catalyst
  Using cached enigma-catalyst-0.5.3.tar.gz
Collecting matplotlib
  Using cached matplotlib-2.1.2-cp27-cp27mu-manylinux1_x86_64.whl
Requirement already satisfied: pip>=7.1.0 in ./.envc-unstable/lib/python2.7/site-packages (from enigma-catalyst)
Requirement already satisfied: setuptools>36.0 in ./.envc-unstable/lib/python2.7/site-packages (from enigma-catalyst)
Collecting Logbook>=0.12.5 (from enigma-catalyst)
Collecting pytz>=2016.4 (from enigma-catalyst)
  Using cached pytz-2018.3-py2.py3-none-any.whl
Collecting numpy>=1.13.1 (from enigma-catalyst)
  Using cached numpy-1.14.1-cp27-cp27mu-manylinux1_x86_64.whl
Collecting requests-file>=1.4.1 (from enigma-catalyst)
  Using cached requests_file-1.4.3-py2.py3-none-any.whl
Collecting scipy>=0.17.1 (from enigma-catalyst)
  Using cached scipy-1.0.0-cp27-cp27mu-manylinux1_x86_64.whl
Collecting pandas<0.20,>=0.19.2 (from enigma-catalyst)
  Using cached pandas-0.19.2-cp27-cp27mu-manylinux1_x86_64.whl
Collecting pandas-datareader>=0.2.1 (from enigma-catalyst)
  Using cached pandas_datareader-0.6.0-py2.py3-none-any.whl
Collecting patsy>=0.4.0 (from enigma-catalyst)
  Using cached patsy-0.5.0-py2.py3-none-any.whl
Collecting statsmodels>=0.6.1 (from enigma-catalyst)
  Using cached statsmodels-0.8.0-cp27-cp27mu-manylinux1_x86_64.whl
Collecting python-dateutil>=2.4.2 (from enigma-catalyst)
  Using cached python_dateutil-2.6.1-py2.py3-none-any.whl
Collecting six>=1.10.0 (from enigma-catalyst)
  Using cached six-1.11.0-py2.py3-none-any.whl
Collecting requests>=2.9.1 (from enigma-catalyst)
  Using cached requests-2.18.4-py2.py3-none-any.whl
Collecting Cython>=0.25.2 (from enigma-catalyst)
  Using cached Cython-0.27.3-cp27-cp27mu-manylinux1_x86_64.whl
Collecting cyordereddict>=0.2.2 (from enigma-catalyst)
Collecting bottleneck>=1.0.0 (from enigma-catalyst)
Collecting contextlib2>=0.4.0 (from enigma-catalyst)
  Using cached contextlib2-0.5.5-py2.py3-none-any.whl
Collecting decorator>=4.0.0 (from enigma-catalyst)
  Using cached decorator-4.2.1-py2.py3-none-any.whl
Collecting networkx>=1.9.1 (from enigma-catalyst)
Collecting numexpr>=2.6.1 (from enigma-catalyst)
  Using cached numexpr-2.6.4-cp27-cp27mu-manylinux1_x86_64.whl
Collecting bcolz<1,>=0.12.1 (from enigma-catalyst)
Collecting click>=4.0.0 (from enigma-catalyst)
  Using cached click-6.7-py2.py3-none-any.whl
Collecting toolz>=0.8.2 (from enigma-catalyst)
Collecting multipledispatch>=0.4.8 (from enigma-catalyst)
  Using cached multipledispatch-0.4.9-py2.py3-none-any.whl
Collecting MarkupSafe>=0.23 (from enigma-catalyst)
Collecting Mako>=1.0.1 (from enigma-catalyst)
Collecting sqlalchemy>=1.0.8 (from enigma-catalyst)
  Using cached SQLAlchemy-1.2.4.tar.gz
Collecting alembic>=0.7.7 (from enigma-catalyst)
Collecting sortedcontainers>=1.4.4 (from enigma-catalyst)
  Using cached sortedcontainers-1.5.9-py2.py3-none-any.whl
Collecting intervaltree>=2.1.0 (from enigma-catalyst)
Collecting lru-dict>=1.1.4 (from enigma-catalyst)
Collecting empyrical<0.2.2,>=0.2.1 (from enigma-catalyst)
Collecting tables>=3.3.0 (from enigma-catalyst)
  Using cached tables-3.4.2-3-cp27-cp27mu-manylinux1_x86_64.whl
Collecting ccxt>=1.10.1049 (from enigma-catalyst)
  Using cached ccxt-1.10.1185-py2.py3-none-any.whl
Collecting boto3>=1.4.8 (from enigma-catalyst)
  Using cached boto3-1.5.35-py2.py3-none-any.whl
Collecting redo>=1.6 (from enigma-catalyst)
Collecting web3>=4.0.0b7 (from enigma-catalyst)
Collecting requests-toolbelt>=0.8.0 (from enigma-catalyst)
  Using cached requests_toolbelt-0.8.0-py2.py3-none-any.whl
Collecting pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 (from matplotlib)
  Using cached pyparsing-2.2.0-py2.py3-none-any.whl
Collecting backports.functools-lru-cache (from matplotlib)
  Using cached backports.functools_lru_cache-1.5-py2.py3-none-any.whl
Collecting subprocess32 (from matplotlib)
Collecting cycler>=0.10 (from matplotlib)
  Using cached cycler-0.10.0-py2.py3-none-any.whl
Collecting requests-ftp (from pandas-datareader>=0.2.1->enigma-catalyst)
Collecting lxml (from pandas-datareader>=0.2.1->enigma-catalyst)
  Using cached lxml-4.1.1-cp27-cp27mu-manylinux1_x86_64.whl
Collecting wrapt (from pandas-datareader>=0.2.1->enigma-catalyst)
Collecting certifi>=2017.4.17 (from requests>=2.9.1->enigma-catalyst)
  Using cached certifi-2018.1.18-py2.py3-none-any.whl
Collecting chardet<3.1.0,>=3.0.2 (from requests>=2.9.1->enigma-catalyst)
  Using cached chardet-3.0.4-py2.py3-none-any.whl
Collecting idna<2.7,>=2.5 (from requests>=2.9.1->enigma-catalyst)
  Using cached idna-2.6-py2.py3-none-any.whl
Collecting urllib3<1.23,>=1.21.1 (from requests>=2.9.1->enigma-catalyst)
  Using cached urllib3-1.22-py2.py3-none-any.whl
Collecting python-editor>=0.3 (from alembic>=0.7.7->enigma-catalyst)
Collecting botocore<1.9.0,>=1.8.49 (from boto3>=1.4.8->enigma-catalyst)
  Using cached botocore-1.8.49-py2.py3-none-any.whl
Collecting s3transfer<0.2.0,>=0.1.10 (from boto3>=1.4.8->enigma-catalyst)
  Using cached s3transfer-0.1.13-py2.py3-none-any.whl
Collecting jmespath<1.0.0,>=0.7.1 (from boto3>=1.4.8->enigma-catalyst)
  Using cached jmespath-0.9.3-py2.py3-none-any.whl
Collecting pysha3<2.0.0,>=1.0.0 (from web3>=4.0.0b7->enigma-catalyst)
  Using cached pysha3-1.0.2-cp27-cp27mu-manylinux1_x86_64.whl
Collecting hexbytes<1.0.0,>=0.1.0b1 (from web3>=4.0.0b7->enigma-catalyst)
  Using cached hexbytes-0.1.0b1.tar.gz
    Complete output from command python setup.py egg_info:
    zip_safe flag not set; analyzing archive contents...
    pypandoc.__init__: module references __file__
    
    Installed /tmp/pip-build-1ZzWw4/hexbytes/.eggs/pypandoc-1.4-py2.7.egg
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-build-1ZzWw4/hexbytes/setup.py", line 67, in <module>
        'Programming Language :: Python :: Implementation :: PyPy',
      File "/home/av/repos/example/.envc-unstable/local/lib/python2.7/site-packages/setuptools/__init__.py", line 129, in setup
        return distutils.core.setup(**attrs)
      File "/usr/lib/python2.7/distutils/core.py", line 111, in setup
        _setup_distribution = dist = klass(attrs)
      File "/home/av/repos/example/.envc-unstable/local/lib/python2.7/site-packages/setuptools/dist.py", line 333, in __init__
        _Distribution.__init__(self, attrs)
      File "/usr/lib/python2.7/distutils/dist.py", line 287, in __init__
        self.finalize_options()
      File "/home/av/repos/example/.envc-unstable/local/lib/python2.7/site-packages/setuptools/dist.py", line 476, in finalize_options
        ep.load()(self, ep.name, value)
      File "/tmp/pip-build-1ZzWw4/hexbytes/.eggs/setuptools_markdown-0.2-py2.7.egg/setuptools_markdown.py", line 22, in long_description_markdown_filename
        output = pypandoc.convert(markdown_filename, 'rst')
      File "/tmp/pip-build-1ZzWw4/hexbytes/.eggs/pypandoc-1.4-py2.7.egg/pypandoc/__init__.py", line 66, in convert
        raise RuntimeError("Format missing, but need one (identified source as text as no "
    RuntimeError: Format missing, but need one (identified source as text as no file with that name was found).
    
    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-1ZzWw4/hexbytes/

What steps have you taken to resolve this already?
I am still investigating the issue. Apparently it is related to web3==4.0.0b7 and it requires Pandoc also, which is not listed among the OS requirements. You might want to list that also as a requisite if you are able to reproduce the error.
Sincerely,
V

Duplicate issue #263: pandoc makes pip installation fail
Created: 2018-03-02T13:56:43Z
Dear Catalyst Maintainers,
Before I tell you about my issue, let me describe my environment:
Environment

Operating System: Linux 4.10.0-38-generic #42~16.04.1-Ubuntu SMP Tue Oct 10 16:32:20 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
Python Version: 2.7.12
Python Bitness: 64
How did you install Catalyst: pip
Python packages: none (fresh venv)

Now that you know a little about me, let me tell you about the issue I am
having:
Description of Issue
I am trying to make a fresh install of the latest enigma-catalyst using pip inside a virtual environment. I get the following error:
Collecting hexbytes<1.0.0,>=0.1.0b1 (from web3>=4.0.0b7->enigma-catalyst)
Using cached hexbytes-0.1.0.tar.gz
Complete output from command python setup.py egg_info:
Maybe try:

    sudo apt-get install pandoc
See http://johnmacfarlane.net/pandoc/installing.html
for installation options
---------------------------------------------------------------

zip_safe flag not set; analyzing archive contents...
pypandoc.__init__: module references __file__


!!! pandoc not found, long_description is bad, don't upload this to PyPI !!!



Installed /tmp/pip-build-EawBUu/hexbytes/.eggs/pypandoc-1.4-py2.7.egg
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/tmp/pip-build-EawBUu/hexbytes/setup.py", line 67, in <module>
    'Programming Language :: Python :: Implementation :: PyPy',
  File "/home/rsp/catalyst-venv/local/lib/python2.7/site-packages/setuptools/__init__.py", line 129, in setup
    return distutils.core.setup(**attrs)
  File "/usr/lib/python2.7/distutils/core.py", line 111, in setup
    _setup_distribution = dist = klass(attrs)
  File "/home/rsp/catalyst-venv/local/lib/python2.7/site-packages/setuptools/dist.py", line 333, in __init__
    _Distribution.__init__(self, attrs)
  File "/usr/lib/python2.7/distutils/dist.py", line 287, in __init__
    self.finalize_options()
  File "/home/rsp/catalyst-venv/local/lib/python2.7/site-packages/setuptools/dist.py", line 476, in finalize_options
    ep.load()(self, ep.name, value)
  File "/tmp/pip-build-EawBUu/hexbytes/.eggs/setuptools_markdown-0.2-py2.7.egg/setuptools_markdown.py", line 22, in long_description_markdown_filename
    output = pypandoc.convert(markdown_filename, 'rst')
  File "/tmp/pip-build-EawBUu/hexbytes/.eggs/pypandoc-1.4-py2.7.egg/pypandoc/__init__.py", line 66, in convert
    raise RuntimeError("Format missing, but need one (identified source as text as no "
RuntimeError: Format missing, but need one (identified source as text as no file with that name was found).

Just as a side note regarding the line suggesting installation of pandoc via apt: I should have thought that the list of Linux requirements (https://enigma.co/catalyst/install.html#linux) was complete.
BUT: it seems like it's not actually necessary to install pandoc via apt. The error message at the end appears to indicate a different problem.
Reproduction Steps

create venv
activate that venv
pip install enigma-catalyst

What steps have you taken to resolve this already?
Tried finding out what the problem is, to no avail ;)
Then, I looked into the Discord support channel and found this note by Lena:

it is a known issue.. it seems that on some systems the new catalyst version can be installed only with python 3, so we recommend to move to python 3. In any case, we are investigating  this issue in more depth.

So I created a Python3 venv and tried again. That way, installation succeeded. Nonetheless, I would have liked it to succeed with Python 2.
Sincerely,
cryptonoob42

Closing comment (2018-03-02T18:47:07Z): Thanks for reporting @cryptonoob42, as you point out this is a known issue, and this is a duplicate of #245, which we haven't yet closed as we are trying to figure out a way around it.