jorisvandenbossche commented on code in PR #41041:
URL: https://github.com/apache/arrow/pull/41041#discussion_r1625909459


##########
python/examples/minimal_build/build_venv.sh:
##########
@@ -35,6 +35,7 @@ source $WORKDIR/venv/bin/activate
 git config --global --add safe.directory $ARROW_ROOT
 
 pip install -r $ARROW_ROOT/python/requirements-build.txt
+pip install wheel

Review Comment:
   Ah, OK, diving in a bit more to understand what is happening: this is 
because we are using `--no-build-isolation` here. So it seems that setuptools 
will (in normal, isolated mode) automatically inject `wheel` as a dependency 
when building a wheel, but so that doesn't happen in non-isolated mode.
   
   So it's still a good change to exlude `wheel` from the build requirements in 
pyproject.toml, but then we need to add it to the environments that use 
`--no-build-isolation`.
   
   Note that explains this a bit in the setuptools docs 
(https://setuptools.pypa.io/en/latest/userguide/quickstart.html#basic-use):
   
   >    Historically this documentation has unnecessarily listed ``wheel``
      in the ``requires`` list, and many projects still do that. This is
      not recommended, as the backend no longer requires the ``wheel``
      package, and listing it explicitly causes it to be unnecessarily
      required for source distribution builds.
      You should only include ``wheel`` in ``requires`` if you need to 
explicitly
      access it during build time (e.g. if your project needs a ``setup.py``
      script that imports ``wheel``).



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to