mkorpela/RoboMachine

Installation fails

marc- opened this issue · 6 comments

marc- commented

RoboMachine installation via pip (within virtualenv) fails due to missing dependencies.

Downloading/unpacking RoboMachine
  Downloading RoboMachine-0.7.tar.gz
  Running setup.py (path:/tmp/pip-build-THNdGc/RoboMachine/setup.py) egg_info for package RoboMachine
    Traceback (most recent call last):
      File "<string>", line 17, in <module>
      File "/tmp/pip-build-THNdGc/RoboMachine/setup.py", line 6, in <module>
        import robomachine
      File "robomachine/__init__.py", line 16, in <module>
        from parsing import parse
      File "robomachine/parsing.py", line 15, in <module>
        from pyparsing import *
    ImportError: No module named pyparsing
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):

  File "<string>", line 17, in <module>

  File "/tmp/pip-build-THNdGc/RoboMachine/setup.py", line 6, in <module>

    import robomachine

  File "robomachine/__init__.py", line 16, in <module>

    from parsing import parse

  File "robomachine/parsing.py", line 15, in <module>

    from pyparsing import *

ImportError: No module named pyparsing

See
https://github.com/mkorpela/RoboMachine/blob/master/setup.py#L6
https://github.com/mkorpela/RoboMachine/blob/master/setup.py#L13

Proposal:
version needs to be moved into seprate module without external dependencies.

Nope. Not gona happen. You've fixed the dependency problem while installing but the dependency is still required. It is a bit odd that you added your license text there.

marc- commented

Dependency is required and pip supposed to take care of that. You can test it yourself using virtualenv this way (assuming we're in project root folder):

$ virtualenv ../venv
$ ../venv/bin/pip install ./
$ ../venv/bin/pip freeze
RoboMachine==0.7
argparse==1.2.1
pyparsing==2.0.3
robotframework==2.8.7
wsgiref==0.1.2

I'm sorry about license, I'm not really experienced with that. Should I just copy-past it from other file in the project?

ok. So the basic problem is that the version number lives in the main package and this will also import pyparsing and while using it from setup then it fails to import error before even getting to dependency installation. Thanks for the bug report! I just thought that the fix was a bit odd.

Installation fails. What am I doing wrong?

Windows 7 64bit
Python 2.7
Pip 7.1.2

H:\>pip --version
pip 7.1.2 from C:\Python27\lib\site-packages\pip-7.1.2-py2.7.egg (python 2.7)

H:\>pip install RoboMachine
Collecting RoboMachine
  Using cached RoboMachine-0.7.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 20, in <module>
      File "c:\users\d_waew\appdata\local\temp\pip-build-6aszep\RoboMachine\setup.py", line 6, in <module>
        import robomachine
      File "robomachine\__init__.py", line 16, in <module>
        from parsing import parse
      File "robomachine\parsing.py", line 15, in <module>
        from pyparsing import *
    ImportError: No module named pyparsing

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in c:\users\path_to_temp_dir\temp\pip-build-6aszep\RoboMachine

Do I have to install 'pyparsing' manually?

Yes, I had to install 'pyparsing' myself:

H:\>pip install pyparsing
Collecting pyparsing
  Downloading pyparsing-2.0.3-py2.py3-none-any.whl
Installing collected packages: pyparsing
Successfully installed pyparsing-2.0.3

H:\>pip install RoboMachine
Collecting RoboMachine
  Using cached RoboMachine-0.7.tar.gz
Requirement already satisfied (use --upgrade to upgrade): pyparsing in c:\python27\lib\site-packages (from RoboMachine)
Collecting argparse (from RoboMachine)
  Downloading argparse-1.3.0-py2.py3-none-any.whl
Requirement already satisfied (use --upgrade to upgrade): robotframework in c:\python27\lib\site-packages (from RoboMachine)
Installing collected packages: argparse, RoboMachine
  Running setup.py install for RoboMachine
Successfully installed RoboMachine-0.7 argparse-1.3.0

@Tset-Noitamotua thanks for the report,

At least on my machine pyparsing dependency gets installed when installing through pip.

I tried with pip 1.7.2

I'll leave this issue open if someone else has similar problems.
But currently I'm unable to reproduce the problem.