Skip to content

Python-bundle-PyPI provides cffi but its dependency chain requires cffi #23688

Description

@xdelaruelle

Python-bundle-PyPI EB file is providing the cffi software but it requires cryptography which in turns requires cffi.

Even if things are working, it creates a non-optimal dependency DAG, that could lead to potential issue if the cffi loaded by cryptography is not the same version as the one provided by Python-bundle-PyPI.

Looking at the recent toolchains:

  • Python-bundle-PyPI-2023.06-GCCcore-12.3.0.eb: Python-bundle-PyPI/2023.06 provides cffi/1.15.1 and loads cryptography/41.0.1 which loads cffi/1.15.1
  • Python-bundle-PyPI-2023.10-GCCcore-13.2.0.eb: Python-bundle-PyPI/2023.10 provides cffi/1.16.0 and loads cryptography/41.0.5 which loads cffi/1.15.1
  • Python-bundle-PyPI-2024.06-GCCcore-13.3.0.eb: Python-bundle-PyPI/2024.06 provides cffi/1.16.0 and loads cryptography/42.0.8 which loads cffi/1.16.0
  • Python-bundle-PyPI-2025.04-GCCcore-14.2.0.eb: Python-bundle-PyPI/2025.04 provides cffi/1.17.1 and loads cryptography/44.0.2 which loads cffi/1.17.1
  • Python-bundle-PyPI-2025.07-GCCcore-14.3.0.eb: Python-bundle-PyPI/2025.07 provides cffi/1.17.1 and loads cryptography/45.0.5 which loads cffi/1.17.1

So with Python-bundle-PyPI-2023.10-GCCcore-13.2.0.eb we are in a situation where the cffi loaded by cryptography is different than the one provided.

As cffi needs to be a standalone installation, to fullfil needs of standalone software like cryptography, it may be simpler for Python-bundle-PyPI not to provide cffi but requires it. With this strategy, users will get their cffi loaded when loading Python-bundle-PyPI and one installation will be saved: no need to build cffi within Python-bundle-PyPI anymore.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions