pip icon indicating copy to clipboard operation
pip copied to clipboard

[DRAFT] disentangle --no-binary

Open sbidoul opened this issue 3 years ago • 0 comments

This is a draft PR to illustrate the whole path towards disentangling --no-binary. Please do not do detailed code review here, it will be split in individual PRs for review. Questions and suggestions on the overall approach are most welcome here.

This is encapsulates my takeaways from #9778 and #9422.

  • [ ] deprecate --install-option (#11359)

  • [ ] clarify the warning message when --install-option/--global-option/--build-option is used, saying that it implies --no-binary=:all: which is accurate, instead of disabling all use of wheel which was not entirely true in all cases. (also in #11359)

  • [ ] add a dreprecation warning when --no-binary implies setup.py install

  • [ ] add a no-binary-builds-wheels feature flag which does the following when --no-binary is used:

    • instead of forcing setup.py install let it build and install a wheel (thereby silencing the deprecation warning)
    • enable the use of the cache of locally built wheels in pip install and pip wheel (the user can still control it with --no-cache)
  • [ ] pass --build-option and --global-option in the build step, like pip wheel does - if only for symmetry and to soften the transition; we nevertheless recommend users to use --config-settings and we'll likely deprecate these in the future, for pip install and pip wheel at the same time.

sbidoul avatar Aug 12 '22 16:08 sbidoul