-
Notifications
You must be signed in to change notification settings - Fork 4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PyYAML requires python-dev dependency #2290
Comments
We found that this did not work for us (as our CI also broke) and we had to downgrade to 1.11.18 |
Same here. My CI on Travis is broken now.
|
We have had some success here by running apt-get update && apt-get install -y python-pip libpython-dev
pip install awscli |
@deploymentking Did you get a lot warnings from PyYAML installation? I used: Part of my output:
But it worked. |
@prodis I did yes, but as it did for you, it worked for us too |
Just adding that this also broke our CI and local development. We are pulling the aws cli into a docker container for some setup scripts and the update to 1.11.19 breaks any fresh (no-cache) builds. As a workaround for now, we are pinning our awscli-bundle download to version 1.11.18 by downloading the bundle from https://s3.amazonaws.com/aws-cli/awscli-bundle-1.11.18.zip |
This broke our docker build environments as well. We pinned to 1.11.18 and that has corrected the issue for us:
|
Can anyone confirm if this is still an issue for the latest version of the CLI? We loosened the dependency range on PyYaml so that if you have PyYaml previous installed (>=3.10) we will not try to update it if you had it already installed which was causing issues for users who had PyYaml installed on some of the different versions of Linux. |
@kyleknap That sounds like a different issue than the one reported above (which is the requirement to install python-dev in order to install aws-cli after 1.11.18). Just tried with the latest available bundle installer (looks like 1.11.28) and the install process still says that it requires Python.h for PyYaml (meaning there is still a dependency on python-dev). For my own use case (downloading a file from S3 during the entrypoint script of a docker container), we changed our docker container to replace the aws-cli command we were using with a node script since those containers already have node and the aws-sdk installed. It would be nice to use the aws-cli as it would work the same in our non-nodejs containers, but we at least have a workaround. It looks like the aws documentation has since been updated to state the python-dev dependency. |
@kyleknap Hi, thanks for your response. For now, it works with my CI test since it has For other use case, as @bodnarbm faced, I think it will also break in the future if there's no appropriate version of PyYAML installed. If there is no tough work which is needed with using PyYAML, I personally suggest to use more lightweight YAML library (no Anyway, thank you. |
@kyleknap here is what I just tried: docker run -i -t node:6.9 bash
apt-get update
apt-get -y install unzip python2.7 curl
curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip"
unzip awscli-bundle.zip
./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws and it still breaks, for it to work I had to install |
aws/aws-cli#2290 Signed-off-by: Dapeng Jiao <harper1011@gmail.com>
Still broken for me, need to add libpython-dev |
Needed both |
So the issue here is that PyYAML doesn't correctly detect all failures when determining whether or not to fallback to pure python. We'll need to get this fixed upstream. |
CentOS/RHEL 7 needs |
msys2 (ArchLinux) : |
broken for me still even when including both libpython-dev and python-dev. Ran
snippet of failure:
|
Any updates on this issue? I'm having the same problem. |
This issue occurred yesterday for me on an EC2 instance while installing awscli to a virtual environment. Specifically, |
Same here, broken on Heroku deploy through CircleCI:
|
Funny enough, I have to go back as far as |
I'm having the same issue with Debian(Stretch): Dockerfile:
cat requirements.txt
Output:
|
I am having the same problem with pip install awscli on CircleCI, image python:3. I get the following errors:
I am installing all necessary dependencies with:
|
@antonioned Are you using docker? If so, the newest version of Python (3.7.0) was just released and there is apparently some compatibility issues with PyYAML. We had to explicitly state our box as Hope this helps! |
@jrmeier Yes, thanks Jed! This docker image fixed my problem, hopefully this compatibility issue will be resolved soon. |
On Linux Mint 18:
|
@ConstantinElse run: |
After several hours of troubleshooting this on WSL Ubuntu to no avail, I finally gave up and used this Docker image instead. |
This works for me (based on |
Hi, |
Hi, I tried using the version python:3.9.0a5-alpine3.11 and I start having this issue, but when I downgrade it to to python:3.8.2-alpine3.11 works |
@amaiaeskisabela 3.9 is in alpha and we don't explicitly support it so I wouldn't really expect that one to succeed. From a lot of these posted stack traces it says it succeeds the install of pyyaml at the bottom. The error is during pyyaml's installation it tries to compile optional C extensions for speed ups. In the case where it can't it falls back to a pure python implementation. So there isn't really a hard requirement on the dev tools, it is an optional dependency if you want the speedups. Is anyone having an issue where this is actually failing the install altogether? I don't see any posted stack traces where it actually fails. The only failures posted are from the middle of the logs. In my repro cases it then says it succeeded at the bottom and I can use the CLI just fine. I've also tried every docker image posted in this thread to repro it, and the cli works fine in all of them after building and the rc is 0. |
Hi,
It seems the latest release of
awscli
requires PyYAML as its dependency. I noticed that this dependency breaks my CI test in Ubuntu 14.04.It returned the following error:
I'm wondering, is it possible to use
awscli
viapip install awscli
without adding extrapython-dev
dependency? Or if it's required to use extra dependency, I think it's a good idea to put it in the documentation.Thank you!
The text was updated successfully, but these errors were encountered: