Tcl/Tk 8.3.0 Release Announcement February 10, 2000 We are pleased to announce the 8.3.0 releases of the Tcl scripting language and the Tk toolkit. This is the first stable release of Tcl/Tk 8.3. More details can be found below. We'd like to thank all those that submit bugs and patches as they are the primary source of information for us to identify problems in the core. Where to get the new releases: ------------------------------ Tcl/Tk 8.3.0 are freely available in open source from the Scriptics web site at http://www.scriptics.com/products/tcltk/8.3.html This web page also contains additional information about the releases, including new features and notes about installing and compiling the releases. For additional information: --------------------------- Please visit the Scriptics Web site: http://www.scriptics.com/ and Tcl Developer Xchange web site: http://dev.scriptics.com/ This site contains a variety of information about Tcl/Tk in general, the core Tcl and Tk distributions, the TclPro tool suite, and much more. Thank you for your contributions: --------------------------------- As usual, this release includes contributions from the Tcl community. We have a page honoring these contributions at: http://www.scriptics.com/products/tcltk/contributors.html Summary of Changes since Tcl/Tk 8.3b2: -------------------------------------- The following were the main changes in Tcl/Tk 8.3.0. A complete list can be found in the changes file at the root of the source tree. The more complete ChangeLog is also now included with each release. 1. corrected odd array element name interpretation and compiling. 2. fixed trace variable handling when deleting arrays 3. improved out-of-the-box configure for QNX, Ultrix, Tru64, FreeBSD, others 4. fixed mem leak when calling lsort with a bad -command argument (hobbs) 5. package mechanism overhaul. pkg_mkIndex now does -direct loading by default and has a -lazy option. ::pkg namespace created with ::pkg::create helper function. 6. fixed problem where http POST would send one extra newline 7. doc'ed new regexp -inline and -all switches 8. corrected handling of "next monthname" in clock scan 9. restored Mac source to build readiness with some fixes and new features 10. improved error reporting for failed loads on Windows 11. fixed interpretation of consecutive ^ characters in grid command 12. fixed handling of binary data for -data option to image create and improved GIF decoding speed by ~60% 13. added tk_chooseDirectory implementation for Unix and Mac 14. fixed dialog lockup on Windows where once the native dialog disappeared, the parent window could end up locked up 15. improved support for moving from the old style image C API to the new obj'ified one with new Tk_InitImageArgs command and stub'ing of image code. See docs for how to make the transition. 16. fixed incorrect handling of CapsLock on Win9* and the use of dead keys on international keyboards 17. added support for buttons 4 && 5 as mousewheel style scrolling in listbox and text widget for Unix. New Features since Tcl/Tk 8.2: ------------------------------ The following is an overview of the major new syntax and features changes added for 8.3. 1. Improved clarity of error messages, especially for common programming mistakes. 2. New lsort -unique switch to uniqify lists when sorting. 3. Enhanced glob command to provide simpler and more powerful cross-platform file listing functionality. 4. File date stamping through "file atime" and "file mtime" and support for chmod style permissions setting in file attributes -permissions on Unix. 5. New file channels command to obtain list of open channels. 6. "scan" command can now be used inline to return a list of values. 7. "regexp" has new -start, -all and -inline switches. 8. New "array unset" command. 9. New -milliseconds granularity option to "clock clicks". 10. Tcl optimization improvements, as well as numerous bug fixes. 11. Overhaul of the clock command to improve grammar and add support for common ISO 8601 date/time formats. 12. Improved build support for numerous platforms. 13. Removed vestiges of 16 bit Windows and 68K Mac support. 14. Img patch from Nijtmans, et al was adopted. This includes a Tcl_Obj-based image command, support for binary in -data args, adds an alpha channel to all photo types, as well as GIF write capability. 15. Major portions of Dash patch from Nijtmans, et al was adopted. This includes a Tcl_Obj-based canvas command, dashed canvas item support, enhanced canvas tag searching capabilities, pointer warping with event -warp, entry widget validation routines, -elide tag option for of the text widget (TkMan runs on 8.3 without a patch), several new canvas item arguments, as well as postscript printing support for images and windows in the canvas. 16. Listboxes support a -listvariable and have a new itemconfigure command to color individual items. 17. Converted many more Tk commands to being object based. 18. Added support for Windows system cursors in -cursor option on Windows. 19. Overhaul of the Windows window manager code to conform to Windows style better, fixing many awkward bugs with transient windows. 20. Extended "wm state" command to accept a state to set for the toplevel, and added support for the zoomed (maximized) state on Windows. 21. Standard Unix dialogs have been updated to use color icons and have improved behavior. 22. New "tk useinputmethods" command. This changes the behavior of Tk on X where X Input Methods (XIM) were recognized and used without question. With 8.3, they will be recognized and initialized, but not used unless XIM is turned on (tk useinputmethods 1). This should only affect users with special input methods, and the new default behavior should be more beneficial to the average user. -- Jeffrey Hobbs Tcl Ambassador jeffrey.hobbs at scriptics.com Scriptics Corp.