GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Update tkinter to use Tk 8.6.15 or (better) Tk 9.0 · Issue #124111 · python/cpython

Update tkinter to use Tk 8.6.15 or (better) Tk 9.0 #124111

New issue
Copy link
New issue
Copy link
Closed
Closed
Update tkinter to use Tk 8.6.15 or (better) Tk 9.0#124111
Copy link
Labels
extension-modulesC modules in the Modules dirC modules in the Modules dirtopic-tkintertype-featureA feature request or enhancementA feature request or enhancement

Description

@culler
culler
opened on Sep 15, 2024
Issue body actions

Feature or enhancement

Proposal:

This issue is being opened as a prerequisite for a PR which will update _tkinter.c and Lib/test/test_tkinter so that they work with both Tk 8.6.15 and Tk 9.0.

Both Tk 8.6.15 and Tk 9.0 currently have release candidates available and will be released soon. The TclTk project has decided that there will be no release of the 8.7 branches. Tcl 9 and Tk 9 are the current development branches (both named main in the fossil repository.)

Tk 9 offers many improvements over Tk 8, and both TclTk and Python would benefit from having tkinter support for Tk 9.0.

Has this already been discussed elsewhere?

No response given

Links to previous discussion of this feature:

No response

Linked PRs

  • gh-124111: Update tkinter and test_tkinter to use either Tcl/Tk 8.6.15 or Tcl/Tk 9.0. #124112
  • gh-124111: Update tkinter for compatibility with Tcl/Tk 9.0.0 #124156
  • [3.13] gh-124111: Update tkinter for compatibility with Tcl/Tk 9.0.0 (GH-124156) #127364
  • gh-124111: Fix TCL 9 threaded detection #128103
  • gh-124111: Update macOS installer to use Tcl/Tk 8.6.16. #132190
  • [3.13] gh-124111: Update macOS installer to use Tcl/Tk 8.6.16. (GH-132190) #132198
  • [3.12] gh-124111: Update macOS installer to use Tcl/Tk 8.6.16. (GH-132190) #132199
  • gh-124111: test macOS CI with Tk 9 #136959
  • gh-124111: test macOS CI with Tk 9 #137424
  • gh-124111: Update macOS installer to use Tcl/Tk 8.6.17. #139682
  • [3.14] gh-124111: Update macOS installer to use Tcl/Tk 8.6.17. (GH-139682) #139683
  • [3.13] gh-124111: Update macOS installer to use Tcl/Tk 8.6.17. (GH-139682) #139684
  • gh-124111: Update macOS installer to use Tcl/Tk 9.0.2. #140076
  • [3.14] gh-124111: Fix TCL 9 thread detection (GH-128103) #141482
  • [3.13] gh-124111: Fix TCL 9 thread detection (GH-128103) #141483
  • gh-124111: Update macOS installer to use Tcl/Tk 9.0.3 #144646
  • gh-124111: Fix tclWin32Exe value in tcltk.props for Tcl 9 #149441
  • gh-124111: Only set TCLSH_NATIVE for AMD64/ARM64 #149443
  • [3.14] gh-124111: Update macOS installer to use Tcl/Tk 9.0.3. #149463
  • gh-124111: Update Windows build to use Tcl/Tk 9.0.3 #149477
  • [3.15] gh-124111: Update Windows build to use Tcl/Tk 9.0.3 (GH-149477) #149842
  • gh-124111: Keep tests passing for Tcl prior to 9.0 #150102
  • [3.15] gh-124111: Keep tests passing for Tcl prior to 9.0 (GH-150102) #150110
  • [3.14] gh-124111: Update Windows build to use Tcl/Tk 9.0.4 (GH-150102) (GH-149477) (GH-151562) (GH-153901) #150197
  • [3.13] gh-124111: Update macOS installer to use Tcl/Tk 8.6.18. #151125
  • gh-124111: Update macOS installer to use Tcl/Tk 9.0.4. #153868
  • [3.14] gh-124111: Update macOS installer to use Tcl/Tk 9.0.4. (GH-153868) #153870
  • [3.15] gh-124111: Update macOS installer to use Tcl/Tk 9.0.4. (GH-153868) #153871
  • gh-124111: Update Windows builds to Tcl/Tk 9.0.4 #153901
  • [3.15] gh-124111: Update Windows builds to Tcl/Tk 9.0.4 (GH-153901) #153990
