* Tk_PhotoPutBlock performance restored (JPEG image loading).
* [namespace inscope] change reverted; harmed Itcl.
* Made [expr {srand(.)}] accept wide integer argument.
* Made [lappend $invalidList] raise an error.
* Improved [text] delete performance.
* Support for the WM_UNICHAR window message on Windows
* Stopped excess variable writes by [scale].
* Tcl_Main no longer blocks main loop start for one interactive command.
* [console] made thread safe.
* Thread-enabled configuration uses MT-safe system calls.
* Many Aqua/Tk bug fixes and improvements, see changes file.
* Made unthreaded notifier naked-fork-safe on Darwin.
* Support for weak linking on Mac OS X.
* msgcat support for CFLocale on Darwin (msgcat 1.3.4)
* Fixed crashes due to alignment issues in encoding translation routines.
* Fixed crash with [listbox -listvariable] on namespace variable.
* Fixed crash when Tcl_DeleteTrace changes proc on the active stack.
* Fixed crash when normalizing filesystem pathnames.
* Fixed crash due to invalid font name from XServer.
* Several 64-bit bugs fixed and platform support enhanced.
* Win NT/XP: unicode console support taken back out.
* ${prefix}/share addition to ::tcl_pkgPath undone.
* Warning message for packages with incorrect index scripts silenced.
* Correct syntax error in configure script (bash 3.1 exposes it).
* Tk incompatibilities with SCIM resolved.
* Improved [file writable] support of Windows conventions.
* Tcl_GetIndexFromObj() support for exact matching of empty key.
* Tk Portuguese localization support (pt.msg).
* Tk more robust when X server does not recognize color name "Black".
* Tk_PhotoPutBlock() performance improvement.
* [lsearch -start $pastEnd] no longer finds match at end of list.
* Correct [expr abs($LONG_MIN)] result.
* Correct [string range] failures on some strings containing \x00.
* TCL_EVAL_GLOBAL and [uplevel 0] agreement when traces or [unknown] active.
* Corrections to context of auto-loading the target of an interp alias.
* Corrected some interference between enter and enterstep traces.
* Correct [$img configure -data] failure to change X display.
* Tk_GetBitmapFromData() thread safety.
* Crashes in [grid] for some invalid index arguments.
* Crash when all content of a [text] is elided.
* Crash in [$text edit undo/redo].
* Crash in animated GIF display with variable frame size.
* Crash related to pipe usage in thread-enabled Tcl on Windows.
* Crash when [$text dump -command] changes contents while dumping.
* Crash reading utf-8 when multibyte char spans multiple buffers at EOF.
* Several finalization crashes corrected.
* Repeated [namespace import] of same command now permitted.
* ${prefix}/share added to ::tcl_pkgPath on some systems.
* [exec]'s >> redirection has improved append behavior.
* [info globals] returned only existing variables.
* Recognize some Solaris variations of the cp1251 encoding.
* Addressed [file mkdir] race condition.
* Support opening >2GB files on RHEL 3.
* Corrections to $argv formatting when [encoding system] is multibyte.
* http 2.5.2: Update URL encoding rules to RFC 3986.
* Fixed issue in recursive file delete with NFS lock files.
* Stopped crash after use of Tcl_TraceCommand().
* Win NT/XP: support unicode console.
* Improved support for Tclkit to set [encoding system].
* Added Korean timezone abbreviations.
* Windows: exit codes can now exceed -128..127 range.
* [load] support on LynxOS.
* Packages with incorrect index scripts now cause a warning to be logged.
*** POTENTIAL INCOMPATIBILITY ***
* [lsearch -regexp] now accepts backrefs in the RE.
* [selection get] made compatible with OpenOffice.org.
* Dialog support for widget names containing spaces.
* Improved Tk window manager event interaction on OS X Aqua.
NetBSD/i386 2.0_STABLE and current: set timezone in TEST_ENV, use
libtool to compile shared test modules and account for that in the
Tcl test scripts.
Thanks to jwise@ for the helping hand.
* Fixed segfault in info vars trivial matching branch (new in 8.4.8)
* Fixed the treatment of backslashes in file join on Windows
* Improved readdir_r detection and usage on unix
* Fixed potential unix fileevent issue on 64-bit systems
* Remove file normalize on tcl_findLibrary search path uniqification
added in 8.4.8
* Ensure tilde paths are not returned specially by 'glob'
* Fixed clipping of partially transparent images on buttons on unix to
avoid X error
* Fix Tk_PhotoPut(Zoomed)Block overlay compositing of partially
transparent areas on blank targets
* Fixed possible deadlock in Tcl_Finalize
* Fixed thread IDs on 64-bit systems
* Fixed [scan %ld] handling LP64 systems
* Fixed [string map $samevar $samevar] crash
* Fixed broken [namespace forget] logic
* Fixed [namespace import] cycle prevention
* Improved control over int <-> wideInt conversion
* Fixed buffer overflow when there is a syntax error in [subst]
* Fixed [file executable] result for case insensitivity on Windows
* Fixed [expr {NaN == NaN}] result
* Make [tcl_findLibrary] search $::auto_path as well
* Fixed crash in [fconfigure -ttycontrol] in threaded build
* [TIP 222] implementation of [wm attributes -alpha] on Windows
* [TIP 159] implementation of [wm iconphoto]
* Make Tk [load]-able on OS X/Aqua
* Handle color/screen resolution changes on Windows
* Fixed [wm resizable] for Solaris/CDE
* Handle Windows native dialog double clicks that fall through
* Fixed [place forget] memory leak
* Recompute menu geometry on named font size change
* Fixed X/IME IC focus after creation
* Improved multiple display Tk dialog window placement
* Fixed compound buttons for OS X/Aqua
* Documentation improvements and test suite expansion
* Fixed [glob -path] bug when in the root directory
* Fixed unicode-char path installation on Windows NT-based platforms
* Properly subsitute more values in Windows tclConfig.sh
* Improved stack overflow prevention on Windows
* Fixed mem leak in [fconfigure $serial -xchar]
* Fixed crash with [cd] with a volumerelative $HOME
* Fixed clock %G %V formats for ISO8601 week numbers
* Fixed support for non-WIDE_INT aware math functions
* Added [http::config -urlencoding] option
* Fixed utf-8 encoding of \u0000 on system I/O
* Prevented dde hangs with non-responsive apps
* Added round() wide integer support
* Cleaner exit and correction of mem leaks when using the threaded
memory allocator and reinitializing
* Improved build configuration on 64-bit systems
* Added read support of PPM/PGM with the -data option
* Correct issue with displaying maximize window button on KDE-3.2.1
* Fix drawing of unicode chars in menu titles on Windows
* Correctly post Tk clipboard data to the Windows clipboard on exit
* Fix the panedwindow -opaqueresize option to work as per the docs
* Reduce Tk tk_messageBox default font size to 14-point
* Prevent possible segfault in -maxundo
* Fix XIM initialization on Solaris
* Complete the implementation of the CG version of the X drawing
emulation layer on Mac OS X
* Fix several Mac OS X usability issues
Comment indicates it was here earlier, now apparently scheduled
to be replaced by TclpObjCreateDirectory, but this will have to
do as a workaround for now.
that accumulates within itself with a do-nothing version because it tried
to re-use LDFLAGS for another purpose. This broke all library checks after
the "checking for ELF" step. Fix this by (duh) not re-using LDFLAGS but
by using a different variable. Bump the PKGREVISIONs of lang/tcl and
x11/tk.
This fixes building the threaded versions of tcl and tk.
* Tcl_Obj sharing fixed in [binary scan]
* Updated errno usage for recent glibc
* Fixed [file normalize ~unknownuser] error
* Fixed two memory leaks in VFS code
* Fixed possible infinite loop in TclFinalizeFilesystem
* Updated HP-UX 11 build libraries setup
* Unix std channels forced to exist at startup
* Stopped broken [exec] quoting of '{'
* Fixed memory leak with very long host names
* Corrected level interpretation of Tcl_CreateTrace
* Allow 64-bit configure on IRIX64-6.5*
* Several OS X/Aqua native integration improvements (scrollbar,
event generate, unicode clipboard, tk_messageBox, mousewheel event,
alpha blending for partially transparent images)
* Recognized native hand2/fleur cursors on Windows
* Post menubuttons so they stay on screen better
* Fixed crash during intra-image copy/resize
* New msg catalogs for Esperanto and Polish
* Corrections bold/italic font handling (width calculations) on Windows
* Fixed shrinking grid geometry calculations
submitted in private mail by Georg Schwarz. Prevents PLIST mismatches
on these platforms.
Tested for non-interference with other platforms, but no specific
IRIX testing of this version of fix yet performed.
Besides more bug fixes and several enhancements some of the
NetBSD relevant changes (taken from "changes" in the
distribution):
2001-04-03 (doc fixes) numerous doc corrections and clarifications.
Update of READMEs.
2001-03-29 (bug fix) prevent potential race condition and security leak in
tmp filename creation on Unix. (max)
2001-03-13 (bug fix) Correctly possible memory corruption in string map {}
$str (fellows)
2001-01-30 (bug fix) Fixed possible hangs in fcopy. (porter)
2000-11-23 (mem leak) fixed potential memory leak in error case of lsort
(fellows)
2000-11-01 (mem leak) Corrected excessive mem use of info exists on a
non-existent array element (hobbs)
2000-09-27 (bug fix) fixed a bug introduced by a partial fix in 8.3.2 that
didn't set nonBlocking correctly when resetting the flags for the write
side (mem leak) Correct mem leak in channels when statePtr was released
(hobbs)
2001-07-18 (bug fix) corrected memory overwrite error when buffer size
of a channel is changed after channel use has already begun (kupries, porter)
2001-08-07 (bug fix) corrected bytecode stack management during [break]
(see test foreach-5.5) (sofer, tallneil, jstrot)
2001-08-08 (new features) updated packages msgcat 1.1.1, opt 0.4.3,
tcltest 1.0.1, dependencies checked (porter)
2001-08-24 (bug fix) [auto_import] now matches patterns like
[namespace import], not like [string match] (porter)
**** POTENTIAL INCOMPATABILITY ****
2001-08-27 (new feature) added Tcl_SetMainLoop() to enable loading Tk as a
true package (hobbs)
2001-09-06 (new feature) http 2.4: honor the Content-encoding and charset
parameters; add -binary switch for forcing the issue (hobbs, saoukhi, orwell)
2001-09-10 (bug fix) protect against alias loops (hobbs)
2001-09-19 (bug fix) [format] and [scan] corrected for 64-bit machines (rmax)
2001-09-26 (bug fix) corrected potential deadlock in channels that do not
provide a BlockModeProc (kupries, kogorman)
2001-10-11 (bug fix) corrected cleanup of self-referential bytecodes at
interpreter deletion (sofer, rbrunner)
to be an optimization bug that causes the build to fail (pkg/13395). The
problem appeared in the original PR on an Amiga running NetBSD 1.5.1 and
also on a mac68k running NetBSD 1.5.1. This workaround was tested on the
mac68k system (kindly provided by Jon Lindgren).
too generic, e.g. Hash, Object, Access. Approved by jwise@netbsd.org.
- Touch ${TCL_LIB_FILE} after the build so that the library isn't relinked
during installation.
Previously, TCL_LIB_SPEC required the including program to explicitly set
${exec_path}. This means that programs which used autoconf _and_ tclConfig.sh
accidentally worked. Other programs failed if they depended on the value of
TCL_LIB_SPEC.
One such failing program is ap-dtcl, which was updated to depend on tclConfig.sh
without the package maintainer being contacted. This update caused mod_dtcl.so
to be built with a bad ELF rpath -- clearly the developer who updated this did
not test it on any ELF platform (if at all).
There, that's out of my system now. I'm off for more coffee.
a shared library that depends on libtcl83.so. The TCL_SHLIB_LD command was
set to the incorrect value for ELF platforms, relying on "ld" which doesn't
understand the -Wl,... options it receives via ${TCL_LIB_SPEC}. Patch the
configure script to set TCL_SHLIB_LD to the proper value on NetBSD systems
depending on whether they are ELF or a.out, and also modify TCL_LIB_SPEC
to include -Wl,-rpath,... or -R... accordingly.
Bump version number to 8.3.2nb2.
``while 1 { close [open /dev/null r] }'' does not leak memory for
each go-around. This corresponds to sourceforge bugid #117988.
Bump PKGNAME to tcl-8.3.2nb1.
different versions/platforms of NetBSD, use
$(TCL_LIB_FILE:C/\.so.*/.la/)
instead of
$(TCL_LIB_FILE:.so=.la)
to derive the libtool archive name from the shared library name.
From Frederick Bruckman, addresses PR pkg/10924.
from the older pkgsrc/lang/tcl-8.0.5.
This is an update of the tcl package from version 8.0.5 to version 8.3.2,
and also a slight change in the organization of tcl packages.
This will be added disabled to pkgsrc/lang/Makefile until I finish updating
tk and all tcl-based packags.
Changes from out of the box tcl-8.3.2:
Both static and shared libtcl83.* are installed, thanks to
the magic of libtool.
$tcl_platform(machine) is set to ${MACHINE_ARCH}, not ${MACHINE},
thanks to the patch to tcl-8.0 from Dan McMahill. This makes
sharing of binary packages of tcl and tcl extensions easier.
Changes to the package since tcl-8.0.5:
$tcl_pkgPath is now set to ${PREFIX}/lib/tcl instead of ${PREFIX}/lib
and packages which install tcl extensions will be updated to install
there. This produces less clutter in ${PREFIX}/lib, and mirrors the
usage of java and elisp extension packages.
A symlink to ${PREFIX}/bin/tclsh8.3.2 is installed as ${PREFIX}/bin/tclsh
This change and the above are designed to allow tcl-using packages to
not depend on any particular version of tcl.
public tcl include files and the tcl configuration information script
are now installed in their standard places (${PREFIX}/include/tcl.h,
${PREFIX}/include/tclDecls.h, and ${PREFIX}/lib/tclConfig.sh), and
private tcl include files are now installed in ${PREFIX}/include/tcl.
This change allows tcl extension packages to work out of the box, and
to not need modification when tcl is updated. When extension package
authors use the new libtclstubs*.a API, this even allows binary packages
of dynamically-loadable tcl extensions to be used with newer versions of
tcl without recompilation.
Here are the new features in tcl-8.3.x as opposed to 8.0.x. I am not including
bug fixes as this represents about 18 months of them.
New Features since Tcl 8.2:
------------------------------
Improved clarity of error messages, especially for common programming
mistakes.
New lsort -unique switch to uniqify lists when sorting.
Enhanced glob command to provide simpler and more powerful cross-platform
file listing functionality.
File date stamping through "file atime" and "file mtime" and support for
chmod style permissions setting in file attributes -permissions on Unix.
New file channels command to obtain list of open channels.
"scan" command can now be used inline to return a list of values.
"regexp" has new -start, -all and -inline switches.
New "array unset" command.
New -milliseconds granularity option to "clock clicks".
Tcl optimization improvements, as well as numerous bug fixes.
Overhaul of the clock command to improve grammar and add support for
common ISO 8601 date/time formats.
Improved build support for numerous platforms.
New Features since Tcl 8.1.1
----------------------------------
Optimized string index, length, range, and append commands. Added a
new Unicode object type.
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.
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.
Changed to conform to TEA specification, added tcl.m4 and aclocal.m4
macro libraries for configure.
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.
Updated Unicode character tables to reflect Unicode 2.1 data.
Added initial implementation of new Tcl test harness package.
Modified test files to use new tcltest package.
Applied patch from Peter Hardie to add poke command to dde and changed
the dde package version number to 1.1.
Added options to tcltest package: -preservecore, -limitconstraints,
-help, -file, -notfile, and flags.
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.
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.
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.
Added -timeout option to http.tcl to handle timeouts that occur during
connection attempts to hosts that are down.
New features since Tcl 8.1:
---------------------------
Applied Jeff Hobbs' string patch which includes the following changes:
new subcommands: equal, repeat, map, is, replace
-length option to "string compare|equal"
-nocase option to "string compare|equal|match"
string and list indices can be an integer or end?-integer?.
added optional first and last index args to string toupper, et al.
See the string.n manual entry for more details about the new string features.
Applied Jeff Hobb's patch to add Tcl_StringCaseMatch to support case
insensitive glob style matching and Tcl_UniCharIs* character classification
functions.
Added Tcl_UtfNcmp and Tcl_UtfNcasecmp to make Utf string comparision easier.
Replaced the per-interpreter regexp cache with a per-thread cache. Changed
the Regexp object to take advantage of this extra cache. Added a reference
count to the TclRegexp type so regexps can be shared by multiple objects.
Removed the per-interp regexp cache from the interpreter. Now regexps can be
used with no need for an interpreter. This set of changes should provide
significant speed improvements for many Tcl scripts.
Applied the patch to fix 100-year and 400-year boundaries in leap year code,
from Isaac Hollander.
New features since Tcl 8.0.5:
-----------------------------
Full Unicode support and a message catalog for internationalization.
Thread-safety for Tcl and Tk.
A new regular expression package by Henry Spencer that adds many
advanced features: non-greedy quantifiers, bounds, positive
and negative lookahead, collating elements, equivalence classes,
several built-in character classes, and comments. In addition,
the regular expression engine works on Unicode strings to make
this the best regular expression package available anywhere.
Integrated the stub library mechanism contributed by Paul Duffin,
Jan Nijtmans, and Jean-Claude Wippler. This feature will make it
possible to write extensions that support multiple versions of Tcl
simultaneously. It also makes it possible to dynamically load
extensions into statically linked interpreters. This patch includes
the following changes:
- Added a Tcl_InitStubs() interface
- Added Tcl_PkgProvideEx, Tcl_PkgRequireEx, Tcl_PkgPresentEx,
and Tcl_PkgPresent.
More information about using the stubs interface in your extensions
can be found at http://www.scriptics.com/support/howto/stubs.html
Added a message catalog facility to Tcl. This adds several commands
in the "msgcat" package. Thanks to Mark Harrison for contributing
the initial implementation.
Added the "encoding" command that facilitate translations of strings
between different character encodings.
Added "string totitle" command to convert strings to capitalize the
first character of a string and lowercase all of the other characters.
-----
Whew... If you're still reading, thanks. Enjoy!