◐ Shell
clean mode source ↗

gh-124111: Update tkinter and test_tkinter to use either Tcl/Tk 8.6.15 or Tcl/Tk 9.0. by culler · Pull Request #124112 · python/cpython

@bedevere-app

Most changes to Python require a NEWS entry. Add one using the blurb_it web app or the blurb command-line tool.

If this change has little impact on Python users, wait for a maintainer to apply the skip news label instead.

@culler culler changed the title gh-124111: Update tkinter and test gh-124111: Update tkinter and test_tkinter to use either Tcl/Tk 8.6.15 or Tcl/Tk 9.0.

Sep 15, 2024

@culler

I changed this PR to a draft because I overlooked the fact that the ttk tests are, for some reason, separate from the tkinter tests. I will need to make some changes to those as well.

@Wulian233

@bedevere-app

Most changes to Python require a NEWS entry. Add one using the blurb_it web app or the blurb command-line tool.

If this change has little impact on Python users, wait for a maintainer to apply the skip news label instead.

@bedevere-app

Most changes to Python require a NEWS entry. Add one using the blurb_it web app or the blurb command-line tool.

If this change has little impact on Python users, wait for a maintainer to apply the skip news label instead.

@hugovk

Hello, I'll close this because PRs should be made against main:

Was the pull request first made against the appropriate branch?
The only branch that receives new features is main, the in-development branch. Pull requests should only target bug-fix branches if an issue appears in only that version and possibly older versions.

https://devguide.python.org/core-developers/committing/

It's important not to change this PR's base branch, because you'll end up spamming dozens of people due to the CODEOWNERS.

Instead create a new PR against main. Thanks!

@zware

Instead create a new PR against main. Thanks!

To be clear: please do so, @culler! This is a change that we definitely want to have, we just have to go through the process correctly. If you need help getting your branch rebased on main properly, please let me know.

@culler

I am not surprised that this is considered to be a "new feature", although it does not actually introduce any new features - it just re-implements existing features using a different external library.

I decided to use 3.13 because I was unable to get 3.14 to build, due to errors involving HACL, as reported in #123748. I guess I can avoid those errors by not doing universal macOS builds, so I will try again with 3.14 using only the native architecture.

@zware

I am not surprised that this is considered to be a "new feature"

That's not actually the issue here; we'll most likely backport this to 3.13 and maybe even 3.12 after it lands in main. It's just that our processes don't support landing in 3.13 and forward-porting to main, everything needs to start in main and work its way back as far as it should go (the backporting is administrative work that you as the contributor won't need to worry about).

@ned-deily

I decided to use 3.13 because I was unable to get 3.14 to build, due to errors involving HACL, as reported in #123748.

Note that a fix for that issue was committed recently.

And to add to others' comments, we definitely are very interested in having support for Tk 9. Thanks very much for your effort here and the extra effort to support both 8.6.x and 8.7.

One side question: are you aware of any issues that might impact upgrading from an earlier 8.6.x to 8.6.15 on the various platforms?

@culler

And to add to others' comments, we definitely are very interested in having support for Tk 9. Thanks very much for your effort here and the extra effort to support both 8.6.x and 8.7.

Thank you, and you are welcome! (But I don't plan to spend any effort on 8.7, just 9.0.)

One side question: are you aware of any issues that might impact upgrading from an earlier 8.6.x to 8.6.15 on the various platforms?

No. I would expect that to be a smooth upgrade. By the way, 8.6.15 was released today.

@ned-deily

(But I don't plan to spend any effort on 8.7, just 9.0.)

Sorry, I meant 9.0, of course!