Tcl/Tk 8.2b1 Release Announcement July 14, 1999 We are pleased to announce the 8.2b1 releases of the Tcl scripting language and the Tk toolkit. This is primarily a bugfix release but a few new features have also been added. More details can be found below. The list of contributors on the Scriptics web site has been updated to acknowledge those members of the Tcl community whose code or ideas found their way into this release. Where to get the new releases: ----------------------------- Tcl 8.2b1 and Tk 8.2b1 are available by public FTP from ftp.scriptics.com in the directory /pub/tcl/tcl8_2. Within a few days, they will appear at numerous mirror sites around the internet. The easiest way to retrieve these releases is via the Scriptics web page for the 8.2 releases http://www.scriptics.com/software/download82.html For additional information -------------------------- For complete information about all the Tcl/Tk resources available on the internet, visit the Tcl Resource Center at Scriptics: http://www.scriptics.com/resource/ Summary of Changes since Tcl 8.1.1 ---------------------------------- The following were the main changes in Tcl/Tk 8.2b1. A complete list can be found in the changes file at the root of the source tree. New Features: 1. Windows build now uses Cygwin tools plus GNU make and autoconf to build static/dynamic and debug/nodebug. 2. Optimized string index, length, range, and append commands. Added a new Unicode object type. 3. Added Tcl_RegExpMatchObj and Tcl_RegExpGetInfo to public Tcl API, these functions are needed by Expect. Changed tools/genStubs.tcl to always write output in LF mode. 4. Merged string and Unicode object types. Added new public Tcl API functions: Tcl_NewUnicodeObj, Tcl_SetUnicodeObj, Tcl_GetUnicode, Tcl_GetUniChar, Tcl_GetCharLength, Tcl_GetRange, Tcl_AppendUnicodeToObj. 5. Changed to conform to TEA specification, added tcl.m4 and aclocal.m4 macro libraries for configure. 6. Added new regexp interfaces: -expanded, -line, -linestop, and -lineanchor switches. Renamed Tcl_RegExpMatchObj to Tcl_RegExpExecObj and added new Tcl_RegExpMatchObj that is equivalent to Tcl_RegExpMatch. Added public macros for regexp flags. Added REG_BOSONLY flag to allow Expect to iterate through a string and only find matches that start at the current position within the string. 7. Updated Unicode character tables to reflect Unicode 2.1 data. 8. Added initial implementation of new Tcl test harness package. Modified test files to use new tcltest package. 9. Applied patch from Peter Hardie to add poke command to dde and changed the dde package version number to 1.1. 10. Added options to tcltest package: -preservecore, -limitconstraints, -help, -file, -notfile, and flags. 11. Changed parsing of variable names to allow empty array names. Now "$(foo)" is a variable reference. Previously you had to use something line $::(foo), which is slower. This change was requested by Jean-Luc Fontaine for his STOOOP package. 12. Added Tcl_SetNotifier (public API) and associated hook points in the notifiers to be able to replace the notifier calls at runtime. The Xt notifier and test program use this hook. 13. Added a new variant of the "Trf core patch" from Andreas Kupries that adds new C APIs Tcl_StackChannel, Tcl_UnstackChannel, and Tcl_GetStackedChannel. This allows the Trf extension to work without applying patches to the Tcl core. 14. Added -timeout option to http.tcl to handle timeouts that occur during connection attempts to hosts that are down. Bug Fixes: 1. Rolled back Windows socket driver to 8.1.0 version. 2. bug in string range bounds checking code. 3. bugs in non-greedy quantifiers for regular expression code. 4. Numbered bugs 1738, 1980, 2105, 2124, 2117, 2135, 2138, 2217, 2254, 2318 Thanks to Peter Hardie, Jean-Luc Fontaine, Andreas Kupries and Rolf Schroedter for their contributions to Tcl in this release. In addition the following changes were made to Tk for 8.2b1 1. Changes to makefiles and configure scripts to support TEA specification. Bug Fixes: 1. Numbered bugs 1791, 2068, 2080, 2269. Thanks to Jan Nijtmans and Don Porter for their patches. 2. Fixed clipboard code to handle lack of CF_LOCALE information (from command.com). 3. Improved I18N selection support. COMPOUND_TEXT is converted to/from iso2022, and STRING is converted to/from iso8859-1. More work is needed. 4. Changed TkWinChildProc to pass WM_WINDOWSPOSCHANGED through to DefWindowProc to make OpenGL sub-windows happpy. This allows Windows to generate the WM_SIZE and WM_MOVE messages.