Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Tcl/Tk 8.5.0 Release Candidates

12 views
Skip to first unread message

Donald G Porter

unread,
Dec 10, 2007, 4:49:23 PM12/10/07
to

We are in the closing days of development leading to the release of
Tcl/Tk 8.5.0. "Release Candidate 2" [*] is available via ftp:

ftp://ftp.tcl.tk/pub/tcl/tcl8.5.0rc2-src.tar.gz
ftp://ftp.tcl.tk/pub/tcl/tk8.5.0rc2-src.tar.gz
ftp://ftp.tcl.tk/pub/tcl/tcl8.5.0rc2-html.tar.gz

for testing purposes. Please report any issues to the SourceForge
Trackers without delay. Please limit the use of these to testing.
Do not embed them in products for distribution to end users. Save
that for the actual 8.5.0 releases.

There will be at least one more Release Candidate that may become
the 8.5.0 release. At a minimum, some changes files and release note
matters need more updates.

[*] Release Candidates 0 and 1 were announced on developer mailing lists
only.

--
| Don Porter Mathematical and Computational Sciences Division |
| donald...@nist.gov Information Technology Laboratory |
| http://math.nist.gov/~DPorter/ NIST |
|______________________________________________________________________|

Donald G Porter

unread,
Dec 10, 2007, 4:51:58 PM12/10/07
to

Donald G Porter

unread,
Dec 13, 2007, 10:14:46 AM12/13/07
to
Donald G Porter wrote:
> There will be at least one more Release Candidate that may become
> the 8.5.0 release.

And here it is:

ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tcl8.5.0rc3-src.tar.gz
ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tk8.5.0rc3-src.tar.gz
ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tcl8.5.0rc3-html.tar.gz
ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tcl850rc3-src.zip
ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tk850rc3-src.zip

There are some reports of DNS unreliability, so you may need to
shift to the tcl.activestate.com server.

The intent is to simply rename these files tomorrow, and they will
become the Tcl/Tk 8.5.0 release.

Larry W. Virden

unread,
Dec 13, 2007, 11:17:17 AM12/13/07
to
On Dec 13, 10:14 am, Donald G Porter <d...@nist.gov> wrote:
> Donald G Porter wrote:
> > There will be at least one more Release Candidate that may become
> > the 8.5.0 release.
>
> And here it is:
>
> ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tcl8.5.0rc3-src.tar.gz
> ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tk8.5.0rc3-src.tar.gz
> ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tcl8.5.0rc3-html.tar.gz
> ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tcl850rc3-src.zip
> ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tk850rc3-src.zip
>
> There are some reports of DNS unreliability, so you may need to
> shift to the tcl.activestate.com server.
>
> The intent is to simply rename these files tomorrow, and they will
> become the Tcl/Tk 8.5.0 release.

I do hope that anyone who is planning on upgrading to Tcl/Tk 8.5 (with
the new gui widget set, etc.) has checked out at least one of the
release candidate releases and reported problems encountered.

Greg Couch

unread,
Dec 13, 2007, 4:35:19 PM12/13/07
to
"Larry W. Virden" <lvi...@gmail.com> writes:

>I do hope that anyone who is planning on upgrading to Tcl/Tk 8.5 (with
>the new gui widget set, etc.) has checked out at least one of the
>release candidate releases and reported problems encountered.

I tried 8.5rc2 in our application that uses Tk via Python, and I'm seeing
some weird behavior, like text widgets where the text isn't selectable and
sometimes you can't type into it, but if I iconify and deiconify the dialog,
then I can type in it again (but the text is still unselectable).

I also noticed that for the Tk Aqua version, that 8.4.16 and 8.5 changed
something with threads and our Python application regularly crashes with
a treading error, so we've dropped the Aqua version.

In both cases, I haven't had time yet to dig in and figure what's really
wrong. But I will be monitoring the newsgroup and reading about other
folks' experiences with 8.5.

Greg Couch
UCSF Computer Graphics Lab

George Peter Staplin

unread,
Dec 13, 2007, 9:11:10 PM12/13/07
to
Greg Couch wrote:
> "Larry W. Virden" <lvi...@gmail.com> writes:
>
>>I do hope that anyone who is planning on upgrading to Tcl/Tk 8.5 (with
>>the new gui widget set, etc.) has checked out at least one of the
>>release candidate releases and reported problems encountered.
>
> I tried 8.5rc2 in our application that uses Tk via Python, and I'm seeing
> some weird behavior, like text widgets where the text isn't selectable and
> sometimes you can't type into it, but if I iconify and deiconify the dialog,
> then I can type in it again (but the text is still unselectable).

Can you show a simple test case? I wonder what is causing this. I know
that <<Modified>> is being fixed in the Tk text widget today, and
yesterday. There's also the bug I posted about with Tk_RedrawImage,
which looks like it may not be fixed by the time of 8.5.0.


> I also noticed that for the Tk Aqua version, that 8.4.16 and 8.5 changed
> something with threads and our Python application regularly crashes with
> a treading error, so we've dropped the Aqua version.

Are you using Tk in more than 1 thread? It doesn't work well in
general to use Tk in more than thread. A test case for this would also
be useful. What is the threading error you see?

> In both cases, I haven't had time yet to dig in and figure what's really
> wrong. But I will be monitoring the newsgroup and reading about other
> folks' experiences with 8.5.

I once generated some statistics years ago, and found that a large
portion of the Tcl and Tk sources have changed between the 8.4 and 8.5
release > 50% IIRC. It's probably even larger now. My statistics were
meant to push the Tcl Core Team for more releases, but Jeff Hobbs at the
time felt there weren't enough new features to warrant a release.

I'm personally hoping that 8.5/8.6 is eventually a better release than
8.4, but most people don't run the HEAD, and with the core team being
uhm difficult it's frustrating.

Note: I'm not condemning all of the core team. DGP has certainly been
pushing for releases, and replying to 4 year old bug reports assigned to
TCT members that seemingly don't have the time. KBK has wanted 9.0 for
years.

In my opinion, the Tcl/Tk core test suites give *some* TCT developers a
false sense of security. It's very difficult to fully test code paths,
especially when so many changes have occured since 8.4.

You may recall that I was searching for more Tcl developers to fix bugs
years ago, and posting on comp.lang.tcl to motivate people. Nothing
came of it, and I was highly disappointed. So some of you have no one
to blame but yourselves. Shame on you :)


George

Greg Couch

unread,
Dec 14, 2007, 6:06:04 PM12/14/07
to


>George

If I had a simple test case for the unselectable text, I'd file a bug
report. If you're familiar with Python, it is with the IDLE window.

As for Aqua, we only use Tk in one thread because Python enforces that
automatically. I don't have access to Mac OS X today, but the error was
something like: "Fatal Python error: PyEval_ReleaseThread: NULL thread state"
and then Python exited. That indicates something changed with threading
on Aqua since the identical code is used for Windows and X11 and it works
on those platforms (and for Aqua in Tk 8.4.15).

- Greg

George Peter Staplin

unread,
Dec 14, 2007, 7:35:26 PM12/14/07
to

I was kind of hoping to nudge you for more info, and I got it. I'll try
to build a simple test case using Python and the latest Tk.

I'm familiar with IDLE. It's the editor extraordinaire for Python that
comes with Python and uses Tkinter. IIRC Guido van Rossum wrote most of
it.

I can't be of help with the MacOS X problems yet.


George

George Peter Staplin

unread,
Dec 14, 2007, 8:22:25 PM12/14/07
to
George Peter Staplin wrote:

I can duplicate the bug with 8.5/HEAD of Tcl and Tk using the latest
Python from python.org with IDLE. I'm trying to track it down now.


George

Don Porter

unread,
Dec 15, 2007, 1:16:33 AM12/15/07
to
Donald G Porter wrote:
> And here it is:
> ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tcl8.5.0rc3-src.tar.gz
...

> The intent is to simply rename these files tomorrow, and they will
> become the Tcl/Tk 8.5.0 release.

Even before some of the problems with Python's Tkinter were
noted here, some other important post-RC3 commits came in.
From those, Release Candidate 4 has been created:

ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tcl8.5.0rc4-src.tar.gz
ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tk8.5.0rc4-src.tar.gz
ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tcl8.5.0rc4-html.tar.gz
ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tcl850rc4-src.zip
ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tk850rc4-src.zip

The real 8.5.0 releases are still to come. Best guess right
now is early-to-mid-next week.

DGP

Daniel A. Steffen

unread,
Dec 15, 2007, 5:57:17 AM12/15/07
to
On Dec 15, 12:06 am, Greg Couch <gr...@cgl.ucsf.edu> wrote:
> As for Aqua, we only use Tk in one thread because Python enforces that
> automatically. I don't have access to Mac OS X today, but the error was
> something like: "Fatal Python error: PyEval_ReleaseThread: NULL thread state"
> and then Python exited. That indicates something changed with threading
> on Aqua since the identical code is used for Windows and X11 and it works
> on those platforms (and for Aqua in Tk 8.4.15).

just checked, I see nothing thread related specific to Aqua that has
changed since 8.4.15, so your report is puzzling; the
PyEval_ReleaseThread message could of course be a red herring and the
problem may be caused by other changes.
Are you running against a thread-enabled build of Tk (& Tcl)? Unlike
on other unix platforms, the threaded build of Tcl/Tk is usually the
default for binaries on Mac OS X (for historical reasons), that may be
a point of difference between X11 (on other unix platforms) and
Aqua... If yes, you could try running against a TkAqua configured with
--disable-threads.

If you have a small testcase that reproduces this problem, please post
a Tk bug report at sourceforge and I'll take a look ASAP, c.l.t is not
a very reliable avenue for reporting bugs...

Cheers,

Daniel

Uwe Klein

unread,
Dec 15, 2007, 8:07:46 AM12/15/07
to
George Peter Staplin wrote:

>>I tried 8.5rc2 in our application that uses Tk via Python, and I'm seeing
>>some weird behavior, like text widgets where the text isn't selectable and
>>sometimes you can't type into it, but if I iconify and deiconify the dialog,
>>then I can type in it again (but the text is still unselectable).

I found this to be an issue with mozilla and friends as well.
( You have to open another window to get your focus back.
Keyboard input to another window than your mouse events.
)
IMHO it is connected with the XIM module of the X-Server.

uwe

ZB

unread,
Dec 15, 2007, 8:22:23 AM12/15/07
to
Dnia 15.12.2007 Don Porter <dgpo...@verizon.net> napisał/a:

> Even before some of the problems with Python's Tkinter were
> noted here, some other important post-RC3 commits came in.

And this "rename send {}"-related problem (still here) should be considered
as harmless?
--
ZB

miguel

unread,
Dec 15, 2007, 10:03:41 AM12/15/07
to

Is it this bug ticket
http://sourceforge.net/tracker/index.php?func=detail&aid=1821174&group_id=12997&atid=112997?


The maintainer says: "This is a real bug, and ought to be fixed before
8.5.0, but it's not severe: the worst end-user consequence is a
confusing/annoying error message at program shutdown in (probably-) rare
circumstances." He also said priority 8 (9 would be "release blocker").

ZB

unread,
Dec 15, 2007, 10:02:37 AM12/15/07
to
Dnia 15.12.2007 miguel <mso...@users.sf.net> napisał/a:

> confusing/annoying error message at program shutdown in (probably-) rare
> circumstances

Perhaps it could be possible to block that error message? F.e. by directing
it to /dev/null/ or sth.?
--
ZB

miguel

unread,
Dec 15, 2007, 10:47:18 AM12/15/07
to

Please take the discussion of the bug to its proper venue: the ticket
tracker.

I am myself completely unqualified to comment on your proposal.

ZB

unread,
Dec 15, 2007, 10:10:20 AM12/15/07
to

No, it's not about fixing. I'm wondering, if I can block that message for
now. Perhaps you know a way?
--
ZB

Donal K. Fellows

unread,
Dec 15, 2007, 12:48:53 PM12/15/07
to
Uwe Klein wrote:
> IMHO it is connected with the XIM module of the X-Server.

There are bugs in Tk relating to XIM handling; it's one of the less
well documented part of X (since most people writing code just say
"call this all it work" and don't give much guidance beyond very
cryptic source...) so working out what assumptions are safe and how to
merge in other event processing loops is tricky.

Donal.

ZB

unread,
Dec 15, 2007, 1:28:09 PM12/15/07
to
Dnia 15.12.2007 Don Porter <dgpo...@verizon.net> napisał/a:

> Even before some of the problems with Python's Tkinter were
> noted here, some other important post-RC3 commits came in.

> [..]


> The real 8.5.0 releases are still to come. Best guess right
> now is early-to-mid-next week.

Wait, I've found a real one (using RC2): the dimensions of the radiobuttons
and checkbuttons (both "normal" and themed ones) widgets are no longer
adjusted according to the size of the chosen font. Checked it many times.

Perhaps some other widgets needs such check-out.
--
ZB

Cesar Rabak

unread,
Dec 15, 2007, 3:42:53 PM12/15/07
to
ZB escreveu:
I think this brings an interesting discussion:

Should de widget adjust to the font (size) or should it be around?

Better, as it may show we have two schools of thought on this, shouldn't
we have a flag to choose either of these behaviours?

just my .0199999...

Regards,

--
Cesar Rabak

ZB

unread,
Dec 15, 2007, 2:05:05 PM12/15/07
to
Dnia 15.12.2007 Cesar Rabak <csr...@yahoo.com.br> napisał/a:

> I think this brings an interesting discussion:
>
> Should de widget adjust to the font (size) or should it be around?

Discussion?

Just make a simple test:

pack [radiobutton .r -text "Hi" -font "Arial 20"]

Do you like it?

> Better, as it may show we have two schools of thought on this, shouldn't
> we have a flag to choose either of these behaviours?

