Bug 1465758

Summary: pip3 install <local tgz> fails
Product: [Fedora] Fedora Reporter: Antoine Cotten <hello>
Component: python3Assignee: Charalampos Stratakis <cstratak>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 26CC: bkabrda, cstratak, ishcherb, mcyprian, mhroncok, pviktori, rkuska, tomspur, torsava
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-06-28 15:57:29 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Antoine Cotten 2017-06-28 07:03:39 UTC
Description of problem:

A package built locally with setuptools ('python3 setup.py bdist') fails to install using pip3.


Version-Release number of selected component (if applicable):

python3-3.6.1-7.fc26.x86_64


How reproducible:

Consistently, both within and outside a venv.


Steps to Reproduce:

1. python3 setup.py bdist
2. pip3 install dist/mypackage.tar.gz


Actual results:

❯ pip3 install dist/kOVHernetes-0.0.1.dev0.linux-x86_64.tar.gz -v
Processing ./dist/kOVHernetes-0.0.1.dev0.linux-x86_64.tar.gz
  Running setup.py (path:/tmp/pip-jx6t6b_b-build/setup.py) egg_info for package from file:///home/acotten/Documents/git/kOVHernetes/dist/kOVHernetes-0.0.1.dev0.linux-x86_64.tar.gz
    Running command python setup.py egg_info
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/usr/lib64/python3.6/tokenize.py", line 452, in open
        buffer = _builtin_open(filename, 'rb')
    FileNotFoundError: [Errno 2] No such file or directory: '/tmp/pip-jx6t6b_b-build/setup.py'
Cleaning up...
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-jx6t6b_b-build/
Exception information:
Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/pip/basecommand.py", line 215, in main
    status = self.run(options, args)
  File "/usr/lib/python3.6/site-packages/pip/commands/install.py", line 346, in run
    requirement_set.prepare_files(finder)
  File "/usr/lib/python3.6/site-packages/pip/req/req_set.py", line 380, in prepare_files
    ignore_dependencies=self.ignore_dependencies))
  File "/usr/lib/python3.6/site-packages/pip/req/req_set.py", line 634, in _prepare_file
    abstract_dist.prep_for_dist()
  File "/usr/lib/python3.6/site-packages/pip/req/req_set.py", line 129, in prep_for_dist
    self.req_to_install.run_egg_info()
  File "/usr/lib/python3.6/site-packages/pip/req/req_install.py", line 439, in run_egg_info
    command_desc='python setup.py egg_info')
  File "/usr/lib/python3.6/site-packages/pip/utils/__init__.py", line 707, in call_subprocess
    % (command_desc, proc.returncode, cwd))
pip.exceptions.InstallationError: Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-jx6t6b_b-build/

Comment 1 Tomas Orsava 2017-06-28 11:20:26 UTC
Hi! Could you please provide the sources you're trying to build so we can reproduce the issue? A link to GH will do, for example.

Comment 2 Antoine Cotten 2017-06-28 15:38:09 UTC
Sure Tomas, I'm building https://github.com/antoineco/kOVHernetes.

Comment 3 Miro Hrončok 2017-06-28 15:51:25 UTC
Antoine, what exactly are you trying to achieve trough using `bdist`?

Comment 4 Miro Hrončok 2017-06-28 15:57:29 UTC
Reading https://docs.python.org/3.6/distutils/builtdist.html it seems bdist just calls bdist_dumb and that just creates an archive you are supposed to unpack to your PREFIX, not something that PIP is supposed to install.

Please either create a sdist or bdist_wheel. Both are quite installable with pip (you need python3-wheel to create bdist_wheel).

Comment 5 Antoine Cotten 2017-06-28 18:55:20 UTC
Sorry if I was mistaken and thanks for catching this in the docs. It worked on F25 but this behaviour must simply come from the different version of setuptools that comes with F26.