• 
      

    Bump the cryptography dependency and add an explicit pyOpenSSL dependency.

    Review Request #12863 — Created March 2, 2023 and submitted

    Information

    Review Board
    release-5.0.x

    Reviewers

    We've historically been pretty flexible with the version of
    cryptography installed, leaving more explicit version ranges up to
    other dependencies. However, a situation was found where older versions
    of pyOpenSSL outright break the system (impacting pip) when
    newer versions of cryptography are installed, and that can break
    Review Board, leading to an install nightmare.

    This is documented here: https://github.com/pyca/pyopenssl/issues/1143

    While we don't use pyOpenSSL ourselves, we want to ease installation.
    The easiest way to do this is to ensure we're depending on both a modern
    cryptograph (which will also help us avoid Python version breakages
    down the road), and a compatible pyOpenSSL.

    pyOpenSSL is a pure-Python package, and doesn't add any new
    dependencies we don't already explicitly or implicitly depend on, so
    it should be fairly safe.

    Installed the dependencies on all supported versions of Python.

    Verified that pyOpenSSL didn't result in any additional packages
    installed.

    Summary ID
    Bump the cryptography dependency and add an explicit pyOpenSSL dependency.
    We've historically been pretty flexible with the version of `cryptography` installed, leaving more explicit version ranges up to other dependencies. However, a situation was found where older versions of `pyOpenSSL` outright break the system (impacting `pip`) when newer versions of `cryptography` are installed, and that can break Review Board, leading to an install nightmare. This is documented here: https://github.com/pyca/pyopenssl/issues/1143 While we don't use `pyOpenSSL` ourselves, we want to ease installation. The easiest way to do this is to ensure we're depending on both a modern `cryptograph` (which will also help us avoid Python version breakages down the road), and a compatible `pyOpenSSL`.
    35ef0f8eafa72188757b8090b35ab6a74babe106
    david
    1. Ship It!
    2. 
        
    chipx86
    Review request changed
    Status:
    Completed
    Change Summary:
    Pushed to release-5.0.x (092e5b9)