I've downloaded, built (just said "make"), and tested the rc3 versions of tcl8.5a6 and tk8.5a6 today. Tcl was fine (the only test failures were in filesystem.test, regarding link normalisation), but Tk is does not seem fine. In particular, I got a crash running the tests. Crash log is attached (dunno if that is at all useful when it was I that made the build, though).
I also had a problem that the it got hung on some choosedir and clrpick tests -- a Wish [bgerror] dialog pops up saying respectively:
Error: can't access "::tk::dialog::file::__tk_choo...
Error: bad window path name ".__tk__color"
I've not seen any way out of these other than doing Ctrl-C in the terminal.
[parray tcl_platform] reports:
tcl_platform(byteOrder) = bigEndian
tcl_platform(machine) = Power Macintosh
tcl_platform(os) = Darwin
tcl_platform(osVersion) = 7.9.0
tcl_platform(platform) = unix
tcl_platform(pointerSize) = 4
tcl_platform(threaded) = 1
tcl_platform(user) = lars
tcl_platform(wordSize) = 4
Skipping choosedir-* and clrpick-*, the output from all.tcl is:
Tests running in interp: /Installerare/Tcl/build/tk/Development/tktest
Tests located in: /Installerare/Tcl/tk8.5a6/tests
Tests running in: /Installerare/Tcl/build/tk/Development
Temporary files stored in /Installerare/Tcl/build/tk/Development
Test files sourced into current interpreter
Skipping tests that match: choosedir-* clrpick-*
Running tests that match: *
Skipping test files that match: l.*.test
Only running test files that match: *.test
Tests began at Thu Apr 26 23:18:14 +0200 2007
bell.test
Bell should ring now ...
bgerror.test
bind.test
==== bind-13.13 Tk_BindEvent procedure: invalid key detail FAILED
==== Contents of test case:
setup
bind .b.f <Key> "lappend x Key%K"
bind .b.f <KeyRelease> "lappend x Release%K"
set x {}
event gen .b.f <Key> -keycode 0
event gen .b.f <KeyRelease> -keycode 0
set x
---- Result was:
Keya Releasea
---- Result should have been (exact matching):
Key?? Release??
==== bind-13.13 FAILED
==== bind-15.7 MatchPatterns procedure, ignoring type mismatches FAILED
==== Contents of test case:
setup
bind .b.f <Double-1> {set x 1}
set x 0
event gen .b.f <Button-1>
event gen .b.f <Key-Shift_L>
event gen .b.f <ButtonRelease-1>
event gen .b.f <Button-1>
event gen .b.f <ButtonRelease-1>
set x
---- Result was:
0
---- Result should have been (exact matching):
1
==== bind-15.7 FAILED
bitmap.test
border.test
button.test
canvImg.test
==== canvImg-4.2 ConfiugreImage procedure FAILED
==== Contents of test case:
.c delete all
.c create image 50 100 -image foo -tags i1 -anchor nw
update
set x {}
set y {}
.c itemconfigure i1 -image foo2
update
list $x $y [.c bbox i1]
---- Result was:
{{foo free}} {{foo2 get} {foo2 display 0 0 80 60 50 100}} {50 100 130 160}
---- Result should have been (exact matching):
{{foo free}} {{foo2 get} {foo2 display 0 0 80 60 30 30}} {50 100 130 160}
==== canvImg-4.2 FAILED
==== canvImg-10.1 TranslateImage procedure FAILED
==== Contents of test case:
.c delete all
.c create image 50 100 -image foo -tags image -anchor nw
update
set x {}
foo changed 2 4 6 8 30 15
update
set x
---- Result was:
{foo display 2 4 6 8 52 104}
---- Result should have been (exact matching):
{foo display 2 4 6 8 30 30}
==== canvImg-10.1 FAILED
==== canvImg-11.1 TranslateImage procedure FAILED
==== Contents of test case:
.c delete all
.c create image 50 100 -image foo -tags image -anchor nw
update
set x {}
foo changed 2 4 6 8 40 50
update
set x
---- Result was:
{foo display 0 0 40 50 50 100}
---- Result should have been (exact matching):
{foo display 0 0 40 50 30 30}
==== canvImg-11.1 FAILED
==== canvImg-11.3 ImageChangedProc procedure FAILED
==== Contents of test case:
.c delete all
image create test foo -variable x
foo changed 0 0 0 0 40 50
.c create image 50 100 -image foo -tags image -anchor nw
.c create image 70 110 -image foo2 -anchor nw
update
set y {}
image create test foo -variable x
update
set y
---- Result was:
{foo2 display 0 0 20 40 70 110}
---- Result should have been (exact matching):
{foo2 display 0 0 20 40 50 40}
==== canvImg-11.3 FAILED
canvPs.test
canvRect.test
canvText.test
==== canvText-17.1 TextToPostscript procedure FAILED
==== Contents of test case:
.c delete all
.c config -height 300 -highlightthickness 0 -bd 0
update
.c create text 100 100 -tags test
.c itemconfig test -font $font -text "00000000" -width [expr 3*$ax]
.c itemconfig test -anchor n -fill black
set x [.c postscript]
set x [string range $x [string first "/Courier-Oblique" $x] end]
---- Result was:
/Courier-Oblique findfont 12 scalefont ISOEncode setfont
0.000 0.000 0.000 setrgbcolor AdjustColor
100 200 [
[(00000000)]
] 14 -0.5 0 0 false DrawText
grestore
restore showpage
%%Trailer
end
%%EOF
---- Result should have been (exact matching):
/Courier-Oblique findfont 12 scalefont ISOEncode setfont
0.000 0.000 0.000 setrgbcolor AdjustColor
100 200 [
[(000)]
[(000)]
[(00)]
] 14 -0.5 0 0 false DrawText
grestore
restore showpage
%%Trailer
end
%%EOF
==== canvText-17.1 FAILED
canvWind.test
canvas.test
choosedir.test
clipboard.test
tkMacOSXClipboard.c:76: TkSelGetSelection(): GetScrapFlavorSize failed: -102
tkMacOSXClipboard.c:102: TkSelGetSelection(): GetScrapFlavorSize failed: -102
==== clipboard-4.1 ClipboardLostSel procedure FAILED
==== Contents of test case:
clipboard clear
clipboard append "Test"
selection clear -s CLIPBOARD
list [catch {clipboard get} msg] $msg
---- Result was:
1 {CLIPBOARD GetScrapFlavorSize failed.}
---- Result should have been (exact matching):
1 {CLIPBOARD selection doesn't exist or form "STRING" not defined}
==== clipboard-4.1 FAILED
tkMacOSXClipboard.c:76: TkSelGetSelection(): GetScrapFlavorSize failed: -102
tkMacOSXClipboard.c:102: TkSelGetSelection(): GetScrapFlavorSize failed: -102
==== clipboard-4.2 ClipboardLostSel procedure FAILED
==== Contents of test case:
clipboard clear
clipboard append "Test"
clipboard append -t TEST "Test2"
selection clear -s CLIPBOARD
list [catch {clipboard get} msg] $msg [catch {clipboard get -t TEST} msg] $msg
---- Result was:
1 {CLIPBOARD GetScrapFlavorSize failed.} 1 {CLIPBOARD selection doesn't exist or form "TEST" not defined}
---- Result should have been (exact matching):
1 {CLIPBOARD selection doesn't exist or form "STRING" not defined} 1 {CLIPBOARD selection doesn't exist or form "TEST" not defined}
==== clipboard-4.2 FAILED
tkMacOSXClipboard.c:76: TkSelGetSelection(): GetScrapFlavorSize failed: -102
tkMacOSXClipboard.c:102: TkSelGetSelection(): GetScrapFlavorSize failed: -102
==== clipboard-4.3 ClipboardLostSel procedure FAILED
==== Contents of test case:
clipboard clear
clipboard append "Test"
clipboard append -t TEST "Test2"
clipboard append "Test3"
selection clear -s CLIPBOARD
list [catch {clipboard get} msg] $msg [catch {clipboard get -t TEST} msg] $msg
---- Result was:
1 {CLIPBOARD GetScrapFlavorSize failed.} 1 {CLIPBOARD selection doesn't exist or form "TEST" not defined}
---- Result should have been (exact matching):
1 {CLIPBOARD selection doesn't exist or form "STRING" not defined} 1 {CLIPBOARD selection doesn't exist or form "TEST" not defined}
==== clipboard-4.3 FAILED
==== clipboard-6.2 Tk_ClipboardAppend procedure FAILED
==== Contents of test case:
setupbg
clipboard clear
clipboard append -f INTEGER -t TEST "16"
set result [dobg {clipboard get TEST}]
cleanupbg
set result
---- Result was:
CLIPBOARD selection doesn't exist or form "TEST" not defined
---- Result should have been (exact matching):
0x10
==== clipboard-6.2 FAILED
clrpick.test
cmds.test
color.test
config.test
tkMacOSXScrlbr.c:130: TkMacOSXInitScrollbarMetrics(): GetThemeMetric failed: -50
tkMacOSXScrlbr.c:139: TkMacOSXInitScrollbarMetrics(): GetThemeMetric failed: -50
cursor.test
==== cursor-6.83 FAILED
==== Contents of test case:
# Setting fg and bg does nothing for the none cursor
# because it displays no fg or bg pixels.
set results [list]
.b configure -cursor none
lappend results [.b cget -cursor]
.b configure -cursor {none blue}
lappend results [.b cget -cursor]
.b configure -cursor {none blue green}
lappend results [.b cget -cursor]
.b configure -cursor {}
lappend results [.b cget -cursor]
set results
---- Test generated error; Return code was: 1
---- Return code should have been one of: 0 2
---- errorInfo: bad cursor spec "none blue"
(processing "-cursor" option)
invoked from within
".b configure -cursor {none blue}"
("uplevel" body line 7)
invoked from within
"uplevel 1 $script"
---- errorCode: NONE
==== cursor-6.83 FAILED
dialog.test
embed.test
entry.test
==== entry-1.33 configuration options FAILED
==== Contents of test case:
.e configure $name $goodValue
list [lindex [.e configure $name] 4] [.e cget $name]
---- Result was:
0 0
---- Result should have been (exact matching):
1 1
==== entry-1.33 FAILED
==== entry-3.65 EntryWidgetCmd procedure, "xview" widget command FAILED
==== Contents of test case:
.e xview 5
.e xview
---- Result was:
0.0537634 0.27957
---- Result should have been (exact matching):
0.0537634 0.268817
==== entry-3.65 FAILED
==== entry-5.7 ConfigureEntry procedure FAILED
==== Contents of test case:
catch {destroy .e}
entry .e -font $fixed -width 4 -xscrollcommand scroll
pack .e
.e insert end "01234567890"
update
.e configure -width 5
set scrollInfo
---- Result was:
0 0.454545
---- Result should have been (exact matching):
0 0.363636
==== entry-5.7 FAILED
==== entry-13.10 GetEntryIndex procedure FAILED
==== Contents of test case:
# On unix, when selection is cleared, entry widget's internal
# selection range is reset.
list [catch {.e index sel.first} msg] $msg
---- Result was:
0 1
---- Result should have been (exact matching):
1 {selection isn't in widget .e}
==== entry-13.10 FAILED
==== entry-13.12 GetEntryIndex procedure FAILED
==== Contents of test case:
list [catch {.e index sbogus} msg] $msg
---- Result was:
1 {bad entry index "sbogus"}
---- Result should have been (exact matching):
1 {selection isn't in widget .e}
==== entry-13.12 FAILED
==== entry-13.21 GetEntryIndex procedure FAILED
==== Contents of test case:
.e index @1000
---- Result was:
10
---- Result should have been (exact matching):
9
==== entry-13.21 FAILED
==== entry-17.2 EntryUpdateScrollbar procedure FAILED
==== Contents of test case:
.e delete 0 end
.e insert 0 0123456789abcdef
.e xview 3
update
set scrollInfo
---- Result was:
0.1875 0.875
---- Result should have been (exact matching):
0.1875 0.8125
==== entry-17.2 FAILED
==== entry-17.3 EntryUpdateScrollbar procedure FAILED
==== Contents of test case:
.e delete 0 end
.e insert 0 abcdefghijklmnopqrs
.e xview 6
update
set scrollInfo
---- Result was:
0.315789 0.894737
---- Result should have been (exact matching):
0.315789 0.842105
==== entry-17.3 FAILED
event.test
==== event-4.1(double-click-drag) click down, click up, click down again, then drag in a text widget FAILED
==== Contents of test case:
destroy .t
set t [toplevel .t]
set e [text $t.e]
pack $e
tkwait visibility $e
_keypress_string $e "Word select test"
set anchor 1.8
# Get the x,y coords of the second e in "select"
foreach {anchor_x anchor_y} [_text_ind_to_x_y $e $anchor] break
# Click down, release, then click down again
event generate $e <Enter>
event generate $e <ButtonPress-1> -x $anchor_x -y $anchor_y
_pause 50
event generate $e <ButtonRelease-1> -x $anchor_x -y $anchor_y
_pause 50
event generate $e <ButtonPress-1> -x $anchor_x -y $anchor_y
_pause 50
# Save the highlighted text
set result [list]
lappend result [_get_selection $e]
# Insert cursor should be at beginning of "select"
lappend result [$e index insert]
# Move mouse one character to the left
set current [$e index [list $anchor - 1 char]]
foreach {current_x current_y} [_text_ind_to_x_y $e $current] break
event generate $e <B1-Motion> -x $current_x -y $current_y
_pause 50
# Insert cursor should be before the l in "select"
lappend result [$e index insert]
# Selection should still be the word "select"
lappend result [_get_selection $e]
# Move mouse to the space before the word "select"
set current [$e index [list $current - 3 char]]
foreach {current_x current_y} [_text_ind_to_x_y $e $current] break
event generate $e <B1-Motion> -x $current_x -y $current_y
_pause 200
lappend result [$e index insert]
lappend result [_get_selection $e]
# Move mouse to the r in "Word"
set current 1.2
foreach {current_x current_y} [_text_ind_to_x_y $e $current] break
event generate $e <B1-Motion> -x $current_x -y $current_y
_pause 50
# Selection should now be "Word select"
lappend result [_get_selection $e]
# Insert cursor should be before the r in "Word"
lappend result [$e index insert]
set result
---- Result was:
select 1.5 1.8 select 1.4 { select} {Word select} 1.2
---- Result should have been (exact matching):
select 1.5 1.7 select 1.4 { select} {Word select} 1.2
==== event-4.1(double-click-drag) FAILED
filebox.test
==== fileDialog-0.1 GetFileName: file types: MakeFilter() fails FAILED
==== Contents of test case:
# MacOS type that is too long
set res [list [catch {tk_getSaveFile -filetypes {{"foo" .foo {\0\0\0\0\0}}}} msg] $msg]
regsub -all "\0" $res {\\0}
---- Result was:
0 /Users/lars/Projekt/Tcl-projekt/Algebra/untitled
---- Result should have been (exact matching):
1 {bad Macintosh file type "\0\0\0\0\0"}
==== fileDialog-0.1 FAILED
Bus error
Crash log
Logged In: YES
user_id=90580
Originator: NO
Lars,
the tcl test suite failures you see are due to your running an older version of Mac OS X where 'realpath' cannot be used in threaded builds. With an unthreaded tcl or on a more recent OS, these tests pass.
Nobody has spent the time so far to adapt the test suite to TkAqua (feel free to help out...), which is why there are many failing tests, most do not indicate any real problems with TkAqua.
I have just committed changes that fix a hang in frame-3.9 and several crashes in the testsuite, however I cannot reproduce your crash in [tk_getSaveFile] (might occur only on older OSX versions). In any case most tests in filebox.test are specific to the X11 version of the file dialogs and should not be run on TkAqua, that is fixed now.
Two tests that hang remain (outside my purview, bugs yet to be filed): unixfont-5.11 and window-2.9.
If you skip these, the TkAqua testsuite now runs to completion for me (on Tiger):
% make test TESTFLAGS="-skip 'unixfont-5.11 window-2.9'"
...
Tests ended at Tue May 08 12:30:25 CEST 2007
all.tcl: Total 8720 Passed 7306 Skipped 1088 Failed 326
Maybe you could try again with the current HEAD on your system ?
Logged In: YES
user_id=1312539
Originator: NO
This Tracker item was closed automatically by the system. It was
previously set to a Pending status, and the original submitter
did not respond within 14 days (the time period specified by
the administrator of this Tracker).