Uploaded image for project: 'AI Platform Core Components'
  1. AI Platform Core Components
  2. AIPCC-9020

builder does not support pypdfium2 5.3.0

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Critical Critical
    • None
    • None
    • Development Platform
    • None
    • DP Sprint 24

      Description of problem:

      docling 2.69 just came out. It now supports pypdfium 5.x. Before it had an upper limit on pypdfium2, so we ended up with 4.3.0. pypdfium2 5.3.0 fails to build from source. Upstream has changed and improved build configuration. I think they also need a newer version of PDFium.

      Version numbers (base image, wheels, builder, etc):

      • Builder 26.2.0
      • pypdfium 5.3.0

      Steps to Reproduce:

      https://gitlab.com/redhat/rhel-ai/rhai/pipeline/-/jobs/12798181341

      Actual results:

      07:16:29 ERROR pypdfium2: command failed with exit code 1: /opt/app-root/lib64/python3.12/site-packages/fromager/run_network_isolation.sh /mnt/work-dir/pypdfium2-5.3.0/build-3.12.9/bin/python3 /opt/app-root/lib64/python3.12/site-packages/pyproject_hooks/_in_process/_in_process.py get_requires_for_build_wheel /tmp/tmpr3hlrhhd
      pypdfium2: linux aarch64 ('glibc', '2.34')
      pypdfium2: Traceback (most recent call last):
      pypdfium2:   File "/opt/app-root/lib64/python3.12/site-packages/pyproject_hooks/_in_process/_in_process.py", line 389, in <module>
      pypdfium2:     main()
      pypdfium2:   File "/opt/app-root/lib64/python3.12/site-packages/pyproject_hooks/_in_process/_in_process.py", line 373, in main
      pypdfium2:     json_out["return_val"] = hook(**hook_input["kwargs"])
      pypdfium2:                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      pypdfium2:   File "/opt/app-root/lib64/python3.12/site-packages/pyproject_hooks/_in_process/_in_process.py", line 143, in get_requires_for_build_wheel
      pypdfium2:     return hook(config_settings)
      pypdfium2:            ^^^^^^^^^^^^^^^^^^^^^
      pypdfium2:   File "/mnt/work-dir/pypdfium2-5.3.0/build-3.12.9/lib64/python3.12/site-packages/setuptools/build_meta.py", line 331, in get_requires_for_build_wheel
      pypdfium2:     return self._get_build_requires(config_settings, requirements=[])
      pypdfium2:            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      pypdfium2:   File "/mnt/work-dir/pypdfium2-5.3.0/build-3.12.9/lib64/python3.12/site-packages/setuptools/build_meta.py", line 301, in _get_build_requires
      pypdfium2:     self.run_setup()
      pypdfium2:   File "/mnt/work-dir/pypdfium2-5.3.0/build-3.12.9/lib64/python3.12/site-packages/setuptools/build_meta.py", line 317, in run_setup
      pypdfium2:     exec(code, locals())
      pypdfium2:   File "<string>", line 183, in <module>
      pypdfium2:   File "<string>", line 169, in main
      pypdfium2:   File "/mnt/work-dir/pypdfium2-5.3.0/pypdfium2-5.3.0/setupsrc/base.py", line 867, in parse_pl_spec
      pypdfium2:     raise ValueError(f"Invalid binary spec '{pl_spec}'")
      pypdfium2: ValueError: Invalid binary spec 'prepared!system'
      

      Expected results:

      Docling dependencies should build

      Additional info:

      As a temporary workaround, we should restrict pypdfium2 to < 5.0. For 3.4-EA1, let's update PDFium RPM and support newer version.

              Unassigned Unassigned
              cheimes@redhat.com Christian Heimes
              Christian Heimes
              Antonio's Team
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: