1

I'n using pip 1.5.1 which worked fine up until today.

Now, I'm trying to install a requirements.txt in a fresh virtualenv, and for many packages it can no longer find specific old version for most packages.

$ pip install django-endless-pagination==1.1 Downloading/unpacking django-endless-pagination==1.1 Could not find a version that satisfies the requirement django-endless-pagination==1.1 (from versions: 2.0) Some externally hosted files were ignored (use --allow-external to allow). Cleaning up... No distributions matching the version for django-endless-pagination==1.1 

What do I need to do to get this to work again? Upgrading my app to use all the latest versions of all its packages is out of the question.

Update: This works fine in pip 1.4.1. It's the newer version of pip that's causing it to fail.

3
  • 1
    Try --allow-external as the message suggests. Commented Jan 27, 2014 at 17:06
  • Further discussion of this issue here: github.com/pypa/pip/issues/1423 Commented Jan 27, 2014 at 19:47
  • --allow-external fails with a different error saying you need to add --allow-unverified, which also fails with a message 'You must give at least one requirement to install' Commented Jan 27, 2014 at 19:48

3 Answers 3

4

From PIP 1.5 changelog:

BACKWARD INCOMPATIBLE

pip no longer will scrape insecure external urls by default nor will it install externally hosted files by default. Users may opt into installing externally hosted or insecure files or urls using --allow-external PROJECT and --allow-unverified PROJECT

So in this case following ought to work the same way as old PIP:

pip install django-endless-pagination==1.1 \ --allow-all-external --allow-unverified django-endless-pagination 

(There is no --allow-all-unverified, each unverified project name must be specified)

In case of using requirements.txt, it should be specified like this:

--allow-external django-endless-pagination --allow-unverified django-endless-pagination django-endless-pagination==1.1 
Sign up to request clarification or add additional context in comments.

3 Comments

This still fails with a message saying to add --allow-unverified, and adding that also fails
So this needs to be added for each and every package in requirements.txt now? Seems nuts that they have to be listed three times.
@LeeSemel: for external install I guess --allow-all-external in requirements.txt would do also. As for unverified, there is no working around that. Verified packages are these, which have their checksum stored in PyPI.
2

In this case, you can use the URL of the appropriate zip file as input to pip install::

pip install https://github.com/frankban/django-endless-pagination/archive/v1.1.zip 

Of course, not every package will have such a URL available, but most do.

I've occasionally used this to install the latest-greatest master, since in some cases the cheeseshop didn't have Python 3 ready packages yet.

Comments

-1

Because the version on PyPI is 2.0 and pip now tries to honor the fact that maintainer wants you to use given version.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.