cisagov / cisagov/development-guide

Add explanation on Python package installation process

Open
#75 0 comments 0 reactions 0 assignees View on GitHub
documentation improvement
Dominant language
Python
Stars
282
Forks
72
PR merge metrics
No merged PRs in 30d

Description

# 💡 Summary #

We should add to the development guide an explanation for why for Python package installation steps we typically lead with

```console
python -m pip install --upgrade pip setuptools wheel
```

before installing other packages.

## Motivation and context ##

We perform this step in most of our processes because of the need to upgrade [pip] and have [wheel] available. However, there is no explanation anywhere for why this is the case. We should document this here so that we have the rationale for this "on the record".

## Implementation notes ##

Suitably explain why we upgrade [pip] and why we ensure [setuptools] and [wheel] are installed before proceeding with installing the Python packages actually required.

## Acceptance criteria ##

- [ ] An approved pull request adding such documentation is approved and merged.

## Original conversation ##

Is there a reason we can't/shouldn't consolidate this into a single line?
```suggestion
python -m pip install --upgrade build pip setuptools wheel
```

_Originally posted by @dav3r in https://github.com/cisagov/skeleton-python-library/pull/95#discussion_r826077269_

[pip]: https://pypi.org/project/pip/
[setuptools]: https://pypi.org/project/setuptools/
[wheel]: https://pypi.org/project/wheel/

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.