Closed prettyv closed 6 years ago
I am sorry for the inconvenience and thanks for the wheel document. I will learn more about the wheel.
For now, I temporarily removed the universal wheel to fix the problem. If you still experience problem, --no-cache-dir will work.
pip install itunes-iap -U --no-cache-dir
Thanks, that fixes manual installation for now.
pip-tools still thinks aiohttp is a dependency though (itunes-iap==2.5.0 requires aiodns, aiohttp, prettyexc>=0.6.0, python-dateutil, pytz, requests[security], six
) and thus fails to compile an upgraded requirements.txt. Not quite sure whether that's an issue in pip-tools itself or related to the same problem.
It seems it is related to your local cache of universal wheel. When I try to pip-compile itunes-iap, it shows:
asn1crypto==0.22.0 # via cryptography
certifi==2017.7.27.1 # via requests
cffi==1.10.0 # via cryptography
chardet==3.0.4 # via requests
cryptography==2.0.2 # via pyopenssl, requests
enum34==1.1.6 # via cryptography
idna==2.5 # via cryptography, requests
ipaddress==1.0.18 # via cryptography
itunes-iap==2.5.0
prettyexc==0.6.0 # via itunes-iap
pycparser==2.18 # via cffi
pyopenssl==17.2.0 # via requests
python-dateutil==2.6.1 # via itunes-iap
pytz==2017.2 # via itunes-iap
requests[security]==2.18.3 # via itunes-iap
six==1.10.0 # via cryptography, itunes-iap, prettyexc, pyopenssl, python-dateutil
urllib3==1.22 # via requests
You are right, I tried it on a different machine and it compiles as expected there now, so I must have overlooked something when (manually) cleaning the cache on my main dev machine.
Should we keep this issue open until you looked into using the modern way to specify conditional requirements for universal wheels?
I think this package is very small so not that bad without universal wheel.
After the update to 2.5.0 itunes-iap cannot be upgraded anymore on python versions <3.4.2.
pip2 install --upgrade itunes-iap
tries to install aiohttp, which fails:Most likely the conditional in setup.py isn't working the way you'd expect when using wheels, instead environment markers seem to be the recommended way now: https://wheel.readthedocs.io/en/latest/#defining-conditional-dependencies