GeezerVison is showing github.com — Remove deprecated tkinter.tix module · Issue #75552 · python/cpython
Remove deprecated tkinter.tix module #75552Description
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:
assignee = None
closed_at = <Date 2018-09-06.14:42:24.327>
created_at = <Date 2017-09-06.21:33:20.186>
labels = ['expert-tkinter', 'OS-windows']
title = 'Remove deprecated tkinter.tix module'
updated_at = <Date 2018-09-06.14:42:24.324>
user = 'https://github.com/ned-deily'
bugs.python.org fields:
activity = <Date 2018-09-06.14:42:24.324>
actor = 'zach.ware'
assignee = 'none'
closed = True
closed_date = <Date 2018-09-06.14:42:24.327>
closer = 'zach.ware'
components = ['Tkinter', 'Windows']
creation = <Date 2017-09-06.21:33:20.186>
creator = 'ned.deily'
dependencies = []
files = []
hgrepos = []
issue_num = 31371
keywords = []
message_count = 5.0
messages = ['301524', '301545', '301570', '324670', '324695']
nosy_count = 9.0
nosy_names = ['rhettinger', 'paul.moore', 'taleinat', 'tim.golden', 'jkloth', 'ned.deily', 'zach.ware', 'serhiy.storchaka', 'steve.dower']
pr_nums = ['3393']
priority = 'normal'
resolution = 'later'
stage = 'resolved'
status = 'closed'
superseder = None
type = None
url = 'https://bugs.python.org/issue31371'
versions = []
Linked PRs
Activityned-deily commented on Sep 6, 2017 Tix is an old Tk widget extension set that has long been superseded by the ttk widgets that were added in Tk 8.5, officially released 10 years ago and since superseded by Tk 8.6. Tix was useful for users of Tk 8.4 but tkinter is no longer built, tested, or supported with 8.4. Despite that, we have continued to build and ship Tix with the python.org Windows installers. The last maintenance release of Tix was in 2008.
As of Python 3.6.0 (https://docs.python.org/3.6/library/tkinter.tix.html), we documented tkinter.tix as:
Deprecated since version 3.6: This Tk extension is unmaintained
and should not be used in new code. Use tkinter.ttk instead.
For 3.7, I believe it is time to remove both tkinter.tix and the building of Tix in the Windows builds. changed the title [-]Remove deprecated tkinter.ttx module in 3.7[/-] [+]Remove deprecated tkinter.tix module in 3.7[/+] on Sep 6, 2017rhettinger commented on Sep 6, 2017 serhiy-storchaka commented on Sep 7, 2017 According to PEP-4, "In order to facilitate writing code that works in both Python 2 & 3 simultaneously, any module that exists in both Python 3.5 and Python 2.7 will not be removed from the standard library until Python 2.7 is no longer supported as specified by PEP-373." Is there a reason for haste? The Tix library still is included in recent versions of Linux distributives and should be compatible with Tcl 8.6.
Ttk is not direct replacement of Tix. They provide different sets of widgets. May be you meant Tile, the predecessor of ttk? taleinat commented on Sep 6, 2018 We should decide on this.
I agree with Serhiy that in accordance with PEP-4, as long as Tix still works, we should keep it. zware commented on Sep 6, 2018 We missed the boat for 3.7 anyway.
With the PEP-4 argument, I won't push any further for ripping Tix out completely before 2020, but if something happens to break building it on Windows before then my fix will be to remove it from the Windows build. changed the title [-]Remove deprecated tkinter.tix module in 3.7[/-] [+]Remove deprecated tkinter.tix module[/+] on Sep 6, 2018zware commented on May 24, 2023 The time is ripe. tkinter.tix has been deprecated in documentation since 3.6, has emitted DeprecationWarning on import since 3.11 in accordance with PEP-387, and with Python 2.7 long dead (for us, anyway :)) PEP-4 (since rewritten) is no longer a concern. taleinat commented on Jun 1, 2023 For anyone looking for more details on the reasoning behind this removal, @zware's comment on the PR explains this well:
Tix has been unmaintained for 10 years now, has open security vulnerabilities, and every update of anything in our toolchain risks breaking it. If you still need it, it's open source and can be vendored into your project or maintained separately, but we will no longer provide it out of the box as of Python 3.13.
MetadataMetadataDevelopmentNo branches or pull requestsIssue actions
|