Perhaps additional option.
--
ZB

ZB

unread,
Dec 15, 2007, 2:13:48 PM12/15/07
to
Dnia 15.12.2007 Cesar Rabak <csr...@yahoo.com.br> napisał/a:

> Should de widget adjust to the font (size) or should it be around?

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
OK, just few words, why: just try to run your own programs using the screen
of much different (perhaps very high) resolution. The fonts size can be
adjusted with not so much effort - but how will all that check- und
radiobuttons look like, when the resizeability has been blocked?
--
ZB

Donald G Porter

unread,
Dec 17, 2007, 1:53:47 PM12/17/07
to
Don Porter wrote:
> The real 8.5.0 releases are still to come. Best guess right
> now is early-to-mid-next week.

Latest release candidates correct a memory alignment problem reported
over the weekend.

ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tcl8.5.0rc5-src.tar.gz
ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tk8.5.0rc5-src.tar.gz

ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tcl8.5.0rc5-html.tar.gz
ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tcl850rc5-src.zip
ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tk850rc5-src.zip

Once again, intent is to rename these files to the real 8.5.0 release
tomorrow, unless some other serious bug fix comes in.

Kevin Walzer

unread,
Dec 17, 2007, 10:23:01 PM12/17/07
to

I can reproduce these issues with IDLE and Tk 8.5 RC 5 on Mac OS X
10.5.1. Here is the strange behavior that I observe:

1. Toplevel windows do not take focus unless selected with the menu.
2. Text is not selectable.
3. Cannot set insertion point with mouse.


--
Kevin Walzer
Code by Kevin
http://www.codebykevin.com

George Peter Staplin

unread,
Dec 17, 2007, 10:50:47 PM12/17/07
to

Tkinter has had some problems for a while. During my tests today I
found that it fails going all the way back to 8.5a1. I'm still not sure
what the cause is, but I've noted most of the information in this bug
report:

http://sourceforge.net/tracker/index.php?func=detail&aid=1851526&group_id=12997&atid=112997


I also reported the bug to pytho...@python.org, and someone said he'd
try to look into it this week. We will see what happens.

I'd appreciate any help from the community in tracking it down further,
because Tkinter support is important to us. The bug is also assigned to
me, so I'm hoping it won't get lost in the heap.


George

skuh...@web.de

unread,
Dec 18, 2007, 4:22:37 AM12/18/07
to
Hello

I had not much time to play around with new betas and RCs lately so I
may come too late, but maybe it is of interest for some here:

Donald G Porter wrote:
> Don Porter wrote:
> > The real 8.5.0 releases are still to come. Best guess right
> > now is early-to-mid-next week.
>
> Latest release candidates correct a memory alignment problem reported
> over the weekend.

I downloaded the RC5 an hour ago and after compiling tcl/tk I did
"make test". Tcl reported no failed tests, but Tk failed nearly all
tests. The environment is:

Linux 2.6.23.8-34.fc7 on Fedora 7
Window Manager: KDE kwin 3.5.8-9
X.org X11 1.3.0.0
gcc 4.1.2

Most tests failed and on one test tktest hangs and does not respond
anymore. Below is the test-output.

Regards
Stephan
--------------------------------------------------------------------------------------
Tests began at Tue Dec 18 09:56:12 CET 2007
bell.test
Bell should ring now ...
bgerror.test
bind.test
bitmap.test
border.test
button.test
canvImg.test
canvPs.test
canvRect.test
canvText.test
canvWind.test
canvas.test
choosedir.test
clipboard.test
clrpick.test
cmds.test
color.test
config.test
cursor.test
dialog.test
embed.test
entry.test


==== entry-3.6 EntryWidgetCmd procedure, "bbox" widget command FAILED
==== Contents of test case:

# Tcl_UtfAtIndex(): no utf chars

.e delete 0 end
.e insert 0 "abc"
list [.e bbox 3] [.e bbox end]

---- Result was:
{18 5 6 14} {18 5 6 14}
---- Result should have been (exact matching):
{17 5 6 14} {17 5 6 14}
==== entry-3.6 FAILED

==== entry-3.7 EntryWidgetCmd procedure, "bbox" widget command FAILED
==== Contents of test case:

# Tcl_UtfAtIndex(): utf at end
.e delete 0 end
.e insert 0 "ab\u4e4e"
.e bbox end

---- Result was:
18 5 3 14
---- Result should have been (exact matching):
17 5 3 14
==== entry-3.7 FAILED

==== entry-3.8 EntryWidgetCmd procedure, "bbox" widget command FAILED
==== Contents of test case:

# Tcl_UtfAtIndex(): utf before index
.e delete 0 end
.e insert 0 "ab\u4e4ec"
.e bbox 3

---- Result was:
21 5 6 14
---- Result should have been (exact matching):
20 5 6 14
==== entry-3.8 FAILED

==== entry-3.10 EntryWidgetCmd procedure, "bbox" widget command FAILED
==== Contents of test case:

.e delete 0 end
.e insert 0 "abcdefghij\u4e4eklmnop"
list [.e bbox 0] [.e bbox 1] [.e bbox 10] [.e bbox end]

---- Result was:
{5 5 6 14} {11 5 7 14} {60 5 3 14} {97 5 7 14}
---- Result should have been (exact matching):
{5 5 6 14} {11 5 6 14} {65 5 3 14} {98 5 6 14}
==== entry-3.10 FAILED

==== entry-3.65 EntryWidgetCmd procedure, "xview" widget command
FAILED
==== Contents of test case:

.e xview 5
.e xview

---- Result was:
0.0537634 0.333333
---- Result should have been (exact matching):
0.0537634 0.268817
==== entry-3.65 FAILED

==== entry-3.67 EntryWidgetCmd procedure, "xview" widget command
FAILED
==== Contents of test case:

.e xview 0
.e icursor 10
.e xview insert
.e xview

---- Result was:
0.107527 0.387097
---- Result should have been (exact matching):
0.107527 0.322581
==== entry-3.67 FAILED

==== entry-3.70 EntryWidgetCmd procedure, "xview" widget command
FAILED
==== Contents of test case:

.e xview moveto 0.5
.e xview

---- Result was:
0.505376 0.774194
---- Result should have been (exact matching):
0.505376 0.72043
==== entry-3.70 FAILED

==== entry-3.73 EntryWidgetCmd procedure, "xview" widget command
FAILED
==== Contents of test case:

.e xview moveto 0
.e xview scroll 1 pages
.e xview

---- Result was:
0.193548 0.462366
---- Result should have been (exact matching):
0.193548 0.408602
==== entry-3.73 FAILED

==== entry-3.74 EntryWidgetCmd procedure, "xview" widget command
FAILED
==== Contents of test case:

.e xview moveto .9
update
.e xview scroll -2 p
.e xview

---- Result was:
0.376344 0.655914
---- Result should have been (exact matching):
0.397849 0.612903
==== entry-3.74 FAILED

==== entry-3.80 EntryWidgetCmd procedure, "xview" widget command
FAILED
==== Contents of test case:

.e xview 300
.e index @0

---- Result was:
71
---- Result should have been (exact matching):
73
==== entry-3.80 FAILED

event.test
filebox.test
focus.test


==== focus-1.3 Tk_FocusCmd procedure FAILED
==== Contents of test case:

focusClear
focus .t.b3
focus

---- Result was:
.t.b3
---- Result should have been (exact matching):

==== focus-1.3 FAILED

==== focus-1.12 Tk_FocusCmd procedure, -displayof option FAILED
==== Contents of test case:

focusClear
focus .t
focus -displayof .t.b3

---- Result was:
.t
---- Result should have been (exact matching):

==== focus-1.12 FAILED

==== focus-1.19 Tk_FocusCmd procedure, -force option FAILED
==== Contents of test case:

focusClear
focus .t.b1
set x [list [focus]]
focus -force .t.b1
lappend x [focus]

---- Result was:
.t.b1 .t.b1
---- Result should have been (exact matching):
{} .t.b1
==== focus-1.19 FAILED

==== focus-2.13 TkFocusFilterEvent procedure, Enter events FAILED
==== Contents of test case:

focus .t.b1
focusClear
event gen [testwrapper .t] <Enter> -detail NotifyAncestor -focus 1
set focusInfo {}
update
set focusInfo

---- Result was:

---- Result should have been (exact matching):
in .t NotifyVirtual
in .t.b1 NotifyAncestor

==== focus-2.13 FAILED

==== focus-2.15 TkFocusFilterEvent procedure, Leave events FAILED
==== Contents of test case:

set result {}
focus .t.b1
foreach detail {NotifyAncestor NotifyInferior NotifyNonlinear
NotifyNonlinearVirtual NotifyVirtual} {
focusClear
event gen [testwrapper .t] <Enter> -detail NotifyAncestor -focus 1
update
event gen [testwrapper .t] <Leave> -detail $detail
update
lappend result [focus]
}
set result

---- Result was:
.t.b1 .t.b1 .t.b1 .t.b1 .t.b1
---- Result should have been (exact matching):
{} .t.b1 {} {} {}
==== focus-2.15 FAILED

==== focus-2.16 TkFocusFilterEvent procedure, Leave events FAILED
==== Contents of test case:

set result {}
focus .t.b1
event gen [testwrapper .t] <Enter> -detail NotifyAncestor -focus 1
update
set focusInfo {}
event gen [testwrapper .t] <Leave> -detail NotifyAncestor
update
set focusInfo

---- Result was:

---- Result should have been (exact matching):
out .t.b1 NotifyAncestor
out .t NotifyVirtual

==== focus-2.16 FAILED

==== focus-2.17 TkFocusFilterEvent procedure, Leave events FAILED
==== Contents of test case:

set result {}
focus .t.b1
event gen [testwrapper .t] <Enter> -detail NotifyAncestor -focus 1
update
set focusInfo {}
event gen .t.b1 <Leave> -detail NotifyAncestor
event gen [testwrapper .] <Leave> -detail NotifyAncestor
update
list $focusInfo [focus]

---- Result was:
{} .t.b1
---- Result should have been (exact matching):
{out .t.b1 NotifyAncestor
out .t NotifyVirtual
} {}
==== focus-2.17 FAILED

==== focus-4.2 TkFocusDeadWindow procedure FAILED
==== Contents of test case:

focusSetup
update
focus -force .t.b2
focus .b
update
destroy .t.b2
update
focus

---- Result was:
.t
---- Result should have been (exact matching):
.b
==== focus-4.2 FAILED

focusTcl.test
font.test


==== font-4.9 font command: actual FAILED
==== Contents of test case:

# (objc > 3) so objPtr = objv[3 + skip]
string tolower [font actual {-family times} -family]

---- Result was:
nimbus roman no9 l
---- Result should have been (exact matching):
times
==== font-4.9 FAILED

==== font-8.4 font command: families FAILED
==== Contents of test case:

# TkpGetFontFamilies()
regexp -nocase times [font families]

---- Result was:
0
---- Result should have been (exact matching):
1
==== font-8.4 FAILED

==== font-17.5 Tk_FreeFont procedure: named font FAILED
==== Contents of test case:

# not (fontPtr->refCount == 0)
setup
font create xyz -underline 1
.b.f config -font xyz
font delete xyz
set x [font actual xyz -underline]
destroy .b.f
list [font actual xyz -underline] $x

---- Result was:
0 0
---- Result should have been (exact matching):
0 1
==== font-17.5 FAILED

==== font-21.9 Tk_PostscriptFontName procedure: spaces FAILED
==== Contents of test case:

psfontname "{new century schoolbook} 10"

---- Result was:
CenturySchoolbookL
---- Result should have been (exact matching):
NewCenturySchlbk-Roman
==== font-21.9 FAILED

==== font-24.5 Tk_ComputeTextLayout: break line FAILED
==== Contents of test case:

.b.l config -text "000\t00000" -wrap [expr 9*$ax]
set x [getsize]
.b.l config -wrap 0
set x

---- Result was:
63 30
---- Result should have been (exact matching):
56 30
==== font-24.5 FAILED

==== font-38.12 ParseFontNameObj procedure: stylelist loop FAILED
==== Contents of test case:

lrange [font actual {times 12 bold italic overstrike underline}] 4
end

---- Result was:
-weight bold -slant italic -underline 0 -overstrike 0
---- Result should have been (exact matching):
-weight bold -slant italic -underline 1 -overstrike 1
==== font-38.12 FAILED

==== font-44.1 TkFontGetPixels: size < 0 FAILED
==== Contents of test case:

font actual {times -12} -size

---- Result was:
12
---- Result should have been (exact matching):
24
==== font-44.1 FAILED

==== font-45.4 TkFontGetAliasList: match FAILED
==== Contents of test case:

# can fail on Unix systems that have a real "times new roman" font
font actual {{times new roman} 10} -family

---- Result was:
Liberation Serif
---- Result should have been (exact matching):
Nimbus Roman No9 L
==== font-45.4 FAILED

frame.test
geometry.test
get.test
grab.test
grid.test
id.test
image.test
imgBmap.test
imgPPM.test
imgPhoto.test
listbox.test
main.test
menu.test
menuDraw.test
menubut.test
message.test
msgbox.test
obj.test
oldpack.test
option.test
pack.test
panedwindow.test
place.test
raise.test
safe.test
scale.test
scrollbar.test


==== scrollbar-3.12 ScrollbarWidgetCmd procedure, "cget" option FAILED
==== Contents of test case:

list [catch {.s2 cget -bd} msg] $msg

---- Result was:
0 1
---- Result should have been (exact matching):
0 2
==== scrollbar-3.12 FAILED

select.test
send.test
spinbox.test


==== spinbox-3.6 SpinboxWidgetCmd procedure, "bbox" widget command
FAILED
==== Contents of test case:

# Tcl_UtfAtIndex(): no utf chars

.e delete 0 end
.e insert 0 "abc"
list [.e bbox 3] [.e bbox end]

---- Result was:
{18 5 6 14} {18 5 6 14}
---- Result should have been (exact matching):
{17 5 6 14} {17 5 6 14}
==== spinbox-3.6 FAILED

==== spinbox-3.7 SpinboxWidgetCmd procedure, "bbox" widget command
FAILED
==== Contents of test case:

# Tcl_UtfAtIndex(): utf at end
.e delete 0 end
.e insert 0 "ab\u4e4e"
.e bbox end

---- Result was:
18 5 3 14
---- Result should have been (exact matching):
17 5 3 14
==== spinbox-3.7 FAILED

==== spinbox-3.8 SpinboxWidgetCmd procedure, "bbox" widget command
FAILED
==== Contents of test case:

# Tcl_UtfAtIndex(): utf before index
.e delete 0 end
.e insert 0 "ab\u4e4ec"
.e bbox 3

---- Result was:
21 5 6 14
---- Result should have been (exact matching):
20 5 6 14
==== spinbox-3.8 FAILED

==== spinbox-3.10 SpinboxWidgetCmd procedure, "bbox" widget command
FAILED
==== Contents of test case:

.e delete 0 end
.e insert 0 "abcdefghij\u4e4eklmnop"
list [.e bbox 0] [.e bbox 1] [.e bbox 10] [.e bbox end]

---- Result was:
{5 5 6 14} {11 5 7 14} {60 5 3 14} {97 5 7 14}
---- Result should have been (exact matching):
{5 5 6 14} {11 5 6 14} {65 5 3 14} {98 5 6 14}
==== spinbox-3.10 FAILED

==== spinbox-3.65 SpinboxWidgetCmd procedure, "xview" widget command
FAILED
==== Contents of test case:

.e xview 5
.e xview

---- Result was:
0.0537634 0.333333
---- Result should have been (exact matching):
0.0537634 0.268817
==== spinbox-3.65 FAILED

==== spinbox-3.67 SpinboxWidgetCmd procedure, "xview" widget command
FAILED
==== Contents of test case:

.e xview 0
.e icursor 10
.e xview insert
.e xview

---- Result was:
0.107527 0.387097
---- Result should have been (exact matching):
0.107527 0.322581
==== spinbox-3.67 FAILED

==== spinbox-3.70 SpinboxWidgetCmd procedure, "xview" widget command
FAILED
==== Contents of test case:

.e xview moveto 0.5
.e xview

---- Result was:
0.505376 0.774194
---- Result should have been (exact matching):
0.505376 0.72043
==== spinbox-3.70 FAILED

==== spinbox-3.73 SpinboxWidgetCmd procedure, "xview" widget command
FAILED
==== Contents of test case:

.e xview moveto 0
.e xview scroll 1 pages
.e xview

---- Result was:
0.193548 0.462366
---- Result should have been (exact matching):
0.193548 0.408602
==== spinbox-3.73 FAILED

==== spinbox-3.74 SpinboxWidgetCmd procedure, "xview" widget command
FAILED
==== Contents of test case:

.e xview moveto .9
update
.e xview scroll -2 p
.e xview

---- Result was:
0.376344 0.655914
---- Result should have been (exact matching):
0.397849 0.612903
==== spinbox-3.74 FAILED

==== spinbox-3.80 SpinboxWidgetCmd procedure, "xview" widget command
FAILED
==== Contents of test case:

.e xview 300
.e index @0

---- Result was:
71
---- Result should have been (exact matching):
73
==== spinbox-3.80 FAILED

==== spinbox-19.8 spinbox widget validation FAILED
==== Contents of test case:

focus -force .e
# update necessary to process FocusIn event
update
set ::vVals

---- Result was:
.e -1 -1 abcd abcd {} focus focusout
---- Result should have been (exact matching):
.e -1 -1 abcd abcd {} focus focusin
==== spinbox-19.8 FAILED

text.test
textBTree.test
textDisp.test


==== textDisp-16.14 TkTextYviewCmd procedure, "moveto" option FAILED
==== Contents of test case:

.t yview moveto .75
.t index @0,0

---- Result was:
151.40
---- Result should have been (exact matching):
151.60
==== textDisp-16.14 FAILED

==== textDisp-16.17 TkTextYviewCmd procedure, "moveto" option FAILED
==== Contents of test case:

.t yview moveto .755
.t index @0,0

---- Result was:
151.60
---- Result should have been (exact matching):
151.80
==== textDisp-16.17 FAILED

==== textDisp-16.34 TkTextYviewCmd procedure FAILED
==== Contents of test case:

set res {}
.t yview 1.0
lappend res [expr {[lindex [.t yview] 0] * [.t count -ypixels 1.0
end]}]
.t yview scroll 1 pixels
lappend res [expr {[lindex [.t yview] 0] * [.t count -ypixels 1.0
end]}]
.t yview scroll 1 pixels
lappend res [expr {[lindex [.t yview] 0] * [.t count -ypixels 1.0
end]}]
.t yview scroll 1 pixels
lappend res [expr {[lindex [.t yview] 0] * [.t count -ypixels 1.0
end]}]
.t yview scroll 1 pixels
lappend res [expr {[lindex [.t yview] 0] * [.t count -ypixels 1.0
end]}]
.t yview scroll 1 pixels
lappend res [expr {[lindex [.t yview] 0] * [.t count -ypixels 1.0
end]}]

---- Result was:
0.0 0.9999999999999999 1.9999999999999998 3.0 3.9999999999999996 5.0
---- Result should have been (exact matching):
0.0 1.0 2.0 3.0 4.0 5.0
==== textDisp-16.34 FAILED

textImage.test


==== textImage-3.2 delayed image management FAILED
==== Contents of test case:

catch {
image create photo small -width 5 -height 5
small put red -to 0 0 4 4
}
catch {destroy .t}
text .t -font test_font -bd 0 -highlightthickness 0 -padx 0 -pady 0
pack .t
.t image create end -name test
update
set result ""
lappend result [.t bbox test]
.t image configure test -image small -align top
update
lappend result [.t bbox test]

---- Result was:
{0 11 0 0} {0 0 5 5}
---- Result should have been (exact matching):
{} {0 0 5 5}
==== textImage-3.2 FAILED

textIndex.test
textMark.test
textTag.test
textWind.test


==== textWind-10.6.1 EmbWinLayoutProc procedure, error in creating
window FAILED
==== Contents of test case:

.t delete 1.0 end
.t insert 1.0 "Some sample text"
catch {destroy .t2}
.t window create 1.5 -create {
toplevel .t2 -width 100 -height 150
wm geom .t2 +0+0
concat .t2
}
set msg {}
update
set i 0
while {[llength $msg] == 1 && [incr i] < 200} { update }
set msg

---- Result was:
{{can't embed .t2 relative to .t}}
---- Result should have been (exact matching):
{{can't embed .t2 relative to .t}} {{window name "t2" already exists
in parent}}
==== textWind-10.6.1 FAILED

tk.test
unixButton.test
unixEmbed.test
unixFont.test


==== unixfont-1.2 TkpGetNativeFont procedure: native FAILED
==== Contents of test case:

font measure fixed 0

---- Result was:
9
---- Result should have been (exact matching):
6
==== unixfont-1.2 FAILED

==== unixfont-2.2 TkpGetFontFromAttributes procedure: Times relatives
FAILED
==== Contents of test case:

set x {}
lappend x [lindex [font actual {-family "Times New Roman"}] 1]
lappend x [lindex [font actual {-family "New York"}] 1]
lappend x [lindex [font actual {-family "Times"}] 1]

---- Result was:
{Liberation Serif} {DejaVu LGC Sans} {Nimbus Roman No9 L}
---- Result should have been (exact matching):
times times times
==== unixfont-2.2 FAILED

==== unixfont-2.3 TkpGetFontFromAttributes procedure: Courier
relatives FAILED
==== Contents of test case:

set x {}
lappend x [lindex [font actual {-family "Courier New"}] 1]
lappend x [lindex [font actual {-family "Monaco"}] 1]
lappend x [lindex [font actual {-family "Courier"}] 1]

---- Result was:
{Liberation Mono} {DejaVu LGC Sans} Courier
---- Result should have been (exact matching):
courier courier courier
==== unixfont-2.3 FAILED

==== unixfont-2.4 TkpGetFontFromAttributes procedure: Helvetica
relatives FAILED
==== Contents of test case:

set x {}
lappend x [lindex [font actual {-family "Arial"}] 1]
lappend x [lindex [font actual {-family "Geneva"}] 1]
lappend x [lindex [font actual {-family "Helvetica"}] 1]

---- Result was:
{Liberation Sans} {DejaVu LGC Sans} {Nimbus Sans L}
---- Result should have been (exact matching):
helvetica helvetica helvetica
==== unixfont-2.4 FAILED

==== unixfont-2.6 TkpGetFontFromAttributes: fallback to fixed family
FAILED
==== Contents of test case:

lindex [font actual {-family fixed -size 10}] 1

---- Result was:
Fixed
---- Result should have been (exact matching):
fixed
==== unixfont-2.6 FAILED

==== unixfont-2.8 TkpGetFontFromAttributes: loop over returned font
names FAILED
==== Contents of test case:

lindex [font actual {-family fixed -size 31}] 1

---- Result was:
Fixed
---- Result should have been (exact matching):
fixed
==== unixfont-2.8 FAILED

==== unixfont-2.9 TkpGetFontFromAttributes: reject adobe courier if
possible FAILED
==== Contents of test case:

lindex [font actual {-family courier}] 1

---- Result was:
Courier
---- Result should have been (exact matching):
courier
==== unixfont-2.9 FAILED

==== unixfont-5.9 Tk_MeasureChars procedure: TK_PARTIAL_OK FAILED
==== Contents of test case:

.b.c dchars $t 0 end
.b.c insert $t 0 "0000"
.b.c index $t @[expr int($ax*2.5)],1

---- Result was:
3
---- Result should have been (exact matching):
2
==== unixfont-5.9 FAILED

==== unixfont-8.4 AllocFont procedure: classify characters FAILED
==== Contents of test case:

set x 0
incr x [font measure $courier "\u4000"] ;# 6
incr x [font measure $courier "\002"] ;# 4
incr x [font measure $courier "\012"] ;# 2
incr x [font measure $courier "\101"] ;# 1
set x

---- Result was:
25
---- Result should have been (exact matching):
78
==== unixfont-8.4 FAILED

==== unixfont-8.6 AllocFont procedure: setup widths of special chars
FAILED
==== Contents of test case:

set x 0
incr x [font measure $courier "\001"] ;# 4
incr x [font measure $courier "\002"] ;# 4
incr x [font measure $courier "\012"] ;# 2
set x

---- Result was:
21
---- Result should have been (exact matching):
60
==== unixfont-8.6 FAILED

==== unixfont-9.1 GetControlCharSubst procedure: 2 chars subst FAILED
==== Contents of test case:

.b.c dchars $t 0 end
.b.c insert $t 0 "0\a0"
set x {}
lappend x [.b.c index $t @[expr $ax*0],0]
lappend x [.b.c index $t @[expr $ax*1],0]
lappend x [.b.c index $t @[expr $ax*2],0]
lappend x [.b.c index $t @[expr $ax*3],0]

---- Result was:
0 1 2 3
---- Result should have been (exact matching):
0 1 1 2
==== unixfont-9.1 FAILED

==== unixfont-9.2 GetControlCharSubst procedure: 4 chars subst FAILED
==== Contents of test case:

.b.c dchars $t 0 end
.b.c insert $t 0 "0\0010"
set x {}
lappend x [.b.c index $t @[expr $ax*0],0]
lappend x [.b.c index $t @[expr $ax*1],0]
lappend x [.b.c index $t @[expr $ax*2],0]
lappend x [.b.c index $t @[expr $ax*3],0]
lappend x [.b.c index $t @[expr $ax*4],0]
lappend x [.b.c index $t @[expr $ax*5],0]

---- Result was:
0 1 2 3 3 3
---- Result should have been (exact matching):
0 1 1 1 1 2
==== unixfont-9.2 FAILED

unixMenu.test
unixSelect.test


==== unixSelect-1.1 TkSelGetSelection procedure: simple i18n text
FAILED
==== Contents of test case:

setupbg
entry .e
pack .e
update
.e insert 0 [encoding convertfrom identity \u00fcber]
.e selection range 0 end
set result [dobg {string bytelength [selection get]}]
cleanupbg
destroy .e
set result

---- Result was:
PRIMARY selection doesn't exist or form "STRING" not defined
---- Result should have been (exact matching):
5
==== unixSelect-1.1 FAILED

unixWm.test


==== unixWm-40.2 Tk_SetGrid procedure, turning on grid when dimensions
already set FAILED
==== Contents of test case:

destroy .t
toplevel .t
wm geometry .t 200x100+0+0
listbox .t.l -height 20 -width 20
pack .t.l -fill both -expand 1
update
.t.l configure -setgrid 1
update
wm geometry .t

---- Result was:
19x4+0+0
---- Result should have been (exact matching):
20x20+0+0
==== unixWm-40.2 FAILED

==== unixWm-51.7 TkWmRestackToplevel procedure, other window isn't
mapped FAILED
==== Contents of test case:

foreach w {.t .t2 .t3} {
destroy $w
toplevel $w -width 200 -height 200 -bg green
wm geometry $w +0+0
}
raise .t .t2
sleep 2000
update
set result [list [winfo containing 100 100]]
lower .t3
sleep 2000
lappend result [winfo containing 100 100]

---- Result was:
.t3 .t2
---- Result should have been (exact matching):
.t3 .t
==== unixWm-51.7 FAILED

util.test


==== util-1.3 Tk_GetScrollInfo procedure FAILED
==== Contents of test case:

.l yview 0
.l yview moveto .5
.l yview

---- Result was:
0.5 0.5
---- Result should have been (exact matching):
0.5 0.75
==== util-1.3 FAILED

==== util-1.7 Tk_GetScrollInfo procedure FAILED
==== Contents of test case:

.l yview 0
.l yview scroll 2 pages
.l nearest 0

---- Result was:
2
---- Result should have been (exact matching):
6
==== util-1.7 FAILED

==== util-1.8 Tk_GetScrollInfo procedure FAILED
==== Contents of test case:

.l yview 15
.l yview scroll -2 pages
.l nearest 0

---- Result was:
13
---- Result should have been (exact matching):
9
==== util-1.8 FAILED

visual.test
visual_bb.test
winButton.test
winClipboard.test
winDialog.test
winFont.test
winMenu.test
winMsgbox.test
winSend.test
winWm.test
window.test
make: *** [test-classic] Interrupt

ZB

unread,
Dec 18, 2007, 5:21:37 AM12/18/07
to
Dnia 18.12.2007 skuh...@web.de <skuh...@web.de> napisał/a:

> I downloaded the RC5 an hour ago and after compiling tcl/tk I did
> "make test". Tcl reported no failed tests, but Tk failed nearly all
> tests. The environment is:

I made the same with RC3, there were several test errors reported - but in
the end it said:

#v+
all.tcl: Total 374 Passed 365 Skipped 9 Failed 0
Sourced 13 Test Files.
Number of tests skipped for each constraint:
2 NA
4 coreEntry
3 coreScrollbar
#v-

So I don't know: are that error messages of any importance - or not?
--
ZB

skuh...@web.de

unread,
Dec 18, 2007, 6:20:22 AM12/18/07
to
ZB wrote:

> I made the same with RC3, there were several test errors reported - but in
> the end it said:

Strange. "make test" did not even finish on my box (as I wrote, tktest
hangs). Ich remember the same behaviour with one of the alphas I
tested some time ago.

I have some other environments for test available:
OpenSUSE 10.2 (X86-64)
OpenSUSE 10.3 (PPC)
Fedora 8 (x86)
Mac OS X 10.5 (x86)

If someone is interested, I give them a try as well and post the
results, if something fails.

Regards
Stephan

Donald G Porter

unread,
Dec 18, 2007, 10:09:43 AM12/18/07
to
skuh...@web.de wrote:
> I downloaded the RC5 an hour ago and after compiling tcl/tk I did
> "make test". Tcl reported no failed tests, but Tk failed nearly all
> tests.
...

First, thank you for testing.

It appears you are not experienced in testing Tk. You say that
"nearly all" tests fail, but the log you posted showed almost
no tests failing. A few dozen in a test suite of thousands.

It would be very nice if the Tk test suite were as portable and
robust as Tcl's, so that any failing test was certainly an
indication of some flaw, but that's not true of Tk's test suite.
It's worth noting that Tk's much greater dependence on the
environment makes this quite a difficult problem.

> window.test
> make: *** [test-classic] Interrupt

This is almost certainly Tk Bug 740570. The test window-2.9 is fragile
and in some environments hangs. To verify, try again with

make test TESTFLAGS="-skip window-2.9"

Kevin Walzer

unread,
Dec 18, 2007, 10:18:37 AM12/18/07
to

Thanks for looking into this. I'm glad you reported the bug to the
Python developers as well--I checked the py-dev archives and Martin V.
Lowis is the right person to ask. From what I've observed, it does look
like the issues stem from interaction between the Python and Tk
libraries, so there probably are some fixes that need to be implemented
on the Python side. (I haven't seen bugs like this in Tcl/Tk itself,
i.e. the Wish 8.5 widget demo.) I develop in Python/Tkinter as well and
use IDLE extensively, so these problems are frustrating.

Hanz

unread,
Dec 18, 2007, 10:57:28 AM12/18/07
to
George Peter Staplin wrote:
>
> I was kind of hoping to nudge you for more info, and I got it. I'll try
> to build a simple test case using Python and the latest Tk.
>
> I'm familiar with IDLE. It's the editor extraordinaire for Python that
> comes with Python and uses Tkinter. IIRC Guido van Rossum wrote most of
> it.
>
> I can't be of help with the MacOS X problems yet.
FWIW, maybe this helps in the discussion: we found that in our OpenMP
Aqua application which uses an integrated Tcl 8.4.16 interpreter we
needed to disable the threads in order to avoid hangs. We didn't try 8.5
yet..

-- Hans

George Peter Staplin

unread,
Dec 18, 2007, 5:39:22 PM12/18/07
to
skuh...@web.de wrote:
> Hello
>
> I had not much time to play around with new betas and RCs lately so I
> may come too late, but maybe it is of interest for some here:
>
> Donald G Porter wrote:
>> Don Porter wrote:
>> > The real 8.5.0 releases are still to come. Best guess right
>> > now is early-to-mid-next week.
>>
>> Latest release candidates correct a memory alignment problem reported
>> over the weekend.
>
> I downloaded the RC5 an hour ago and after compiling tcl/tk I did
> "make test". Tcl reported no failed tests, but Tk failed nearly all
> tests. The environment is:
>
> Linux 2.6.23.8-34.fc7 on Fedora 7
> Window Manager: KDE kwin 3.5.8-9
> X.org X11 1.3.0.0
> gcc 4.1.2
>
> Most tests failed and on one test tktest hangs and does not respond
> anymore. Below is the test-output.

[snip]

You basically need to nuke your X resources, and use something like
FVWM to run the Tk test suite. In my experience the Tk test suite is
less than useful. In many cases it's misleading with its pixel perfect
constraints, that only work with certain WM. You may have noticed that
some failures were from different fonts being returned.

So, basically don't worry, or worry a lot. I haven't been able to run
the tests to completion for a while, because tktest aborts/panics. Tk
8.5 is pretty stable though for me. I know why one test aborts with my
environment, and Joe English was looking into it at one point. It may
already be fixed.

To quote Dijkstra: "Program testing can be used to show the presence of
bugs, but never to show their absence!”

George

skuh...@web.de

unread,
Dec 19, 2007, 1:39:11 AM12/19/07
to

Donald G Porter wrote:

> It appears you are not experienced in testing Tk. You say that
> "nearly all" tests fail, but the log you posted showed almost
> no tests failing. A few dozen in a test suite of thousands.

Okay, you are right, I had the wrong assumption, that if the testsuite
itself fails, this counts
as total failure.

> This is almost certainly Tk Bug 740570. The test window-2.9 is fragile
> and in some environments hangs. To verify, try again with
>
> make test TESTFLAGS="-skip window-2.9"

With this, the test finishes, and reports no failures. This confuses
me a little bit, since some
of the tests report failure. I read the posting of George Peter
Staplin and agree, that the tests
are somewhat misleading, when they report failure in the test-output
but failure-count is
zero after the test.

Regards
Stephan

Tobias Hippler

unread,
Dec 19, 2007, 3:19:48 AM12/19/07
to
Hi,
I did a make test run on Windows XP for tcl8.5.0rc5.
One test failed:

socket.test


==== socket-2.11 detecting new data FAILED


==== Contents of test case:

proc accept {s a p} {
global sock
set sock $s
}

set s [socket -server accept 0]
set sock ""
set s2 [socket 127.0.0.1 [lindex [fconfigure $s -sockname] 2]]
vwait sock
puts $s2 one
flush $s2
after 500
fconfigure $sock -blocking 0
set result a:[gets $sock]
lappend result b:[gets $sock]
fconfigure $sock -blocking 1
puts $s2 two
flush $s2
fconfigure $sock -blocking 0
lappend result c:[gets $sock]
fconfigure $sock -blocking 1
close $s2
close $s
close $sock
set result

---- Result was:
a:one b: c:


---- Result should have been (exact matching):

a:one b: c:two
==== socket-2.11 FAILED

Donal K. Fellows

unread,
Dec 19, 2007, 4:39:33 AM12/19/07
to
Stephan Kuhagen wrote:
> With this, the test finishes, and reports no failures. This confuses
> me a little bit, since some of the tests report failure.

That's a separate trivial issue that's because Ttk (i.e. Tile) has a
separate test suite. Look back in your terminal output history and you
should see the main Tk test report output. (Yes, it caught me out the
first few times too...)

Donal.

skuh...@web.de

unread,
Dec 19, 2007, 6:46:17 AM12/19/07
to
Donal K. Fellows wrote:
> That's a separate trivial issue that's because Ttk (i.e. Tile) has a
> separate test suite. Look back in your terminal output history and you
> should see the main Tk test report output. (Yes, it caught me out the
> first few times too...)

Thanks for the clarification. Maybe this should be documented in the
README-file, where
it says, that failed tests are most likely due to nonportable tests. -
I should have read the file
before my initial post, my fault...

Regards
Stephan

Larry W. Virden

unread,
Dec 19, 2007, 8:13:22 AM12/19/07
to
On Dec 18, 5:39 pm, George Peter Staplin
<georgepsSPAMME...@xmission.com> wrote:


>
> In many cases it's misleading with its pixel perfect
> constraints, that only work with certain WM. You may have noticed that
> some failures were from different fonts being returned.
>

I've been getting tons of errors from the tk suite as well. In my
case, it appears that the commercial product which I'm required to use
for x server on this windwos xp system doesn't make the same
assumptions that tk expects.

However, while some of the failures are pixel positions (which I'm
told could reflect differing window managers), a few of the failures
that I've seen are cases where, in the old days, results were rounded
differently in tcl 8.5. And example of this is in canvRect 9.1 and
10.1 .

Another thing that I'm seeing is what appears to be weird "duplicating
information" in some tests. One example of this is in focus-5.1. I
see:

==== focus-5.1 ChangeXFocus procedure, don't take focus unless have it


FAILED
==== Contents of test case:

focusSetup
focus -force .t
update
set result [focus]
send [dobg {tk appname}] {focus -force .; update}
lappend result [focus]
focus .t.b2
update
lappend result [focus]

---- Result was:
.t .t {}


---- Result should have been (exact matching):

.t {} {}
==== focus-5.1 FAILED

Notice the double .t? I don't know if the other cases are related, or
coincidences - like the double COMPOUND_TEXT in:

==== unixSelect-1.4 TkSelGetSelection procedure: simple i18n text,
iso2022 FAILE


D
==== Contents of test case:

setupbg
setup
selection handle -type COMPOUND_TEXT -format COMPOUND_TEXT .
{handler COMPO
UND_TEXT}
selection own .
set selValue \u00fc\u0444
set selInfo {}
set result [dobg {
set x [selection get -type COMPOUND_TEXT]
list [string equal \u00fc\u0444 $x] [string length $x]
[string byteleng
th $x]
}]
cleanupbg
lappend result $selInfo

---- Result was:
1 2 4 {COMPOUND_TEXT 0 4000 COMPOUND_TEXT 0 4000}


---- Result should have been (exact matching):

1 2 4 {COMPOUND_TEXT 0 4000}
==== unixSelect-1.4 FAILED

Lan

unread,
Dec 19, 2007, 12:50:13 PM12/19/07
to
It amuses me that this thread-that-will-not-die is juxtaposed with a
series in Dilbert (part of my morning read) in which the pointy haired
boss has hired a dead horse to beat.

Larry Wall is Larry Wall. Love him or not (and I love him for what he
is and what he's done), we can't expect him to be anyone else but
Larry Wall. Forgive and move on? Not a bad plan. Respond on his list,
politely bringing them up to date? I could see that. Complain among
ourselves? Why?

I love Tcl/Tk and this community for its brilliance, its generosity
(to me at least), and its ability to put language issues before
personalities. But not everyone knows about that.

If we want to discuss outreach (yet again), I'm in. More Larry Wall
may be an exercise in felling trees in an empty forest.

~Lan

Bryan Oakley

unread,
Dec 19, 2007, 12:58:14 PM12/19/07
to
Lan wrote:
> It amuses me that this thread-that-will-not-die is juxtaposed with a
> series in Dilbert (part of my morning read) in which the pointy haired
> boss has hired a dead horse to beat.
>
> Larry Wall is Larry Wall. Love him or not (and I love him for what he
> is and what he's done), we can't expect him to be anyone else but
> Larry Wall. Forgive and move on? Not a bad plan. Respond on his list,
> politely bringing them up to date? I could see that. Complain among
> ourselves? Why?

That therad looooonnnnng ago stopped talking about Larry Wall and nobody
thought to change the subject.

--
Bryan Oakley
http://www.tclscripting.com

Donald G Porter

unread,
Dec 19, 2007, 5:02:06 PM12/19/07
to
Donald G Porter wrote:
> Once again, intent is to rename these files to the real 8.5.0 release
> tomorrow, unless some other serious bug fix comes in.

Serious bug fixes have in fact come in. Now we are at Release
Candidate 7 for Tcl 8.5.0.

ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tcl8.5.0rc7-src.tar.gz
ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tcl850rc7-src.zip

The other 8.5.0 RC files remain unchanged at RC 5.

Andrés García

unread,
Dec 20, 2007, 9:06:33 AM12/20/07
to

> Serious bug fixes have in fact come in. Now we are at Release
> Candidate 7 for Tcl 8.5.0.
>
> ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tcl8.5.0rc7-src.tar.gz
> ftp://ftp.tcl.tk/pub/tcl/tcl8_5/tcl850rc7-src.zip
>
> The other 8.5.0 RC files remain unchanged at RC 5.

So, are the 8.5 files at SourceForge the final release?

Andres

Donal K. Fellows

unread,
Dec 20, 2007, 10:04:59 AM12/20/07
to
Andrés García wrote:
> So, are the 8.5 files at SourceForge the final release?

Wait for the announcement, Mr. Impatient! ;-)

Donal.

0 new messages