New releases: Tcl 7.6 and Tk 4.2

John Ousterhout (john.ousterhout@Eng.Sun.COM)
Thu, 17 Oct 1996 11:37:42 -0700

This message is to announce new releases of the Tcl scripting language
and the Tk toolkit. The new releases are Tcl 7.6 and Tk 4.2; they
contain a few new features that are summarized below, plus many bug
fixes. The main reason for these releases is to get out a major
revision of the grid geometry manager, which is needed by SpecTcl.
However, the releases also contain several other useful features, such
as commands for deleting and renaming files, plus standard dialog boxes.

Where to get the new releases:

Tcl 7.6 and Tk 4.2 are available by public FTP from
ftp.sunlabs.com in the directory /pub/tcl. The releases should appear on
the usual mirror sites within a few days. The following files are
available:
- tcl7.6.tar.gz and tk4.2.tar.gz contain the unified source
releases for all platforms (there are also .Z and .zip versions
of these files).
- Easy-to-install binary releases for some Unix platforms (e.g.,
Solaris and SunOS) will be available soon for purchase at the Sun
Labs Tcl/Tk Shop:
http://www.infohaus.com/access/by-seller/Sun_Labs_TclTk_Shop
- win76.exe contains a binary release for the PC. This file contains
compiled versions of Tcl, Tk, tclsh, and wish, along with libraries,
demos, and manual pages (but no sources). The file is a self-extracting
executable (run it and it installs everything).
- PC sources are also available in the "win" subdirectory of the
unified source releases. See the README file in that directory for
details.
- mactk4.2.sea.hqx contains a binary release for the Mac. The file
is in binhex format, which is understood by Fetch, StuffIt, and other
Mac utilities. The unpacked file is a self-installing archive:
double-click on it and it will create a folder containing everything
you need to run Tcl and Tk.
- Macintosh sources are also available in the "mac" subdirectory of
the unified source releases. See the README file in that directory
for details.

For additional information:

There is a set of Web pages on Tcl and Tk maintained by the Tcl/Tk group
at Sun Laboratories. They can be accessed via the following URL:
http://www.sunlabs.com/research/tcl

Changes in Tcl 7.6

Here are the most significant changes in Tcl 7.6. In addition to these
changes, there are numerous small bug fixes. See the "changes" file for a complete list of all changes.

1. New file manipulation commands. There are new options to the
"file" command for copying files ("file copy"), deleting files and
directories ("file delete"), creating directories ("file mkdir"),
and renaming files ("file rename").

2. The implementation of "exec" has been improved greatly for Windows
(especially Windows 95 and Windows NT but also for Windows 3.1).

3. The package loader has been modified to look for packages not only
in the auto_path directories but also in their immediate descendants.
This makes it much easier to install and uninstall packages. There
is now a new variable, tcl_pkgPath, which contains directories in
which packages are normally installed, and these directories are
automatically included in auto_path.

4. There is a new memory allocator for the Macintosh version, which
should be more efficient than the old one.

Tcl 7.6 contains two incompatible changes:

1. The C interfaces to channel drivers have been revised to eliminate
the use of Tcl_File handles in the interfaces. Instead, there are
new interface procedures channelReadyProc, watchChannelProc, and
getFileProc. This change does not affect Tcl scripts; it will only
affect you if you have written a custom channel driver.

2. Under Windows, tclsh now looks for the start-up file "tclshrc.tcl"
instead of "tclsh.rc". This is more consistent with wish and uses
the right extension.

Changes in Tk 4.2:

Here are the new features in Tk 4.2. The release also includes several
bug fixes. See the "changes" file in the source distributions for a
complete list of all changes.

1. The grid geometry manager has been completely rewritten:
- The layout algorithm produces much better layouts than before,
particularly where rows or columns were stretchable.
- There is a new -pad option for rows and columns.
- The command "grid forget" has been renamed "grid remove",
and "grid forget" now has semantics like "pack forget".
- The "grid" command no longer accepts floating-point values
for row or column weights: integers must be used.

2. There are new commands for creating common dialog boxes:
tk_chooseColor, tk_getOpenFile, tk_getSaveFile and tk_messageBox.
These use native dialog boxes if they are available. Examples of
the dialogs are available in the widget demo.

3. There is a new virtual event mechanism for handling events in a
more portable way. See the new command "event". It also allows
events (both physical and virtual) to be generated dynamically.
The Macintosh now generates <<Cut>>, <<Copy>>, <<Paste>>, and <<Clear>>
events from the edit menu.

The only incompatible changes in this release are the last two for the
gridder ("grid forget" and integer row/column weights). Virtually all
scripts that ran under Tk 4.1 should also work under Tk 4.2 with no
changes.

Credits:

Gridder revision: Stephen Uhler
Virtual events, exec cleanup: Colin Stevens
Standard dialogs: Ioi Lam
File access commands: Jon Herlocker, Colin Stevens

Message-Id: <199610171837.LAA06684@mitchell.org>