Issue #49 resolved

test_zintegration failure (0.4.2, CPython 2.7 on Linux)

Dirkjan Ochtman
created an issue

Full test session report attached.

Comments (8)

  1. Dirkjan Ochtman reporter

    After installing virtualenv, I get this:

    testing/test_zintegration.py:8:


    def check_call(*popenargs, **kwargs):
        """Run command with arguments.  Wait for command to complete.  If
        the exit code was zero then return, otherwise raise
        CalledProcessError.  The CalledProcessError object will have the
        return code in the returncode attribute.
    
        The arguments are the same as for the Popen constructor.  Example:
    
        check_call(["ls", "-l"])
        """
        retcode = call(*popenargs, **kwargs)
        if retcode:
            cmd = kwargs.get("args")
            if cmd is None:
                cmd = popenargs[0]
    
          raise CalledProcessError(retcode, cmd)
    

    E CalledProcessError: Command '['virtualenv', '-p', '/usr/bin/python2.7', '/var/tmp/portage/dev-python/cffi-0.4.2/temp/ffi-0/infrastructure-cpy']' returned non-zero exit status 2

    /usr/lib64/python2.7/subprocess.py:511: CalledProcessError ------------------------------- Captured stdout -------------------------------- Already using interpreter /usr/bin/python2.7 The PYTHONDONTWRITEBYTECODE environment variable is not compatible with setuptools. Either use --distribute or unset PYTHONDONTWRITEBYTECODE.

  2. Armin Rigo

    test_zintegration is indeed testing that cffi works with virtualenv (sorry if it wasn't clear; will be fixed).

    The issue you have now is reported by virtualenv running setuptools, and not being happy with the PYTHONDONTWRITEBYTECODE environment variable being set. This is an issue of setuptools; we can't do anything about it (and I didn't know about it in the first place). The error message should explain explicitly enough what the problem is and how to fix it, it seems to me.

  3. Dirkjan Ochtman reporter

    Theoretically, yes, but it seems like the message about using --distribute is referring to the virtualenv call. Since we're going to require PYTHONDONTWRITEBYTECODE (since my setup is part of our packaging process). So, what you could do is pass --distribute to virtualenv. Are you willing to make that change?

  4. Log in to comment