You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
test_tk.test_configure_type() fails with Tcl/Tk 8.6.11 #89599
Traceback (most recent call last):
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Lib/tkinter/test/test_tkinter/test_widgets.py", line 1244, in test_configure_typeself.checkEnumParam(widget, 'type',
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Lib/tkinter/test/widget_tests.py", line 151, in checkEnumParamself.checkInvalidParam(widget, name, '',
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Lib/tkinter/test/widget_tests.py", line 73, in checkInvalidParamwithself.assertRaises(tkinter.TclError) as cm:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^AssertionError: TclError not raised
Traceback (most recent call last):
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Lib/tkinter/test/test_ttk/test_widgets.py", line 173, in test_configure_compoundself.checkEnumParam(widget, 'compound',
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Lib/tkinter/test/widget_tests.py", line 151, in checkEnumParamself.checkInvalidParam(widget, name, '',
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Lib/tkinter/test/widget_tests.py", line 73, in checkInvalidParamwithself.assertRaises(tkinter.TclError) as cm:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^AssertionError: TclError not raised
Traceback (most recent call last):
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Lib/tkinter/test/test_ttk/test_widgets.py", line 173, in test_configure_compoundself.checkEnumParam(widget, 'compound',
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Lib/tkinter/test/widget_tests.py", line 151, in checkEnumParamself.checkInvalidParam(widget, name, '',
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Lib/tkinter/test/widget_tests.py", line 73, in checkInvalidParamwithself.assertRaises(tkinter.TclError) as cm:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^AssertionError: TclError not raised
Traceback (most recent call last):
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Lib/tkinter/test/test_ttk/test_widgets.py", line 173, in test_configure_compoundself.checkEnumParam(widget, 'compound',
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Lib/tkinter/test/widget_tests.py", line 151, in checkEnumParamself.checkInvalidParam(widget, name, '',
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Lib/tkinter/test/widget_tests.py", line 73, in checkInvalidParamwithself.assertRaises(tkinter.TclError) as cm:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^AssertionError: TclError not raised
Traceback (most recent call last):
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Lib/tkinter/test/test_ttk/test_widgets.py", line 173, in test_configure_compoundself.checkEnumParam(widget, 'compound',
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Lib/tkinter/test/widget_tests.py", line 151, in checkEnumParamself.checkInvalidParam(widget, name, '',
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Lib/tkinter/test/widget_tests.py", line 73, in checkInvalidParamwithself.assertRaises(tkinter.TclError) as cm:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^AssertionError: TclError not raised
Traceback (most recent call last):
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Lib/tkinter/test/test_ttk/test_widgets.py", line 173, in test_configure_compoundself.checkEnumParam(widget, 'compound',
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Lib/tkinter/test/widget_tests.py", line 151, in checkEnumParamself.checkInvalidParam(widget, name, '',
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.nondebug/build/Lib/tkinter/test/widget_tests.py", line 73, in checkInvalidParamwithself.assertRaises(tkinter.TclError) as cm:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^AssertionError: TclError not raised
changed the title [-]test_tk.test_configure_type() failed on x86 Gentoo Non-Debug with X 3.x[/-][+]test_tk.test_configure_type() failed on x86 Gentoo Non-Debug with X 3.x with Tcl/Tk 8.6.11[/+]on Oct 19, 2021
changed the title [-]test_tk.test_configure_type() failed on x86 Gentoo Non-Debug with X 3.x[/-][+]test_tk.test_configure_type() failed on x86 Gentoo Non-Debug with X 3.x with Tcl/Tk 8.6.11[/+]on Oct 19, 2021
I'm not sure there's much utility to keeping this issue open: the test failures are fixed with a mild but not unprecedented weakening of the tests, and Tcl/Tk 8.6.11 is in the wild and will remain there, so our tests are likely to need to continue handling its behavior (buggy or not) in perpetuity.
By all means, please continue pursuing the change with Tcl/Tk :). I'm just not sure what else there is for us to do here.
Are there changes in handling empty values for other options? If yes, we perhaps need to add version-dependent tests for empty values instead of just skipping this case.
E-Paine commented on Dec 6, 2021
E-Painemannequin
Mannequin
More actions
Any word on the tk Menu type parameter change?
I'll admit to having completely forgot about this issue and not raising it with the Tk team. Manually trying this case on Tk 8.6.12 segfaults, so I really need to raise it. To reproduce the segfault, simply run the top command in Python, or the bottom command in Wish:
Activity
vstinner commentedon Oct 11, 2021
x86 Gentoo Non-Debug with X 3.x:
https://buildbot.python.org/all/#/builders/58/builds/891
test.pythoninfo:
tkinter.TCL_VERSION: 8.6
tkinter.TK_VERSION: 8.6
tkinter.info_patchlevel: 8.6.11
2 tests failed:
test_tk test_ttk_guionly
======================================================================
FAIL: test_configure_type (tkinter.test.test_tkinter.test_widgets.MenuTest)
----------------------------------------------------------------------
======================================================================
FAIL: test_configure_compound (tkinter.test.test_ttk.test_widgets.ButtonTest)
----------------------------------------------------------------------
======================================================================
FAIL: test_configure_compound (tkinter.test.test_ttk.test_widgets.CheckbuttonTest)
----------------------------------------------------------------------
======================================================================
FAIL: test_configure_compound (tkinter.test.test_ttk.test_widgets.LabelTest)
----------------------------------------------------------------------
======================================================================
FAIL: test_configure_compound (tkinter.test.test_ttk.test_widgets.MenubuttonTest)
----------------------------------------------------------------------
======================================================================
FAIL: test_configure_compound (tkinter.test.test_ttk.test_widgets.RadiobuttonTest)
----------------------------------------------------------------------
[-]test_configure_type() failed on[/-][+]test_tk.test_configure_type() failed on x86 Gentoo Non-Debug with X 3.x[/+][-]test_configure_type() failed on[/-][+]test_tk.test_configure_type() failed on x86 Gentoo Non-Debug with X 3.x[/+]vstinner commentedon Oct 11, 2021
See also bpo-43139: test_ttk test_compound and test_tk test_type fails with Tk 8.6.11.1.
vstinner commentedon Oct 11, 2021
They also failed on:
terryjreedy commentedon Oct 19, 2021
EP, do you have any insight into these issues? Why does 8.6.11 result in test failures? Bug in our test or in tk?
[-]test_tk.test_configure_type() failed on x86 Gentoo Non-Debug with X 3.x[/-][+]test_tk.test_configure_type() failed on x86 Gentoo Non-Debug with X 3.x with Tcl/Tk 8.6.11[/+][-]test_tk.test_configure_type() failed on x86 Gentoo Non-Debug with X 3.x[/-][+]test_tk.test_configure_type() failed on x86 Gentoo Non-Debug with X 3.x with Tcl/Tk 8.6.11[/+]ned-deily commentedon Oct 19, 2021
There are similar test failures on macOS with the current Tk 8.6.11.1 on both 3.10 and 3.11.
13 remaining items
ambv commentedon Oct 21, 2021
Thanks for the investigation, E. Paine. So I'm keeping this open then.
zware commentedon Oct 21, 2021
I'm not sure there's much utility to keeping this issue open: the test failures are fixed with a mild but not unprecedented weakening of the tests, and Tcl/Tk 8.6.11 is in the wild and will remain there, so our tests are likely to need to continue handling its behavior (buggy or not) in perpetuity.
By all means, please continue pursuing the change with Tcl/Tk :). I'm just not sure what else there is for us to do here.
E-Paine commentedon Oct 23, 2021
It turns out the
test_configure_compoundchange was intentional (https://core.tcl-lang.org/tk/tktview/46c2f088) and an empty string will use the value given by the style ("If set to the empty string (the default)..." https://www.tcl.tk/man/tcl/TkCmd/ttk_widget.html#M-compound).zware commentedon Oct 25, 2021
Thanks for tracking that down! Any word on the tk Menu type parameter change?
E-Paine commentedon Oct 25, 2021
I haven't submitted a bug report yet and want to do a little more research before I do so (the Tcl ticket system is quite difficult to search)
serhiy-storchaka commentedon Oct 25, 2021
Are there changes in handling empty values for other options? If yes, we perhaps need to add version-dependent tests for empty values instead of just skipping this case.
E-Paine commentedon Dec 6, 2021
I'll admit to having completely forgot about this issue and not raising it with the Tk team. Manually trying this case on Tk 8.6.12 segfaults, so I really need to raise it. To reproduce the segfault, simply run the top command in Python, or the bottom command in Wish:
terryjreedy commentedon Dec 6, 2021
crashes on current Windows 3.9-11 with 8.6.12
E-Paine commentedon Dec 7, 2021
Fix merged upstream: https://core.tcl-lang.org/tk/tktview/be8f5b9f
Can issue be closed now?
zware commentedon Feb 8, 2022
I think so; if others disagree they can reopen it :)