[Python][Docs] Use editable pip install invocation in the development docs for PyArrow

Open Beginner friendly
#43,845 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
62/100
Issue type
Documentation
Clarity
Mostly clear
Activity status
Quiet
Tech stack
python
Domain
documentation

Research direction

Start in the PyArrow development documentation and review the current python setup.py build_ext -i instruction alongside pyproject.toml and setup.py. Update the documented workflow to use pip install -e ., then verify that the documented editable-install process supports building PyArrow without directly invoking the deprecated setup.py command.

Written by the indexing model from the issue text.

Description

Component: Documentation Component: Python

Currently our docs only use python setup.py build_ext -i for building inplace.
But this is not doing an actual installation, so we should update our docs to do an editable install with pip install -e . (or at least a first time).

With the latest pyproject.toml changes, skipping this installation will now also result in a failure when trying to build pyarrow directly with setup.py (e.g. https://github.com/apache/arrow/issues/41992#issuecomment-2151338952).
Moreover, direct invocation of setup.py is deprecated (although there is no clear alternative in the case of setup.py build_ext, except from re-installing with pip install)

Dominant language
C++
Stars
17.1k
Forks
4.3k
Avg merge
3d 13h
Merged PRs (30d)
93

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from apache/arrow

All issues in apache/arrow

Similar issues

More C++ issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.