Skip to content

gh-148488: Clarify the company/tag separator in the py -V docs#153427

Open
serhiy-storchaka wants to merge 2 commits into
python:mainfrom
serhiy-storchaka:py-v-slash
Open

gh-148488: Clarify the company/tag separator in the py -V docs#153427
serhiy-storchaka wants to merge 2 commits into
python:mainfrom
serhiy-storchaka:py-v-slash

Conversation

@serhiy-storchaka

@serhiy-storchaka serhiy-storchaka commented Jul 9, 2026

Copy link
Copy Markdown
Member

@serhiy-storchaka serhiy-storchaka requested a review from zooba July 9, 2026 13:33
@serhiy-storchaka serhiy-storchaka added docs Documentation in the Doc dir skip news needs backport to 3.13 bugs and security fixes needs backport to 3.14 bugs and security fixes needs backport to 3.15 pre-release feature fixes, bugs and security fixes labels Jul 9, 2026
@github-project-automation github-project-automation Bot moved this to Todo in Docs PRs Jul 9, 2026
@read-the-docs-community

read-the-docs-community Bot commented Jul 9, 2026

Copy link
Copy Markdown

Documentation build overview

📚 cpython-previews | 🛠️ Build #33515458 | 📁 Comparing c5efd35 against main (cd9994e)

  🔍 Preview build  

4 files changed
± library/tkinter.html
± library/tkinter.ttk.html
± using/windows.html
± whatsnew/changelog.html

Comment thread Doc/using/windows.rst Outdated
well. This should be separated from the tag by a slash, and may be a prefix.
well.
It should be separated from the tag by a slash (either ``/`` or ``\``),
and both the company and the tag may be shortened to any prefix of their full value.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

The second part about the tag is not true - it's a fairly complicated comparison, but for equality it's actually a numeric-field-aware comparison against a list of possibilities provided by the runtime, tried first with the platform appended and then without.

So a runtime that provides ["3.14.6-amd64","3.14-amd64", "3-amd64"] should match 03.0014 because the number fields are compared numerically1, but 3.1 will not match 3.14 even though it's a prefix. If you pass 3.14-amd64 then it first searches for 3.14-amd64-amd64 and won't find it, then it looks for 3.14-amd64, and because of ordering it'll match 3.14.6 before 3.14.5, so both can offer the same shortened version.

All that is way too complicated for right here, which is why I didn't want to put it in. It belongs in a new section about "how to create your own package feed". I can't come up with a suitable short way to introduce the concept that most well-defined packages will let you abbreviate a tag that is shaped like a version number, but if it doesn't work then check the feed. If you've got a brief way to put that here, let's see it, but otherwise I'd keep this paragraph about *company* and not mention tag other than to show the separator.

Footnotes

  1. Something like (int('3'), '.', int('14'), '-amd64') == (int('03'), '.', int('0014'), '-amd64') plus it assumes base-10. It's possible that string components allow prefix matching - I don't remember right now.

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

Labels

awaiting core review docs Documentation in the Doc dir needs backport to 3.13 bugs and security fixes needs backport to 3.14 bugs and security fixes needs backport to 3.15 pre-release feature fixes, bugs and security fixes skip news

Projects

Status: Todo

Development

Successfully merging this pull request may close these issues.

2 participants