[Python-Dev] Can't compile _tkinter.c with Redhat 9 (post-SF#719880)

Jeff Hobbs jeffh@ActiveState.com
Wed, 18 Jun 2003 15:23:33 -0700


> From: martin@v.loewis.de
> > It is 100% upwards compatible from 8.3 and provides numerous
> > enhancements for Tk users (like compound buttons, new core widgets,
> > enhanced performance, etc).
>
> Unfortunately, it is not. Tk decided to set some "indeterminate"
> fields in event structures to '??', whereas earlier they have been
> numbers. This has caused an incompatibility in Tkinter of Python 2.2.2
> and earlier, which now crashes when trying to convert these to
> integers. This has been fixed in Python 2.2.3 and 2.3, by not trying
> to convert these fields, so that now Pmw crashes when interpreting
> these fields as integers (where "crashes" means "raising Python
> exceptions").

Ah yes, a few instances like that can be considered incompatible, but
it was really a correction for buggy behavior that existed in Tk.
You could make requests for event fields that were valid (depending
on the event type).  You either got lucky and got some random data,
or you could segfault.  This relates to these bugs:

https://sf.net/tracker/index.php?func=detail&aid=612110&group_id=12997&atid=
112997
https://sf.net/tracker/index.php?func=detail&aid=411307&group_id=12997&atid=
112997

Other items that are in this vein are different default sizes for
buttons on Windows (better native size), and more standard behavior
of transient toplevels across platforms (with docs).  You also get
stuff like the real XP scrollbar and auto-disabling of scrollbars
on Windows (native style).  Then there is of course the entirely new
native OS X Aqua support, but I'm not sure if Tkinter is ported for
OS X yet (??).

  Jeff Hobbs                     The Tcl Guy
  Senior Developer               http://www.ActiveState.com/