Skip to content

gh-124111: Update Windows build to use Tcl/Tk 9.0.3#149477

Open
zware wants to merge 1 commit into
python:mainfrom
zware:update_windows_tcltk
Open

gh-124111: Update Windows build to use Tcl/Tk 9.0.3#149477
zware wants to merge 1 commit into
python:mainfrom
zware:update_windows_tcltk

Conversation

@zware
Copy link
Copy Markdown
Member

@zware zware commented May 7, 2026

@zware zware force-pushed the update_windows_tcltk branch from 6f8bf77 to d4d914f Compare May 12, 2026 14:34
@zware zware requested a review from sethmlarson as a code owner May 12, 2026 14:34
@zware
Copy link
Copy Markdown
Member Author

zware commented May 12, 2026

!buildbot Windows

@bedevere-bot
Copy link
Copy Markdown

🤖 New build scheduled with the buildbot fleet by @zware for commit d4d914f 🤖

Results will be shown at:

https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F149477%2Fmerge

The command will test the builders whose names match following regular expression: Windows

The builders matched are:

  • AMD64 Windows Server 2022 NoGIL PR
  • AMD64 Windows11 Refleaks PR
  • ARM64 Windows PR
  • AMD64 Windows PGO Tailcall PR
  • AMD64 Windows PGO NoGIL Tailcall PR
  • ARM64 Windows Non-Debug PR
  • AMD64 Windows11 Non-Debug PR
  • AMD64 Windows PGO NoGIL PR
  • AMD64 Windows PGO PR
  • AMD64 Windows10 PR

Comment thread PCbuild/tcltk.props
<TkPatchLevel>$([System.Version]::Parse($(TkVersion)).Build)</TkPatchLevel>
<TkRevision>$([System.Version]::Parse($(TkVersion)).Revision)</TkRevision>
<tclDir Condition="$(tclDir) == ''">$(ExternalsDir)tcl-core-$(TclVersion)\</tclDir>
<tclDir Condition="$(tclDir) == ''">$(ExternalsDir)tcl-$(TclVersion)\</tclDir>
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.

This directory name should be under our control, isn't it? Why would we change the pattern (and break anyone who might be trying to pin back to an earlier version)?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

The tcl vs tcl-core distinction comes from which package we start with from https://sourceforge.net/projects/tcl/files/Tcl/9.0.3/. For the past several versions, we've been actually using tclx.y.z-src.ext rather than tcl-corex.y.z-src.ext even though we've been tagging it as tcl-core-x.y.z.0. I'd rather tag it as it originated, and the distinction between the two doesn't seem as worth pursuing to me as it did back when we switched to the -core variant, so this time I imported the regular tcl9.0.3-src.tar.gz and tagged it as such.

I'm not too concerned about this breaking pins; this would only affect anyone building their own from source and there's a good chance that anyone doing that would already be overriding tclDir as a whole just like we do in our tcltk-build workflow. They'll be more broken by the 8->9 transition anyway, just like we were.

I'd rather keep the changed naming here, but as a transitional measure I could add some extra tags to cpython-source-deps to fill in missing -core/not for the past several Tcls?

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants