Open WhyNotHugo opened 1 year ago
Huh, installing pip-tools
into a virtualenv, this works. But if I try to install system-wide, it doesn't.
I'm installing it by basically building the wheel and then python3 -m installer dist/*.whl
Couldn't reproduce. See details below.
I can only reproduce with this requirements.in
:
bizdays
celery[redis]
Django~=4.1.0
django-afip
django-ckeditor
django-debug-toolbar
django-inlinecss-redux
django-nested-admin
django-phonenumber-field[phonenumberslite]
django-polymorphic
django-renderpdf
django-storages[boto3]
djangorestframework
googlemaps
ocaclient
Pillow
psycopg2-binary
python-barcode
PyYAML
requests
sentry-sdk
djangorestframework-camel-case
uritemplate # Required for DRF schema support.
django-mptt
django-environ
django-anymail[amazon_ses]
django-payments[mercadopago]
smart-open[s3]
awslambdaric
mangum
PyJWT
rq
# Development
coverage[toml]
ipdb
pytest-cov
pytest-django
pytest-env
numpy
factory-boy
freezegun
pytest-xdist[psutil]
mypy
types-freezegun
types-requests
So I guess the issue is caused by something in the dependency tree, but I've no idea how to figure out which one.
$ podman run -it --rm --net=host docker.io/library/alpine:edge
# apk upgrade
# apk add python3 py3-pip
# python -V
Python 3.11.2
# pip install https://files.pythonhosted.org/packages/source/p/pip-tools/pip-tools-6.12.3.tar.gz
# >requirements.in cat <<EOF
> (paste all reqs)
> EOF
# pip-compile --generate-hashes
That fails while processing awslamdaric
:
Related:
So I looked at the readme and installed build deps (not sure what the alpine alternative is for libcurl4-openssl-dev
though):
# apk add g++ make cmake unzip libcurl
# pip-compile --generate-hashes
This still fails but I think it's due to the curl stuff.
Looking at other issues at https://github.com/aws/aws-lambda-python-runtime-interface-client, I add some more (but not libexecinfo-dev
, as that has been dropped by alpine):
# apk add autoconf automake gcc libffi-dev libtool linux-headers musl-dev openssl-dev
# pip-compile --generate-hashes
That still fails the same way.
I went ahead and added python3-dev
, and it still failed, but did a lot more before that!
# apk add python3-dev
# pip-compile --generate-hashes
I added build-base
and tried again, no luck:
# apk add build-base
# pip-compile --generate-hashes
I added curl
and libpq
:
# apk add curl
# pip-compile --generate-hashes
Still no success. At this point I gave up.
I'll also note that according to https://github.com/aws/aws-lambda-python-runtime-interface-client
The Python Runtime Interface Client package currently supports Python versions:
- 3.7.x up to and including 3.9.x
I think the main issue (at least based on the output of my initial post), is that there's no indication of which wheel is failing to build in pip-tool
's error output.
I'll try and provide better repro instructions though; I have other system packages, so the issue you're hitting is not the same as mine.
Environment Versions
Alpine Linux Edge
Python 3.11.2
pip 23.0.1 from /usr/lib/python3.11/site-packages/pip (python 3.11)
pip-compile, version 0.0.0
. Built from https://github.com/jazzband/pip-tools/archive/6.12.3/pip-tools-6.12.3.tar.gzAlso tried building from https://files.pythonhosted.org/packages/source/p/pip-tools/pip-tools-6.12.3.tar.gz, output is also:
pip-compile, version 0.0.0
.Steps to replicate
pip-compile --generate-hashes requirements.in
Actual result
I do have
PIP_REQUIRE_VIRTUALENV=true
, but even with a virtualenv set, I still get this error.