rapidsai / rmm

RAPIDS Memory Manager
https://docs.rapids.ai/api/rmm/stable/
Apache License 2.0
446 stars 188 forks source link

Avoid --find-links in wheel jobs #1586

Closed jameslamb closed 2 weeks ago

jameslamb commented 3 weeks ago

Description

Contributes to https://github.com/rapidsai/build-planning/issues/69.

Proposes a stricter pattern for passing a librmm wheel from the wheel-build-cpp job that produced it into the wheel-build-python job wanting to use it (as a build dependency of rmm). This change improves the likelihood that issues with the librmm wheels will be caught in CI.

Checklist

Notes for Reviewers

How I tested this

  1. Added unsatisfiable requirements setuptools<65, setuptools>66 to the librmm wheel (this commit).

  2. With no changes to the build scripts here, saw CI happily ignore that and succeed despite that issue: (build link).

  3. Switched to the approach documented in https://github.com/rapidsai/build-planning/issues/69#issuecomment-2174556118, saw CI fail in the expected way (build link)

  Processing /tmp/librmm_dist/librmm_cu12-24.8.0a24-py3-none-any.whl

    ...

  ERROR: Cannot install librmm-cu12==24.8.0a24 because these package versions have conflicting dependencies.

  The conflict is caused by:
      librmm-cu12 24.8.0a24 depends on setuptools<65
      librmm-cu12 24.8.0a24 depends on setuptools>66

    ...

  ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/topics/dependency-resolution/#dealing-with-dependency-conflicts
jameslamb commented 2 weeks ago

Thanks for taking a look @vyasr !

jameslamb commented 2 weeks ago

/merge