Skip to content

Master currently broken because of dependency conflict between requests and cryptography #4818

Closed

Description

@GuiTeK

SUMMARY

The ST2 requirements.txt of st2common requires cryptography==2.7 and requests[security]<2.22.0,>=2.21.0. The problem is, requests[security]<2.22.0,>=2.21.0 requires cryptography>=2.8, so there is a dependency conflict.

It's the same kind of problem as #4770.

Pip fails with the following error:

ERROR: pyopenssl 19.1.0 has requirement cryptography>=2.8, but you'll have cryptography 2.7 which is incompatible.

When using a recent version of pip (e.g. 19.3.1), this will cause pip to fail to install the requirements. However, if you try with an old version (e.g. 9.0.3), it will work. I don't know at which specific version of Pip it stops working.

Note: this might be considered urgent because as https://github.com/StackStorm-Exchange/ci uses the master branch of ST2, it is currently breaking CIs (depending on what version of Pip is used by the CI, and maybe the OS?).

STACKSTORM VERSION

Current master branch, bf17325

OS, environment, install method

Ubuntu 16.04

Steps to reproduce the problem

It's easier to reproduce with Docker.

  1. Start a container with the following command: docker run -it ubuntu:16.04 /bin/bash
  2. Run the following commands inside the Docker container:
apt-get update
apt-get install python3 python3-pip python3-dev git build-essential libffi-dev libssl-dev nano
pip3 install virtualenv # To have a newer version of pip easily
virtualenv st2-requests-test
cd st2-requests-test
source ./bin/activate
# Create the st2/requirements.txt file
pip install -r requirements.txt # This will fail

Expected Results

Should correctly install all the dependencies when doing pip install -r requirements.txt.

Actual Results

Pip fails with the following error:

ERROR: pyopenssl 19.1.0 has requirement cryptography>=2.8, but you'll have cryptography 2.7 which is incompatible.

Activity

  1. Kami commented on Nov 19, 2019

    @Kami
    Member

    Thanks for reporting this.

    We will look into a fix and also make sure we use version of pip / tool which fails our main CI if conflicting version of dependencies is used.

  2. self-assigned this
    on Nov 19, 2019
  3. Kami commented on Nov 19, 2019

    @Kami
    Member

    It's worth noting that those errors are not fatal, but I will still look into resolving it and make sure our CI builds fast in such scenarios in the future.

  4. GuiTeK commented on Nov 20, 2019

    @GuiTeK
    Author

    @Kami For us, it makes the CI (https://github.com/StackStorm-Exchange/ci) fail and exit 2
    cc @blag

  5. blag commented on Nov 20, 2019

    @blag
    Contributor

    @GuiTeK Have you tried rerunning the pack CI in the past hour or so? I got the pack CI tests running (some even successfully!) just a few minutes ago. 🤘😄

    Feel free to ping me if you need me to kick/rerun any specific pack CI tests. If you're still having problems I'll reopen this issue.

    I'm currently making sure that the ST2 CI is running and passing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions