[Bug 1626258] [NEW] [SRU] AttributeError: 'Requirement' object has no attribute 'project_name'

Launchpad Bug Tracker 1626258 at bugs.launchpad.net
Wed Oct 19 12:43:19 UTC 2016


You have been subscribed to a public bug by Robie Basak (racb):

[impact]

pip 8.1.1 (xenial) tries to access properties that were dropped from the
Requirement class and when pip's code tries to access
Requirement.project_name fails, this was fixed in 8.1.2.

Any user trying to install a package that triggers the
pkg_resources.VersionConflict exception during will get the error
"AttributeError: 'Requirement' object has no attribute 'project_name'"

[Test Case]

# wget https://pypi.python.org/packages/49/6f/183063f01aae1e025cf0130772b55848750a2f3a89bfa11b385b35d7329d/requests-2.10.0.tar.gz
# wget https://pypi.python.org/packages/2e/ad/e627446492cc374c284e82381215dcd9a0a87c4f6e90e9789afefe6da0ad/requests-2.11.1.tar.gz
# pip install requests-2.10.0.tar.gz
# pip install requests-2.11.1.tar.gz

Expected result:

pip installs requests 2.11.1

Actual result:

pip fails with the following exception

root at pip-x:/home/ubuntu# pip install requests-2.11.1.tar.gz
Processing ./requests-2.11.1.tar.gz
Exception:
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 209, in main
    status = self.run(options, args)
  File "/usr/lib/python2.7/dist-packages/pip/commands/install.py", line 328, in run
    wb.build(autobuilding=True)
  File "/usr/lib/python2.7/dist-packages/pip/wheel.py", line 748, in build
    self.requirement_set.prepare_files(self.finder)
  File "/usr/lib/python2.7/dist-packages/pip/req/req_set.py", line 360, in prepare_files
    ignore_dependencies=self.ignore_dependencies))
  File "/usr/lib/python2.7/dist-packages/pip/req/req_set.py", line 600, in _prepare_file
    req_to_install.check_if_exists()
  File "/usr/lib/python2.7/dist-packages/pip/req/req_install.py", line 1011, in check_if_exists
    self.req.project_name
AttributeError: 'Requirement' object has no attribute 'project_name'
You are using pip version 8.1.1, however version 8.1.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

[Regression Potential]

* None, this change is already part of 8.1.2, and most of the change is
already part of the ubuntu package, there is just one last place where
the code is accessing Requirement.project_name

[Other info]

>From 8e236dd6a09bd2f70f9d4fc886da8c354d4c58f2 Mon Sep 17 00:00:00 2001
From: Donald Stufft <donald at stufft.io>
Date: Wed, 11 Nov 2015 18:51:46 -0500
Subject: [PATCH] Update to use the Requirement class from packaging
https://github.com/pypa/pip/commit/8e236dd6a09bd2f70f9d4fc886da8c354d4c58f2

** Affects: python-pip (Ubuntu)
     Importance: High
     Assignee: Felipe Reyes (freyes)
         Status: Fix Released

** Affects: python-pip (Ubuntu Xenial)
     Importance: High
     Assignee: Felipe Reyes (freyes)
         Status: Fix Committed

** Affects: python-pip (Ubuntu Yakkety)
     Importance: High
     Assignee: Felipe Reyes (freyes)
         Status: Fix Released

** Affects: python-pip (Ubuntu Zesty)
     Importance: Undecided
         Status: New


** Tags: sts sts-sru verification-failed
-- 
[SRU] AttributeError: 'Requirement' object has no attribute 'project_name'
https://bugs.launchpad.net/bugs/1626258
You received this bug notification because you are a member of Ubuntu Sponsors Team, which is subscribed to the bug report.



More information about the Ubuntu-sponsors mailing list