Reacted by Malek Cellier, Moosems, Jordan Williams, dheeraj, Zhikang Yan, Wulian233, Jurj Andrei George, Itsuki Hayashi, Tomas Mudrunka, Vasileios Anagnostopoulos and 2 more

Activity

Next
  1. culler
    added
    type-featureA feature request or enhancementA feature request or enhancement
    on Sep 15, 2024
  2. Eclips4
    added
    topic-tkinter
    on Sep 15, 2024
  3. hugovk commented on Sep 15, 2024

    @hugovk
    hugovk
    on Sep 15, 2024
    Member
    More actions

    See also #104568.

  4. terryjreedy commented on Sep 16, 2024

    @terryjreedy
    terryjreedy
    on Sep 16, 2024
    Member
    More actions

    There are 2 items on that overview issue with individual issues. The first has a solution merged. The second was waiting to know whether there would be an 8.7. "The TclTk project has decided that there will be no release of the 8.7 branches." Do you have a link?

    "Tk 9 offers many improvements over Tk 8," Is there a summary page? I am particularly curious if full unicode support was added. If so, I would want 9.0 to at least be an option with our installers, as the lack thereof is the biggest problem with tk for use with IDLE.

    Reacted by Wulian233
  5. culler commented on Sep 16, 2024

    @culler
    culler
    on Sep 16, 2024
    ContributorAuthor
    More actions

    "The TclTk project has decided that there will be no release of the 8.7 branches." Do you have a link?

    Unfortunately, this decision was made by the Tcl Core Team (TCT) by consensus, not by our usual governance process which involves writing and voting on a TIP.
    (I am a member of the TCT.) You can find a lot of discussion on the Tcl Core list and you can observe that the 8.6.15 and 9.0 versions of Tcl and Tk currently have release candidates, while Tcl and Tk 8.7 have never reached beta. (Maybe I should write such a TIP. I'll consider that.)

    "Tk 9 offers many improvements over Tk 8," Is there a summary page?

    The Tcl summary is here. Tk 9.0 was created as a continuation of Tk 8.7 (unlike Tcl 9.0, which has signficant differences from 8.7).

    I am particularly curious if full unicode support was added. If so, I would want 9.0 to at least be an option with our installers, as the lack thereof is the biggest problem with tk for use with IDLE.

    Yes, Tcl 9.0 has full unicode support. That was one of the biggest issues, of course. Switching to 9.0 means no more CESU-8. Moreover, if tkinter starts using Tk 9.0 then, as far as I can tell, that would mean that a majority of Tk users would be using Tk 9.0.

    image
    Reacted by Sam Weber, Moosems, Jurj Andrei George, Smart-Space and Data Scientist 89
  6. serhiy-storchaka commented on Sep 27, 2024

    @serhiy-storchaka
    serhiy-storchaka
    on Sep 27, 2024
    Member
    More actions

    I think that this should be split on several parts.

    • Update to Tcl/Tk 8.6.15 is a routine. It should be backported to 3.13 and 3.12. It is too late for 3.13.0, but it will be included in 3.13.1.
    • Any test changes should be backported. This would help future bugfix backports and help to compare versions if we have a regression. Tests should be passed with older Tcl/Tk versions.
    • As for automatically converting pixels to string, we usually don't do that except when wantobjects=0, in which case all values ​​are converted to strings. I think adding custom types for pixels and other Tk types might be more promising. After all, we may need to compare sizes, convert to different units, perform arithmetic operations.
    • Even if we don't plan to officially support Tcl/Tk 9.0 in older versions of Python, we should backport these changes. We simply won't be making official releases with Tcl/Tk 9.0.

    Tcl/Tk 9.0 is a good news, and I look forward to using it.

    Reacted by Ahmed Hassan Khan Kakar
    Reacted by Data Scientist 89
    Reacted by stonebig
  7. aivarannamaa commented on Sep 27, 2024

    @aivarannamaa
    aivarannamaa
    on Sep 27, 2024
    Contributor
    More actions

    It should be backported to 3.13 and 3.12. It is too late for 3.13.0, but it will be included in 3.13.1.

    Can it make into 3.12.7 ?

  8. serhiy-storchaka commented on Sep 27, 2024

    @serhiy-storchaka
    serhiy-storchaka
    on Sep 27, 2024
    Member
    More actions

    Can it make into 3.12.7 ?

    I hope on this, but we still have not updated the bundled version on Windows to 8.6.14 (see #116145).

  9. jwillikers
    added a commit that references this issue on Oct 1, 2024

    Hold off on updates to Tcl/Tk 9 until Python can be updated

    7fc2a79
  10. ahmadkakarr commented on Nov 8, 2024

    @ahmadkakarr
    ahmadkakarr
    on Nov 8, 2024
    More actions

    Tcl/Tk 9.0 is available in 3.13 on windows?

  11. terryjreedy commented on Nov 9, 2024

    @terryjreedy
    terryjreedy
    on Nov 9, 2024
    Member
    More actions

    No. AFAIK, tk9.0 is still in candidate stage, not officially released. In any case, not in main yet.

  12. culler commented on Nov 9, 2024

    @culler
    culler
    on Nov 9, 2024 via email
    ContributorAuthor
    More actions
    Terry, Tk 9.0 has been officially released and is the main branch of the Tk repository. It was released September 26. The Tk repository has a branch named core-9-0-0-rc containing the code used for the release, and the tarball is available in the usual place (https://www.tcl.tk/software/tcltk/download.html). However, PR #124156 has not been merged into cpython yet. - Marc
    …
    On Fri, Nov 8, 2024 at 6:52 PM Terry Jan Reedy ***@***.***> wrote: No. AFAIK, tk9.0 is still in candidate stage, not officially released. In any case, not in main yet. — Reply to this email directly, view it on GitHub <#124111 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AAJ6CP2RW266GA3VQAYNWGLZ7VMFLAVCNFSM6AAAAABOIEYSFWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINRVHE2TCMZZGA> . You are receiving this because you authored the thread.Message ID: ***@***.***>
    Reacted by Data Scientist 89
  13. terryjreedy commented on Nov 9, 2024

    @terryjreedy
    terryjreedy
    on Nov 9, 2024
    Member
    More actions

    My comment was based on your posts of Sept 16 and early posts on the PR. Thank you for the update. What, then, is stopping 9.0 on main? I could not really tell from the PR. Like Serhiy, I am really looking forward to trying it out.

  14. culler commented on Nov 9, 2024

    @culler
    culler
    on Nov 9, 2024
    ContributorAuthor
    More actions

    I don't think there is anything stopping it. PR #124156 is in the "awaiting merge" state.

    One possible issue is that the Windows port of Tcl 9.0 puts libtommath in a separate DLL, which complicates the Python distribution. But there are build options available which will statically link libtommath into the Tcl DLL. So that issue seems to have a reasonable workaround.

  15. zware
    added a commit that references this issue on Nov 14, 2024

    gh-124111: Update tkinter for compatibility with Tcl/Tk 9.0.0 (GH-124156

    47cbf03
  16. 138 remaining items

  17. ned-deily
    added a commit that references this issue on Jul 17, 2026

    [3.15] gh-124111: Update macOS installer to use Tcl/Tk 9.0.4. (GH-153868

    d87949b
  18. fedonman
    added a commit that references this issue on Jul 18, 2026

    pythongh-124111: Update macOS installer to use Tcl/Tk 9.0.4. (python#…

    0d288ce
  19. zware
    added 3 commits that reference this issue on Jul 18, 2026

    pythongh-124111: Update Windows builds to Tcl/Tk 9.0.4

    7f422db

    gh-124111: Update Windows builds to Tcl/Tk 9.0.4 (GH-153901)

    46e950f

    [3.15] gh-124111: Update Windows builds to Tcl/Tk 9.0.4 (GH-153990)

    13e7aed
  20. hugovk
    added a commit that references this issue on Aug 3, 2026

    [3.14] gh-124111: Update Windows build to use Tcl/Tk 9.0.4 (GH-150102) (

    29a9a3d
  21. zware commented on Aug 3, 2026

    @zware
    zware
    on Aug 3, 2026
    Member
    More actions

    With 3.14+ updated to 9.0.4 on macOS and Windows, this is now complete. Thanks to everyone who contributed!

    Reacted by Hugo van Kemenade, ThingamabobsCoding and Maj Soklič
  22. zware
    closed this as completedon Aug 3, 2026
  23. TheDemonGuard commented on Aug 5, 2026

    @TheDemonGuard
    TheDemonGuard
    on Aug 5, 2026
    More actions

    With 3.14+ updated to 9.0.4 on macOS and Windows, this is now complete. Thanks to everyone who contributed!

    I installed 3.14.6 on Windows. However I am still getting TK version 8.6.
    The command I used to confirm this is as follows

    python -c "import tkinter; print(tkinter.TkVersion);print('-----');import sys; print(sys.version); print(sys.executable)"
    8.6
    -----
    3.14.6 (tags/v3.14.6:c63aec6, Jun 10 2026, 10:26:10) [MSC v.1944 64 bit (AMD64)]
    
  24. maj113 commented on Aug 5, 2026

    @maj113
    maj113
    on Aug 5, 2026
    More actions

    With 3.14+ updated to 9.0.4 on macOS and Windows, this is now complete. Thanks to everyone who contributed!

    I installed 3.14.6 on Windows. However I am still getting TK version 8.6. The command I used to confirm this is as follows

    python -c "import tkinter; print(tkinter.TkVersion);print('-----');import sys; print(sys.version); print(sys.executable)"
    8.6
    -----
    3.14.6 (tags/v3.14.6:c63aec6, Jun 10 2026, 10:26:10) [MSC v.1944 64 bit (AMD64)]
    

    Most likely not yet published on the python website, the .6 was published on June 10th also looking at the tags .7 does not exist yet, might take a while

    Reacted by Henry Naoto Ishiyama
  25. hugovk commented on Aug 5, 2026

    @hugovk
    hugovk
    on Aug 5, 2026
    Member
    More actions

    Python 3.14.7 will hopefully be released later today (5th August), after #153711 is fixed.

    Reacted by Henry Naoto Ishiyama and Maj Soklič
  26. deadlovelll
    added a commit that references this issue on Aug 5, 2026

    [3.14] pythongh-124111: Update Windows build to use Tcl/Tk 9.0.4 (pyt…

    404899e
  27. TheDemonGuard commented on Aug 7, 2026

    @TheDemonGuard
    TheDemonGuard
    on Aug 7, 2026
    More actions

    Python 3.14.7 will hopefully be released later today (5th August), after #153711 is fixed.

    Thank you. I can confirm that Python 3.14.7 includes Tk 9.0.4 on Windows.
    On MacOS, I confirmed that Python 3.14.6 includes Tk 9.0.4.

  28. thunze
    added a commit that references this issue on Aug 9, 2026

    python3Packages.tkinter: build with tcl/tk 9.0 for python 3.14+

    a617c0f
  29. highghlow
    added a commit that references this issue on Aug 20, 2026

    python3Packages.tkinter: build with tcl/tk 9.0 for python 3.14+

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    extension-modulesC modules in the Modules dirC modules in the Modules dirtopic-tkintertype-featureA feature request or enhancementA feature request or enhancement

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      You are visitor 01402520 — GeezerVison does not store the pages you look up.
      Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.