Pip doesn't find package listed as dependency

When I try installing pyrevolve with pip install -i https://test.pypi.org/simple/ pyrevolve==2.1.2rc4 --no-cache-dir , it fails at “distutils.errors.DistutilsError: Could not find suitable distribution for Requirement.parse(‘pyzfp==0.1.7rc1’)”. However, “pip install -i https://test.pypi.org/simple/ pyzfp==0.1.7rc1” succeeds. Repeating the pyrevolve install command immediately after (in case it was an index caching issue) also fails. I’m sure I’m missing something obvious. Can someone please help me?
I’m the author/maintainer of both packages.

By default, pre-releases are not considered.

Use pip install --pre ... or include a pre-release marker in your requirement (e.g. requires: pyzfp ~= 0.1.7rc1) to make pip consider the non-final release.

2 Likes

Thank you @merwok! That solved my immediate problem. Perhaps you can help me with the larger issue I’m trying to debug.

When I try:

pip install -i Simple index pyrevolve==2.1.2rc5 --no-cache-dir -vvv

I get

distutils.errors.DistutilsError: Setup script exited with error: SandboxViolation: mkdir(‘/private/var/folders/3l/2zfpyh3n5c357t10vpx38ygm0000gn/T/easy_install-kV1Z2Y/lib’, 511) {}

This error disappears if I install pyzfp first so I think it’s coming from there, even though the logs from the failed pyrevolve installation (with -vvv) don’t seem to mention pyzfp. However, a pip install -i https://test.pypi.org/simple/ pyzfp==0.1.7rc1 succeeds without error. I call make from the setup.py of pyzfp so I’m worried this is related to that but I’m finding it hard to debug that code because the logs don’t help me figure out what operation is causing the sandbox violation.

It’s hard to say without links to the setup scripts :slight_smile:

I wonder if one project is using setup_requires? These are messy (they get installed by easy_install instead of pip) and not really recommended anymore.

1 Like