Skip to content

docs: align contributor Python version docs with package metadata#9047

Open
immanuwell wants to merge 2 commits into
aws:developfrom
immanuwell:docs/fix-python-dev-guide
Open

docs: align contributor Python version docs with package metadata#9047
immanuwell wants to merge 2 commits into
aws:developfrom
immanuwell:docs/fix-python-dev-guide

Conversation

@immanuwell
Copy link
Copy Markdown

@immanuwell immanuwell commented May 25, 2026

Which issue(s) does this change fix?

N/A

Why is this change necessary?

The contributor docs still point people at Python 3.8 and 3.9, but the package metadata requires 3.10+. So the old setup path is stale and folks hit a wall pretty fast.

How does it address the issue?

Updates CONTRIBUTING.md and DEVELOPMENT_GUIDE.md to match pyproject.toml and the current CI matrix. Also drops a couple old setup.py and AppVeyor refs.

Repro:

  1. Follow the old guide and use Python 3.9.
  2. Run uv venv --python 3.9 /tmp/samcli-doc-repro/venv && uv pip install --python /tmp/samcli-doc-repro/venv/bin/python -e .
  3. See the resolver fail, eg: Because the current Python version (3.9.25) does not satisfy Python>=3.10

What side effects does this change have?

Docs only. No runtime change, no test behavior change

@immanuwell immanuwell requested a review from a team as a code owner May 25, 2026 14:55
@github-actions github-actions Bot added pr/external stage/needs-triage Automatically applied to new issues and PRs, indicating they haven't been looked at. labels May 25, 2026
Copy link
Copy Markdown
Collaborator

@aws-sam-cli-bot aws-sam-cli-bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review Results

Reviewed: 58da8ea..1c3f021
Files: 2
Comments: 1

Comment thread DEVELOPMENT_GUIDE.md
# Assuming you want to develop AWS SAM CLI in Python 3.10.19
pyenv install 3.10.19 # install Python 3.10.19 using pyenv
pyenv virtualenv 3.10.19 samcli310 # create a virtual environment using 3.10.19 named "samcli310"
pyenv activate samcli310 # activate the virtual environment
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[GENERAL] The rename of the example virtualenv from samcli38 to samcli310 is incomplete. Line 145 in the "Install development version of SAM Transformer" section still reads:

pyenv activate samcli38  # if you chose to use pyenv to setup the virtual environment

After this PR, the prerequisites section instructs contributors to create a virtual environment named samcli310, so a reader who follows the new guide top-to-bottom will be told here to activate samcli38, which they were never instructed to create. Since this PR's stated goal is to align contributor docs with the current Python version, this leftover reference should be updated to samcli310 (and the surrounding sentence checked for any other stale Python 3.8/3.9 wording) for consistency.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed. I updated the leftover pyenv activate samcli38 example to samcli310 and re-checked the surrounding contributor-doc references for other stale Python 3.8/3.9 env names.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr/external stage/needs-triage Automatically applied to new issues and PRs, indicating they haven't been looked at.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants