[tahoe-lafs-trac-stream] [Tahoe-LAFS] #2876: tox won't run on ubuntu xenial: python3

Tahoe-LAFS trac at tahoe-lafs.org
Wed Aug 16 06:07:48 UTC 2017


#2876: tox won't run on ubuntu xenial: python3
---------------------------+--------------------
     Reporter:  warner     |      Owner:  daira
         Type:  defect     |     Status:  closed
     Priority:  major      |  Milestone:  1.13.0
    Component:  packaging  |    Version:  1.12.1
   Resolution:  fixed      |   Keywords:
Launchpad Bug:             |
---------------------------+--------------------
Changes (by Brian Warner <warner@…>):

 * status:  new => closed
 * resolution:   => fixed


Comment:

 In [changeset:"04fc0e43f721acb00b0af7544a1a44340acd93ae/trunk"
 04fc0e4/trunk]:
 {{{
 #!CommitTicketReference repository="trunk"
 revision="04fc0e43f721acb00b0af7544a1a44340acd93ae"
 setup.py: use python_requires= to complain about py3, not an exception

 This allows a python3-based tox (as is common on modern debian/ubuntu
 systems) to test our py2-only package. The first thing Tox does is to
 build a
 wheel to install into the target virtualenv (which is a py2-based venv,
 for
 tahoe). But Tox bug (https://github.com/tox-dev/tox/issues/507) in which
 this
 wheel is built with the same python that Tox is using, instead of the
 python
 from the target environment. Our setup.py would see sys.version_info with
 py3
 and launch a crowbar into the works.

 With python_requires=, pip is smart enough to know that it's ok to build
 wheels with the wrong python, but "pip install" still throws a sensible
 error
 message:

 ```
 (ve36) ~/stuff/tahoe/tahoe$ pip install .
 Processing /home/warner/stuff/tahoe/tahoe
 tahoe-lafs requires Python '<3.0' but the running Python is 3.6.1
 ```

 Closes ticket:2876
 }}}

--
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2876#comment:16>
Tahoe-LAFS <https://Tahoe-LAFS.org>
secure decentralized storage


More information about the tahoe-lafs-trac-stream mailing list