Skip to content

Conversation

@hugovk
Copy link
Member

A full set of Python 3.9-3.13 security+bugfix releases were made last week:

https://discuss.python.org/t/python-3-13-1-3-12-8-3-11-11-3-10-16-and-3-9-21-are-now-available/73214

The bugfix branches (3.12 and 3.13) are automatically built on cron.

The security branches (3.9-3.11) need manual rebuilds. We also have the final 3.8 to manually run. It's taken 16 and 13 hours for a full build of the first two so far (3.11 and 3.10; see #216).

We will certainly have big omnibus security releases in the future and instead of having to run each one separately:

/srv/docsbuild/venv/bin/python /srv/docsbuild/scripts/build_docs.py --branch 3.11 /srv/docsbuild/venv/bin/python /srv/docsbuild/scripts/build_docs.py --branch 3.10 /srv/docsbuild/venv/bin/python /srv/docsbuild/scripts/build_docs.py --branch 3.9 /srv/docsbuild/venv/bin/python /srv/docsbuild/scripts/build_docs.py --branch 3.8

It would be useful to pass all branch versions, in a similar way we can with --languages:

/srv/docsbuild/venv/bin/python /srv/docsbuild/scripts/build_docs.py --branch 3.11 3.10 3.9 3.8

This PR does that.

I added unit tests for the Version.filter method I changed, along with coverage. We can use coverage to guide adding more tests in the future.


I also added --branches as a new name for this argument and kept the old --branch so as not to break any other scripts, but we could change it later.

We could also make it's use more explicitly deprecated, like print a warning if --branch is used? Maybe it's safe to rename it right away?

@hugovkhugovk mentioned this pull request Dec 8, 2024
@hugovkhugovk changed the title Allow passing multiple branches build via CLIAllow passing multiple branches to build via CLIDec 8, 2024
@hugovk
Copy link
MemberAuthor

Merge conflict fixed following refactor in #254.

Added f7e617d to use https://docs.python.org/3/library/argparse.html#deprecated, added in 3.13, to make the deprecation more visible.

@AA-Turner
Copy link
Member

We should just remove the singular variants of the flags. build_docs.py is only invoked by psf-salt, tests in python-docs-theme, and users with SSH access to the docs server. I added --language as a hot-fix in 6d53796 as the incorrect spelling of --language had spread, but was permitted due to allow_abbrev defaulting to True in ArgumentParser. See python/psf-salt#560 and python/python-docs-theme#228 to update usage to --languages.

For --version, it's not used externally, so we can just remove it.

A

hugovkand others added 2 commits April 11, 2025 17:27
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
@AA-TurnerAA-Turner merged commit 2113fd7 into python:mainApr 11, 2025
5 checks passed
@hugovkhugovk deleted the version-filter branch April 11, 2025 14:54
@hugovkhugovk mentioned this pull request Sep 8, 2025
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@hugovk@AA-Turner@m-aciek