Search code examples
pythonpackagepipdistutilspypi

Uploading to pypi, and downloading with pip


I've written a small tool and uploaded to to pypi (here), but I can't download it using pip. Here is the pip log:

------------------------------------------------------------
c:\python32\scripts\pip-script.py run on 04/11/12 15:53:45
Downloading/unpacking undo

  Getting page http://pypi.python.org/simple/undo
  Could not fetch URL http://pypi.python.org/simple/undo: HTTP Error 301: Moved Permanently - Redirection to url '/simple/undo/' is not allowed
  Will skip URL http://pypi.python.org/simple/undo when looking for download links for undo
  Getting page http://pypi.python.org/simple/
  Real name of requirement undo is undo

  URLs to search for versions for undo:
  * http://pypi.python.org/simple/undo/
  Getting page http://pypi.python.org/simple/undo/
  Getting page http://bitbucket.org/aquavitae/undo
  Analyzing links from page http://pypi.python.org/simple/undo/
    Skipping link http://bitbucket.org/aquavitae/undo (from http://pypi.python.org/simple/undo/); not a file
    Could not parse version from link: https://bitbucket.org/aquavitae/undo/get/latest.tar.gz (from http://pypi.python.org/simple/undo/)
    Skipping link https://bitbucket.org/aquavitae/undo/get/latest.tar.gz (from http://pypi.python.org/simple/undo/); wrong project name (not undo)
  Could not find any downloads that satisfy the requirement undo

No distributions at all found for undo

Exception information:
Traceback (most recent call last):
  File "C:\python32\lib\site-packages\pip\basecommand.py", line 104, in main
    status = self.run(options, args)
  File "C:\python32\lib\site-packages\pip\commands\install.py", line 245, in run
    requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
  File "C:\python32\lib\site-packages\pip\req.py", line 978, in prepare_files
    url = finder.find_requirement(req_to_install, upgrade=self.upgrade)
  File "C:\python32\lib\site-packages\pip\index.py", line 157, in find_requirement
    raise DistributionNotFound('No distributions at all found for %s' % req)
pip.exceptions.DistributionNotFound: No distributions at all found for undo

Can anyone see where I'm going wrong? I am behind a proxy, and I though that this might be the problem but pip has no issue with other packages, just this, so I assume I've somehow packaged it wrong.


Solution

  • I don't know whether its a bug in pip or deliberate, but once I opened up the bitbucket site it worked, despite the fact that the actual file it needed to download (and did download) is hosted on pypi. So if anyone else has this problem, the solution is to make sure that all links on the pypi page are accessible, even if they don't host the download file.