Uploaded image for project: 'RHEL'
  1. RHEL
  2. RHEL-5571

python3.11-pybind11-devel provides non-namespaced RPM provides clashing with the Python 3.9 pybind11-devel package [rhel-9]

    • python3.11-pybind11-2.10.3-3.el9
    • None
    • None
    • rhel-sst-pt-python-ruby-nodejs
    • ssg_core_services
    • 16
    • 19
    • None
    • False
    • Hide

      None

      Show
      None
    • None
    • None
    • If docs needed, set a value
    • None

      Description of problem:

      $ rpm -qP python3.11-pybind11-devel
      cmake(pybind11) = 2.10.3
      pkgconfig(pybind11) = 2.10.3
      pybind11-devel = 2.10.3-2.el9
      pybind11-static = 2.10.3-2.el9
      python3.11-pybind11-devel = 2.10.3-2.el9
      python3.11-pybind11-devel(x86-64) = 2.10.3-2.el9
      python3.11-pybind11-static = 2.10.3-2.el9

      (Almost) all of the provides without the python3.11- prefix are clashing with pybind11-devel (for Python 3.9):

      $ rpm -qP pybind11-devel
      cmake(pybind11) = 2.6.2
      pybind11-devel = 2.6.2-4.el9
      pybind11-devel(x86-64) = 2.6.2-4.el9
      pybind11-static = 2.6.2-4.el9

      EPEL 9 packages that have:

      BuildRequires: pybind11-static

      will now fetch the Python 3.11 version of the package.

      This breaks assumptions. Adding a new Python stack to RHEL should not break existing packages using an older (and in this case even the default) Python stack.

      I believe the package should not provide pybind11-devel, pybind11-static. ABout the cmake and pkgconfig provides, I am not sure. Better to filter them out as well I suppose.

      Fixing this by removing the provides is technically backwards incompatible because some users could already expect this faulty behavior, but this package is in CRB, so I guess we can do the right thing and fix it.

      Version-Release number of selected component: 2.10.3-2.el9

      How reproducible: always

      Steps to Reproduce:
      $ mock -r centos-stream-9-x86_64 install pybind11-static

      Actual results:
      Installing:
      python3.11-pybind11-devel

      Expected results:
      Installing:
      pybind11-devel

      Additional info:

              python-maint python-maint
              mhroncok@redhat.com Miro HronĨok
              Lumir Balhar Lumir Balhar
              Lukas Zachar Lukas Zachar
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

                Created:
                Updated:
                Resolved: