This service will be undergoing maintenance at 00:00 UTC, 2016-08-01. It is expected to last about 1 hours
Bug 749378 - python-virtualenv is bundling distribute and pip
python-virtualenv is bundling distribute and pip
Status: NEW
Product: Fedora
Classification: Fedora
Component: python-virtualenv (Show other bugs)
23
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Steve Milner
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2011-10-26 17:01 EDT by Toshio Ernie Kuratomi
Modified: 2016-04-18 06:17 EDT (History)
6 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed:
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)

  None (edit)
Description Toshio Ernie Kuratomi 2011-10-26 17:01:53 EDT
Description of problem:
virtualenv is bundling its own copies of distribute and pip, presumably to install when it creates a virtualenv.  This violates the no bundled libraries rule and can lead to out of date software being placed in the virtualenv.


How reproducible:
Everytime


Steps to Reproduce:
1. rpm -ql python-virtualenv |grep tar.gz
2.
3.
  
Actual results:
/usr/lib/python2.7/site-packages/virtualenv_support/distribute-0.6.14.tar.gz
/usr/lib/python2.7/site-packages/virtualenv_support/pip-0.8.1.tar.gz

Expected results:
No bundled libraries

Additional info:

We have both distribute and pip in Fedora.  Let's figure out how to use those when bootstrapping the virtualenv.
Comment 1 Toshio Ernie Kuratomi 2012-04-10 11:32:37 EDT
Looks like python-virtualenv is also bundling setuptools (which we're not currently shipping in Fedora).
Comment 2 Fedora End Of Life 2013-04-03 13:39:13 EDT
This bug appears to have been reported against 'rawhide' during the Fedora 19 development cycle.
Changing version to '19'.

(As we did not run this process for some time, it could affect also pre-Fedora 19 development
cycle bugs. We are very sorry. It will help us with cleanup during Fedora 19 End Of Life. Thank you.)

More information and reason for this action is here:
https://fedoraproject.org/wiki/BugZappers/HouseKeeping/Fedora19
Comment 3 Till Maas 2013-05-14 05:10:27 EDT
This bug is now more than a year old without any response. The bug is also present in Fedora 17 and at least there it leads to a security vulnerability:

Upstream states at http://www.virtualenv.org/en/latest/ :
| We advise installing virtualenv-1.9 or greater. Prior to version 1.9, the pip included in virtualenv did not not download from PyPI over SSL.

| When using pip to install virtualenv, we advise using pip-1.3 or greater. Prior to version 1.3, pip did not not download from PyPI over SSL.

Fedora 17 ships pip 1.3 but virtualenv 1.7.2 which includes/uses the insecure version 1.1 of pip.
Comment 4 Till Maas 2013-05-14 05:20:23 EDT
The current version (1.9) of virtualenv is not even in Rawhide, therefore the maintainer seems to be nonresponsive, therefore it seems the nonresponive maintainer procedure needs to be invoked:
https://fedoraproject.org/wiki/Policy_for_nonresponsive_package_maintainers

Steve, please reply whether you still intend to maintain virtualenv and/or allow provenpackagers to update virtualenv to 1.9 and/or remove the bundled packages if you do not have the time to address the issues in a timely manner.
Comment 5 Toshio Ernie Kuratomi 2013-05-14 10:44:05 EDT
A second security problem is present in python-pip prior to 1.3.1: https://bugzilla.redhat.com/show_bug.cgi?id=923974
Comment 6 Toshio Ernie Kuratomi 2013-05-14 11:00:35 EDT
I'm going to update the python-virtualenv package in all branches to 1.9.1 as a quick workaround for the security issues.  This will go into rawhide immediately (of course).  I'll push it to f19 ASAP.  For the released Fedora and EPEL branches, I'll leave the packages in the testing repo for a few weeks so that Steve can speak up if he is responsive and wants to object to those being updated.
Comment 7 Steve Milner 2013-05-14 11:13:52 EDT
Please go ahead and update to 1.9.1. I have no objections.
Comment 8 Toshio Ernie Kuratomi 2013-06-06 11:40:13 EDT
Discovered something about the bundling while looking into how to fix the security issues on EPEL5.  If the bundled tarballs are not present, virtualenv will download them from pypi using the system easy_install script.  So that means it might be reasonably easy to resolve the bundling just by rm -rf'ing the tarballs and eggs in %{python_sitelib}/virtualenv_support

This will use the system copy of easy_install to install which has the following ramifications:

* Would place a hard requirement on python-setuptools (which is already the case)
* Upstream virtualenv recommends using pip to bootstrap instead of easy_install because pip uses https to talk to pypi while easy_install uses plain http.
  * That might be possible to implement by adding a Requires: python-pip and patching the following lines to use pip instead of easy_install in virtualenv.py in the install_pip() function:

        easy_install_script = 'easy_install'
    if sys.platform == 'win32':
        easy_install_script = 'easy_install-script.py'
Comment 9 Toshio Ernie Kuratomi 2013-06-06 11:42:05 EDT
Note that I changed to rawhide to show that it is still present there but, as tyll said, this is present in F17 and everything in between as well.
Comment 10 Jan Kurik 2015-07-15 11:13:31 EDT
This bug appears to have been reported against 'rawhide' during the Fedora 23 development cycle.
Changing version to '23'.

(As we did not run this process for some time, it could affect also pre-Fedora 23 development
cycle bugs. We are very sorry. It will help us with cleanup during Fedora 23 End Of Life. Thank you.)

More information and reason for this action is here:
https://fedoraproject.org/wiki/BugZappers/HouseKeeping/Fedora23

Note You need to log in before you can comment on or make changes to this bug.