New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upgrade Windows tcl/tk to 8.6.10 #83288
Comments
It includes several Mac-related enhancements |
Ned is aware of this and needs to verify that it works with _tkinter and tkinter on multiple versions of macOS. |
Looks like some enhancements on Windows as well; we should upgrade at least 3.9. |
https://www.tcl.tk/man/tcl8.6/TkCmd/contents.htm now displays the 8.6.10 pages, so the tcl folk consider this to be the current stable release. Zach or Steve or whowever can handle this for Windows, please upgrade pcbuild and whatever else 'soon' (by next release?). I have looked at |
Yeah, this is on me now. Hopefully we can just pull in the new sources and they'll be fine, but historically it's taken a couple of days/weeks to get the issues ironed out. Unfortunately, I'm still on a flaky internet connection (but only for GitHub.com for some reason), so I can't clone the repos I need. But someone else should be able to submit PRs that I can merge:
Once those are merged:
Before that is merged, I'll branch in cpython-bin-deps so that PRs keep building with the older version, then I can trigger the real build. I'll likely need somebody to download the built files and check them into the cpython-bin-deps repo, but I'll give it a go myself first in case my connection is up to it. Any volunteers? |
I'll update my PR to include some changes for windows. |
That backfired horribly. |
According to the comments under #18982 there is no point in creating a PR, so I'll just share my experiences. I was able to build current master with Tcl/Tk 8.6.10 both on Windows 10 (64-bit) and on macOS Catalina. I ran the tests on Windows and no Tkinter-related tests failed. I tested it manually on both platforms by poking around in IDLE and Thonny IDE and saw no (big) issues. (The only regression I saw in Thonny was Toplevel tooltips gaining a title bar, but I could solve it by adding a "wm_overrideredirect(1)"). One of the new features on macOS -- support for dark mode -- looked nice. Half-baked emoji support had not regressed at least. I really hope you'll find time to include Tk 8.6.10 in the last beta of Python 3.9! |
I did a build for Windows and put up the PR taking it in and there seems to be one (related) test failure: ====================================================================== Traceback (most recent call last):
File "D:\a\cpython\cpython\lib\tkinter\test\test_tkinter\test_widgets.py", line 943, in test_from
self.checkFloatParam(widget, 'from', 100, 14.9, 15.1, conv=float_round)
File "D:\a\cpython\cpython\lib\tkinter\test\widget_tests.py", line 106, in checkFloatParam
self.checkParam(widget, name, value, conv=conv, **kwargs)
File "D:\a\cpython\cpython\lib\tkinter\test\widget_tests.py", line 63, in checkParam
self.assertEqual2(widget[name], expected, eq=eq)
File "D:\a\cpython\cpython\lib\tkinter\test\widget_tests.py", line 47, in assertEqual2
self.assertEqual(actual, expected, msg)
AssertionError: 14.9 != 15.0 Terry, any ideas? |
(My PR is from a branch in the main repo, so if you want to just go in and fix it, feel free.) |
The existing patch mostly changes '9' to '10', which cannot in itself cause the test failure. There must be a change in widget behavior. Either Serhiy or Mark Rosemen might do better at diagnosing the discrepancy and whether _tkinter.c, tkinter.__init__, or tkinter/.../test_widget.py should be changed.PR branches on the main repository are discouraged. It is just as easy and safer for another coredev to modify a fork branch. |
On Windows, tk Scale['from'] is no longer rounded, matching ttk.Scale. More details and conditional fix on the PR. |
I had another reason, which was that I needed to trigger a signed build of the separate Tcl and Tk binaries. This is much easier (and safer) to do from the main repo than my own fork. But yeah, in general (for anyone else reading this), PRs from forks are fine. Tcl/Tk are special. |
The Windows part of this is done. Existing tests also pass on my machine. Ned, do you want this left open for macOS? or close? |
We might as well close this for now. I'm hoping for an 8.6.11 real soon now with almost a year's worth of changes, many for macOS, and we will need to incorporate it all into a revised installer variant. It won't be forgotten :) |
We should then upgrade on Windows again. PR would have nearly the same changes. |
bpo-43652 is for 8.6.11. |
Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.
Show more details
GitHub fields:
bugs.python.org fields:
The text was updated successfully, but these errors were encountered: