Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Error with pyparsing when no CUDA is found #45

@bdice

Description

@bdice

if pyparsing.__version__ != '2.4.7':

This line assumes that pyparsing has been imported, but it is not imported in the setup.py script.

This appears to be a transitive dependency of pyclibrary, and cuda-python's setup.py expects version 2.4.7. However, the latest version of pyclibrary has a much looser pinning on pyparsing>=2.3.1,<4: https://github.com/MatthieuDartiailh/pyclibrary/blob/1d4dbfc207afee3fd80b72e94c60d47d8263d49a/setup.py#L48

As of this writing, the latest pyparsing is 3.0.9. https://github.com/pyparsing/pyparsing/releases/tag/pyparsing_3.0.9

I'm not sure how to reconcile this. Is the error message out of date? Does a dependency on pyparsing need to be added? Is pyparsing 3.0.9 allowable or not?

Here is an example traceback I encountered while attempting to package cuda-python for CUDA 12 on conda-forge (work in progress: conda-forge/cuda-python-feedstock#33).

Processing $SRC_DIR
  Added file://$SRC_DIR to build tracker '/tmp/pip-build-tracker-8n7yddr7'
  Running setup.py (path:$SRC_DIR/setup.py) egg_info for package from file://$SRC_DIR
  Created temporary directory: /tmp/pip-pip-egg-info-3mflzan5
  Preparing metadata (setup.py): started
  Running command python setup.py egg_info
  Parsing headers in "/home/conda/feedstock_root/build_artifacts/cuda-python_1682019216274/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold/targets/x86_64-linux/include" (Caching False)
  Missing header cuda.h
  Missing header cudaProfiler.h
  Missing header cudaEGL.h
  Missing header cudaGL.h
  Missing header cudaVDPAU.h
  Parsing driver headers
  Missing header driver_types.h
  Missing header vector_types.h
  Missing header cuda_runtime.h
  Missing header surface_types.h
  Missing header texture_types.h
  Missing header library_types.h
  Missing header cuda_runtime_api.h
  Missing header device_types.h
  Missing header driver_functions.h
  Missing header cuda_profiler_api.h
  Missing header cuda_egl_interop.h
  Missing header cuda_gl_interop.h
  Missing header cuda_vdpau_interop.h
  Parsing runtime headers
  Missing header nvrtc.h
  Parsing nvrtc headers
  Traceback (most recent call last):
    File "<string>", line 2, in <module>
    File "<pip-setuptools-caller>", line 34, in <module>
    File "/home/conda/feedstock_root/build_artifacts/cuda-python_1682019216274/work/setup.py", line 103, in <module>
      if pyparsing.__version__ != '2.4.7':
  NameError: name 'pyparsing' is not defined
  error: subprocess-exited-with-error
  
  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> See above for output.

CI link (this link will eventually expire, so the relevant portion is copied above): https://dev.azure.com/conda-forge/feedstock-builds/_build/results?buildId=693718&view=logs&j=d0d954b5-f111-5dc4-4d76-03b6c9d0cf7e&t=841356e0-85bb-57d8-dbbc-852e683d1642

Metadata

Metadata

Assignees

No one assigned

    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