Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make setup.py more wheel friendly #587

Closed
shirishag75 opened this issue Aug 13, 2016 · 13 comments
Closed

Make setup.py more wheel friendly #587

shirishag75 opened this issue Aug 13, 2016 · 13 comments
Labels
enhancement improving existing code or new feature

Comments

@shirishag75
Copy link

As per https://lists.torproject.org/pipermail/ooni-dev/2016-August/000457.html

I have all the dependencies installed -

[$] apt-cache policy build-essential libdumbnet-dev libpcap-dev libgeoip-dev libffi-dev python-dev python-pip libssl-dev python-virtualenv 

build-essential:
  Installed: 12.2
  Candidate: 12.2
  Version table:
 *** 12.2 600
        600 http://httpredir.debian.org/debian testing/main amd64 Packages
          1 http://httpredir.debian.org/debian unstable/main amd64 Packages
        100 /var/lib/dpkg/status
libdumbnet-dev:
  Installed: 1.12-7
  Candidate: 1.12-7
  Version table:
 *** 1.12-7 600
        600 http://httpredir.debian.org/debian testing/main amd64 Packages
          1 http://httpredir.debian.org/debian unstable/main amd64 Packages
        100 /var/lib/dpkg/status
libpcap-dev:
  Installed: 1.7.4-2
  Candidate: 1.7.4-2
  Version table:
 *** 1.7.4-2 600
        600 http://httpredir.debian.org/debian testing/main amd64 Packages
          1 http://httpredir.debian.org/debian unstable/main amd64 Packages
        100 /var/lib/dpkg/status
libgeoip-dev:
  Installed: 1.6.9-1
  Candidate: 1.6.9-1
  Version table:
 *** 1.6.9-1 600
        600 http://httpredir.debian.org/debian testing/main amd64 Packages
          1 http://httpredir.debian.org/debian unstable/main amd64 Packages
        100 /var/lib/dpkg/status
libffi-dev:
  Installed: 3.2.1-4
  Candidate: 3.2.1-4
  Version table:
     3.3~20160605-1 1
          1 http://httpredir.debian.org/debian experimental/main amd64 Packages
 *** 3.2.1-4 600
        600 http://httpredir.debian.org/debian testing/main amd64 Packages
          1 http://httpredir.debian.org/debian unstable/main amd64 Packages
        100 /var/lib/dpkg/status
python-dev:
  Installed: 2.7.11-2
  Candidate: 2.7.11-2
  Version table:
 *** 2.7.11-2 600
        600 http://httpredir.debian.org/debian testing/main amd64 Packages
          1 http://httpredir.debian.org/debian unstable/main amd64 Packages
        100 /var/lib/dpkg/status
python-pip:
  Installed: 8.1.2-2
  Candidate: 8.1.2-2
  Version table:
 *** 8.1.2-2 600
        600 http://httpredir.debian.org/debian testing/main amd64 Packages
          1 http://httpredir.debian.org/debian unstable/main amd64 Packages
        100 /var/lib/dpkg/status
libssl-dev:
  Installed: 1.0.2h-1
  Candidate: 1.0.2h-1
  Version table:
     1.1.0~pre6-1 1
          1 http://httpredir.debian.org/debian experimental/main amd64 Packages
 *** 1.0.2h-1 600
        600 http://httpredir.debian.org/debian testing/main amd64 Packages
          1 http://httpredir.debian.org/debian unstable/main amd64 Packages
        100 /var/lib/dpkg/status
python-virtualenv:
  Installed: 15.0.2+ds-1
  Candidate: 15.0.2+ds-1
  Version table:
 *** 15.0.2+ds-1 600
        600 http://httpredir.debian.org/debian testing/main amd64 Packages
          1 http://httpredir.debian.org/debian unstable/main amd64 Packages
        100 /var/lib/dpkg/status

Then ran as given in the mailing list instructions -

[$] virtualenv ~/venv-ooniprobe-agent-alpha/

Running virtualenv with interpreter /usr/bin/python2
New python executable in /home/shirish/venv-ooniprobe-agent-alpha/bin/python2
Also creating executable in /home/shirish/venv-ooniprobe-agent-alpha/bin/python
Installing setuptools, pkg_resources, pip, wheel...done.

Once that was done ran -

[$] source ~/venv-ooniprobe-agent-alpha/bin/activate     

(venv-ooniprobe-agent-alpha)

And finally ran -

[$] pip install https://github.com/TheTorProject/ooni-probe/releases/download/v2.0.0-alpha.2/ooniprobe-2.0.0a2.tar.gz              [20:27:47]
Collecting https://github.com/TheTorProject/ooni-probe/releases/download/v2.0.0-alpha.2/ooniprobe-2.0.0a2.tar.gz
  Downloading https://github.com/TheTorProject/ooni-probe/releases/download/v2.0.0-alpha.2/ooniprobe-2.0.0a2.tar.gz (2.2MB)
    100% |████████████████████████████████| 2.2MB 79kB/s 
Collecting pyasn1>=0.1.8 (from ooniprobe===2.0.0a2)
  Downloading pyasn1-0.1.9-py2.py3-none-any.whl
Requirement already satisfied (use --upgrade to upgrade): setuptools>=11.3 in ./venv-ooniprobe-agent-alpha/lib/python2.7/site-packages (from ooniprobe===2.0.0a2)
Collecting PyYAML>=3.10 (from ooniprobe===2.0.0a2)
  Downloading PyYAML-3.11.zip (371kB)
    100% |████████████████████████████████| 378kB 144kB/s 
Collecting Twisted>=13.2.0 (from ooniprobe===2.0.0a2)
  Downloading Twisted-16.3.0.tar.bz2 (2.9MB)
    100% |████████████████████████████████| 2.9MB 63kB/s 
Collecting ipaddr>=2.1.10 (from ooniprobe===2.0.0a2)
  Downloading ipaddr-2.1.11.tar.gz
Collecting pyOpenSSL>=0.15.1 (from ooniprobe===2.0.0a2)
  Downloading pyOpenSSL-16.0.0-py2.py3-none-any.whl (45kB)
    100% |████████████████████████████████| 51kB 132kB/s 
Collecting geoip (from ooniprobe===2.0.0a2)
  Downloading GeoIP-1.3.2.tar.gz
Collecting txtorcon>=0.7 (from ooniprobe===2.0.0a2)
  Downloading txtorcon-0.15.1-py2-none-any.whl (199kB)
    100% |████████████████████████████████| 204kB 108kB/s 
Collecting txsocksx>=0.0.2 (from ooniprobe===2.0.0a2)
  Downloading txsocksx-1.15.0.2-py2-none-any.whl
Collecting scapy>=2.2.0 (from ooniprobe===2.0.0a2)
  Downloading scapy-2.3.2.tar.gz (1.1MB)
    100% |████████████████████████████████| 1.1MB 278kB/s 
Collecting pypcap>=1.1 (from ooniprobe===2.0.0a2)
  Downloading pypcap-1.1.5.tar.gz (44kB)
    100% |████████████████████████████████| 51kB 238kB/s 
Collecting service-identity (from ooniprobe===2.0.0a2)
Exception:
Traceback (most recent call last):
  File "/home/shirish/venv-ooniprobe-agent-alpha/lib/python2.7/site-packages/pip/basecommand.py", line 215, in main
    status = self.run(options, args)
  File "/home/shirish/venv-ooniprobe-agent-alpha/lib/python2.7/site-packages/pip/commands/install.py", line 328, in run
    wb.build(autobuilding=True)
  File "/home/shirish/venv-ooniprobe-agent-alpha/lib/python2.7/site-packages/pip/wheel.py", line 750, in build
    self.requirement_set.prepare_files(self.finder)
  File "/home/shirish/venv-ooniprobe-agent-alpha/lib/python2.7/site-packages/pip/req/req_set.py", line 370, in prepare_files
    ignore_dependencies=self.ignore_dependencies))
  File "/home/shirish/venv-ooniprobe-agent-alpha/lib/python2.7/site-packages/pip/req/req_set.py", line 522, in _prepare_file
    finder, self.upgrade, require_hashes)
  File "/home/shirish/venv-ooniprobe-agent-alpha/lib/python2.7/site-packages/pip/req/req_install.py", line 268, in populate_link
    self.link = finder.find_requirement(self, upgrade)
  File "/home/shirish/venv-ooniprobe-agent-alpha/lib/python2.7/site-packages/pip/index.py", line 442, in find_requirement
    all_candidates = self.find_all_candidates(req.name)
  File "/home/shirish/venv-ooniprobe-agent-alpha/lib/python2.7/site-packages/pip/index.py", line 400, in find_all_candidates
    for page in self._get_pages(url_locations, project_name):
  File "/home/shirish/venv-ooniprobe-agent-alpha/lib/python2.7/site-packages/pip/index.py", line 545, in _get_pages
    page = self._get_page(location)
  File "/home/shirish/venv-ooniprobe-agent-alpha/lib/python2.7/site-packages/pip/index.py", line 648, in _get_page
    return HTMLPage.get_page(link, session=self.session)
  File "/home/shirish/venv-ooniprobe-agent-alpha/lib/python2.7/site-packages/pip/index.py", line 757, in get_page
    "Cache-Control": "max-age=600",
  File "/home/shirish/venv-ooniprobe-agent-alpha/share/python-wheels/requests-2.10.0-py2.py3-none-any.whl/requests/sessions.py", line 487, in get
    return self.request('GET', url, **kwargs)
  File "/home/shirish/venv-ooniprobe-agent-alpha/lib/python2.7/site-packages/pip/download.py", line 378, in request
    return super(PipSession, self).request(method, url, *args, **kwargs)
  File "/home/shirish/venv-ooniprobe-agent-alpha/share/python-wheels/requests-2.10.0-py2.py3-none-any.whl/requests/sessions.py", line 475, in request
    resp = self.send(prep, **send_kwargs)
  File "/home/shirish/venv-ooniprobe-agent-alpha/share/python-wheels/requests-2.10.0-py2.py3-none-any.whl/requests/sessions.py", line 585, in send
    r = adapter.send(request, **kwargs)
  File "/home/shirish/venv-ooniprobe-agent-alpha/share/python-wheels/CacheControl-0.11.5-py2.py3-none-any.whl/cachecontrol/adapter.py", line 46, in send
    resp = super(CacheControlAdapter, self).send(request, **kw)
  File "/home/shirish/venv-ooniprobe-agent-alpha/share/python-wheels/requests-2.10.0-py2.py3-none-any.whl/requests/adapters.py", line 403, in send
    timeout=timeout
  File "/home/shirish/venv-ooniprobe-agent-alpha/share/python-wheels/urllib3-1.15.1-py2.py3-none-any.whl/urllib3/connectionpool.py", line 623, in urlopen
    _stacktrace=sys.exc_info()[2])
  File "/home/shirish/venv-ooniprobe-agent-alpha/share/python-wheels/urllib3-1.15.1-py2.py3-none-any.whl/urllib3/util/retry.py", line 236, in increment
    total -= 1
TypeError: unsupported operand type(s) for -=: 'Retry' and 'int'

As can be seen getting tracebacks. Look forward to clarity.

@hellais
Copy link
Member

hellais commented Aug 13, 2016

What python version are you running? It seems like you may be running python3, that is currently not supported by ooniprobe.

Can you run from inside of the virtualenv: python --version?

@shirishag75
Copy link
Author

shirishag75 commented Aug 13, 2016

running python 2.7.12 -

[$] python --version                                                                                                              
Python 2.7.12+

From outside the virtual env .

I actually tried it out once more and I got a bit more further -

[$] source ~/venv-ooniprobe-agent-alpha/bin/activate

(venv-ooniprobe-agent-alpha) ┌─[shirish@debian] - [~] - [10093]
└─[$] pip install https://github.com/TheTorProject/ooni-probe/releases/download/v2.0.0-alpha.2/ooniprobe-2.0.0a2.tar.gz              

Collecting https://github.com/TheTorProject/ooni-probe/releases/download/v2.0.0-alpha.2/ooniprobe-2.0.0a2.tar.gz
  Downloading https://github.com/TheTorProject/ooni-probe/releases/download/v2.0.0-alpha.2/ooniprobe-2.0.0a2.tar.gz (2.2MB)
    100% |████████████████████████████████| 2.2MB 109kB/s 
Collecting pyasn1>=0.1.8 (from ooniprobe===2.0.0a2)
  Using cached pyasn1-0.1.9-py2.py3-none-any.whl
Requirement already satisfied (use --upgrade to upgrade): setuptools>=11.3 in ./venv-ooniprobe-agent-alpha/lib/python2.7/site-packages (from ooniprobe===2.0.0a2)
Collecting PyYAML>=3.10 (from ooniprobe===2.0.0a2)
  Using cached PyYAML-3.11.zip
Collecting Twisted>=13.2.0 (from ooniprobe===2.0.0a2)
  Using cached Twisted-16.3.0.tar.bz2
Collecting ipaddr>=2.1.10 (from ooniprobe===2.0.0a2)
  Using cached ipaddr-2.1.11.tar.gz
Collecting pyOpenSSL>=0.15.1 (from ooniprobe===2.0.0a2)
  Using cached pyOpenSSL-16.0.0-py2.py3-none-any.whl
Collecting geoip (from ooniprobe===2.0.0a2)
  Using cached GeoIP-1.3.2.tar.gz
Collecting txtorcon>=0.7 (from ooniprobe===2.0.0a2)
  Using cached txtorcon-0.15.1-py2-none-any.whl
Collecting txsocksx>=0.0.2 (from ooniprobe===2.0.0a2)
  Using cached txsocksx-1.15.0.2-py2-none-any.whl
Collecting scapy>=2.2.0 (from ooniprobe===2.0.0a2)
  Using cached scapy-2.3.2.tar.gz
Collecting pypcap>=1.1 (from ooniprobe===2.0.0a2)
  Using cached pypcap-1.1.5.tar.gz
Collecting service-identity (from ooniprobe===2.0.0a2)
  Downloading service_identity-16.0.0-py2.py3-none-any.whl
Collecting pydumbnet (from ooniprobe===2.0.0a2)
  Downloading pydumbnet-1.12.1.tar.gz
Collecting zope.interface (from ooniprobe===2.0.0a2)
  Downloading zope.interface-4.2.0.tar.gz (146kB)
    100% |████████████████████████████████| 153kB 53kB/s 
Collecting certifi (from ooniprobe===2.0.0a2)
  Downloading certifi-2016.8.8-py2.py3-none-any.whl (384kB)
    100% |████████████████████████████████| 389kB 47kB/s 
Collecting klein (from ooniprobe===2.0.0a2)
  Downloading klein-15.3.1-py2.py3-none-any.whl
Collecting cryptography>=1.3 (from pyOpenSSL>=0.15.1->ooniprobe===2.0.0a2)
  Downloading cryptography-1.4.tar.gz (399kB)
    100% |████████████████████████████████| 409kB 60kB/s 
Collecting six>=1.5.2 (from pyOpenSSL>=0.15.1->ooniprobe===2.0.0a2)
  Downloading six-1.10.0-py2.py3-none-any.whl
Collecting ipaddress>=1.0.16 (from txtorcon>=0.7->ooniprobe===2.0.0a2)
  Downloading ipaddress-1.0.16-py27-none-any.whl
Collecting Parsley>=1.2 (from txsocksx>=0.0.2->ooniprobe===2.0.0a2)
  Downloading Parsley-1.3-py2.py3-none-any.whl (88kB)
    100% |████████████████████████████████| 92kB 32kB/s 
Collecting pyasn1-modules (from service-identity->ooniprobe===2.0.0a2)
  Downloading pyasn1_modules-0.0.8-py2.py3-none-any.whl
Collecting attrs (from service-identity->ooniprobe===2.0.0a2)
  Downloading attrs-16.0.0-py2.py3-none-any.whl
Collecting werkzeug (from klein->ooniprobe===2.0.0a2)
  Downloading Werkzeug-0.11.10-py2.py3-none-any.whl (306kB)
    100% |████████████████████████████████| 307kB 40kB/s 
Collecting idna>=2.0 (from cryptography>=1.3->pyOpenSSL>=0.15.1->ooniprobe===2.0.0a2)
  Downloading idna-2.1-py2.py3-none-any.whl (54kB)
    100% |████████████████████████████████| 61kB 27kB/s 
Collecting enum34 (from cryptography>=1.3->pyOpenSSL>=0.15.1->ooniprobe===2.0.0a2)
  Downloading enum34-1.1.6-py2-none-any.whl
Collecting cffi>=1.4.1 (from cryptography>=1.3->pyOpenSSL>=0.15.1->ooniprobe===2.0.0a2)
  Downloading cffi-1.7.0-cp27-cp27mu-manylinux1_x86_64.whl (383kB)
    100% |████████████████████████████████| 389kB 46kB/s 
Collecting pycparser (from cffi>=1.4.1->cryptography>=1.3->pyOpenSSL>=0.15.1->ooniprobe===2.0.0a2)
  Downloading pycparser-2.14.tar.gz (223kB)
    100% |████████████████████████████████| 225kB 41kB/s 
Building wheels for collected packages: ooniprobe, PyYAML, Twisted, ipaddr, geoip, scapy, pypcap, pydumbnet, zope.interface, cryptography, pycparser
  Running setup.py bdist_wheel for ooniprobe ... error
  Complete output from command /home/shirish/venv-ooniprobe-agent-alpha/bin/python2 -u -c "import setuptools, tokenize;__file__='/tmp/pip-FHK508-build/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /tmp/tmppawHO4pip-wheel- --python-tag cp27:
  /home/shirish/venv-ooniprobe-agent-alpha/lib/python2.7/site-packages/setuptools/dist.py:364: UserWarning: Normalizing '2.0.0-alpha.2' to '2.0.0a2'
    normalized_version,
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-x86_64-2.7
  creating build/lib.linux-x86_64-2.7/ooni
  copying ooni/tasks.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/settings.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/resources.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/reporter.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/otime.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/nettest.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/measurements.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/managers.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/geoip.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/errors.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/director.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/constants.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/backend_client.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/__init__.py -> build/lib.linux-x86_64-2.7/ooni
  creating build/lib.linux-x86_64-2.7/ooni/agent
  copying ooni/agent/scheduler.py -> build/lib.linux-x86_64-2.7/ooni/agent
  copying ooni/agent/agent.py -> build/lib.linux-x86_64-2.7/ooni/agent
  copying ooni/agent/__init__.py -> build/lib.linux-x86_64-2.7/ooni/agent
  creating build/lib.linux-x86_64-2.7/ooni/common
  copying ooni/common/txextra.py -> build/lib.linux-x86_64-2.7/ooni/common
  copying ooni/common/tcp_utils.py -> build/lib.linux-x86_64-2.7/ooni/common
  copying ooni/common/http_utils.py -> build/lib.linux-x86_64-2.7/ooni/common
  copying ooni/common/__init__.py -> build/lib.linux-x86_64-2.7/ooni/common
  creating build/lib.linux-x86_64-2.7/ooni/contrib
  copying ooni/contrib/croniter.py -> build/lib.linux-x86_64-2.7/ooni/contrib
  copying ooni/contrib/__init__.py -> build/lib.linux-x86_64-2.7/ooni/contrib
  creating build/lib.linux-x86_64-2.7/ooni/contrib/dateutil
  copying ooni/contrib/dateutil/relativedelta.py -> build/lib.linux-x86_64-2.7/ooni/contrib/dateutil
  copying ooni/contrib/dateutil/__init__.py -> build/lib.linux-x86_64-2.7/ooni/contrib/dateutil
  creating build/lib.linux-x86_64-2.7/ooni/contrib/dateutil/tz
  copying ooni/contrib/dateutil/tz/win.py -> build/lib.linux-x86_64-2.7/ooni/contrib/dateutil/tz
  copying ooni/contrib/dateutil/tz/tz.py -> build/lib.linux-x86_64-2.7/ooni/contrib/dateutil/tz
  copying ooni/contrib/dateutil/tz/_common.py -> build/lib.linux-x86_64-2.7/ooni/contrib/dateutil/tz
  copying ooni/contrib/dateutil/tz/__init__.py -> build/lib.linux-x86_64-2.7/ooni/contrib/dateutil/tz
  creating build/lib.linux-x86_64-2.7/ooni/deck
  copying ooni/deck/store.py -> build/lib.linux-x86_64-2.7/ooni/deck
  copying ooni/deck/legacy.py -> build/lib.linux-x86_64-2.7/ooni/deck
  copying ooni/deck/deck.py -> build/lib.linux-x86_64-2.7/ooni/deck
  copying ooni/deck/backend.py -> build/lib.linux-x86_64-2.7/ooni/deck
  copying ooni/deck/__init__.py -> build/lib.linux-x86_64-2.7/ooni/deck
  creating build/lib.linux-x86_64-2.7/ooni/kit
  copying ooni/kit/domclass.py -> build/lib.linux-x86_64-2.7/ooni/kit
  copying ooni/kit/daphn3.py -> build/lib.linux-x86_64-2.7/ooni/kit
  copying ooni/kit/__init__.py -> build/lib.linux-x86_64-2.7/ooni/kit
  creating build/lib.linux-x86_64-2.7/ooni/nettests
  copying ooni/nettests/__init__.py -> build/lib.linux-x86_64-2.7/ooni/nettests
  creating build/lib.linux-x86_64-2.7/ooni/nettests/manipulation
  copying ooni/nettests/manipulation/traceroute.py -> build/lib.linux-x86_64-2.7/ooni/nettests/manipulation
  copying ooni/nettests/manipulation/http_invalid_request_line.py -> build/lib.linux-x86_64-2.7/ooni/nettests/manipulation
  copying ooni/nettests/manipulation/http_host.py -> build/lib.linux-x86_64-2.7/ooni/nettests/manipulation
  copying ooni/nettests/manipulation/http_header_field_manipulation.py -> build/lib.linux-x86_64-2.7/ooni/nettests/manipulation
  copying ooni/nettests/manipulation/dns_spoof.py -> build/lib.linux-x86_64-2.7/ooni/nettests/manipulation
  copying ooni/nettests/manipulation/captiveportal.py -> build/lib.linux-x86_64-2.7/ooni/nettests/manipulation
  copying ooni/nettests/manipulation/__init__.py -> build/lib.linux-x86_64-2.7/ooni/nettests/manipulation
  creating build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/tls_handshake.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/squid.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/script.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/parasitictraceroute.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/keyword_filtering.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/http_uk_mobile_networks.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/http_trix.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/http_keyword_filtering.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/http_filtering_bypassing.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/domclass_collector.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/dns_injection.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/daphne.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/chinatrigger.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/__init__.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  creating build/lib.linux-x86_64-2.7/ooni/nettests/scanning
  copying ooni/nettests/scanning/http_url_list.py -> build/lib.linux-x86_64-2.7/ooni/nettests/scanning
  copying ooni/nettests/scanning/__init__.py -> build/lib.linux-x86_64-2.7/ooni/nettests/scanning
  creating build/lib.linux-x86_64-2.7/ooni/nettests/blocking
  copying ooni/nettests/blocking/web_connectivity.py -> build/lib.linux-x86_64-2.7/ooni/nettests/blocking
  copying ooni/nettests/blocking/vanilla_tor.py -> build/lib.linux-x86_64-2.7/ooni/nettests/blocking
  copying ooni/nettests/blocking/tcp_connect.py -> build/lib.linux-x86_64-2.7/ooni/nettests/blocking
  copying ooni/nettests/blocking/meek_fronted_requests.py -> build/lib.linux-x86_64-2.7/ooni/nettests/blocking
  copying ooni/nettests/blocking/http_requests.py -> build/lib.linux-x86_64-2.7/ooni/nettests/blocking
  copying ooni/nettests/blocking/dns_consistency.py -> build/lib.linux-x86_64-2.7/ooni/nettests/blocking
  copying ooni/nettests/blocking/bridge_reachability.py -> build/lib.linux-x86_64-2.7/ooni/nettests/blocking
  copying ooni/nettests/blocking/__init__.py -> build/lib.linux-x86_64-2.7/ooni/nettests/blocking
  creating build/lib.linux-x86_64-2.7/ooni/nettests/third_party
  copying ooni/nettests/third_party/psiphon.py -> build/lib.linux-x86_64-2.7/ooni/nettests/third_party
  copying ooni/nettests/third_party/openvpn.py -> build/lib.linux-x86_64-2.7/ooni/nettests/third_party
  copying ooni/nettests/third_party/netalyzr.py -> build/lib.linux-x86_64-2.7/ooni/nettests/third_party
  copying ooni/nettests/third_party/lantern.py -> build/lib.linux-x86_64-2.7/ooni/nettests/third_party
  copying ooni/nettests/third_party/__init__.py -> build/lib.linux-x86_64-2.7/ooni/nettests/third_party
  creating build/lib.linux-x86_64-2.7/ooni/scripts
  copying ooni/scripts/ooniresources.py -> build/lib.linux-x86_64-2.7/ooni/scripts
  copying ooni/scripts/oonireport.py -> build/lib.linux-x86_64-2.7/ooni/scripts
  copying ooni/scripts/ooniprobe_agent.py -> build/lib.linux-x86_64-2.7/ooni/scripts
  copying ooni/scripts/ooniprobe.py -> build/lib.linux-x86_64-2.7/ooni/scripts
  copying ooni/scripts/oonideckgen.py -> build/lib.linux-x86_64-2.7/ooni/scripts
  copying ooni/scripts/__init__.py -> build/lib.linux-x86_64-2.7/ooni/scripts
  creating build/lib.linux-x86_64-2.7/ooni/templates
  copying ooni/templates/tcpt.py -> build/lib.linux-x86_64-2.7/ooni/templates
  copying ooni/templates/scapyt.py -> build/lib.linux-x86_64-2.7/ooni/templates
  copying ooni/templates/process.py -> build/lib.linux-x86_64-2.7/ooni/templates
  copying ooni/templates/httpt.py -> build/lib.linux-x86_64-2.7/ooni/templates
  copying ooni/templates/dnst.py -> build/lib.linux-x86_64-2.7/ooni/templates
  copying ooni/templates/__init__.py -> build/lib.linux-x86_64-2.7/ooni/templates
  creating build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_utils.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_txscapy.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_trueheaders.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_templates.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_socks.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_settings.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_safe_represent.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_resources.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_reporter.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_oonireport.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_oonideckgen.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_oonicli.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_onion.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_nettest.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_mutate.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_managers.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_geoip.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_errors.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_director.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_deck.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_common.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_backend_client.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/mocks.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/disable_test_dns.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/bases.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/__init__.py -> build/lib.linux-x86_64-2.7/ooni/tests
  creating build/lib.linux-x86_64-2.7/ooni/ui
  copying ooni/ui/cli.py -> build/lib.linux-x86_64-2.7/ooni/ui
  copying ooni/ui/__init__.py -> build/lib.linux-x86_64-2.7/ooni/ui
  creating build/lib.linux-x86_64-2.7/ooni/ui/web
  copying ooni/ui/web/web.py -> build/lib.linux-x86_64-2.7/ooni/ui/web
  copying ooni/ui/web/server.py -> build/lib.linux-x86_64-2.7/ooni/ui/web
  copying ooni/ui/web/__init__.py -> build/lib.linux-x86_64-2.7/ooni/ui/web
  creating build/lib.linux-x86_64-2.7/ooni/utils
  copying ooni/utils/txscapy.py -> build/lib.linux-x86_64-2.7/ooni/utils
  copying ooni/utils/socks.py -> build/lib.linux-x86_64-2.7/ooni/utils
  copying ooni/utils/onion.py -> build/lib.linux-x86_64-2.7/ooni/utils
  copying ooni/utils/net.py -> build/lib.linux-x86_64-2.7/ooni/utils
  copying ooni/utils/log.py -> build/lib.linux-x86_64-2.7/ooni/utils
  copying ooni/utils/__init__.py -> build/lib.linux-x86_64-2.7/ooni/utils
  running egg_info
  writing requirements to ooniprobe.egg-info/requires.txt
  writing ooniprobe.egg-info/PKG-INFO
  writing top-level names to ooniprobe.egg-info/top_level.txt
  writing dependency_links to ooniprobe.egg-info/dependency_links.txt
  writing entry points to ooniprobe.egg-info/entry_points.txt
  warning: manifest_maker: standard file '-c' not found

  reading manifest file 'ooniprobe.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  writing manifest file 'ooniprobe.egg-info/SOURCES.txt'
  copying ooni/settings.ini -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/ui/consent-form.md -> build/lib.linux-x86_64-2.7/ooni/ui
  creating build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/0c4500a9d203a33bd879a9a0bee1190d.woff -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/1dc35d25e61d819a9c357074014867ab.ttf -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/25a32416abee198dd821b0b17a198a8f.eot -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/3de79d2eb33e18bba8f5f5834a3d9d05.otf -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/448c34a56d699c29117adc64c43affeb.woff2 -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/5310ca5fb41a915987df5663660da770.otf -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/78342dfad83c591ee5e926f2ffbd0671.woff -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/7dd0ad25580893d980bbf0475f88aead.otf -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/7e5b1b977ba8a582d81367d2940e8150.woff -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/7f721a571194837f629b6dd86a703ca5.eot -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/89889688147bd7575d6327160d64e760.svg -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/a043b97f0bac1546f96bc31abd6956bb.woff -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/app.bundle.js -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/app.bundle.js.map -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/b78a2d32658068a52eab4b7f8f7d366e.woff -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/bc21a555f392171b222bab4097344850.svg -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/c8ddf1e5e5bf3682bc7bebf30f394148.woff -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/ce51bc9d6fb58706a01f11db88b8b5df.svg -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/d7c639084f684d66a1bc66855d193ed8.svg -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/e18bbf611f2a2e43afc071aa2f4e1512.ttf -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/e5c78e2789ec748d8c7f5adccad90e0b.woff -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/e6cf7c6ec7c2d6f670ae9d762604cb0b.woff2 -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/f4769f9bdb7466be65088239c12046d1.eot -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/fa2772327f55d8198301fdb8bcfc8158.woff -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/index.html -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  installing to build/bdist.linux-x86_64/wheel
  running install
  Checking .pth file support in build/bdist.linux-x86_64/wheel/
  /home/shirish/venv-ooniprobe-agent-alpha/bin/python2 -E -c pass
  TEST FAILED: build/bdist.linux-x86_64/wheel/ does NOT support .pth files
  error: bad install directory or PYTHONPATH

  You are attempting to install a package to a directory that is not
  on PYTHONPATH and which Python does not read ".pth" files from.  The
  installation directory you specified (via --install-dir, --prefix, or
  the distutils default setting) was:

      build/bdist.linux-x86_64/wheel/

  and your PYTHONPATH environment variable currently contains:

      ''

  Here are some of your options for correcting the problem:

  * You can choose a different installation directory, i.e., one that is
    on PYTHONPATH or supports .pth files

  * You can add the installation directory to the PYTHONPATH environment
    variable.  (It must then also be on PYTHONPATH whenever you run
    Python and want to use the package(s) you are installing.)

  * You can set up the installation directory to support ".pth" files by
    using one of the approaches described here:

    https://pythonhosted.org/setuptools/easy_install.html#custom-installation-locations

  Please make the appropriate changes for your system and try again.

  ----------------------------------------
  Failed building wheel for ooniprobe
  Running setup.py clean for ooniprobe
  Running setup.py bdist_wheel for PyYAML ... done
  Stored in directory: /home/shirish/.cache/pip/wheels/4a/bf/14/d79994d19a59d4f73efdafb8682961f582d45ed6b459420346
  Running setup.py bdist_wheel for Twisted ... done
  Stored in directory: /home/shirish/.cache/pip/wheels/15/de/04/8cc532a5dc14976d4cff2743eddc5c7ac50b53b097a7c059f4
  Running setup.py bdist_wheel for ipaddr ... done
  Stored in directory: /home/shirish/.cache/pip/wheels/58/de/20/928e64e591abff7374a8e77e19a765b1572c25d9102c42f8b2
  Running setup.py bdist_wheel for geoip ... done
  Stored in directory: /home/shirish/.cache/pip/wheels/00/d5/bd/53a411cf037e2781f73270c592309a950a407c0722fb84ef1c
  Running setup.py bdist_wheel for scapy ... done
  Stored in directory: /home/shirish/.cache/pip/wheels/64/d1/83/e38a1301a91516ccb19ad5177ff874fae13889a16dc40d7b0f
  Running setup.py bdist_wheel for pypcap ... done
  Stored in directory: /home/shirish/.cache/pip/wheels/0f/f9/bf/bfe534a594484cbb7f5919bc58e71212d56dd6fe7e36ff9f3f
  Running setup.py bdist_wheel for pydumbnet ... done
  Stored in directory: /home/shirish/.cache/pip/wheels/9f/cf/b6/5e8064b5d75d368a1a4aa74ea8313685cbf2e1b4e86dd03a92
  Running setup.py bdist_wheel for zope.interface ... done
  Stored in directory: /home/shirish/.cache/pip/wheels/20/a2/bc/74fe87cee17134f5219ba01fe82dd8c10998377e0fb910bb22
  Running setup.py bdist_wheel for cryptography ... done
  Stored in directory: /home/shirish/.cache/pip/wheels/f6/6c/21/11ec069285a52d7fa8c735be5fc2edfb8b24012c0f78f93d20
  Running setup.py bdist_wheel for pycparser ... done
  Stored in directory: /home/shirish/.cache/pip/wheels/9b/f4/2e/d03e949a551719a1ffcb659f2c63d8444f4df12e994ce52112
Successfully built PyYAML Twisted ipaddr geoip scapy pypcap pydumbnet zope.interface cryptography pycparser
Failed to build ooniprobe
Installing collected packages: pyasn1, PyYAML, zope.interface, Twisted, ipaddr, idna, six, enum34, ipaddress, pycparser, cffi, cryptography, pyOpenSSL, geoip, Parsley, txsocksx, txtorcon, scapy, pypcap, pyasn1-modules, attrs, service-identity, pydumbnet, certifi, werkzeug, klein, ooniprobe
  Running setup.py install for ooniprobe ... done
  Could not find .egg-info directory in install record for ooniprobe===2.0.0a2 from https://github.com/TheTorProject/ooni-probe/releases/download/v2.0.0-alpha.2/ooniprobe-2.0.0a2.tar.gz
Successfully installed Parsley-1.3 PyYAML-3.11 Twisted-16.3.0 attrs-16.0.0 certifi-2016.8.8 cffi-1.7.0 cryptography-1.4 enum34-1.1.6 geoip-1.3.2 idna-2.1 ipaddr-2.1.11 ipaddress-1.0.16 klein-15.3.1 ooniprobe pyOpenSSL-16.0.0 pyasn1-0.1.9 pyasn1-modules-0.0.8 pycparser-2.14 pydumbnet-1.12.1 pypcap-1.1.5 scapy-2.3.2 service-identity-16.0.0 six-1.10.0 txsocksx-1.15.0.2 txtorcon-0.15.1 werkzeug-0.11.10 zope.interface-4.2.0

So the only failures seem to be -

Building wheels for collected packages: ooniprobe, PyYAML, Twisted, ipaddr, geoip, scapy, pypcap, pydumbnet, zope.interface, cryptography, pycparser
  Running setup.py bdist_wheel for ooniprobe ... error

Checking .pth file support in build/bdist.linux-x86_64/wheel/
  /home/shirish/venv-ooniprobe-agent-alpha/bin/python2 -E -c pass
  TEST FAILED: build/bdist.linux-x86_64/wheel/ does NOT support .pth files
  error: bad install directory or PYTHONPATH

  You are attempting to install a package to a directory that is not
  on PYTHONPATH and which Python does not read ".pth" files from.  The
  installation directory you specified (via --install-dir, --prefix, or
  the distutils default setting) was:

      build/bdist.linux-x86_64/wheel/

  and your PYTHONPATH environment variable currently contains:

      ''

  Here are some of your options for correcting the problem:

  * You can choose a different installation directory, i.e., one that is
    on PYTHONPATH or supports .pth files

  * You can add the installation directory to the PYTHONPATH environment
    variable.  (It must then also be on PYTHONPATH whenever you run
    Python and want to use the package(s) you are installing.)

  * You can set up the installation directory to support ".pth" files by
    using one of the approaches described here:

    https://pythonhosted.org/setuptools/easy_install.html#custom-installation-locations

   Please make the appropriate changes for your system and try again.

and finally

  ----------------------------------------
  Failed building wheel for ooniprobe

Could not find .egg-info directory in install record for ooniprobe===2.0.0a2 from https://github.com/TheTorProject/ooni-probe/releases/download/v2.0.0-alpha.2/ooniprobe-2.0.0a2.tar.gz

The above probably gives some more insight.

@shirishag75
Copy link
Author

Just to make sure ( I'm no python user/geek) . I am running zsh hence the weird CLI interface -

(venv-ooniprobe-agent-alpha) ┌─[shirish@debian] - [~] - [10094]
└─[$] source ~/venv-ooniprobe-agent-alpha/bin/activate

(venv-ooniprobe-agent-alpha) ┌─[shirish@debian] - [~] - [10105]
└─[$] python --version     

Python 2.7.12+

@hellais hellais added this to the ooniprobe 2.0.0 milestone Sep 5, 2016
@hellais hellais added the 2.0.0 label Sep 5, 2016
@hellais
Copy link
Member

hellais commented Sep 13, 2016

@shirishag75 sorry for getting back to you so late on this.

Could you perhaps try updating to the latest release candidate and see if the error still presents itself.

I have attempted in a couple of different setups to try to reproduce your error, but without success so far.

Can you also include the version of pip you are using (pip --version)?

You can try the new release candidate with the instructions found here: https://github.com/TheTorProject/ooni-probe/releases/tag/v2.0.0-rc.2

@shirishag75
Copy link
Author

I am going to try it in sometime, will share as to whatever I get. As far as info. about pip is concerned, here are the details -

[$] pip --version                                                                                                                   
pip 8.1.2 from /usr/lib/python2.7/dist-packages (python 2.7)

@shirishag75
Copy link
Author

Still got the same issue - see the whole thing, tried from beginning, dunno if I should have cleaned up something or not -

┌─[shirish@debian] - [~] - [10198]
└─[$] virtualenv ~/venv-ooniprobe-agent-alpha/
Running virtualenv with interpreter /usr/bin/python2
New python executable in /home/shirish/venv-ooniprobe-agent-alpha/bin/python2
Not overwriting existing python script /home/shirish/venv-ooniprobe-agent-alpha/bin/python (you must use /home/shirish/venv-ooniprobe-agent-alpha/bin/python2)
Installing setuptools, pkg_resources, pip, wheel...done.

Maybe I did a mistake here ? Is there a way to clean the before python script ?

┌─[shirish@debian] - [~] - [10199]
└─[$] source ~/venv-ooniprobe-agent-alpha/bin/activate                                                                               
(venv-ooniprobe-agent-alpha) ┌─[shirish@debian] - [~] - [10199]

and then finally -

(venv-ooniprobe-agent-alpha) ┌─[shirish@debian] - [~] - [10200]
└─[$] pip install --upgrade https://github.com/TheTorProject/ooni-probe/releases/download/v2.0.0-rc.2/ooniprobe-2.0.0rc2.tar.gz       [1:11:53]
Collecting https://github.com/TheTorProject/ooni-probe/releases/download/v2.0.0-rc.2/ooniprobe-2.0.0rc2.tar.gz
  Downloading https://github.com/TheTorProject/ooni-probe/releases/download/v2.0.0-rc.2/ooniprobe-2.0.0rc2.tar.gz (2.2MB)
    100% |████████████████████████████████| 2.2MB 21kB/s 
Requirement already up-to-date: pyasn1>=0.1.8 in ./venv-ooniprobe-agent-alpha/lib/python2.7/site-packages (from ooniprobe===2.0.0rc2)
Collecting setuptools>=11.3 (from ooniprobe===2.0.0rc2)
  Using cached setuptools-27.1.2-py2.py3-none-any.whl
Collecting PyYAML>=3.10 (from ooniprobe===2.0.0rc2)
  Downloading PyYAML-3.12.tar.gz (253kB)
    100% |████████████████████████████████| 256kB 102kB/s 
Collecting Twisted>=13.2.0 (from ooniprobe===2.0.0rc2)
  Downloading Twisted-16.4.0.tar.bz2 (3.0MB)
    100% |████████████████████████████████| 3.0MB 74kB/s 
Requirement already up-to-date: ipaddr>=2.1.10 in ./venv-ooniprobe-agent-alpha/lib/python2.7/site-packages (from ooniprobe===2.0.0rc2)
Collecting pyOpenSSL>=0.15.1 (from ooniprobe===2.0.0rc2)
  Downloading pyOpenSSL-16.1.0-py2.py3-none-any.whl (43kB)
    100% |████████████████████████████████| 51kB 130kB/s 
Requirement already up-to-date: geoip in ./venv-ooniprobe-agent-alpha/lib/python2.7/site-packages (from ooniprobe===2.0.0rc2)
Collecting txtorcon>=0.7 (from ooniprobe===2.0.0rc2)
  Downloading txtorcon-0.16.1-py2-none-any.whl (203kB)
    100% |████████████████████████████████| 204kB 127kB/s 
Requirement already up-to-date: txsocksx>=0.0.2 in ./venv-ooniprobe-agent-alpha/lib/python2.7/site-packages (from ooniprobe===2.0.0rc2)
Requirement already up-to-date: scapy>=2.2.0 in ./venv-ooniprobe-agent-alpha/lib/python2.7/site-packages (from ooniprobe===2.0.0rc2)
Requirement already up-to-date: pypcap>=1.1 in ./venv-ooniprobe-agent-alpha/lib/python2.7/site-packages (from ooniprobe===2.0.0rc2)
Requirement already up-to-date: service-identity in ./venv-ooniprobe-agent-alpha/lib/python2.7/site-packages (from ooniprobe===2.0.0rc2)
Requirement already up-to-date: pydumbnet in ./venv-ooniprobe-agent-alpha/lib/python2.7/site-packages (from ooniprobe===2.0.0rc2)
Collecting zope.interface (from ooniprobe===2.0.0rc2)
  Downloading zope.interface-4.3.2.tar.gz (143kB)
    100% |████████████████████████████████| 143kB 100kB/s 
Collecting certifi (from ooniprobe===2.0.0rc2)
  Downloading certifi-2016.8.31-py2.py3-none-any.whl (379kB)
    100% |████████████████████████████████| 389kB 171kB/s 
Requirement already up-to-date: klein in ./venv-ooniprobe-agent-alpha/lib/python2.7/site-packages (from ooniprobe===2.0.0rc2)
Collecting cryptography>=1.3.4 (from pyOpenSSL>=0.15.1->ooniprobe===2.0.0rc2)
  Downloading cryptography-1.5.tar.gz (400kB)
    100% |████████████████████████████████| 409kB 180kB/s 
Requirement already up-to-date: six>=1.5.2 in ./venv-ooniprobe-agent-alpha/lib/python2.7/site-packages (from pyOpenSSL>=0.15.1->ooniprobe===2.0.0rc2)
Collecting ipaddress>=1.0.16 (from txtorcon>=0.7->ooniprobe===2.0.0rc2)
  Downloading ipaddress-1.0.17-py2-none-any.whl
Requirement already up-to-date: Parsley>=1.2 in ./venv-ooniprobe-agent-alpha/lib/python2.7/site-packages (from txsocksx>=0.0.2->ooniprobe===2.0.0rc2)
Requirement already up-to-date: pyasn1-modules in ./venv-ooniprobe-agent-alpha/lib/python2.7/site-packages (from service-identity->ooniprobe===2.0.0rc2)
Collecting attrs (from service-identity->ooniprobe===2.0.0rc2)
  Downloading attrs-16.1.0-py2.py3-none-any.whl
Collecting werkzeug (from klein->ooniprobe===2.0.0rc2)
  Downloading Werkzeug-0.11.11-py2.py3-none-any.whl (306kB)
    100% |████████████████████████████████| 307kB 192kB/s 
Requirement already up-to-date: idna>=2.0 in ./venv-ooniprobe-agent-alpha/lib/python2.7/site-packages (from cryptography>=1.3.4->pyOpenSSL>=0.15.1->ooniprobe===2.0.0rc2)
Requirement already up-to-date: enum34 in ./venv-ooniprobe-agent-alpha/lib/python2.7/site-packages (from cryptography>=1.3.4->pyOpenSSL>=0.15.1->ooniprobe===2.0.0rc2)
Collecting cffi>=1.4.1 (from cryptography>=1.3.4->pyOpenSSL>=0.15.1->ooniprobe===2.0.0rc2)
  Downloading cffi-1.8.2-cp27-cp27mu-manylinux1_x86_64.whl (385kB)
    100% |████████████████████████████████| 389kB 91kB/s 
Requirement already up-to-date: pycparser in ./venv-ooniprobe-agent-alpha/lib/python2.7/site-packages (from cffi>=1.4.1->cryptography>=1.3.4->pyOpenSSL>=0.15.1->ooniprobe===2.0.0rc2)
Building wheels for collected packages: ooniprobe, PyYAML, Twisted, zope.interface, cryptography
  Running setup.py bdist_wheel for ooniprobe ... error
  Complete output from command /home/shirish/venv-ooniprobe-agent-alpha/bin/python2 -u -c "import setuptools, tokenize;__file__='/tmp/pip-BCTMgZ-build/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /tmp/tmpIGQ9Rqpip-wheel- --python-tag cp27:
  /home/shirish/venv-ooniprobe-agent-alpha/lib/python2.7/site-packages/setuptools/dist.py:331: UserWarning: Normalizing '2.0.0-rc.2' to '2.0.0rc2'
    normalized_version,
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-x86_64-2.7
  creating build/lib.linux-x86_64-2.7/ooni
  copying ooni/tasks.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/settings.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/resources.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/reporter.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/otime.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/nettest.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/measurements.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/managers.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/geoip.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/errors.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/director.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/constants.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/backend_client.py -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/__init__.py -> build/lib.linux-x86_64-2.7/ooni
  creating build/lib.linux-x86_64-2.7/ooni/agent
  copying ooni/agent/scheduler.py -> build/lib.linux-x86_64-2.7/ooni/agent
  copying ooni/agent/agent.py -> build/lib.linux-x86_64-2.7/ooni/agent
  copying ooni/agent/__init__.py -> build/lib.linux-x86_64-2.7/ooni/agent
  creating build/lib.linux-x86_64-2.7/ooni/common
  copying ooni/common/txextra.py -> build/lib.linux-x86_64-2.7/ooni/common
  copying ooni/common/tcp_utils.py -> build/lib.linux-x86_64-2.7/ooni/common
  copying ooni/common/http_utils.py -> build/lib.linux-x86_64-2.7/ooni/common
  copying ooni/common/__init__.py -> build/lib.linux-x86_64-2.7/ooni/common
  creating build/lib.linux-x86_64-2.7/ooni/contrib
  copying ooni/contrib/croniter.py -> build/lib.linux-x86_64-2.7/ooni/contrib
  copying ooni/contrib/__init__.py -> build/lib.linux-x86_64-2.7/ooni/contrib
  creating build/lib.linux-x86_64-2.7/ooni/contrib/dateutil
  copying ooni/contrib/dateutil/relativedelta.py -> build/lib.linux-x86_64-2.7/ooni/contrib/dateutil
  copying ooni/contrib/dateutil/__init__.py -> build/lib.linux-x86_64-2.7/ooni/contrib/dateutil
  creating build/lib.linux-x86_64-2.7/ooni/contrib/dateutil/tz
  copying ooni/contrib/dateutil/tz/win.py -> build/lib.linux-x86_64-2.7/ooni/contrib/dateutil/tz
  copying ooni/contrib/dateutil/tz/tz.py -> build/lib.linux-x86_64-2.7/ooni/contrib/dateutil/tz
  copying ooni/contrib/dateutil/tz/_common.py -> build/lib.linux-x86_64-2.7/ooni/contrib/dateutil/tz
  copying ooni/contrib/dateutil/tz/__init__.py -> build/lib.linux-x86_64-2.7/ooni/contrib/dateutil/tz
  creating build/lib.linux-x86_64-2.7/ooni/deck
  copying ooni/deck/store.py -> build/lib.linux-x86_64-2.7/ooni/deck
  copying ooni/deck/legacy.py -> build/lib.linux-x86_64-2.7/ooni/deck
  copying ooni/deck/deck.py -> build/lib.linux-x86_64-2.7/ooni/deck
  copying ooni/deck/backend.py -> build/lib.linux-x86_64-2.7/ooni/deck
  copying ooni/deck/__init__.py -> build/lib.linux-x86_64-2.7/ooni/deck
  creating build/lib.linux-x86_64-2.7/ooni/kit
  copying ooni/kit/domclass.py -> build/lib.linux-x86_64-2.7/ooni/kit
  copying ooni/kit/daphn3.py -> build/lib.linux-x86_64-2.7/ooni/kit
  copying ooni/kit/__init__.py -> build/lib.linux-x86_64-2.7/ooni/kit
  creating build/lib.linux-x86_64-2.7/ooni/nettests
  copying ooni/nettests/__init__.py -> build/lib.linux-x86_64-2.7/ooni/nettests
  creating build/lib.linux-x86_64-2.7/ooni/nettests/manipulation
  copying ooni/nettests/manipulation/traceroute.py -> build/lib.linux-x86_64-2.7/ooni/nettests/manipulation
  copying ooni/nettests/manipulation/http_invalid_request_line.py -> build/lib.linux-x86_64-2.7/ooni/nettests/manipulation
  copying ooni/nettests/manipulation/http_host.py -> build/lib.linux-x86_64-2.7/ooni/nettests/manipulation
  copying ooni/nettests/manipulation/http_header_field_manipulation.py -> build/lib.linux-x86_64-2.7/ooni/nettests/manipulation
  copying ooni/nettests/manipulation/dns_spoof.py -> build/lib.linux-x86_64-2.7/ooni/nettests/manipulation
  copying ooni/nettests/manipulation/captiveportal.py -> build/lib.linux-x86_64-2.7/ooni/nettests/manipulation
  copying ooni/nettests/manipulation/__init__.py -> build/lib.linux-x86_64-2.7/ooni/nettests/manipulation
  creating build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/tls_handshake.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/squid.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/script.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/parasitictraceroute.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/keyword_filtering.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/http_uk_mobile_networks.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/http_trix.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/http_keyword_filtering.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/http_filtering_bypassing.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/domclass_collector.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/dns_injection.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/daphne.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/chinatrigger.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  copying ooni/nettests/experimental/__init__.py -> build/lib.linux-x86_64-2.7/ooni/nettests/experimental
  creating build/lib.linux-x86_64-2.7/ooni/nettests/scanning
  copying ooni/nettests/scanning/http_url_list.py -> build/lib.linux-x86_64-2.7/ooni/nettests/scanning
  copying ooni/nettests/scanning/__init__.py -> build/lib.linux-x86_64-2.7/ooni/nettests/scanning
  creating build/lib.linux-x86_64-2.7/ooni/nettests/blocking
  copying ooni/nettests/blocking/web_connectivity.py -> build/lib.linux-x86_64-2.7/ooni/nettests/blocking
  copying ooni/nettests/blocking/vanilla_tor.py -> build/lib.linux-x86_64-2.7/ooni/nettests/blocking
  copying ooni/nettests/blocking/tcp_connect.py -> build/lib.linux-x86_64-2.7/ooni/nettests/blocking
  copying ooni/nettests/blocking/meek_fronted_requests.py -> build/lib.linux-x86_64-2.7/ooni/nettests/blocking
  copying ooni/nettests/blocking/http_requests.py -> build/lib.linux-x86_64-2.7/ooni/nettests/blocking
  copying ooni/nettests/blocking/dns_consistency.py -> build/lib.linux-x86_64-2.7/ooni/nettests/blocking
  copying ooni/nettests/blocking/bridge_reachability.py -> build/lib.linux-x86_64-2.7/ooni/nettests/blocking
  copying ooni/nettests/blocking/__init__.py -> build/lib.linux-x86_64-2.7/ooni/nettests/blocking
  creating build/lib.linux-x86_64-2.7/ooni/nettests/third_party
  copying ooni/nettests/third_party/psiphon.py -> build/lib.linux-x86_64-2.7/ooni/nettests/third_party
  copying ooni/nettests/third_party/openvpn.py -> build/lib.linux-x86_64-2.7/ooni/nettests/third_party
  copying ooni/nettests/third_party/netalyzr.py -> build/lib.linux-x86_64-2.7/ooni/nettests/third_party
  copying ooni/nettests/third_party/lantern.py -> build/lib.linux-x86_64-2.7/ooni/nettests/third_party
  copying ooni/nettests/third_party/__init__.py -> build/lib.linux-x86_64-2.7/ooni/nettests/third_party
  creating build/lib.linux-x86_64-2.7/ooni/scripts
  copying ooni/scripts/ooniresources.py -> build/lib.linux-x86_64-2.7/ooni/scripts
  copying ooni/scripts/oonireport.py -> build/lib.linux-x86_64-2.7/ooni/scripts
  copying ooni/scripts/ooniprobe_agent.py -> build/lib.linux-x86_64-2.7/ooni/scripts
  copying ooni/scripts/ooniprobe.py -> build/lib.linux-x86_64-2.7/ooni/scripts
  copying ooni/scripts/oonideckgen.py -> build/lib.linux-x86_64-2.7/ooni/scripts
  copying ooni/scripts/__init__.py -> build/lib.linux-x86_64-2.7/ooni/scripts
  creating build/lib.linux-x86_64-2.7/ooni/templates
  copying ooni/templates/tcpt.py -> build/lib.linux-x86_64-2.7/ooni/templates
  copying ooni/templates/scapyt.py -> build/lib.linux-x86_64-2.7/ooni/templates
  copying ooni/templates/process.py -> build/lib.linux-x86_64-2.7/ooni/templates
  copying ooni/templates/httpt.py -> build/lib.linux-x86_64-2.7/ooni/templates
  copying ooni/templates/dnst.py -> build/lib.linux-x86_64-2.7/ooni/templates
  copying ooni/templates/__init__.py -> build/lib.linux-x86_64-2.7/ooni/templates
  creating build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_wui_server.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_utils.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_txscapy.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_trueheaders.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_templates.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_socks.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_settings.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_scheduler.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_safe_represent.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_resources.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_reporter.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_oonireport.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_oonideckgen.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_oonicli.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_onion.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_nettest.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_mutate.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_managers.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_geoip.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_errors.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_director.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_deck.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_common.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/test_backend_client.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/mocks.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/disable_test_dns.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/bases.py -> build/lib.linux-x86_64-2.7/ooni/tests
  copying ooni/tests/__init__.py -> build/lib.linux-x86_64-2.7/ooni/tests
  creating build/lib.linux-x86_64-2.7/ooni/ui
  copying ooni/ui/cli.py -> build/lib.linux-x86_64-2.7/ooni/ui
  copying ooni/ui/__init__.py -> build/lib.linux-x86_64-2.7/ooni/ui
  creating build/lib.linux-x86_64-2.7/ooni/ui/web
  copying ooni/ui/web/web.py -> build/lib.linux-x86_64-2.7/ooni/ui/web
  copying ooni/ui/web/server.py -> build/lib.linux-x86_64-2.7/ooni/ui/web
  copying ooni/ui/web/__init__.py -> build/lib.linux-x86_64-2.7/ooni/ui/web
  creating build/lib.linux-x86_64-2.7/ooni/utils
  copying ooni/utils/txscapy.py -> build/lib.linux-x86_64-2.7/ooni/utils
  copying ooni/utils/socks.py -> build/lib.linux-x86_64-2.7/ooni/utils
  copying ooni/utils/onion.py -> build/lib.linux-x86_64-2.7/ooni/utils
  copying ooni/utils/net.py -> build/lib.linux-x86_64-2.7/ooni/utils
  copying ooni/utils/log.py -> build/lib.linux-x86_64-2.7/ooni/utils
  copying ooni/utils/files.py -> build/lib.linux-x86_64-2.7/ooni/utils
  copying ooni/utils/__init__.py -> build/lib.linux-x86_64-2.7/ooni/utils
  running egg_info
  writing requirements to ooniprobe.egg-info/requires.txt
  writing ooniprobe.egg-info/PKG-INFO
  writing top-level names to ooniprobe.egg-info/top_level.txt
  writing dependency_links to ooniprobe.egg-info/dependency_links.txt
  writing entry points to ooniprobe.egg-info/entry_points.txt
  warning: manifest_maker: standard file '-c' not found

  reading manifest file 'ooniprobe.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  writing manifest file 'ooniprobe.egg-info/SOURCES.txt'
  copying ooni/settings.ini -> build/lib.linux-x86_64-2.7/ooni
  copying ooni/ui/consent-form.md -> build/lib.linux-x86_64-2.7/ooni/ui
  creating build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/0c4500a9d203a33bd879a9a0bee1190d.woff -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/1dc35d25e61d819a9c357074014867ab.ttf -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/25a32416abee198dd821b0b17a198a8f.eot -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/3de79d2eb33e18bba8f5f5834a3d9d05.otf -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/448c34a56d699c29117adc64c43affeb.woff2 -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/5310ca5fb41a915987df5663660da770.otf -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/78342dfad83c591ee5e926f2ffbd0671.woff -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/7dd0ad25580893d980bbf0475f88aead.otf -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/7e5b1b977ba8a582d81367d2940e8150.woff -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/7f721a571194837f629b6dd86a703ca5.eot -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/89889688147bd7575d6327160d64e760.svg -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/a043b97f0bac1546f96bc31abd6956bb.woff -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/app.bundle.js -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/app.bundle.js.map -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/b78a2d32658068a52eab4b7f8f7d366e.woff -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/bc21a555f392171b222bab4097344850.svg -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/c8ddf1e5e5bf3682bc7bebf30f394148.woff -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/ce51bc9d6fb58706a01f11db88b8b5df.svg -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/d7c639084f684d66a1bc66855d193ed8.svg -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/e18bbf611f2a2e43afc071aa2f4e1512.ttf -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/e5c78e2789ec748d8c7f5adccad90e0b.woff -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/e6cf7c6ec7c2d6f670ae9d762604cb0b.woff2 -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/f4769f9bdb7466be65088239c12046d1.eot -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/fa2772327f55d8198301fdb8bcfc8158.woff -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  copying ooni/ui/web/client/index.html -> build/lib.linux-x86_64-2.7/ooni/ui/web/client
  installing to build/bdist.linux-x86_64/wheel
  running install
  Checking .pth file support in build/bdist.linux-x86_64/wheel/
  /home/shirish/venv-ooniprobe-agent-alpha/bin/python2 -E -c pass
  TEST FAILED: build/bdist.linux-x86_64/wheel/ does NOT support .pth files
  error: bad install directory or PYTHONPATH

  You are attempting to install a package to a directory that is not
  on PYTHONPATH and which Python does not read ".pth" files from.  The
  installation directory you specified (via --install-dir, --prefix, or
  the distutils default setting) was:

      build/bdist.linux-x86_64/wheel/

  and your PYTHONPATH environment variable currently contains:

      ''

  Here are some of your options for correcting the problem:

  * You can choose a different installation directory, i.e., one that is
    on PYTHONPATH or supports .pth files

  * You can add the installation directory to the PYTHONPATH environment
    variable.  (It must then also be on PYTHONPATH whenever you run
    Python and want to use the package(s) you are installing.)

  * You can set up the installation directory to support ".pth" files by
    using one of the approaches described here:

    https://pythonhosted.org/setuptools/easy_install.html#custom-installation-locations

  Please make the appropriate changes for your system and try again.

  ----------------------------------------
  Failed building wheel for ooniprobe
  Running setup.py clean for ooniprobe
  Running setup.py bdist_wheel for PyYAML ... done
  Stored in directory: /home/shirish/.cache/pip/wheels/2c/f7/79/13f3a12cd723892437c0cfbde1230ab4d82947ff7b3839a4fc
  Running setup.py bdist_wheel for Twisted ... done
  Stored in directory: /home/shirish/.cache/pip/wheels/e9/f2/26/c683708bde79157a5a2ad66fabc8dbd1771ffeec65abc071d5
  Running setup.py bdist_wheel for zope.interface ... done
  Stored in directory: /home/shirish/.cache/pip/wheels/8c/57/fc/dd66620d3ad2b0e587710faee345ebfd6b75329ebb780df703
  Running setup.py bdist_wheel for cryptography ... done
  Stored in directory: /home/shirish/.cache/pip/wheels/d4/98/43/a428a8aed7285f934d18efd787647455d7ef9a9dda81f22839
Successfully built PyYAML Twisted zope.interface cryptography
Failed to build ooniprobe
Installing collected packages: setuptools, PyYAML, zope.interface, Twisted, ipaddress, cffi, cryptography, pyOpenSSL, txtorcon, certifi, ooniprobe, attrs, werkzeug
  Found existing installation: setuptools 25.2.0
    Uninstalling setuptools-25.2.0:
      Successfully uninstalled setuptools-25.2.0
  Found existing installation: PyYAML 3.11
    Uninstalling PyYAML-3.11:
      Successfully uninstalled PyYAML-3.11
  Found existing installation: zope.interface 4.2.0
    Uninstalling zope.interface-4.2.0:
      Successfully uninstalled zope.interface-4.2.0
  Found existing installation: Twisted 16.3.0
    Uninstalling Twisted-16.3.0:
      Successfully uninstalled Twisted-16.3.0
  Found existing installation: ipaddress 1.0.16
    Uninstalling ipaddress-1.0.16:
      Successfully uninstalled ipaddress-1.0.16
  Found existing installation: cffi 1.7.0
    Uninstalling cffi-1.7.0:
      Successfully uninstalled cffi-1.7.0
  Found existing installation: cryptography 1.4
    Uninstalling cryptography-1.4:
      Successfully uninstalled cryptography-1.4
  Found existing installation: pyOpenSSL 16.0.0
    Uninstalling pyOpenSSL-16.0.0:
      Successfully uninstalled pyOpenSSL-16.0.0
  Found existing installation: txtorcon 0.15.1
    Uninstalling txtorcon-0.15.1:
      Successfully uninstalled txtorcon-0.15.1
  Found existing installation: certifi 2016.8.8
    Uninstalling certifi-2016.8.8:
      Successfully uninstalled certifi-2016.8.8
  Found existing installation: ooniprobe 2.0.0a2
    Uninstalling ooniprobe-2.0.0a2:
      Successfully uninstalled ooniprobe-2.0.0a2
  Running setup.py install for ooniprobe ... done
  Could not find .egg-info directory in install record for ooniprobe===2.0.0rc2 from https://github.com/TheTorProject/ooni-probe/releases/download/v2.0.0-rc.2/ooniprobe-2.0.0rc2.tar.gz
  Found existing installation: attrs 16.0.0
    Uninstalling attrs-16.0.0:
      Successfully uninstalled attrs-16.0.0
  Found existing installation: Werkzeug 0.11.10
    Uninstalling Werkzeug-0.11.10:
      Successfully uninstalled Werkzeug-0.11.10
Successfully installed PyYAML-3.12 Twisted-16.4.0 attrs-16.1.0 certifi-2016.8.31 cffi-1.8.2 cryptography-1.5 ipaddress-1.0.17 ooniprobe pyOpenSSL-16.1.0 setuptools-27.1.2 txtorcon-0.16.1 werkzeug-0.11.11 zope.interface-4.3.2

Hopefully, this can be resolved soonish.

@hellais
Copy link
Member

hellais commented Sep 13, 2016

Can you share the version of pip inside of the virtualenv as well. For some reason it's trying to install it as a wheel and that is leading to it failing for a not found PYTHONPATH.

You can get that by doing:

~/venv-ooniprobe-agent-alpha/bin/pip --version

Or just run pip --version after you have activated the virtualenv.

A temporary workaround to resolve your issue could be to do:

export PYTHONPATH=~/venv-ooniprobe-agent-alpha/lib/python2.7/site-packages/
pip install --upgrade https://github.com/TheTorProject/ooni-probe/releases/download/v2.0.0-rc.2/ooniprobe-2.0.0rc2.tar.gz

@hellais
Copy link
Member

hellais commented Sep 13, 2016

Ok so I have figured out a way to reproduce this issue. pip will attempt to build a wheel for the package if you have the wheel package installed.

It seems like setting the PYTHONPATH doesn't overcome this issue.

I will look more into how we can make our package more wheel friendly, in the meantime if you install wheel you should be able to install it.

You can uninstall wheel with:

pip uninstall wheel

@hellais
Copy link
Member

hellais commented Sep 13, 2016

Ok so I have come to the bottom of this.

Actually the installation is not broken, but ooniprobe will still be installed, however it does print out a sort of scary message, but that is only related to the build of the wheel and it will still manage to run.
You can confirm that is the case if you just fire up ooniprobe-agent with:

ooniprobe-agent start

Now I think we should fix that scary message and even better we should fix wheel builds entirely, however this is currently a bit tricky due to the nature of how our setup.py works.

Until PEP-0426 there is no clean way of having post install hooks. We currently don't really need many post install hooks anymore expect for the ones we are using to manage the update and migration to the new update system for lepidopter based installs. For that reason we can't switch to an entirely supported wheel based setup.

I think as a temporary workaround to fix showing that scary message we could override the bdist_wheel action with some action that has an blank run() method that just prints out some message saying that wheels are not supported. It's not great, but at least it doesn't show that message, that may trick users (and even me) into believing that ooniprobe is not installed and working.

@hellais hellais added enhancement improving existing code or new feature and removed 2.0.0 labels Sep 13, 2016
@hellais hellais changed the title [2.0.0 release] Bug report Get traceback when trying to install the new version in python virtual-env. Make setup.py more wheel friendly Sep 13, 2016
@shirishag75
Copy link
Author

shirishag75 commented Sep 14, 2016

It's the same -

┌─[shirish@debian] - [~] - [10190]
└─[$] source ~/venv-ooniprobe-agent-alpha/bin/activate

(venv-ooniprobe-agent-alpha) ┌─[shirish@debian] - [~] - [10198]
└─[$] ~/venv-ooniprobe-agent-alpha/bin/pip --version

pip 8.1.2 from /home/shirish/venv-ooniprobe-agent-alpha/lib/python2.7/site-packages (python 2.7)

I have one question though, if I do -

pip uninstall wheel

It would just take python-wheel out of the virtualenv and not out of the system as I have -

┌─[shirish@debian] - [10310]
└─[$] aptitude search python-wheel          

i   python-wheel                                                    - built-package format for Python 

As far as ooniprobe-agent is concerned, you are right, it does do the right thing. Now just have to configure ooniprobe to use tor.

@hellais
Copy link
Member

hellais commented Sep 14, 2016

@shirishag75 can you confirm that ooniprobe is working as expected though?

If that is the case I will move the resolution of this user experience related issue to future releases.

Thanks a lot!

@shirishag75
Copy link
Author

@hellais It was working as in I got the startup page on my browser. I have yet to tune it to tor which I'll probably try tomorrow . I haven't started running ooniprobe as I need to fix so that it takes tor and not firefox to show how ooniprobe runs.

@hellais
Copy link
Member

hellais commented Sep 13, 2018

Issue moved to ooni/probe-legacy #22 via ZenHub

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement improving existing code or new feature
Projects
None yet
Development

No branches or pull requests

2 participants