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
[2.7] test_tk: test_use() of test_tkinter.test_widgets randomly fails with "integer value too large to represent" on with AMD64 Windows8 3.5 #75038
Comments
http://buildbot.python.org/all/builders/AMD64%20Windows8%203.5/builds/323/steps/test/logs/stdio ====================================================================== Traceback (most recent call last):
File "D:\buildarea\3.5.bolen-windows8\build\lib\tkinter\test\test_tkinter\test_widgets.py", line 95, in test_use
widget2 = self.create(use=wid)
File "D:\buildarea\3.5.bolen-windows8\build\lib\tkinter\test\test_tkinter\test_widgets.py", line 70, in create
return tkinter.Toplevel(self.root, **kwargs)
File "D:\buildarea\3.5.bolen-windows8\build\lib\tkinter\__init__.py", line 2191, in __init__
BaseWidget.__init__(self, master, 'toplevel', cnf, {}, extra)
File "D:\buildarea\3.5.bolen-windows8\build\lib\tkinter\__init__.py", line 2148, in __init__
(widgetName, self._w) + extra + self._options(cnf))
_tkinter.TclError: integer value too large to represent |
This bug looks similar to bpo-25263. |
The compile step mentions Tk version 8.6.4.2: "tk-8.6.4.2 already exists, skipping." http://buildbot.python.org/all/builders/AMD64%20Windows8%203.5/builds/323/steps/compile/logs/stdio |
It seems like the test never fails on 3.6, while 3.6 contains the fix b9d6724. Let's try to backport this change to 3.5 and 2.7 branches. |
See also bpo-16840. |
Thank you for backporting the fix. Seems I just forgot about this. |
Serhiy Storchaka added the comment:
The bug wasn't notice before since test_tk fails once, but then pass |
I backported fixes to 2.7 and 3.5 branches. The test fails randomly, so I close the issue and hope that it doesn't come back. If it comes back on 3.5, we should now get the identifier which caused the failure. I will reopen the issue if the bug occurs again. |
The test failed on "AMD64 Windows8.1 Refleaks 2.7" buildbot: test_padx (test_tkinter.test_widgets.ToplevelTest) ... ok
test_pady (test_tkinter.test_widgets.ToplevelTest) ... ok
test_relief (test_tkinter.test_widgets.ToplevelTest) ... ok
test_screen (test_tkinter.test_widgets.ToplevelTest) ... skipped 'No $DISPLAY set.'
test_takefocus (test_tkinter.test_widgets.ToplevelTest) ... ok
test_use (test_tkinter.test_widgets.ToplevelTest) ... ERROR
test_visual (test_tkinter.test_widgets.ToplevelTest) ... ok
test_width (test_tkinter.test_widgets.ToplevelTest) ... test test_tk failed -- Traceback (most recent call last):
File "D:\buildarea\2.7.ware-win81-release.refleak\build\lib\lib-tk\test\test_tkinter\test_widgets.py", line 92, in test_use
widget2 = self.create(use=wid)
File "D:\buildarea\2.7.ware-win81-release.refleak\build\lib\lib-tk\test\test_tkinter\test_widgets.py", line 67, in create
return tkinter.Toplevel(self.root, **kwargs)
File "D:\buildarea\2.7.ware-win81-release.refleak\build\lib\lib-tk\Tkinter.py", line 2138, in __init__
BaseWidget.__init__(self, master, 'toplevel', cnf, {}, extra)
File "D:\buildarea\2.7.ware-win81-release.refleak\build\lib\lib-tk\Tkinter.py", line 2095, in __init__
(widgetName, self._w) + extra + self._options(cnf))
TclError: expected integer but got "0xffffffff92b20298L" ok ====================================================================== Traceback (most recent call last):
File "D:\buildarea\2.7.ware-win81-release.refleak\build\lib\lib-tk\test\test_tkinter\test_widgets.py", line 92, in test_use
widget2 = self.create(use=wid)
File "D:\buildarea\2.7.ware-win81-release.refleak\build\lib\lib-tk\test\test_tkinter\test_widgets.py", line 67, in create
return tkinter.Toplevel(self.root, **kwargs)
File "D:\buildarea\2.7.ware-win81-release.refleak\build\lib\lib-tk\Tkinter.py", line 2138, in __init__
BaseWidget.__init__(self, master, 'toplevel', cnf, {}, extra)
File "D:\buildarea\2.7.ware-win81-release.refleak\build\lib\lib-tk\Tkinter.py", line 2095, in __init__
(widgetName, self._w) + extra + self._options(cnf))
TclError: expected integer but got "0xffffffff92b20298L" |
Oh, the test also failed on Python 3.5 (on "AMD64 Windows8.1 Refleaks 3.5" buildbot): ====================================================================== Traceback (most recent call last):
File "D:\buildarea\3.5.ware-win81-release.refleak\build\lib\tkinter\test\test_tkinter\test_widgets.py", line 96, in test_use
widget2 = self.create(use=wid)
File "D:\buildarea\3.5.ware-win81-release.refleak\build\lib\tkinter\test\test_tkinter\test_widgets.py", line 70, in create
return tkinter.Toplevel(self.root, **kwargs)
File "D:\buildarea\3.5.ware-win81-release.refleak\build\lib\tkinter\__init__.py", line 2190, in __init__
BaseWidget.__init__(self, master, 'toplevel', cnf, {}, extra)
File "D:\buildarea\3.5.ware-win81-release.refleak\build\lib\tkinter\__init__.py", line 2147, in __init__
(widgetName, self._w) + extra + self._options(cnf))
_tkinter.TclError: integer value too large to represent |
Change the Python version to 2.7 only, since Python 3.5 doesn't accept bug fixes anymore (only security fixes). |
I didn't see this failure since one month on the 2.7 buildbots. While I fear that the bug still exists, I close it to clean up my list of open issues. I will reopen the issue if the bug strikes back! |
Too bad, the bug is not dead: http://buildbot.python.org/all/#/builders/45/builds/14 test_use (test_tkinter.test_widgets.ToplevelTest) ... ERROR
test_visual (test_tkinter.test_widgets.ToplevelTest) ... ok
test test_tk failed -- Traceback (most recent call last):
File "d:\cygwin\home\db3l\buildarea\2.7.bolen-windows\build\lib\lib-tk\test\test_tkinter\test_widgets.py", line 92, in test_use
widget2 = self.create(use=wid)
File "d:\cygwin\home\db3l\buildarea\2.7.bolen-windows\build\lib\lib-tk\test\test_tkinter\test_widgets.py", line 67, in create
return tkinter.Toplevel(self.root, **kwargs)
File "d:\cygwin\home\db3l\buildarea\2.7.bolen-windows\build\lib\lib-tk\Tkinter.py", line 2138, in __init__
BaseWidget.__init__(self, master, 'toplevel', cnf, {}, extra)
File "d:\cygwin\home\db3l\buildarea\2.7.bolen-windows\build\lib\lib-tk\Tkinter.py", line 2095, in __init__
(widgetName, self._w) + extra + self._options(cnf))
TclError: expected integer but got "0x8e5c00d6L"
test_width (test_tkinter.test_widgets.ToplevelTest) ... ok ====================================================================== Traceback (most recent call last):
File "d:\cygwin\home\db3l\buildarea\2.7.bolen-windows\build\lib\lib-tk\test\test_tkinter\test_widgets.py", line 92, in test_use
widget2 = self.create(use=wid)
File "d:\cygwin\home\db3l\buildarea\2.7.bolen-windows\build\lib\lib-tk\test\test_tkinter\test_widgets.py", line 67, in create
return tkinter.Toplevel(self.root, **kwargs)
File "d:\cygwin\home\db3l\buildarea\2.7.bolen-windows\build\lib\lib-tk\Tkinter.py", line 2138, in __init__
BaseWidget.__init__(self, master, 'toplevel', cnf, {}, extra)
File "d:\cygwin\home\db3l\buildarea\2.7.bolen-windows\build\lib\lib-tk\Tkinter.py", line 2095, in __init__
(widgetName, self._w) + extra + self._options(cnf))
TclError: expected integer but got "0x8e5c00d6L" |
In Python 2 hex() adds the 'L' suffix for longs. |
Oh thank you Serhiy for the fix, this random bug was annoying! |
Hum, test_use() still fails (commit fbdd3ee) on AMD64 Windows8.1 Refleaks 2.7. I reopen the issue. http://buildbot.python.org/all/#/builders/33/builds/21 ====================================================================== Traceback (most recent call last):
File "D:\buildarea\2.7.ware-win81-release.refleak\build\lib\lib-tk\test\test_tkinter\test_widgets.py", line 93, in test_use
widget2 = self.create(use=wid)
File "D:\buildarea\2.7.ware-win81-release.refleak\build\lib\lib-tk\test\test_tkinter\test_widgets.py", line 67, in create
return tkinter.Toplevel(self.root, **kwargs)
File "D:\buildarea\2.7.ware-win81-release.refleak\build\lib\lib-tk\Tkinter.py", line 2138, in __init__
BaseWidget.__init__(self, master, 'toplevel', cnf, {}, extra)
File "D:\buildarea\2.7.ware-win81-release.refleak\build\lib\lib-tk\Tkinter.py", line 2095, in __init__
(widgetName, self._w) + extra + self._options(cnf))
TclError: integer value too large to represent |
Same buildbot, same bug: AMD64 Windows8.1 Refleaks 2.7 http://buildbot.python.org/all/#/builders/33/builds/26 ====================================================================== Traceback (most recent call last):
File "D:\buildarea\2.7.ware-win81-release.refleak\build\lib\lib-tk\test\test_tkinter\test_widgets.py", line 93, in test_use
widget2 = self.create(use=wid)
File "D:\buildarea\2.7.ware-win81-release.refleak\build\lib\lib-tk\test\test_tkinter\test_widgets.py", line 67, in create
return tkinter.Toplevel(self.root, **kwargs)
File "D:\buildarea\2.7.ware-win81-release.refleak\build\lib\lib-tk\Tkinter.py", line 2138, in __init__
BaseWidget.__init__(self, master, 'toplevel', cnf, {}, extra)
File "D:\buildarea\2.7.ware-win81-release.refleak\build\lib\lib-tk\Tkinter.py", line 2095, in __init__
(widgetName, self._w) + extra + self._options(cnf))
TclError: integer value too large to represent |
Ah, this is Cygwin! This is a Tk bug (https://core.tcl.tk/tk/tktview?name=5ee8af61e5ef8e233158a43459624f4ecf58a6fe). It was fixed, but not completely. The fix doesn't work on Cygwin. |
Hmm, no; Cygwin isn't installed on ware-win81-release. When was the fix made? 2.7 on Windows currently uses 8.5.15, we can bump it up to latest 8.5 if that will help. |
The fix was made 2015-11-09. The tag core-8-5-15 was created 2013-09-16. I'm not well experienced with fossil and thought that 8.5.15 contains this fix, but now I see that this is not true. Yes, updating Tcl/Tk can help. |
If you'd like to do that update, there are some instructions at https://github.com/python/cpython-source-deps. You can get AppVeyor to use dependencies from your fork of If you don't want to mess with it, I'll get to it sooner or later :) |
Cool, thanks Zach! |
Bad news: the problem is not gone. Fail at commit 180372c (the commit after Zach's commit be1faab in the Python 2.7 branch): http://buildbot.python.org/all/#/builders/70/builds/28 test_use (test_tkinter.test_widgets.ToplevelTest) ... ERROR
test_visual (test_tkinter.test_widgets.ToplevelTest) ... ok
test test_tk failed -- Traceback (most recent call last):
File "D:\buildarea\2.7.ware-win81-release\build\lib\lib-tk\test\test_tkinter\test_widgets.py", line 93, in test_use
widget2 = self.create(use=wid)
File "D:\buildarea\2.7.ware-win81-release\build\lib\lib-tk\test\test_tkinter\test_widgets.py", line 67, in create
return tkinter.Toplevel(self.root, **kwargs)
File "D:\buildarea\2.7.ware-win81-release\build\lib\lib-tk\Tkinter.py", line 2138, in __init__
BaseWidget.__init__(self, master, 'toplevel', cnf, {}, extra)
File "D:\buildarea\2.7.ware-win81-release\build\lib\lib-tk\Tkinter.py", line 2095, in __init__
(widgetName, self._w) + extra + self._options(cnf))
TclError: integer value too large to represent
test_width (test_tkinter.test_widgets.ToplevelTest) ... ok ====================================================================== Traceback (most recent call last):
File "D:\buildarea\2.7.ware-win81-release\build\lib\lib-tk\test\test_tkinter\test_widgets.py", line 93, in test_use
widget2 = self.create(use=wid)
File "D:\buildarea\2.7.ware-win81-release\build\lib\lib-tk\test\test_tkinter\test_widgets.py", line 67, in create
return tkinter.Toplevel(self.root, **kwargs)
File "D:\buildarea\2.7.ware-win81-release\build\lib\lib-tk\Tkinter.py", line 2138, in __init__
BaseWidget.__init__(self, master, 'toplevel', cnf, {}, extra)
File "D:\buildarea\2.7.ware-win81-release\build\lib\lib-tk\Tkinter.py", line 2095, in __init__
(widgetName, self._w) + extra + self._options(cnf))
TclError: integer value too large to represent |
It still uses Tcl/Tk 8.5.15. |
Serhiy: "It still uses Tcl/Tk 8.5.15." pythoninfo says: The compilation says: |
I manually cleared |
Thank you Zachary! Can this issue be closed now? |
I think so :) |
Awesome, thanks! |
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: