os/persistentdata/persistentstorage/sqlite3api/TEST/TCL/tcldistribution/ChangeLog.2001
First public contribution.
1 2001-12-28 Jeff Hobbs <jeffh@ActiveState.com>
3 * library/init.tcl: make sure env(COMSPEC) on Windows is executed
4 with the right case, as it may otherwise fail inexplicably.
6 2001-12-28 Don Porter <dgp@users.sourceforge.net>
8 * generic/tclCkalloc.c (MemoryCmd, TclFinalizeMemorySubsystem):
9 Added the [memory onexit] command, intended to replace [checkmem].
11 * doc/DumpActiveMemory.3:
12 * doc/memory.n: Updated documentation for [memory] and related
15 * mac/tclMacBOAMain.c (Tcl_Main, CheckmemCmd): Removed all the
16 machinery for the [checkmem] command that is completely duplicated
17 by code in generic/tclCkalloc.c.
19 * generic/tclBinary.c:
20 * generic/tclListObj.c:
22 * generic/tclStringObj.c: Removed references to [checkmem] in
23 comments, referencing [memory active] instead, since it is
26 2001-12-28 Daniel Steffen <das@users.sourceforge.net>
29 * mac/tclMacTclCode.r: synced up tclInit features to unix/win:
30 implemented TclSetPreInitScript support, use of existing tclInit
31 proc if defined, check of default encoding dir if set. Changed
32 script library resource names to lowercase (i.e. same as
33 corresponding files). Used Tcl_JoinPath instead of string append.
34 Check that system encoding could be loaded before utf translating
36 * mac/tclMacApplication.r:
37 * mac/tclMacLibrary.r:
39 * mac/tclMacResource.r: minor version resources cleanup
41 2001-12-21 Mo DeJong <mdejong@users.sourceforge.net>
43 * unix/tcl.m4 (SC_PATH_TCLCONFIG, SC_PATH_TKCONFIG):
44 Search for config file using exec_prefix instead of
45 prefix when no --with-tcl or --with-tk argument is used. [Bug 492418]
47 2001-12-21 Daniel Steffen <das@users.sourceforge.net>
49 * unix/tcl.m4: fixed incorrect SHLIB_LD_LIBS
50 setting for MacOSX / Darwin.
51 * unix/configure: Regen.
52 * unix/mkLinks.tcl: improved case-insensitive
54 * unix/mkLinks: Regen.
56 2001-12-19 Don Porter <dgp@users.sourceforge.net>
58 * unix/Makefile.in (dist): corrected use of eolFix.tcl on
59 working files. It should operate on distributed files. [Bug 495120]
61 2001-12-19 David Gravereaux <davygrvy@pobox.com>
63 * tools/tcl.wse.in: Fix for #495120. tcl.wse.in was
64 stored in cvs with improper <eol>. This resulted in
65 corrupted <eol> when checked-out on translating CVS
66 clients such as windows (CRCRLF) and mac (CRCR).
68 2001-12-19 Mo DeJong <mdejong@users.sourceforge.net>
71 * unix/tcl.m4 (SC_CONFIG_CFLAGS): Update
72 SunOS 5.[0-6] target so that correct linker
73 options are passed to gcc or ld. [Tk Bug 220863]
75 2001-12-19 Mo DeJong <mdejong@users.sourceforge.net>
77 * unix/README: Update to account for changes
78 in the unix/dltest directory, the way autoconf
79 is run, and the new "make shell" target.
81 2001-12-19 Mo DeJong <mdejong@users.sourceforge.net>
83 * unix/Makefile.in: Rename dltest to dlpkgs to
84 fix problem where lib files were not getting
85 built because dltest/ directory already existed.
87 2001-12-19 Jeff Hobbs <jeffh@ActiveState.com>
89 * win/tclWinSerial.c (SerialCheckProc): corrected time
90 calculations to be unsigned. (schroedter)
92 2001-12-18 Mo DeJong <mdejong@users.sourceforge.net>
94 * unix/Makefile.in: Define new dltest target that
95 simply does a cd to dltest/ before running make.
96 There is no need for the separate configure
97 script that was previously being used.
98 * unix/configure: Regen.
99 * unix/configure.in: Subst into dltest/Makefile.
100 * unix/dltest/Makefile.in: Define LIBS using
101 DL_LIBS, LIBS, and MATH_LIBS variables instead
102 of TCL_LIBS variable from tclConfig.sh.
103 * unix/dltest/README: Update readme to account for new
104 configure free implementation.
105 * unix/dltest/configure: Removed.
106 * unix/dltest/configure.in: Removed.
108 2001-12-18 Donal K. Fellows <fellowsd@cs.man.ac.uk>
110 * generic/tcl.h (TCL_STUB_MAGIC): Added cast to force type to be
111 an int and get rid of a persistent and pointless warning with
114 * generic/tclCkalloc.c (Tcl_AttemptDbCkalloc,Tcl_AttemptDbCkrealloc):
115 * generic/tcl.decls (Tcl_AttemptDbCkalloc,Tcl_AttemptDbCkrealloc):
116 Made the file parameters to these functions into CONST char *,
117 like they always should have been to match the other Tcl*Db* API
120 2001-12-17 Andreas Kupries <andreas_kupries@users.sourceforge.net>
122 * Applied #219311 on behalf of Rolf Schroedter
123 <schroedter@users.sourceforge.net> to prevent fcopy on serial
124 ports from flooding the event queue.
126 2001-12-11 Miguel Sofer <msofer@users.sourceforge.net>
129 * generic/tclBasic.c: docs and comments corrections [Bug 493412]
130 Bug & patch by Don Porter.
132 2001-12-14 Donal K. Fellows <fellowsd@cs.man.ac.uk>
134 * win/tclWinNotify.c (Tcl_FinalizeNotifier): Stop Tcl on Windows
135 from crashing when shutdown from a non-Tcl thread. Fixes Bug
136 #217982 [orig. 5804] reported by Hugh Vu and Gene Leache. I'm
137 not convinced that the shutdown process is right even with this,
138 but it was definitely wrong without...
140 2001-12-13 Andreas Kupries <andreas_kupries@users.sourceforge.net>
142 * win/tclWinSock.c (TcpGetOptionProc): Fix for tcl bug item
143 #478565 reported by an unknown person. Bypasses all calls to
144 "gethostbyaddr" for address "0.0.0.0" to prevent delays on
147 2001-12-12 Jeff Hobbs <jeffh@ActiveState.com>
149 * doc/Preserve.3: doc'd TCL_DYNAMIC use. [Patch #483989] (porter)
151 2001-12-12 Andreas Kupries <andreas_kupries@users.sourceforge.net>
153 * generic/tclIO.c (Tcl_GetsObj): Applied patch for bug #491341 as
154 provided by Don Porter <dgp@users.sourceforge.net>. Fixes the
155 assumption of having an empty Tcl_Obj to work with.
157 2001-12-11 Miguel Sofer <msofer@users.sourceforge.net>
159 * generic/tclCompCmds.c:
160 * generic/tclCompile.c:
161 * generic/tclExecute.c: consistency patch, to make all
162 instructions that pop a variable number of Tcl_Obj's off the
163 execution stack take the number of popped objects as first
164 operand. Modified *only* the new instructions
165 INST_LIST_INDEX_MULTI and INST_LSET_FLAT, so this has no effect
166 on bytecodes generated up to tcl8.4a3 inclusive.
168 * generic/tclExecute.c: fix debug messages in INST_LSET_LIST.
170 * generic/tclCompCmds.c (TclCompileLindexCmd):
171 * generic/tclCompExpr.c (CompileMathFuncCall): removed the last
172 two overestimates of the necessary stack depth for bytecodes in
173 the fix of [Bug 483611].
175 2001-12-10 Andreas Kupries <andreas_kupries@users.sourceforge.net>
177 * unix/tclUnixPipe.c (TclpCreateProcess): Applied Don Porter's
178 patch fixing bug #437489.
180 2001-12-10 Miguel Sofer <msofer@users.sourceforge.net>
182 * generic/tclEvent.c:
183 * tests/event.test: fix background error reporting in the absence
184 of a bgerror proc [Bug 219142].
186 2001-12-10 Don Porter <dgp@users.sourceforge.net>
194 * doc/OpenFileChnl.3:
196 * doc/TCL_MEM_DEBUG.3:
200 * doc/tclsh.1: Several typo and formatting corrections discovered
201 during conversion to TMML. Thanks to Joe English. [Patch 490514]
202 * unix/mkLinks: 'make mklinks'
204 2001-12-10 Miguel Sofer <msofer@users.sourceforge.net>
206 * generic/tclCompCmds.c:
207 * generic/tclCompExpr.c:
208 * generic/tclCompile.c:
209 * generic/tclCompile.h:
210 * generic/tclExecute.c:
211 * generic/tclProc.c: fixed the calculation of the maximal stack
212 depth required by bytecodes [Bug 483611].
214 2001-12-07 Miguel Sofer <msofer@users.sourceforge.net>
217 * tests/trace.test: restored consistency in refCount accounting by
218 array traces [Bug #4484339], submitted by Don Porter.
220 2001-12-06 Donal K. Fellows <fellowsd@cs.man.ac.uk>
222 * tests/parseExpr.test, tests/for.test, tests/expr.test:
223 * tests/expr-old.test, tests/compile.test, tests/compExpr.test
224 * tests/compExpr-old.test: Kept up to date with syntax errors.
225 * generic/tclParseExpr.c (ParsePrimaryExpr): Rewrote to give even
226 better syntax errors in the fairly common case of an identifier
227 without decorations by guessing based on the currently available
228 functions. Also made messages consistent between memdebug and
231 2001-12-05 Miguel Sofer <msofer@users.sourceforge.net>
234 * tests/trace.test: new algorithm for [array get], safe when there
235 are traces that modify the array [Bug #449893].
237 2001-12-04 Donal K. Fellows <fellowsd@cs.man.ac.uk>
239 * tests/compExpr-old.test, tests/compExpr.test, tests/compile.test:
240 * tests/expr-old.test, tests/expr.test, tests/for.test:
241 * tests/while.test, tests/if.test: Rewrite to handle more specific
243 * tests/parseExpr.test: Rewrite to get rid of dup test numbers and
244 handle more specific syntax errors.
245 * generic/tclParseExpr.c (LogSyntaxError): Added a detail message
246 argument to help explain what the syntax error is.
247 (Tcl_ParseExpr, ParseCondExpr, ParsePrimaryExpr): Added detail
249 (UNKNOWN_CHAR): New lexeme for characters that are always illegal
250 in expressions outside strings.
252 2001-12-03 Donal K. Fellows <fellowsd@cs.man.ac.uk>
254 * doc/expr.n: Various documentation improvements in relation to
255 the function calls. Includes fix for Bug #487704 submitted by
258 2001-12-03 David Gravereaux <davygrvy@pobox.com>
260 * win/makefile.vc: Some install target bugs repaired along with
261 $(TCLSTUBLIB) added to the dependencies rather than implicit through
262 the dde and reg extensions which don't happen to always require it
263 for some build types.
265 2001-11-30 Miguel Sofer <msofer@users.sourceforge.net>
267 * generic/tclVar.c: Tcl_Preserve'ing VarTrace structures to avoid
268 memory corruption. Patch for [Bug: 484334] provided by Don Porter
270 2001-11-29 Miguel Sofer <msofer@users.sourceforge.net>
272 * tests/namespace.test: modified namespace-41.2, added 41.3
273 {knownbug} after discussion with Don Porter and Kevin Kenny.
275 2001-11-29 Miguel Sofer <msofer@users.sourceforge.net>
277 * tests/namespace.test: added namespace-41.2, a simpler test for
280 2001-11-29 Donal K. Fellows <fellowsd@cs.man.ac.uk>
282 * generic/tclBinary.c (BINARY_SCAN_MAX_CACHE, Tcl_BinaryObjCmd,
283 ScanNumber): Added caching scheme to reduce number of object
284 allocations when doing scans of large repetitive binary strings.
285 See comments in file for reasoning behind implementation.
286 Suggested by Miguel Sofer in Patch #429916, but independently
289 2001-11-28 Donal K. Fellows <fellowsd@cs.man.ac.uk>
291 * doc/regsub.n, doc/regexp.n: Converted dangling references to
292 METASYNTAX section into references to the re_syntax manual page.
294 2001-11-27 D. Richard Hipp <drh@hwaci.com>
296 * win/tclWinFCmd.c: Fix a coredump in the filename normalizer
299 2001-11-27 David Gravereaux <davygrvy@pobox.com>
301 * win/makefile.vc: Removed the Tk reference for the 'winhelp' target.
302 Converge at install will need to be the solution for Tk and all other
305 2001-11-27 Donal K. Fellows <fellowsd@cs.man.ac.uk>
307 * tests/cmdAH.test (cmdAH-24.2): Made test less sensitive to OS
308 preemption, but perfection isn't practical [Bug 463189, reported
311 * tests/switch.test (switch-9.*): Added tests to exercise more of
312 the argument checking. (switch-7.2,switch-7.3): Test changed
314 * generic/tclCmdMZ.c (Tcl_SwitchObjCmd): Reworked argument parsing
315 to be stricter about what it accepts. This should make uses of
316 the [switch] command be more maintainable. [Bug 475397, reported
319 2001-11-26 Don Porter <dgp@users.sourceforge.net>
321 * generic/tclIntPlatDecls.h: 'make genstubs' after changes
322 in 2001-11-23 commit from Daniel Steffen.
324 2001-11-24 Mo DeJong <mdejong@users.sourceforge.net>
326 * unix/Makefile.in: Add comments to better describe
327 TCL_EXE and when it should be available.
328 * win/Makefile.in: Add TCL_EXE variable to be used
329 by rules like `make genstubs`. Don't set TCL_LIBRARY
330 before running `make genstubs` since we will be running
331 with a tclsh from the PATH not the one we build.
333 2001-11-24 Mo DeJong <mdejong@users.sourceforge.net>
335 * win/configure: Regen.
336 * win/tcl.m4 (SC_CONFIG_CFLAGS): Add comctl32.lib
337 to wish link libs. This change was originally added
338 to Tk on 2001-11-09 but was not committed to Tcl.
340 2001-11-23 Daniel Steffen <das@users.sourceforge.net>
347 * unix/tclLoadDyld.c:
348 * unix/tclMtherr.c: Mac OSX support: build system, dynamic code loading
349 and support for case-insensitive filesystems in mkLinks (patch #435258)
351 2001-11-23 Daniel Steffen <das@users.sourceforge.net>
353 Up-port to 8.4 of mac code changes for 8.3.3 & various new
354 changes for 8.4, some already backported to 8.3.4 (patch #435658)
356 * generic/tclObj.c: added #include to fix missing prototype errors
358 * generic/tcl.h: MAC_TCL: addition of ConditionalMacros.h and use of
359 DLLIMPORT and DLLEXPORT like on other platforms. ( => no longer need
360 the .exp files and can remove use of #pragma export that never worked
362 removed line continuation in #if clause as this breaks the mac
363 resource compiler (note that *.r files include tcl.h)
365 * mac/tclMacFile.c: fixed bug in permission checking code
367 * mac/tclMacLoad.c: corrected utf8 handling, comparison of
368 package names to code fragment names changed to only match on the
369 length of package name, this allows for fragment names with version
375 * generic/tclIOUtil.c: moved declaration of TclpGetGMTOffset()
377 * mac/tclMacShLib.exp:
379 * mac/tclMacMSLPrefix.h: removed files
381 * unix/Makefile.in: removed reference to .exp files
383 * mac/MW_TclBuildLibHeader.h:
384 * mac/MW_TclBuildLibHeader.pch:
385 * mac/MW_TclHeaderCommon.h:
386 * mac/MW_TclStaticHeader.h:
387 * mac/MW_TclStaticHeader.pch: new precompiled header files
389 * mac/MW_TclAppleScriptHeader.pch:
390 * mac/MW_TclHeader.pch:
391 * mac/MW_TclTestHeader.pch:
392 * mac/tclMacCommonPch.h: revised precompiled header handling: now
393 include a common header file 'MW_TclHeaderCommon.h' from all .pch
394 files, the .pch files themselves now only setup #defines (e.g.
395 BUILD_tcl, STATIC_BUILD, TCL_DEBUG, TCL_THREADS) like in makefiles on
400 * mac/tclMacInt.h: use of BUILD_tcl and TCL_STORAGE_CLASS like on other
401 platforms, standardize #include'd files to what's done on other
402 platforms, removed use of #pragma export.
404 * mac/tcltkMacBuildSupport.sea.hqx: new archive of mac build support
405 files & suggested build environment directory hierarchy:
406 'Building MacTclTk' & 'CW Pro6 changes' readme's.
407 projects for MoreFiles 1.5.2 static & shared libraries.
408 project & sources for 'pseudoCarbonSupport', see below.
409 included XML versions of the projects for CW Pro5 or Pro7 users.
411 * mac/tclMacProjects.sea.hqx: updated mac build project files:
412 build support for CodeWarrior Pro6, UnivIntf 3.4 & shared runtime
413 libraries: the MSL libraries and MoreFiles are no longer compiled into
414 Tcl.shlb, all non-static binaries now use the Pro6 shared runtime
415 libraries and MoreFiles.shlb. These shlbs are merged into the standard
416 Wish and TclShell, but 3rd party applications linking with Tcl.shlb or
417 Tk.shlb need to setup access to them. (see the "(sh-ppc)" targets
419 included XML versions of the projects for CW Pro5 or Pro7 users.
420 use compat/strtod.c instead of MSL's strtod()
421 use WASTE versions of MSL for tcl test target to avoid text buffer
423 Merging the full MSL.shlb and the other shlbs into Wish & TclShell
424 makes them a bit larger than before, use unmerged binaries to avoid
425 copying the shared code with every application, e.g. when deploying
426 numerous Wish based droplets.
427 Note that using CW Pro5 to compile extensions is in principle still
428 possible, but need to link with Pro6 runtime libraries.
429 Tclapplescript now loads and runs on CFM68k.
430 Highly experimental "pseudoCarbon" support for Tcl only on OS 8/9:
431 binaries in "Build:(Carbon):" link against CarbonLib instead of
432 InterfaceLib, however the actual code has not been carbonized! i.e. it
433 will not run on OSX and may not even run properly with CarbonLib.
434 This should in principle allow you to build & test OS9 CFM Carbon
435 binaries that need to link with Tcl.shlb. On OSX you can use the
436 native Tcl.framework, but you have to build a MachO binary as there
437 is no CFM glue lib for Tcl.framework.
438 the library pseudoCarbonSupport.shlb manually loads the symbols
439 from InterfaceLib that are not in CarbonLib but are needed by the
440 uncarbonized code in Tcl.shlb and TclShell.
442 * generic/tclMain.c: MAC_TCL: workaround for broken/non-standard isatty
443 on MW Pro6, #include <unistd.h> instead of defining isatty
445 * mac/tclMacPort.h: MW Pro6 changes for MSL fcntl.h, stat.h & isatty
447 * mac/tclMacAppInit.c: add EXTERN to InstallConsole to enable DLL
448 export via the TCL_STORAGE_CLASS mechanism.
450 * mac/tclMacFCmd.c: fix for FSpDirectoryCopy API change
452 * mac/tclMacLibrary.c: emit compile time error when
453 TCL_REGISTER_LIBRARY and USE_TCL_STUBS are both defined at the same
454 time in an extension, this use is not currently supported and will
455 result in a crash when dynamically loading the extension.
457 * mac/tclMacApplication.r:
458 * mac/tclMacLibrary.r:
460 * mac/tclMacResource.r: fixed obsolete copyrights/dates in version
461 strings; updated version strings to standard usage; added support for
462 '(Support Libraries)' subfolder for shared runtime libraries in
463 unmerged binaries; commented out demo setting of "Tcl Environment
464 Variables"; reorganized resources among these files to avoid
465 multiple copies in applications and shared libraries, the script
466 libraries are now no longer duplicated in Tclsh but are only included
467 in the resources of Tcl.shlb.
470 * mac/tclMacSock.c: cast for *BlockMode
473 * mac/tclMacMath.h: removed obsolete hypot() definition
475 * generic/tclIntPlatDecls.h:
476 * generic/tclInt.decls:
477 * generic/tclStubInit.c:
478 * mac/tclMacNotify.c:
481 * generic/tclThreadTest.c: renamed routines conflicting with standard
482 Apple or MoreFiles headers (at compile or link time):
483 GetGlobalMouse -> GetGlobalMouseTcl
484 FSpGetDirectoryID -> FSpGetDirectoryIDTcl
485 FSpOpenResFileCompat -> FSpOpenResFileCompatTcl
486 FSpCreateResFileCompat -> FSpCreateResFileCompatTcl
487 NewThread -> NewTestThread
488 the renamed MoreFiles *Tcl routines are just wrappers calling into the
491 * mac/tclMacCommonPch.h:
493 * mac/tclMacPanic.c: removed OLDROUTINENAMES define, renamed obsolete
494 apple API names to modern equivalents; UH3.4 support: added #include
495 <ControlDefinitions.h>, updated New*Proc() calls to New*UPP().
497 * mac/tclMacUnix.c: added missing (Tcl_Obj ***) cast to
498 Tcl_ListObjGetElements call
500 * mac/tclMacAlloc.c: modernized TclpSysAlloc() to use temporary
501 memory instead of system heap memory when available (MacOS
502 >= 7.5 and possibly earlier, use of system heap has been
503 discouraged for a long time and has many disadvantages, e.g. memory
504 isn't paged out, and errors can very easily bring the system down);
505 fixed crashing bug in TclpSysRealloc() and CleanUpExitProc() where
506 memory was being accessed after having been deallocated; fixed
507 memory leak in (de)allocation code (for every block ever allocated
508 with TclpSysAlloc, a Ptr was leaked), if temporary memory is
509 available, don't track allocated memory, instead use
510 RecoverHandle() to get Handle from Ptr, otherwise use doubly linked
511 list to correctly track memory and free all allocated memory; added
512 new option for ConfigureMemory: MEMORY_DONT_USE_TEMPMEM, disables
513 use of temporary memory even when it would be available, only
514 necessary when writing e.g. a driver (using tcl??); increased
515 fraction of application heap reserved for OS routines to 512K
520 * generic/tclInt.decls:
521 * generic/tclIntPlatDecls.h:
522 * generic/tclStubInit.c: timezone support for mac via
523 TclpGetTZName() like on windows, using an inverse timezone table
524 adapted from tclDate.c to map gmtoffset in seconds gotten from
525 the MacOS APIs to a timezone string, as there is no good way to get
526 this info from MacOS. I had to make up some unusual timezones and
527 arbitrarily decide on the most standard of the multiple choices
528 available for every timezone.
530 * generic/tclExecute.c: workaround for a MSL bug/misfeature: for
531 very small floats, MSL can return errno ERANGE but a
532 non-zero value ( < LDBL_MIN however)
534 * mac/tclMacAppInit.c: support for WASTE text library using
535 temporary memory, setting has no effect if WASTE is not used.
537 * mac/tclMacPanic.c: removed duplicate code from generic/tclPanic.c
538 and added that file to projects instead.
540 * tests/all.tcl: set tcltest::singleProcess 1 as multiple processes
541 are not available on the mac.
543 * tests/cmdAH.test: access time not available on the mac, skip the
546 * tests/appendComp.test:
548 * tests/compile.test:
550 * tests/fileName.test:
552 * tests/namespace.test:
553 * tests/tcltest.test: added missing cleanups/tests/catches that
554 caused tests to fail on the mac.
556 * doc/tclvars.n: doc bug, env(PWD) should be env(HOME) [Bug 463834]
558 2001-11-21 Don Porter <dgp@users.sourceforge.net>
560 * tests/trace.test (trace-8.8): Corrected test for Bug 219393.
562 * generic/tclBasic.c (Tcl_DeleteCommandFromToken,CallCommandTraces):
563 * generic/tclCmdMZ>c (Tcl_UntraceCommand): Added Tcl_Preserve and
564 Tcl_Release calls to prevent deletion of CommandTrace structures
565 until all callers are done using them, preventing memory corruption.
568 2001-11-20 Kevin B. Kenny <kennykb@users.sourceforge.net>
570 * doc/GetTime.3 (Tcl_GetTime):
571 * generic/tcl.decls (Tcl_GetTime):
572 * generic/tclClock.c (Tcl_ClockObjCmd):
573 * generic/tclCompile.c (TclCleanupByteCode, TclInitByteCodeObj):
574 * generic/tclCmdMZ.c (Tcl_TimeObjCmd):
575 * generic/tclUtil.c (TclpGetTime):
576 * generic/tclTest.c (GetTimesCmd):
577 * generic/tclTimer.c (Tcl_CreateTimerHandler, TimerSetupProc,
578 TimerCheckProc, TimerHandlerEventProc):
579 * mac/tclMacNotify.c (Tcl_SetTimer):
580 * mac/tclMacShLib.exp (Tcl_GetTime):
581 * mac/tclMacTime.c (Tcl_GetTime):
582 * unix/tclUnixChan.c (TclUnixWaitForFile):
583 * unix/tclUnixEvent.c (Tcl_Sleep):
584 * unix/tclUnixThrd.c (Tcl_ConditionWait):
585 * unix/tclUnixTime.c (Tcl_GetTime):
586 * win/tclWinNotify.c (Tcl_Sleep):
587 * win/tclWinTest.c (TestwinclockCmd):
588 * win/tclWinTime.c (TclpGetSeconds, TclpGetClicks, Tcl_GetTime):
589 Changed all uses of TclpGetTime to Tcl_GetTime. Added Tcl_GetTime
590 to the Stubs table and the library documentation. Added a
591 TclpGetTime in tclUtil.c for backward compatibility of
592 extensions. [Patch #483500, TIP#73]
594 * generic/tclCmdMZ.c (Tcl_TimeObjCmd): Corrected an error in the
595 [time] command that caused incorrect results to be returned if the
596 total duration of all iterations exceeded 2**31 microseconds.
599 * generic/tclInt.decls:
601 * generic/tclStubInit.h: Reran 'make genstubs'
603 2001-11-20 Miguel Sofer <msofer@users.sourceforge.net>
606 * generic/tclCompile.h:
607 * generic/tclExecute.c: moving all code relative to bytecodes from
608 tclBasic.c to tclExecute.c - the functions RecordTracebackInfo and
609 Tcl_ExprObj went to tclExecute.c, and new interface function was
610 defined (TclCompEvalObj).
611 The final objective of this sequence of moves is to provide a
612 clean, clear-cut interface between Tcl's core and the
613 compiler/engine subsystem.
615 2001-11-20 Miguel Sofer <msofer@users.sourceforge.net>
618 * generic/tclCompile.h:
619 * generic/tclExecute.c: factoring out of common code in tclBasic.c
620 (new function TclInterpReady defined: it resets the interp's
621 result, then checks that it hasn't been deleted and that the
622 nesting level is acceptable). Passed the responsibility of calling
623 it to the *callers* of TclEvalObjvInternal.
625 2001-11-20 Miguel Sofer <msofer@users.sourceforge.net>
628 * generic/tclExecute.c: a better variant of the previous-to-last
629 commit (restoring numLevels computations). The managing of the
630 levels now has to be done by the *callers* of TclEvalObjvInternal
632 2001-11-20 Miguel Sofer <msofer@users.sourceforge.net>
634 * generic/tclExecute.c: missing variable declaration under
637 2001-11-20 Miguel Sofer <msofer@users.sourceforge.net>
639 * generic/tclExecute.c:
640 * generic/tclProc.c: restoring the computations of iPtr->numLevels
641 to the original logic (previous to buggy modifs on 2001-11-16).
643 2001-11-20 Jeff Hobbs <jeffh@ActiveState.com>
645 * tools/eolFix.tcl (new-file):
646 * unix/Makefile.in: added EOL correction for Windows bat files to
647 dist target. [Bug #219409] (davygrvy)
649 * unix/tclUnixInit.c (TclpSetInitialEncodings): update of patch
650 from 2001-11-16 that uses the old Tcl encoding check mechanism as
651 a fallback to the original. Also added a TCL_DEFAULT_ENCODING
652 #define (defaults to iso8859-1). Tcl will first try setlocale and
653 nl_langinfo, and if that fails, guess based on certain LANG|LC_*
654 env vars. [Patch #418645]
656 2001-11-19 David Gravereaux <davygrvy@pobox.com>
658 * win/buildall.vc.bat: Added useful comments.
660 2001-11-19 Miguel Sofer <msofer@users.sourceforge.net>
662 * tests/compile.test: added a test for bug [Bug 483309]
664 2001-11-19 Vince Darley <vincentdarley@users.sourceforge.net>
670 * tests/winFCmd.test: improved speed of file normalization
671 for Win95/98, and clarified docs on differences in file
672 normalization between NT/2000 and the older operating systems.
673 Added test to ensure normalization is correct.
675 2001-11-19 Miguel Sofer <msofer@users.sourceforge.net>
677 * generic/tclBasic.c:
678 * generic/tclParse.c: Code reorganisation. Moved all evaluation
679 functions from tclParse.c to tclBasic.c, so that now tclParse.c
680 deals exclusively with parsing and all evaluations are done by
681 code in tclBasic.c. The functions moved are: TclEvalObjvInternal,
682 Tcl_EvalObjv, Tcl_LogCommandInfo, Tcl_EvalTokensStandard,
683 Tcl_EvalTokens, Tcl_EvalEx, Tcl_Eval, Tcl_EvalObj and
686 2001-11-19 Donal K. Fellows <fellowsd@cs.man.ac.uk>
688 * tests/trace.test (trace-8.8): Added adapted version of Bug
689 #219393 as new test; the test won't reliably show up the old
690 problem unless it is being run under something like Purify, but
691 something is better than nothing...
693 * generic/tclVar.c (Tcl_TraceVar2, Tcl_UntraceVar2): Added missing
694 mask bits for trace result type and a check for a nonsense flag
696 * generic/tclCmdMZ.c (TraceVarProc): Added missing test for NULL
697 when deleting a trace that doesn't cause an error.
699 * doc/TraceVar.3: Added documentation for change due to TIP#68.
701 * generic/tclCmdMZ.c (TraceVarInfo): Removed problematic errMsg
702 field from structure.
703 (TraceVarProc): Removed references to errMsg field and changed
704 handling of errors so that they returned a Tcl_Obj* containing the
705 error string. This minimizes the number of calls to the memory
706 management subsystem.
707 (TclTraceCommandObjCmd, TraceCommandProc): Removed references to
708 errMsg field which was never used in command traces in any case.
709 (Tcl_TraceObjCmd, TclTraceVariableObjCmd): Removed references to
710 errMsg field and made variable traces register with
711 TCL_TRACE_RESULT_OBJECT bit set.
713 * generic/tcl.h (TCL_TRACE_RESULT_DYNAMIC,TCL_TRACE_RESULT_OBJECT):
714 New constants to define how to handle the strings returned from
715 trace callbacks [TIP#68]
716 * generic/tclVar.c (CallTraces, Tcl_GetVar2Ex, TclGetIndexedScalar,
717 TclGetElementOfIndexedArray, Tcl_SetVar2Ex, TclSetIndexedScalar,
718 TclSetElementOfIndexedArray, Tcl_UnsetVar2, Tcl_ArrayObjCmd,
719 TclDeleteVars, TclDeleteCompiledLocalVars, DeleteArray,
720 TclVarTraceExists): Support for those new trace flags.
722 2001-11-19 Miguel Sofer <msofer@users.sourceforge.net>
724 * generic/tclCompCmds.c: patch for [Bug 483309] (petasis).
726 2001-11-16 Kevin B. Kenny <kennykb@users.sourceforge.net>
728 * generic/tclListObj.c: removed a C++-style comment that
729 was inadvertently left in the source code.
731 2001-11-16 Jeff Hobbs <jeffh@ActiveState.com>
734 * generic/tclInterp.c (SlaveObjCmd): Corrected argument checking
735 for '$interp alias|aliases|issafe'. [Patch #479560] (thoyts, hobbs)
737 * unix/tclUnixInit.c: added HAVE_LANGINFO code block.
738 * unix/configure: regened
739 * unix/configure.in: added SC_ENABLE_LANGINFO call
740 * unix/tcl.m4: made SHLIB_LD_LIBS='${LIBS}' for FreeBSD* (meyer)
741 Added modified version of Wagner patch to make use of nl_langinfo
742 where possible to determine Unix platform encoding, instead of the
743 inflexible built-in system. This is used by default when
744 possible, and can be disabled with --enable-langinfo=no.
745 [Patch #418645] (hobbs, wagner)
747 2001-11-16 Miguel Sofer <msofer@users.sourceforge.net>
749 * generic/tclCompile.h:
750 * generic/tclExecute.c:
751 * generic/tclObj.c: moved Tcl_GetCommandFromObj and all defining
752 code for tclCmdNameType objects to tclObj.c (from tclExecute.c).
753 This code has nothing to do with bytecodes.
755 2001-11-16 Miguel Sofer <msofer@users.sourceforge.net>
757 * generic/tclBasic.c:
758 * generic/tclCompile.h:
759 * generic/tclExecute.c:
760 * generic/tclParse.c:
762 * tests/stack.test: consolidation of duplicated code (in
763 TclExecuteByteCode and EvalObjv); renaming of EvalObjv to
764 TclEvalObjv as it is not static anymore; restored consistency of
765 level counts between compiled and directly evaled code.
768 2001-11-12 David Gravereaux <davygrvy@pobox.com>
771 * win/rules.vc: Small bug fixes.
773 * win/README: added some docs pointing to the docs in makefile.vc
776 2001-10-17 Kevin B. Kenny <kennykb@users.sourceforge.net>
785 * doc/lset.n (new-file):
787 * generic/tclBasic.c (builtInCmds, Tcl_EvalObjEx):
788 * generic/tclCmdIL.c (Tcl_LindexObjCmd, Tcl_LindexList):
789 (Tcl_LindexFlat, Tcl_LsetObjCmd):
790 * generic/tclCompCmds.c (Tcl_CompileLindexCmd, Tcl_CompileLsetCmd):
791 * generic/tclCompile.c:
792 * generic/tclCompile.h:
793 * generic/tclExecute.c (TclExecuteByteCode):
794 * generic/tclInt.decls:
796 * generic/tclIntDecls.h:
797 * generic/tclListObj.c (TclLsetList, TclLsetFlat, TclSetListElement):
798 * generic/tclObj.c (TclInitObjSubsystem):
799 * generic/tclStubInit.c:
800 * generic/tclTestObj.c (TestobjCmd):
801 * generic/tclUtil.c (TclGetIntForIndex, SetEndOffsetFromAny):
802 * generic/tclVar.c (Tcl_LappendObjCmd):
804 * tests/lset.test (new-file):
805 * tests/lsetComp.test (new-file):
808 * tests/stringComp.test:
809 Reference implementation of TIP's #22, #33 and #45. Adds the
810 ability of the [lindex] command to have multiple index arguments,
811 and adds the [lset] command. Both commands are byte-code compiled.
812 [Patch #471874] (work by Kenny, commited by Hobbs)
814 2001-11-12 David Gravereaux <davygrvy@pobox.com>
816 * win/buildall.vc.bat(new):
817 * win/makefile.vc: Small fix with deriving the "OriginalFilename"
818 string in the .rc scripts. Added a quick batchfile for building
821 2001-11-12 Jeff Hobbs <jeffh@ActiveState.com>
825 * doc/tcltest.n: converted use of \' to more reasonable format.
827 2001-11-10 Mo DeJong <mdejong@users.sourceforge.net>
830 * win/Makefile.in: Add "make gdb" target. This target
831 can run tclsh inside either gdb or insight.
833 2001-11-10 David Gravereaux <davygrvy@pobox.com>
835 * win/makefile.vc: Added a check to make sure one runs the makefile
836 from the /win directory only.
839 * win/rmd.bat: Changes from Llyod Lim for better stability.
842 2001-11-09 David Gravereaux <davygrvy@pobox.com>
845 * win/tcl.dsp: winhelp target fixes for non-NT systems. It
846 seems NMAKE under these remembers changed directories during
847 commands. A new tcltest feature from Peter Spjuth
848 <peter.spjuth@space.se> to specify a pattern file from the
849 commandline and redirecting output to a file when not under
850 NT with it's scrollback console. Then it replays it, piped
851 through more. Added 2 new static "configurations" to tcl.dsp.
852 I could keep adding more, but I think we should leave it up to
853 the user for customizing it.
855 Sticky-points left: 'profile' option.
857 2001-11-09 Jeff Hobbs <jeffh@ActiveState.com>
863 * tools/man2help.tcl:
864 * tools/man2help2.tcl: fixed winhelp generation problems
868 * unix/tcl.m4: added -lc to AIX libs, fixed path to ldAix
870 2001-11-09 Don Porter <dgp@users.sourceforge.net>
873 * generic/tclVar.c: Corrected bug in [global] when dealing
874 with variable names matching :*. [Bug 480176]
876 2001-11-08 Mo DeJong <mdejong@users.sourceforge.net>
878 Fixup stack size under OSF1. [Tcl patch 474790]
880 * unix/configure: Regen.
881 * unix/tcl.m4: Add HAVE_PTHREAD_ATTR_SETSTACKSIZE define
882 to EXTRA_CFLAGS to adjust initial stack size.
884 2001-11-08 Mo DeJong <mdejong@users.sourceforge.net>
886 Enable thread support under FreeBSD. [Tcl bug 473708]
888 * unix/configure: Regen.
889 * unix/tcl.m4 (SC_ENABLE_THREADS): Check for pthread functions
890 in libc_r and enable thread support if found.
891 * unix/dltest/Makefile.in: Set SHLIB_LD_LIBS and use it in
892 the Makefile to properly link a shared library.
894 2001-11-08 Mo DeJong <mdejong@users.sourceforge.net>
897 * unix/dltest/Makefile.in:
898 Avoid adding libc to the LIBS variable since it
899 is not needed when linking with CC. If required
900 when linking with LD it should be done on a case
901 by case basis in tcl.m4.
903 2001-11-08 David Gravereaux <davygrvy@pobox.com>
906 * win/makefile.vc: Fixed install target to adjust for the
907 different build types. Added a 'linkexten' option to link the
908 win extensions inside the shell when built static. Placed
909 win/tclAppInit.c patch in SF patch DB for approval. 'profile'
910 option not hooked in yet. Everything else know is done.
913 * win/tcl.dsw(new): Simple MsDev stub project files that calls
914 makefile.vc. Will help run Tcl in the debugger easier without
915 confusing MsDev for where the .pdb files are.
917 2001-11-07 Mo DeJong <mdejong@users.sourceforge.net>
921 Print a message indicating that the user should
922 run "make genstubs" when the generated tclStubInit.c
923 file is out of date. We can't regenerate automatically
924 since there may be no tclsh on the system and that
925 would cause bootstrap problems. [Tcl bug 465874]
927 2001-11-07 Mo DeJong <mdejong@users.sourceforge.net>
929 Define TCL_INCLUDE_SPEC in tclConfig.sh. It should be
930 included by extensions that need to find Tcl include
931 headers in the install location. The user can override
932 the include install dir with --includedir so we need
933 to record this information for extensions. [Tcl bug 421835]
935 * unix/configure: Regen.
936 * unix/configure.in: Define TCL_INCLUDE_SPEC.
937 * unix/tclConfig.sh.in: Define TCL_INCLUDE_SPEC.
938 * win/configure: Regen.
939 * win/configure.in: Define TCL_INCLUDE_SPEC.
940 * win/tclConfig.sh.in: Define TCL_INCLUDE_SPEC.
942 2001-11-07 David Gravereaux <davygrvy@pobox.com>
945 * win/makefile.vc: Dropped the NOMSVCRT macro and put it on the
946 option list instead. It makes more sense to me this way as
947 NOMSVCRT=0 would only be the valid setting. Fixed the dde and reg
948 extension for building static. Improved, but not perfected, the
951 2001-11-07 Mo DeJong <mdejong@users.sourceforge.net>
953 * win/README: Change minimum VC++ version to 5.X since
954 4.X is known not to work.
955 Indicate that Mingw is required and building with Cygwin
956 gcc is not supported. Include instructions that indicate
957 how to install Mingw and what URLs folks should use to
958 download the supported version of Mingw.
959 * win/configure: Regen.
960 * win/configure.in: Error out if user tries to compile the
961 Windows version of Tcl with Cygwin gcc. Users should compile
962 with Mingw gcc instead.
964 2001-11-06 Andreas Kupries <andreas_kupries@users.sourceforge.net>
966 * generic/tclIO.c (ReadChars): Fixed bug #478856 reported by
967 Stuart Cassoff <stwo@users.sourceforge.net>. The bug caused loss
968 of fileevents when [read]ing less data from the channel than
969 buffered. Due to an empty input buffer the flag
970 CHANNEL_NEED_MORE_DATA was set but never reset, causing the I/O
971 system to wait for more data instead of using a timer to
972 synthesize fileevents and to flush the pending data out of the
975 2001-11-06 David Gravereaux <davygrvy@pobox.com>
977 * win/rules.vc (new):
978 * win/makefile.vc: Complete over/under rewrite to support numerous
979 build options all from the commandline itself without needing to
980 edit the makefile. Now requires vcvars32.bat to be run prior to
981 running nmake for bootstraping the environment. Fully doc'd usage
982 for it is in makefile.vc. Commentary welcome. Sticky points left
985 1) winhelp target shows errors in the converting script.
986 2) .rc scripts aren't getting the right #defines to build the correct
987 "OriginalFilename" strings. (have patch, won't commit yet)
988 3) Naming convention with suffixes describing the buildtype are 'tsdx'
989 which will need public acceptance. ie. tclsh84tsx.exe is a (t)
990 threaded shell (s) statically linked to the core and (x) uses
991 msvcrt instead of libcmt.
993 2001-11-04 Vince Darley <vincentdarley@users.sourceforge.net>
995 * library/init.tcl: made filesystem fallback proc
996 ::tcl::CopyDirectory more robust to vagaries of non-native
999 2001-11-02 Vince Darley <vincentdarley@users.sourceforge.net>
1002 * generic/tclIOUtil.c: updated documentation and comments
1003 to clarify behaviour of 'file copy' wrt soft links.
1005 2001-10-29 Vince Darley <vincentdarley@users.sourceforge.net>
1007 * win/tclWinFile.c: fix to '-types {f r}' bug in
1008 TclpMatchInDirectory (which could cause a UMR, as well as
1009 returning wrong results). Also improved API for 'stat'
1010 to resolve [Bug#219258].
1012 * win/tclWinInt.h: addition of improved stat API to internal
1014 * tests/fileName.test: two new tests for the above bug.
1015 * generic/tclIOUtil.c: some cleanup of comments and #ifdefs
1017 2001-10-29 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1019 * unix/tclUnixFile.c (TclpMatchInDirectory): Argument to access()
1020 was entryPtr->d_name instead of nativeEntry which failed when
1021 trying to check access for files in other than the current
1022 directory. [Bug 475941, reported by Georgios Petasis]
1024 2001-10-25 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1026 * unix/tclUnixChan.c: Added stateUpdated member to struct TtyState.
1027 (TtyCloseProc,TtySetOptionProc,TtyInit): Use stateUpdated member
1028 of TtyState to decide whether it is necessary to reset a serial
1029 port when Tcl closes it. Blindly resetting can cause Tcl to be
1030 sent an unexpected SIGTSTP when it is executing in the background
1031 [Bug 471374, reported by Chris Nelson]
1033 2001-10-22 Andreas Kupries <andreas_kupries@users.sourceforge.net>
1035 * doc/ObjectType.3: Minor documentation fix, reported by David
1036 N. Welton <davidw@users.sourceforge.net> directly to me.
1038 2001-10-22 Vince Darley <vincentdarley@users.sourceforge.net>
1040 * win/tclWinFCmd.c: fix to stop test suite from hanging process
1041 under some versions of WinNT. [Bug #466102] (Kevin Kenny)
1043 2001-10-18 Jeff Hobbs <jeffh@ActiveState.com>
1045 * tests/clock.test (clock-8.1):
1046 * generic/tclDate.c (RelativeMonth):
1047 * generic/tclGetDate.y (RelativeMonth): corrected off-by-one-day
1048 error in clock scan with relative months and years during swing
1049 hours. [Bug #413397, Patch #414024] (lavana)
1051 2001-10-18 Vince Darley <vincentdarley@users.sourceforge.net>
1053 * generic/tclIOUtil.c: fix to bug in Tcl_FSChdir shown up
1054 by recent tclkit builds.
1056 2001-10-17 Jeff Hobbs <jeffh@ActiveState.com>
1058 * unix/tclUnixPipe.c (PipeInputProc, PipeOutputProc): do immediate
1059 retry when error is returned with errno == EINTR.
1060 [Bug #415131] (leger)
1062 2001-10-16 Jeff Hobbs <jeffh@ActiveState.com>
1064 * unix/tclLoadAout.c (TclGuessPackageName): removed unused vars
1065 and fixed warnings. [Bug #446622] (lim)
1067 2001-10-15 Miguel Sofer <msofer@users.sourceforge.net>
1069 * generic/tclProc.c: changing a memcmp to strncmp to avoid a memory
1070 error detected by purify (thanks Jeff); modify style to agrre with
1073 2001-10-15 Andreas Kupries <andreas_kupries@users.sourceforge.net>
1075 * generic/tclInt.decls (TclExpandCodeArray,TclGetInstructionTable):
1076 Added to internal stubs table. Tclcompiler (Tclpro project)
1077 needs them if used as loadable package under Windows. Changed
1078 signatures. We don't want to describe compiler internal
1079 structures in "tclInt.h".
1081 * generic/tclCompile.h: S.a. Removed function declarations.
1082 * generic/tclCompile.c: S.a. Adapted to changed signatures.
1084 2001-10-15 Jeff Hobbs <jeffh@ActiveState.com>
1087 * unix/configure.in:
1090 * win/tcl.m4: reworked to be a little cleaner in comparison to
1091 each other, and to AC_SUBST even empty vars for win/tclConfig.sh
1093 * generic/tclFileName.c: minor code cleanup
1095 * generic/tcl.h: moved #define of WIN32 to tcl.h where __WIN32__
1096 is defined and added #ifndef check.
1098 * doc/open.n: moved all fconfigure option docs to fconfigure.n
1099 * doc/fconfigure.n: added serial config options
1103 * win/tclWinSerial.c: added TIP #35 Windows enhancements for
1104 serial configuration. [Patch #438509] (schroedter)
1106 2001-10-15 Vince Darley <vincentdarley@users.sourceforge.net>
1108 * generic/tclFCmd.c: fix to memory leak in TclFileDeleteCmd on
1109 certain error conditions.
1110 * doc/FileSystem.3: fix to typo.
1112 2001-10-12 Jeff Hobbs <jeffh@ActiveState.com>
1114 * library/encoding/ebcdic.enc:
1115 * tools/encoding/ebcdic.txt: EBCDIC charset mapping.
1116 [Patch #219323] (nijtmans)
1118 * library/encoding/tis-620.enc:
1119 * tools/encoding/tis-620.txt: TIS-620 charset mapping.
1120 [Patch #467423] (poonlap)
1122 * tests/http.test: added removeFile for outdata
1124 * tests/ioCmd.test: added catch around file removal, as Windows
1125 file locking throws errors.
1127 * tests/socket.test (socket-7.2): corrected to work on Win2K.
1129 2001-10-12 Miguel Sofer <msofer@users.sourceforge.net>
1131 * tests/compile.test: new tests for [Bug 467523]; they are only
1132 effective if TCL_MEM_DEBUG was set during compilation.
1134 2001-10-11 Miguel Sofer <msofer@users.sourceforge.net>
1136 * generic/tclLiteral.c (TclReleaseLiteral): insured that
1137 self-referential bytecodes are properly cleaned up on interpreter
1138 deletion [Bug 467523] (Ronnie Brunner)
1140 2001-10-10 David Gravereaux <davygrvy@pobox.com>
1142 * win/tclWinPort.h: #include <winsock2.h> needed to get moved
1143 to after #include <windows.h> or wierd misunderstandings took
1144 place when -D_WIN32_WINNT=0x0400 is set for outside code that
1145 requires knowledge of Tcl innards. General header macro magic
1146 applied liberally...
1148 2001-10-10 Don Porter <dgp@users.sourceforge.net>
1150 * tests/unixInit.test: Corrected restore of ::env(LANG).
1152 2001-10-09 Jeff Hobbs <jeffh@ActiveState.com>
1154 * generic/tclFileName.c (Tcl_SplitPath): corrected mem leak
1155 intro'd with VFS code where the result obj from Tcl_FSSplitPath
1156 was not getting freed.
1158 2001-10-09 Miguel Sofer <msofer@users.sourceforge.net>
1160 * generic/tclLiteral.c: (TclReleaseLiteral) reverted previous
1161 patch for [Bug 467523] - cure is worse than the illness.
1163 2001-10-05 Miguel Sofer <msofer@users.sourceforge.net>
1165 * generic/tclLiteral.c: (TclReleaseLiteral) insured that
1166 self-referential bytecodes are properly cleaned up on interpreter
1167 deletion [Bug 467523] (Ronnie Brunner)
1169 2001-10-04 Jeff Hobbs <jeffh@ActiveState.com>
1172 * tools/configure.in: noted 8.4 as default Tcl version
1174 * library/encoding/cp936.enc:
1175 * library/encoding/cp949.enc:
1176 * library/encoding/cp950.enc:
1177 * library/encoding/iso8859-16.enc:
1178 * library/encoding/macCroatian.enc:
1179 * library/encoding/macCyrillic.enc:
1180 * library/encoding/macGreek.enc:
1181 * library/encoding/macIceland.enc:
1182 * library/encoding/macRoman.enc:
1183 * library/encoding/macTurkish.enc:
1184 * tools/encoding/cp1250.txt:
1185 * tools/encoding/cp1251.txt:
1186 * tools/encoding/cp1252.txt:
1187 * tools/encoding/cp1253.txt:
1188 * tools/encoding/cp1254.txt:
1189 * tools/encoding/cp1255.txt:
1190 * tools/encoding/cp1256.txt:
1191 * tools/encoding/cp1257.txt:
1192 * tools/encoding/cp1258.txt:
1193 * tools/encoding/cp874.txt:
1194 * tools/encoding/cp932.txt:
1195 * tools/encoding/cp936.txt:
1196 * tools/encoding/cp949.txt:
1197 * tools/encoding/cp950.txt:
1198 * tools/encoding/iso8859-1.txt:
1199 * tools/encoding/iso8859-10.txt:
1200 * tools/encoding/iso8859-13.txt:
1201 * tools/encoding/iso8859-14.txt:
1202 * tools/encoding/iso8859-15.txt:
1203 * tools/encoding/iso8859-16.txt:
1204 * tools/encoding/iso8859-2.txt:
1205 * tools/encoding/iso8859-3.txt:
1206 * tools/encoding/iso8859-4.txt:
1207 * tools/encoding/iso8859-5.txt:
1208 * tools/encoding/iso8859-6.txt:
1209 * tools/encoding/iso8859-7.txt:
1210 * tools/encoding/iso8859-8.txt:
1211 * tools/encoding/iso8859-9.txt:
1212 * tools/encoding/koi8-r.txt:
1213 * tools/encoding/macCentEuro.txt:
1214 * tools/encoding/macCroatian.txt:
1215 * tools/encoding/macCyrillic.txt:
1216 * tools/encoding/macGreek.txt:
1217 * tools/encoding/macIceland.txt:
1218 * tools/encoding/macRoman.txt:
1219 * tools/encoding/macTurkish.txt:
1220 Updated encodings with latest mappings from www.unicode.org. This
1221 did not include some Mac encodings that have special multi-unichar
1222 translations now (like symbols, dingbats and japanese). Also does
1223 not include big5, gb or euc* as those have different formats in
1224 the latest Unicode version that need new conversion tools. Not
1225 all related .enc files changed as some had been updates separately.
1227 2001-10-03 Jeff Hobbs <jeffh@ActiveState.com>
1229 * generic/tclEvent.c (Tcl_FinalizeThread): moved freeing of
1230 tclLibraryPath to before the thread exit handlers are called.
1231 Slight modification to change on 2001-09-24.
1233 2001-10-01 Jeff Hobbs <jeffh@ActiveState.com>
1235 * win/configure: regen'ed
1237 * win/makefile.vc: added Win64 SDK RC1 compilation support
1238 * win/Makefile.in: added $(LDFLAGS_CONSOLE) to TCLSH, TCLTEST and
1239 PIPE_DLL_FILE targets to get the link flags
1241 * win/tclWinInit.c: minor 64bit casts
1243 2001-10-01 Miguel Sofer <msofer@users.sourceforge.net>
1245 * generic/tclCmdIL.c:
1246 * generic/tclCmdMZ.c:
1247 * generic/tclParseExpr.c: removed unnecessary inclusion of
1248 tclCompile.h and made a small modification in (InfoBodyCmd) to
1249 improve the isolation of the compiler/engine subsystem.
1251 2001-09-29 Vince Darley <vincentdarley@users.sourceforge.net>
1253 * generic/tclIOUtil.c:
1254 * doc/FileSystem.3: corrected and clarified documentation
1255 for 'Tcl_FSListVolumes(Proc)'. No code changes.
1257 2001-09-28 Miguel Sofer <msofer@users.sourceforge.net>
1259 * doc/FindExec.3: added a comment not to change the working
1260 directory before calling Tcl_GetNameOfExecutable [Bug 219215]
1262 2001-09-28 Kevin Kenny <kennykb@users.sourceforge.net>
1264 * generic/tclIO.c: added two more '(ClientData)' casts
1265 on calls to Tcl_Preserve and Tcl_Release -- ones that
1266 Vince apparently missed.
1268 2001-09-28 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1270 * doc/lsort.n: Improved doc...
1271 * generic/tclCmdIL.c (Tcl_LsortObjCmd, SortCompare): Made
1272 offset-from-end indexing work, and factored out some "magic
1273 numbers" for easier understanding. [Bug #465674]
1274 * tests/cmdIL.test (cmdIL-1.26): Added test for offset-from-end
1277 2001-09-28 Vince Darley <vincentdarley@users.sourceforge.net>
1280 * unix/tclUnixFCmd.c: fix to performance issue reported
1281 by jcw in which 'access("")' is called unnecessarily when
1282 normalizing any absolute path.
1283 * generic/tclIO.c: added '(ClientData)' cast to calls to
1284 Tcl_(Preserve|Release) newly introduced, fixing compile
1287 2001-09-27 Don Porter <dgp@users.sourceforge.net>
1289 * doc/FileSystem.3 (Tcl_FSLoadFile):
1290 * generic/tcl.decls (Tcl_FSLoadFile):
1291 * generic/tcl.h (Tcl_FSLoadFileProc):
1292 * generic/tclInt.h (TclpLoadFile):
1293 * generic/tclIOUtil.c (Tcl_FSLoadFile):
1294 * generic/tclLoadNone.c (TclpLoadFile):
1295 * generic/tclTest.c (TestReportLoadFile):
1296 * library/ldAout.tcl:
1297 * mac/tclMacLoad.c (TclpLoadFile):
1298 * unix/tclLoadAix.c (TclpLoadFile):
1299 * unix/tclLoadAout.c (TclpLoadFile):
1300 * unix/tclLoadDl.c (TclpLoadFile):
1301 * unix/tclLoadDld.c (TclpLoadFile):
1302 * unix/tclLoadDyld.c (TclpLoadFile):
1303 * unix/tclLoadNext.c (TclpLoadFile):
1304 * unix/tclLoadOSF.c (TclpLoadFile):
1305 * unix/tclLoadShl.c (TclpLoadFile):
1306 * win/tclWinLoad.c (TclpLoadFile):
1307 * win/tclWinFCmd.c (DoRemoveJustDirectory): More CONST poisoning
1308 fixes from the 2001-09-24 TIP 27 changes. CONST-ified
1309 Tcl_FSLoadFile and TclpLoadFile. Report and patch from Kevin
1312 * generic/tclIO.c (ChannelTimerProc): Added Tcl_Preserve()
1313 and Tcl_Release() to fix segfault introduced by the 2001-09-26
1314 changes. [Bug 465494]
1316 * doc/TCL_MEM_DEBUG.3: Updated out-of-date reference to
1319 * doc/UpVar.3 (Tcl_UpVar,Tcl_UpVar2):
1320 * generic/tcl.decls (Tcl_UpVar,Tcl_UpVar2):
1321 * generic/tclInt.decls (TclFindProc,TclGetFrame):
1322 * generic/tclInt.h (TclFindProc,TclGetFrame,TclLookupVar,
1323 TclPrecTraceProc,TclProcInterpProc}):
1324 * generic/tclProc.c (TclGetFrame,TclFindProc):
1325 * generic/tclVar.c (Tcl_UpVar,Tcl_UpVar2,MakeUpvar): Updated APIs in
1326 generic/tclProc.c and generic/tclVar.c according to the guidelines
1327 of TIP 27. [Patch 465442]
1329 * generic/tclDecls.h:
1330 * generic/tclIntDecls.h: make genstubs
1332 2001-09-26 Andreas Kupries <andreas_kupries@users.sourceforge.net>
1334 * doc/fileevent.n: Accepted [Patch #465279] adding an example to
1335 the fileevent manpage. Minor modifications to get a better
1336 formatting. Report and patch by David N. Welton
1337 <davidw@users.sourceforge.net>.
1339 * The changes below fix [Bug #462317] where Expect tried to read
1340 more than was in the buffers and then blocked in the OS call as
1341 its pty channel driver provides no blockmodeproc through which
1342 the OS could be notified of blocking-behaviour. Because of this
1343 the general I/O core has to take more care than usual to
1344 preserve the semantics of non-blocking channels.
1346 The problem was reported by "Kevin O'Gorman"
1347 <kevin@kosmanor.com>.
1349 * generic/tclIO.c (Tcl_ReadRaw): Do not read from the driver if
1350 the channel is non-blocking and the fileevent causing the read
1351 was generated by a timer. We do not know if there is data
1352 available from the OS. Instead of going to the OS for more and
1353 potentially blocking we simply signal EWOULDBLOCK to the higher
1354 levels to cause the system to wait for true fileevents.
1355 (GetInput): Same as before.
1356 (ChannelTimerProc): Added set and clear of CHANNEL_TIMER_FEV.
1358 * generic/tclIO.h (CHANNEL_TIMER_FEV): New flag for channels. Is
1359 set if a fileevent was generated by a timer, the channel is not
1360 blocking and the driver did not provide a blockmodeproc. In that
1361 case the I/O core has to be especially careful about going to
1362 the driver for more data.
1364 2001-09-26 Don Porter <dgp@users.sourceforge.net>
1366 * doc/SplitPath.3 (Tcl_GetPathType):
1367 * generic/tcl.decls (Tcl_GetPathType):
1368 * generic/tclFileName.c (Tcl_GetPathType):
1369 * win/tclWinFile.c (TclpMatchInDirectory, NativeStat): Vince
1370 Darley reports the 2001-09-24 TIP 27 changes left the win
1371 directory CONST poisoned. These changes should fix that.
1373 * generic/tclDecls.h: make genstubs
1375 2001-09-25 Don Porter <dgp@users.sourceforge.net>
1378 * generic/tclInt.h (TclGetLong deleted):
1379 * generic/tcl.decls:
1380 * generic/tclInt.decls:
1381 * generic/tclGet.c: Updated APIs in generic/tclGet.c
1382 according to the guidelines of TIP 27. [Patch 464674]
1384 * generic/tclDecls.h:
1385 * generic/tclIntDecls.h: make genstubs
1387 2001-09-25 Miguel Sofer <msofer@users.sourceforge.net>
1389 * generic/tclVar.c: removed comments referring to unused flag
1392 2001-09-24 Don Porter <dgp@users.sourceforge.net>
1397 * generic/tclInt.h (TclCheckBadOctal):
1398 * generic/tcl.decls:
1399 * generic/tclInt.decls:
1400 * generic/tclEncoding.c (OpenEncodingFile):
1401 * generic/tclMain.c (Tcl_Main):
1402 * generic/tclUtil.c:
1403 * unix/tclLoadDl.c (TclpLoadFile): Updated APIs in
1404 generic/tclUtil.c according to the guidelines of TIP 27.
1407 * generic/tclDecls.h:
1408 * generic/tclIntDecls.h: make genstubs
1410 2001-09-24 Andreas Kupries <andreas_kupries@users.sourceforge.net>
1412 * The change below fixes [Bug #464380]. The bug was reported by
1413 Ronnie Brunner <rbrunner@users.sourceforge.net>. He also
1416 * generic/tclEvent.c (Tcl_Finalize): Moved release of
1417 'tclLibraryPath' to Tcl_FinalizeThread.
1418 (Tcl_FinalizeThread): See above, new place for release of
1421 2001-09-24 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1423 * tools/encoding/cp1252.txt: File was missing part of the encoding
1424 [euro, ZCaron and zcaron].
1426 * doc/OpenFileChnl.3: Add docs for Tcl_OutputBuffered; remove some
1429 2001-09-21 Jeff Hobbs <jeffh@ActiveState.com>
1431 * generic/tclExecute.c (TclExecuteByteCode): corrected
1432 INST_STR_CMP else case for strings to pass true utf char length
1435 2001-09-20 Jeff Hobbs <jeffh@ActiveState.com>
1437 * win/tclWinInit.c: added extra processor definitions. (mstacy)
1439 * win/tclWinSock.c (SocketThread): corrected pointer cast for _WIN64.
1441 * win/tclWinNotify.c: removed unnecessary winsock include (it is
1442 already in from tclWinPort.h).
1444 * win/tclWinPort.h: changed winsock.h include to winsock2.h.
1445 Reverses change from 2000-11-16, but is necessary for WIN64.
1446 Extensions should comply with defined OS words, or use #ifndef.
1448 2001-09-20 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1450 * tests/socket.test: removed dependence on being run from same dir
1451 as remote.tcl, which only now needs to be in the same dir as
1452 this file. [Bug #219326]
1454 2001-09-19 Jeff Hobbs <jeffh@ActiveState.com>
1456 * generic/tclTest.c (TestcmdtokenCmd): corrected pointer
1457 storage/retrieval for 64bit machines.
1459 * generic/tclCmdAH.c (Tcl_FormatObjCmd):
1460 * generic/tclScan.c (Tcl_ScanObjCmd): corrected handling of format
1461 and scan on 64-bit machines. [Bug #412696] (rmax)
1463 * unix/configure: regen'ed
1464 * unix/tcl.m4: added --enable-64bit support for HP-11 with the
1468 * tests/cmdInfo.test: improved skip reporting of missing commands
1470 * tests/winFCmd.test: simplified error check for winFCmd-7.9
1472 * tests/winPipe.test: removed obsolete cat16 tests
1474 * generic/tclExecute.c (TclExecuteByteCode): fixed invalid usage
1475 of valuePtr in TRACE_WITH_OBJ in INST_EVAL_STK case. [Bug #462594]
1476 Changed INST_STR_CMP instruction to promote to Unicode strings
1477 only when one of the strings is already of Unicode type.
1479 * generic/tclExecute.c (TclExecuteByteCode):
1480 * generic/tclCompile.c (instructionTable):
1481 * generic/tclCompCmds.c (TclCompileStringCmd): INST_STR_MATCH -
1482 Updated to Int1 instruction type and added special case to use
1483 INST_STR_EQ instead when no glob chars are specified in a static
1486 * tests/{for.test,foreach.test,if.test,while.test}:
1487 * generic/tclCompCmds.c (TclCompileForCmd, TclCompileForeachCmd,
1488 TclCompileIfCmd, TclCompileWhileCmd): Corrected the overaggressive
1489 compiling of loop bodies enclosed in ""s. [Bug #219166] (msofer)
1491 2001-09-19 Miguel Sofer <msofer@users.sourceforge.net>
1493 * generic/tclExecute.c: insured that execution stack errors are
1494 also detected at abnormal returns.
1496 2001-09-19 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1498 * doc/socket.n: Added documentation to mention what happens when a
1499 server socket is created with port=0. Removed an old change bar,
1500 and no new change bar because Tcl has always behaved this way as
1501 it is really a poorly-documented standards-defined OS feature.
1503 * tests/util.test (util-8.1): Test derived from code to detect the
1504 problem, but the test always works in the C locale, so beware if
1505 you are maintaining the code.
1506 * generic/tclUtil.c (TclNeedSpace): Rewrote to be UTF-8 aware.
1507 [Bug 411825, but not that patch which would have added extra
1508 spaces if there was a real non-ASCII space involved. ]
1510 2001-09-18 Andreas Kupries <andreas_kupries@users.sourceforge.net>
1512 * generic/tclIOCmd.c (Tcl_PutsObjCmd): Rewritten to have saner and
1513 faster argument handling. Fixes bug #123552. Patch provided by
1514 Donal K. Fellows <fellowsd@cs.man.ac.uk>: #402564.
1516 2001-09-18 Don Porter <dgp@users.sourceforge.net>
1518 * unix/configure: Regen.
1519 * unix/tcl.m4 (SC_CONFIG_CFLAGS): On Linux, disable inlining when
1520 one of the compat/*.c routines is to be linked in. [Patch 440891]
1522 2001-09-17 Jeff Hobbs <jeffh@ActiveState.com>
1524 * generic/tcl.h: removed forced #define USE_TCLALLOC 1 for
1525 Windows. This means the native system allocator will be used by
1526 default. This should be binary and source compatible with
1527 extensions, as Tcl_Alloc is a properly stubbed function.
1529 2001-09-17 Miguel Sofer <msofer@users.sourceforge.net>
1531 * generic/tclExecute.c: corrected small bug in [Patch 456668] -
1532 the varFramePtr was not restored in one possible exit.
1534 2001-09-17 Miguel Sofer <msofer@users.sourceforge.net>
1537 * generic/tclCompile.c:
1538 * generic/tclCompile.h:
1539 * generic/tclExecute.c:
1540 * generic/tclProc.c: disabled all compile and execution tracing
1541 functionality in standard builds; TCL_COMPILE_DEBUG is now
1542 necessary to enable it. [Bug 451858]
1544 2001-09-14 Andreas Kupries <andreas_kupries@users.sourceforge.net>
1556 * doc/fileevent.n: Added references to the Tcl standard
1557 channels. Item [219250], reported by David LeBlanc
1558 <whisper@oz.net>. Thanks to Christopher Nelson
1559 <chris@pinebush.com> for doing editorial work.
1561 2001-09-13 Andreas Kupries <andreas_kupries@users.sourceforge.net>
1567 * library/dde/pkgIndex.tcl: Fixed version numbers from bogus tcl
1568 versions to independent versions for dde and registry packages.
1570 2001-09-13 Jeff Hobbs <jeffh@ActiveState.com>
1572 * tests/regexp.test (regexp-20.1):
1573 * generic/tclCmdMZ.c (Tcl_RegsubObjCmd): had to adjust fix from
1574 2001-08-06 to actually duplicate the objects in certain cases.
1575 This is really a place where feather would have been essential.
1578 * generic/tclUtf.c (Tcl_UtfPrev): corrected to return the proper
1579 location when the middle of a UTF-8 byte was passed in.
1583 * ChangeLog: broke changes from 199x into ChangeLog.1999 to reduce
1584 size of the main ChangeLog.
1586 2001-09-13 Andreas Kupries <andreas_kupries@users.sourceforge.net>
1588 * tests/ioCmd.test: Changed the computation of the result for
1589 iocmd-8.1[123] so that the tests work for single- and
1590 multi-process execution of the testsuite. Depending on the
1591 choice of the user stdout is a tty or not and thus reports
1592 different channel options. Fixes [460993] reported by Don
1595 2001-09-13 Miguel Sofer <msofer@users.sourceforge.net>
1598 * generic/tcl.decls:
1599 * generic/tclCmdMZ.c (Tcl_SubstObjCmd):
1600 * generic/tclDecls.h:
1601 * generic/tclParse.c:
1602 * generic/tclStubInit.c:
1603 * tests/parse.test: Deprecate the use of Tcl_EvalTokens, replaced
1604 by the new Tcl_EvalTokensStandard. The new function performs the
1605 same duties but adheres to the standard return convention for Tcl
1606 evaluations; the deprecated function could only return TCL_OK or
1607 TCL_ERROR, which caused [Bug 219384] and [Bug 455151].
1608 This patch implements [TIP 56].
1610 2001-09-12 Mo DeJong <mdejong@users.sourceforge.net>
1612 * unix/configure: Regen.
1613 * unix/tcl.m4: Invert the logic that checks for $GCC.
1614 Instead of checking for "$GCC" = "no" we check for
1615 "$GCC" != "yes" or simply swap the true and false
1616 blocks of code in an if statement. That way if
1617 GCC is set to "" everything will still work. [Bug 460991]
1619 2001-09-12 Don Porter <msofer@users.sourceforge.net>
1621 * tests/appendComp.test:
1622 * tests/lsearch.test:
1623 * tests/namespace.test:
1624 * tests/rename.test:
1625 * tests/split.test: Corrected tests to better isolate tests in
1626 one file from influencing tests in other files. [Bug 460591]
1628 2001-09-12 Miguel Sofer <msofer@users.sourceforge.net>
1630 * generic/tcl.decls: reserved stub #481 for the implementation of
1633 2001-09-11 Andreas Kupries <andreas_kupries@users.sourceforge.net>
1635 * doc/OpenFileChnl.3: Added documentation for Tcl_WriteRaw and
1636 Tcl_ReadRaw [#414929].
1638 * doc/CrtChannel.3: Added documentation for Tcl_ChannelBuffered
1639 and Tcl_GetTopChannel [#414929].
1641 * The changes below are a fix for [219253].
1643 * tests/socket.test: Removed _most_ instances of hardwired port
1644 numbers for listening sockets. Remaining are the ports in all
1645 tests with constraint 'doTestsWithRemoteServer'. These seem to
1646 be designed for a more controlled environment and are usually
1647 skipped when running the testsuite.
1649 * tests/io.test: Removed all instances of hardwired port numbers
1650 for listening sockets.
1652 2001-09-10 Jeff Hobbs <jeffh@ActiveState.com>
1654 * generic/tclEvent.c (TclInExit): Corrected handling of tsd in
1655 late stages of finalization. [Bug #419449] (darley)
1658 * generic/tclInterp.c (AliasObjCmd): Check the numLevels to ensure
1659 that we aren't hitting some alias loop condition. [Bug #443184]
1661 2001-09-10 Mo DeJong <mdejong@users.sourceforge.net>
1663 * unix/configure: Regen.
1664 * unix/tcl.m4 (SC_CONFIG_CFLAGS): Don't include . characters
1665 in the Tcl library name when building on FreeBSD 3.X and later
1666 systems. [Patch 450725]
1668 2001-09-10 Andreas Kupries <andreas_kupries@users.sourceforge.net>
1673 * doc/OpenFileChnl.3:
1674 * doc/GetStdChan.3: Enhanced the manpages with cross-references to
1675 the new manpage and more explanations how these functions deal
1676 with the standard channels in various situations.
1678 * doc/StdChannels.3: New manpage describing handling of the
1679 standard channels by the Tcl library [402725].
1681 2001-09-10 Don Porter <dgp@users.sourceforge.net>
1683 * unix/mkLinks (Tcl_FSLink): Updated to reflect 2001-08-23
1684 file system changes.
1686 * unix/tclLoadShl.c: Added #include of tclInt.h; access to Tcl
1687 internals, notably TclpUnloadFile(), is required. Thanks to
1688 Bob Techentin for report and patch. [Bug 459305]
1690 * generic/tclInitScript.h (initScript):
1691 * win/tclWinInit.c (TCL_REGISTRY_KEY, TclpSetVariables): Removed
1692 vestiges of Tcl's old initialization from registry variables.
1695 2001-09-10 Andreas Kupries <andreas_kupries@users.sourceforge.net>
1697 * generic/tclInt.decls: Also added 'TclWinFlushDirtyChannels' to
1698 the internal platform specific stub table.
1700 * win/tclWinFile.c (TclpObjStat): Now added the call to
1701 'TclWinFlushDirtyChannels' to this function. I don't know where
1702 my head was last thursday (2001-09-06), but the call was
1703 actually added to 'TclpObjChdir', i.e. the implementation of
1704 [cd]. Corrected this now. Thanks to Vince Darley for spotting
1707 2001-09-10 Miguel Sofer <msofer@users.sourceforge.net>
1709 * generic/tclProc.c:
1710 * tests/proc.test: made [proc] bytecompile a no-op for procs
1711 defined with _args_ as single argument and an empty body.
1714 2001-09-09 Mo DeJong <mdejong@users.sourceforge.net>
1717 * win/Makefile.in: Use () around variable name
1718 instead of {}. Use TCLTEST variable directly
1719 instead of depending on the tcltest alias.
1721 2001-09-09 David Gravereaux <davygrvy@pobox.com>
1724 * generic/tclPlatDecls.h: Reminder from David Cuthbert <dacut@kanga.org>
1725 that I hadn't finished the Borland compatibility stuff.
1728 2001-09-09 Mo DeJong <mdejong@users.sourceforge.net>
1730 * tests/cmdAH.test: Modify cmdAH-20.5 and cmdAH-24.8
1731 to display the file atime or mtime results if
1734 2001-09-08 David Gravereaux <davygrvy@pobox.com>
1737 * win/rmd.bat: made these text files, text files again.
1740 2001-09-08 Mo DeJong <mdejong@users.sourceforge.net>
1744 Apply binary property (cvs admin -kb) to files and convert
1745 to CRLF linefeed format to fix the VC++ build. [Bug #219409]
1747 2001-09-08 Vince Darley <vincentdarley@users.sourceforge.net>
1750 * generic/tclFCmd.c:
1752 * generic/tclIOUtil.c: removed Tcl_FSCopyFile fallback
1753 to channel copying, since the channels will not have
1754 access to interpreters and the channel copying currently
1755 requires an interp. Code which required cross-platform
1756 copies always has interpreters, so that solves the problem.
1757 Fixes bug in TclKit.
1759 2001-09-07 David Gravereaux <davygrvy@pobox.com>
1761 * win/tcl.m4: Added -link50compat option so a VC6 linker makes
1762 a VC5 (pre sp3) compatible import library.
1765 2001-09-07 Mo DeJong <mdejong@users.sourceforge.net>
1767 * win/tclWinThrd.c (TclpThreadExit): Cast status argument to
1768 _endthreadex to unsigned instead of DWORD to match the Win32
1771 2001-09-06 Andreas Kupries <andreas_kupries@users.sourceforge.net>
1773 * All the changes below serve to fix bug [219148] which reports a
1774 80x performance hit for file I/O on Win* systems. On my system
1775 it was closer to a 120x hit. Problem report by Uwe Traum <no
1776 email address available>.
1778 The fix goes like this: The obstacle is 'FlushFileBuffers',
1779 executed whenever Tcl writes data to the OS, as Tcl has to wait
1780 for the disk to complete I/O, and disks are slow. We remove that
1781 obstacle. This opens another problem, [file size] reports back
1782 wrong numbers. So for [file size] we add the call back in. As
1783 optimization we keep track of the channels which were written to
1784 and flush only these.
1786 * win/tclWinFile.c (TclpObjStat): Added a call to
1787 'TclWinFlushDirtyChannels'. This ensures that [file size] and
1788 related commands report the correct size of a file even if Tcl
1789 has recently written to it. Unixoid OS's always report the
1790 correct size even for files with pending data, but Win*
1791 syssystem don't. They only report what is actually on disk.
1793 * win/tclWinInt.h: Added declaration of
1794 'TclWinFlushDirtyChannels', making it available to other parts
1797 * win/tclWinChan.c (TclWinFlushDirtyChannels): New, internal,
1798 procedure. Goes through the list of open file channels and
1799 forces the OS to flush its file buffers for all which were
1800 written to since the last call of this function. This is an
1801 expensive operation as Tcl has to wait for the OS to complete
1802 actual writes to the disk.
1804 (FileInfo): Added dirty flag required by the procedure above.
1806 (FileOutputProc): Removed flushing of file buffers, setting the
1807 dirty flag instead. This means that the previously incurred
1808 delays do not happen anymore.
1810 (TclWinOpenFileChannel): Added initialization of 'dirty' flag.
1812 2001-09-06 Jeff Hobbs <jeffh@ActiveState.com>
1814 * doc/http.n: noted -binary, charset and coding state keys.
1816 * library/http/pkgIndex.tcl:
1817 * library/http/http.tcl (geturl): correctly get charset parameter
1818 and convert text according to specified encoding (if known). RFC
1819 iso8859-1 is used by default. Also recognize Content-encoding to
1820 see if we should do binary translation. Added a CYA -binary
1821 switch for the cases that were missed. [Bug #219211 #219399]
1823 * tests/ioUtil.test: changed to make better use of constraints and
1824 remove knownBug constraints that weren't valid.
1826 2001-09-06 Don Porter <dgp@users.sourceforge.net>
1828 * tests/unixInit.test (unixInit-3.2): Updated test to support
1829 newer HP-UX releases that properly report euc-jp as the system
1830 encoding for Japanese. Bug report and patch verification by Bob
1831 Techentin. [Bug 453883]
1834 * library/http/*.tcl:
1838 * win/{Mm}akefile.*: Updated http package to version 2.4,
1839 reflecting the new features just added.
1841 2001-09-06 Vince Darley <vincentdarley@users.sourceforge.net>
1843 * generic/tclTest.c: tests of old-fs hooks no longer cause problems
1844 in threaded builds. Also removed unused unload proc.
1845 * generic/tcl.decls:
1846 * generic/tclIOUtilc: added Tcl_FSMountsChanged so that a vfs
1847 can inform the filesystem that the filesystem epoch must be
1848 changed (since cached filesystems may now be incorrect). Fixes
1849 problem running tclvfs extension.
1850 * library/tcltest/tcltest.tcl: if tests aren't in a native
1851 filesystem, then don't use pipes to run them. [Bug 458741]
1853 2001-09-06 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1855 * generic/tcl.decls (479 generic):
1856 * generic/tclIO.c (Tcl_Seek,Tcl_Tell,Tcl_OutputBuffered): Added
1857 public function to return the size of the output buffer and
1858 reworked other channel functions to use this shared functionality
1859 and that of Tcl_InputBuffered() too. [TIP#49, Rolf Schroedter]
1861 2001-09-05 David Gravereaux <davygrvy@pobox.com>
1863 * generic/tclPlatDecls.h: Another small trim finalizing Borland
1867 * win/tclWinPort.h: More Borland compatibility fixes. Changed
1868 EDQUOT #define from 49 to 69. Borland had a clash as it was already
1869 using this number. Upon advice from Helmut Giese, EDQUOT has been
1870 found in other header files #defined as 69.
1873 * win/.cvsignore: A few more glob patterns added.
1875 * win/makefile.bc (new): Borland lives once more! rejoice..
1876 * generic/tclAlloc.c: Small Borland compatibility fix.
1877 * win/tclWinTime.c: More Borland compatibility fixes.
1880 2001-09-05 Vince Darley <vincentdarley@users.sourceforge.net>
1882 * tests/winFCmd.test: made notWin2000 constraint false if not
1883 running on Windows at all.
1885 2001-09-04 David Gravereaux <davygrvy@pobox.com>
1887 * win/tclWinThrd.c: Revisited _beginthreadex() stuff. Instead
1888 of assuming a c-runtime implimentation of _beginthreadex normal,
1889 I reversed the logic to not assume, and use when is by explicitly
1890 needing to add runtimes that support it such as Borland.
1893 * generic/tclPlatDecls.h: Borland compatibility change so
1894 ClientData was properly typed as a void* and TCHAR would not be
1897 * generic/tcl.h: Removed a small mistake from before. Changes to
1898 the EXTERN macro for proper Borland compatibility will have to see
1899 a TIP. What's this with the MS compiler:
1901 __declspec(dllexport) int func (int a, int b);
1903 will have to be this with Borland:
1905 int __cdecl __export func (int a, int b);
1907 The order of the attribute needs to be after the return type.
1909 2001-09-04 Don Porter <dgp@users.sourceforge.net>
1911 * compat/strtod.c (strtod): Fixed failure to handle expressions
1912 like 3eq2 and failure to set errno on overflow. [Bug 440894]
1914 2001-09-04 Miguel Sofer <msofer@users.sourceforge.net>
1916 * generic/tclProc.c:
1917 * tests/proc.test: made [proc] check that formal args have
1918 simple names [Bug 458548]
1920 2001-09-04 Vince Darley <vincentdarley@users.sourceforge.net>
1922 Minor bug fixes in filesystem, plus small vfs changes as a
1923 result of enabling the test filesystem to work properly.
1924 * tests/fileName.test: ensure new test cleans up after itself
1926 * generic/tclFileName.c: improved Mac path handling and document
1927 why [Bug: 421842] on Windows handling of UNC paths is not valid.
1928 Documentation and code now much clearer on what is and is not a
1931 * unix/tclUnixPipe.c:
1932 * generic/tclFCmd.c:
1933 * generic/tclIOUtil.c: fixed error message, fixed [Bug: 453512]
1934 about dangerous use of tmpnam, replaced with mkstemp.
1935 Documented all the changes.
1936 * generic/tclTest.c: made test vfs fully functional as a
1937 'reporting filesystem'.
1938 * generic/tcl.stubs:
1941 * generic/tclIOUtil.c:
1943 * various platform-specific 'TclpLoadFile': fixed comments about
1944 unload behaviour, and completed objectification of loading.
1945 Required change to Tcl_Filesystem lookup table, so incompatible
1946 with 8.4a3, but not older versions of Tcl. The change also
1947 allows 'link' and 'reporting' filesystems to function correctly
1948 when loading files. Implementation of 'file delete -force'
1949 copes with case where cwd is inside the directory. Moved
1950 overlooked Tcl_FSGetPathType from internal to external API.
1951 Made sure filesystems which are registered and then unregistered
1952 are only freed when all references to them are gone.
1954 * unix/tclUnixFCmd.c: when deleting directories recursively,
1955 make sure permissions are ok. Together with the above, this
1957 * tests/winFCmd.test: differentiated test results for win2k
1958 versus not. This fixes [Bug: 219239]
1959 * tests/fCmd.test: added tests for 'file delete -force' where
1960 the cwd is inside, and when permissions are inadequate.
1962 2001-09-04 Miguel Sofer <msofer@users.sourceforge.net>
1964 * generic/tclCompile.c: fixed incorrect operands for INST_LIST
1965 [Bug: 458241] (David Cuthbert, dacut@users.sourceforge.net)
1967 2001-09-03 Jeff Hobbs <jeffh@ActiveState.com>
1969 * generic/tclExecute.c (TclExecuteByteCode): fixed missing comma
1972 2001-09-03 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1974 * doc/ExprLongObj.3: Fixed error in documentation of argument type
1975 to Tcl_ExprObj [Bug: 457435]
1977 2001-09-02 David Gravereaux <davygrvy@pobox.com>
1979 * win/tclWinThrd.c: Portability fix for Cygwin who's c-runtime,
1980 not surprisingly, doesn't have the MSVCRT specific _beginthreadex /
1981 _endthreadex pair. This might have to be revisited for proper
1982 Borland, lcc32, Watcom and other support as well.
1985 * win/tclWinThrd.c: Moved FinalizeConditionEvent() proto to within
1986 the main #ifdef TCL_THREADS block to avoid mingw warning about it
1987 being there but unused.
1989 * win/makefile.vc: Added -Zl (zee el) to tclStubLib.c compile line
1990 to make sure the tclstub84.lib static library is built without
1991 requiring a specific C-runtime library at link-time for the end-use
1992 developer. It has been noted on c.l.t that this trips many first
1993 time users trying to make extensions.
1996 2001-08-31 Jeff Hobbs <jeffh@ActiveState.com>
1998 * generic/tclInt.h: added TclCompileListCmd header
1999 * generic/tclBasic.c: added TclCompileListCmd compile proc
2000 * generic/tclCompCmds.c (TclCompileListCmd): function to compile
2001 the 'list' command at parse time.
2002 * generic/tclExecute.c (TclExecuteByteCode): definition of
2005 * doc/StringObj.3: added words of warning to use Tcl_ResetResult
2006 with the Tcl_Append* functions.
2008 * tests/compile.test: added compile-11.* interp result checks
2009 * generic/tclUtil.c (TclGetIntForIndex): added Tcl_ResetResult
2010 before Tcl_AppendStringsToObj to prevent shared object crash when
2011 called from bcc instruction. The Tcl_Append* calls that append to
2012 the result object that are invoked by bcc insts must remember to
2013 call Tcl_ResetResult because the bcc doesn't do this for us.
2016 2001-08-30 Jeff Hobbs <jeffh@ActiveState.com>
2018 * generic/tclIndexObj.c: fixed some casting problems that upset
2019 Crays. [Bug #419528] (andreasen)
2021 2001-08-30 Don Porter <dgp@users.sourceforge.net>
2023 * generic/tcl.h: Silence warning from Sun compiler. [Bug 454374]
2025 2001-08-30 Miguel Sofer <msofer@users.sourceforge.net>
2027 * generic/tclExecute.c: allow cached fully-qualified command names
2028 to be usable from different namespaces within the same interpreter
2029 without forcing a new lookup. This speeds up scripts that pass
2030 command names in variables ("this" in some OO packages).
2033 2001-08-30 Vince Darley <vincentdarley@users.sourceforge.net>
2035 Further fs updates. After examining the most common Tcl
2036 extensions (TclX, BLT, Tk, TclPro, Mktclapp), it has been
2037 determined that only TclpGetCwd and the Access/Stat/Open
2038 insert/delete hooks of the internal fs functions are ever used.
2039 The remaining functions from Tcl's internal interfaces have
2040 therefore been removed, since Tcl now exports a more suitable
2041 public API (Tcl_FS...)
2043 * generic/tclInt.stubs:
2044 * generic/tclInt.h: updated for removed internal functions.
2045 Some new internal functions have been put in tclInt.h (and
2046 not exported in the stub table because good public equivalents
2048 * generic/tclTest.c: some test functions used the internal private
2049 APIs. These tests have been retained, but modified to use
2050 public APIs. Also objectified the internal filesystem tests.
2051 * win/tclWinFile.c: removed TclpStat, TclpAccess and refactored
2052 code to use NativeAccess, NativeStat. This should speed up
2053 stat, access and glob commands.
2054 * win/tclWinFCmd.c: removed all TclpCopy/Rename/Delete
2055 File/Directory string-based procedures which aren't used any more.
2056 Improved efficiency of some other procedures. Ensure that filename
2057 conversions with a NULL interp do not crash Tcl.
2058 * mac/tclMacFCmd.c: wrapped long lines and cleaned up
2059 TclpObjNormalizePath, removed all TclpCopy/Rename/Delete
2060 File/Directory string-based procedures which aren't used any more.
2061 * mac/tclMacFile.c: removed obsolete TclpStat, TclpAccess, TclpChdir,
2063 * unix/tclUnixFCmd.c: removed use of TclpAccess, removed all
2064 TclpCopy/Rename/Delete File/Directory string-based procedures which
2065 aren't used any more.
2066 * unix/tclUnixFile.c: removed obsolete TclpStat, TclpAccess, TclpChdir,
2068 * tcl(Unix|Mac|Win)Chan.c: objectified TclpOpenFileChannel.
2069 * various 'load' implementations all objectified.
2070 * generic/tclFileName.c: removed redundant code.
2071 * generic/tclIOUtil.c: removed TclStat, TclAccess, TclpListVolumes.
2072 Fix to MatchInDirectory at the root of a volume. Also improved
2073 some documentation, and improved default path joining behaviour
2074 for virtual filesystems, especially regarding '~'.
2075 * tests/fileName.test: added tests to check for bugs fixed above.
2076 * doc/FileName.3: improved documentation
2078 2001-08-30 David Gravereaux <davygrvy@pobox.com>
2080 * generic/tclAsync.c:
2081 * generic/tclEvent.c:
2082 * generic/tclInt.h: Improper cleanup of asyncMutex in tclAsync.c
2083 repaired. TclFinalizeSynchronization() was trying to remove a
2084 registered mutex that was dumped earlier when the TSD it was stored
2085 in was cleared. This was only surfacing on *nix. Windows was being
2086 masked by mutexes not actually being returned to the system! That
2087 was repaired in a previous patch. Needed to add a private
2088 TclFinalizeAsync() to tclAsync.c and called from Tcl_FinalizeThread().
2089 Pheww.. Is this done yet?
2090 [Bug: 414419] requested by Rob Ratcliff <rrr6399@futuretek.com>
2092 2001-08-28 Jeff Hobbs <jeffh@ActiveState.com>
2094 * generic/tclCompCmds.c (TclPushVarName): noted 'static' defn.
2097 2001-08-26 Don Porter <dgp@users.sourceforge.net>
2099 * library/auto.tcl (tcl_findLibrary):
2100 * tests/unixInit.test (unixInit-2.{1,9}):
2101 * unix/tclUnixInit.c (TclpInitLibraryPath):
2102 * win/tclWinInit.c (TclpInitLibraryPath): Corrected
2103 inconsistency between the search path for script libraries and
2104 the directory name $DISTNAME into which distributions built
2105 by 'make test' unpack. [Bug 455642]
2107 2001-08-24 Jeff Hobbs <jeffh@ActiveState.com>
2109 * tests/stringComp.test: added string-1.3
2110 * generic/tclCompCmds.c (TclCompileStringCmd): changed to return
2111 TCL_OUT_LINE_COMPILE instead of TCL_ERROR when compiling and an
2112 unknown string method is called. This is necessary as the string
2113 command may be never called, or not until 'string' is redefined.
2115 2001-08-24 Vince Darley <vincentdarley@users.sourceforge.net>
2117 * doc/glob.n: documented windows-style path issue with glob.
2119 * doc/filename.n: documented windows path/file length limitation.
2122 2001-08-24 Don Porter <dgp@users.sourceforge.net>
2124 * tests/unixInit.test (unixInit-2.9): Corrected expected result
2125 to match Tcl's quirky construction of its init library path.
2127 2001-08-23 Andreas Kupries <andreas_kupries@users.sourceforge.net>
2129 * win/tclWinPipe.c (BuildCommandLine): Fixed tcl Bug
2130 [432499]. Part of the code used the non-absolute path to the
2131 executable to determine quoting. This failed if the absolute
2132 path contained spaces, but the application name itself not. This
2133 bug caused no trouble on Win NT 5, but does for other variants
2134 in the Win* family. Report and fix due to Ken Poole
2135 <kenpoole@users.sourceforge.net>.
2137 2001-08-23 Jeff Hobbs <jeffh@ActiveState.com>
2140 * unix/tcl.m4: added QNX-6 build support. [Bug #219410] (loverso)
2142 * unix/tclUnixFCmd.c:
2143 * generic/tclIOUtil.c:
2144 * generic/tclFileName.c: corrected minor compiler warnings.
2146 2001-08-23 Vince Darley <vincentdarley@users.sourceforge.net>
2148 Variety of small filesystem and vfs issues fixed or improved.
2149 The new fs code allows many new opportunities for efficiency
2150 improvements through the objectified API. The main changes
2151 integrated here are such efficiency improvements. Some
2152 limitations of the original implementation have also now been
2153 lifted. Meanwhile a variety of fs bugs (some old, some new)
2154 have also been fixed.
2156 * generic/tclFileName.c: Made Tcl_FSSplitPath more efficient,
2157 and removed some static string-based procedures which are no
2158 longer used. Much more objectification. Tcl_FSJoinPath
2159 is now very efficient and more aware of virtual filesystems.
2160 Clarified where the Mac-specific code attempts to interpret
2161 Unix-style paths. Modified TclDoGlob to use lstat not
2162 access to fix [Bug: 434876, L. Virden]
2163 * tcl(Win|Unix|Mac)FCmd.c:
2164 * tcl(Win|Unix|Mac)File.c: replaced TclpListVolumes with
2165 TclpObjListVolumes with different signature, updated code due
2166 to more efficient signature of Tcl_FSGetTranslatedPath. Used
2167 cached native paths where possible to improve efficiency --
2168 this was completed on MacOS, but on Unix and Win the traversal
2169 functions make the task much more complex, so there are still
2170 some improvements possible there. Removed unused
2171 TclpNormalizePath which had been left in tclWinFCmd.c.
2172 Objectified all 'file attributes' functions. Fixed the new
2173 [Bug:451571, Bruce Stephens] which is most obvious on Unix,
2174 but could occur on MacOS or Windows. This bug actually existed
2175 in Tcl 8.3.x but was only made obvious by the recent filesystem
2176 overhaul when the code was exercised more heavily.
2177 * tests/fileName.test: Three new tests to exercise the above bug,
2178 and make sure it is fixed correctly.
2179 * unix/tclUnixFile.c: avoid panic in glob when a link
2180 doesn't point anywhere. It would probably be good to define
2181 exactly what Tcl should do in circumstances like these, and
2182 make sure mac/win/unix all behave accordingly. [Bug: 417111,
2183 Hemang Lavana]. Also fixed misleading/obsolete comment in the code.
2184 * generic/tcl.stubs: changed signature of Tcl_FSGetTranslatedPath
2185 and added Tcl_FSGetTranslatedStringPath.
2186 These changes allow further optimisations in the FS code.
2187 * generic/tcl.h: changed signature of Tcl_FSListVolumes so that
2188 it doesn't require a Tcl interpreter plus result. Renamed
2189 Tcl_FSReadLink to Tcl_FSLink with additional argument so
2190 we can support making links in the future. [Patch: 450340]
2192 added declaration for TclpObjListVolumes. Objectified
2193 internal call signatures for 'file attributes' functions, and
2194 added an internal objectified get path type function.
2195 * generic/tclIOUtil.c: added the moved function TclpListVolumes
2196 which calls platform specific code (needed for backwards
2197 compatibility), and improved efficiency of parts of the FS
2198 (particularly file normalization). Much less copying and
2199 memory allocation is required now. added new GetPathType
2200 so that changes in 'file volumes' can actually affect files'
2201 types, and objectified more code. Made current code work
2202 with test suite artificially changing current platform.
2203 Added 'static' keywords where required.
2205 * generic/tclTest.c: Added 'static' keywords, fixing
2206 [Bug: 453872, Bob Techentin]
2207 * generic/tclCmdAH.c: file command implementation updated for
2208 API changes, removed unnecessary special-case SplitPath static
2209 function, since it no longer helps prevent code duplication.
2210 Moved setting of interpreter result to each individual location
2211 that actually required it, to avoid very large code separation
2212 between reading and setting the result.
2213 * doc/FileSystem.3: updated documentation for the new or
2214 changed APIs, and clarified some issues.
2215 * doc/SplitPath.3: added pointer to newer APIs in FileSystem.3
2216 * doc/filename.n: clarified current implementation of tilde
2217 support on Mac/Win. [Bug:453514, Sergey Kuzmin]
2218 * doc/glob.n: improved documentation for '-directory' and '-path'
2221 There are now many private, obsolete, platform-specific 'Tclp'
2222 string-based filesystem APIs which could be removed. We should
2223 check whether any of these are used by extensions and, at least
2224 in Tcl 9, remove them.
2226 The above changes signify a ***POTENTIAL INCOMPATIBILITY***
2227 with 8.4a3, since signatures of two functions in the new API
2228 have changed, but not with older versions of Tcl.
2230 2001-08-23 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2232 * generic/tclBinary.c (FormatNumber): Extract a long from the
2233 object and not an int, to stop [binary format] from being unable
2234 to format some input numbers on architectures where sizeof(int) is
2235 less than sizeof(long) (particularly Alpha.) [tiprender Bug #441861]
2237 * tests/format.test: Converted conditional execution of tests into
2240 2001-08-22 Jeff Hobbs <jeffh@ActiveState.com>
2243 * win/makefile.vc: updated install target for dde1.2
2244 * doc/dde.n: fixed dde man page (which was totally incorrect).
2245 * tests/winDde.test:
2246 * win/tclWinDde.c (Tcl_DdeObjCmd): added -binary option to dde
2247 request command to allow for returning binary data. [Bug #227482]
2250 * tests/tcltest.test: added unixExecs constraint to files that
2251 used 'grep' in the test. [Bug #453143]
2253 * library/tcltest/tcltest.tcl: fixed stdio constraint test.
2254 [Patch #454050] (stanton)
2255 Simplified unixExecs constraint test.
2257 2001-08-22 Don Porter <dgp@users.sourceforge.net>
2259 * tests/ioUtil.test (ioUtil-3.*): Corrected errors in tests
2260 revealed by fix of overagressive compiler. [Bug 451200]
2262 2001-08-21 Miguel Sofer <msofer@users.sourceforge.net>
2264 * generic/tclCompCmds.c:
2265 * tests/compile.test: Fixed overagressive compilation of [catch]:
2266 it was catching errors at substitution time. [Bug #219184]
2268 2001-08-21 Jeff Hobbs <jeffh@ActiveState.com>
2270 * tests/tcltest.test (tcltest-12.2): fixed test that would break
2271 when env vars weren't Tcl list friendly [Patch #454046] (stanton)
2273 2001-08-20 Jeff Hobbs <jeffh@ActiveState.com>
2275 * library/http/http.tcl (geturl): added port number to Host:
2276 header to comply with HTTP/1.1 spec (RFC 2068). [Bug #452217]
2278 2001-08-16 David Gravereaux <davygrvy@pobox.com>
2282 * win/tcl.hpj.in: Removed -kb storage in CVS to ensure these text
2283 files are checked-out in the translation mode CVS is in. Setting
2284 these as binary as part of an effort to make sure they are always
2285 in CRLF, no matter what the CVS translation, is bypassing how CVS
2286 works and is confusing.
2288 * tools/genStubs.tcl: Removed LF-only output. Having to reconvert
2289 back to CRLF before committing to CVS was giving me a headache.
2292 * win/makefile.vc: replaced $(WINDIR) with $(include32) for the
2293 .rc.res inference rule. winver.h wasn't getting included.
2296 2001-08-14 Miguel Sofer <msofer@users.sourceforge.net>
2298 * generic/tclBasic.c: make the intial maxNestingDepth of an
2299 interpreter be MAX_NESTING_DEPTH instead of a hardwired value
2302 2001-08-13 Miguel Sofer <msofer@users.sourceforge.net>
2304 * tests/trace.test: Corrected test numbers [Bug: 449794]
2306 2001-08-12 Mo DeJong <mdejong@redhat.com>
2308 * unix/configure: Regen.
2309 * unix/configure.in:
2310 * unix/tcl.m4: Use GCC variable set by AC_PROG_CC instead
2311 of defining our own using_gcc variable.
2313 2001-08-11 Vince Darley <vincentdarley@users.sourceforge.net>
2315 Variety of small issues introduced by the vfs code fixed:
2316 * generic/tclIOUtil.c: uninitialised read.
2317 * generic/tclFCmd.c: possible memory leak in file delete
2318 with error condition.
2320 2001-08-10 Miguel Sofer <msofer@users.sourceforge.net>
2323 * tests/trace.test: Insure that [array] traces work correctly for
2324 undefined variables [Bug: 449094]
2326 2001-08-09 Mo DeJong <mdejong@redhat.com>
2328 * unix/Makefile.in: Delete the unused getcwd.o
2329 target. This fixes bug #440942.
2331 2001-08-08 Don Porter <dgp@users.sourceforge.net>
2333 * library/dde/pkgIndex.tcl:
2334 * library/http/http.tcl:
2335 * library/http/pkgIndex.tcl:
2336 * library/msgcat/msgcat.tcl:
2337 * library/msgcat/pkgIndex.tcl:
2338 * library/opt/optparse.tcl:
2339 * library/opt/pkgIndex.tcl:
2340 * library/reg/pkgIndex.tcl:
2341 * library/tcltest/tcltest.tcl:
2342 * library/tcltest/pkgIndex.tcl: Added checks for package dependencies.
2343 Bumped patchlevels of changed packages: http 2.3.2, msgcat 1.2.2,
2344 opt 0.4.3, tcltest 2.0.1. [Patch 448931]
2350 * unix/configure.in:
2352 * win/README.binary:
2354 * win/configure.in: Bumped up patchlevel to 8.4a4 to distinguish
2355 CVS snapshots from the 8.4a3 release. This does not necessarily
2356 mean there will be an 8.4a4 release. [Bug 448938].
2358 2001-08-06 Jeff Hobbs <jeffh@ActiveState.com>
2366 * win/README.binary: updated for 8.4a3 release
2368 * generic/tclFileName.c (Tcl_FSSplitPath): update to Tcl style
2371 * generic/tclFCmd.c (FileCopyRename): fixed mem leak in
2372 introduction of vfs code where a new Tcl_Obj wasn't freed.
2374 * generic/tclCmdMZ.c (Tcl_RegexpObjCmd, Tcl_RegsubObjCmd):
2375 reordered the retrieval of arguments to avoid shimmering bug when
2376 the pattern and string referenced the same object.
2378 * unix/configure: regenerated
2379 * unix/tcl.m4: added GNU (HURD) configuration target. (brinkmann)
2382 * win/README: made note of URL for Windows compilation notes
2384 * win/tclWinThrd.c (TclpFinalizeMutex, TclpFinalizeCondition):
2385 added DeleteCriticalSection calls for cleanup [Patch: #419683]
2387 * unix/tclUnixPipe.c (TclpCreateTempFile): fixed use of tmpnam,
2388 which is dangerous. [Patch: #442636] (lim)
2389 The use of tmpnam in TclpTempFileName must still be changed.
2391 * tests/http.test (http-4.14): fixed variable error return.
2394 2001-08-03 Jeff Hobbs <jeffh@ActiveState.com>
2396 * win/configure: regenerated
2397 * win/tcl.m4: fixed DLLSUFFIX definition to always be ${DBGX}.dll.
2398 This is necessary for TEA compliant builds that build shared
2399 against a static-built Tcl.
2400 * win/Makefile.in ($(TCLSH)): added $(TCL_STUB_LIB_FILE) to build
2401 target, otherwise it wouldn't get generated in a static build.
2403 2001-08-06 Andreas Kupries <andreas_kupries@users.sourceforge.net>
2405 * generic/tclIOCmd.c (Tcl_GetsObjCmd): Applied patch from SF item
2406 [442665] to fix the bug reported by it. The function can corrupt
2407 a freed object if it is called with objc == 3. This is because
2408 it retrieves resultPtr and does not increment its reference
2409 count, but then calls Tcl_ObjSetVar2, which causes the retrieved
2410 resultPtr object to be released.
2412 2001-08-06 Don Porter <dgp@users.sourceforge.net>
2414 * doc/tclsh.1: Added note that the tclsh program is frequently
2415 installed with the Tcl version numer as part of the name.
2419 * tests/pkg.test: [package forget] now forgets all of the
2420 package arguments it receives, not stopping when a package is
2421 not found. [Bug 415273]
2423 2001-08-02 Jeff Hobbs <jeffh@ActiveState.com>
2425 * generic/tclIOUtil.c (Tcl_FSMatchInDirectory): corrected
2426 uninitialized value.
2428 2001-08-02 Mo DeJong <mdejong@redhat.com>
2430 * generic/tclPlatDecls.h:
2432 Revert <tchar.h> related changes made to improve
2433 Cygwin support on 2001-07-18. This change ended
2434 up breaking the VC++ build because of conflicts
2435 between Windows APIs and internal Tk APIs.
2437 2001-08-01 Jeff Hobbs <jeffh@ActiveState.com>
2439 * unix/tclUnixFCmd.c: minor casts to eliminate warnings. (lim)
2442 * tests/parseOld.test: changed some tests that required
2443 testwordend to exist to skip in a proper tcltest manner.
2446 * library/http/http.tcl (http::mapReply): the regsub'ing of \n and
2447 \t to escape them was unnecessary.
2449 2001-07-31 Vince Darley <vincentdarley@users.sourceforge.net>
2451 Changes from TIP#17 "Redo Tcl's filesystem"
2452 The following files were impacted:
2455 * doc/OpenFileChnl.3:
2458 * generic/tcl.decls:
2460 * generic/tclCmdAH.c:
2461 * generic/tclCmdIL.c:
2462 * generic/tclCmdMZ.c:
2463 * generic/tclDate.c:
2464 * generic/tclDecls.h:
2465 * generic/tclEncoding.c:
2466 * generic/tclFCmd.c:
2467 * generic/tclFileName.c:
2468 * generic/tclGetDate.y:
2470 * generic/tclIOCmd.c:
2471 * generic/tclIOUtil.c:
2472 * generic/tclInt.decls:
2474 * generic/tclIntDecls.h:
2475 * generic/tclLoad.c:
2476 * generic/tclStubInit.c:
2477 * generic/tclTest.c:
2478 * generic/tclUtil.c:
2484 * mac/tclMacResource.c:
2489 * tests/fileName.test:
2492 * tests/proc-old.test:
2493 * tests/registry.test:
2494 * tests/unixFCmd.test:
2495 * tests/winDde.test:
2496 * tests/winFCmd.test:
2498 * unix/tclUnixFCmd.c:
2499 * unix/tclUnixFile.c:
2500 * unix/tclUnixInit.c:
2501 * unix/tclUnixPipe.c:
2507 2001-07-24 Mo DeJong <mdejong@redhat.com>
2509 * win/tclWinThrd.c (Tcl_CreateThread): Close Windows
2510 HANDLE returned by _beginthreadex. The MS documentation
2511 states that this handle is not closed by a later call to
2514 2001-07-21 Don Porter <dgp@users.sourceforge.net>
2517 * library/package.tcl: Corrected documentation and usage
2518 message of [pkg_mkIndex].
2520 2001-07-18 Mo DeJong <mdejong@redhat.com>
2522 * generic/tclPlatDecls.h: Define TCHAR by including
2523 windows.h instead of tchar.h since Cygwin does not
2524 support the tchar.h header. Include CHECK_UNICODE_CALLS
2525 logic from tclWinPort.h.
2526 * win/tclWinPort.h: Remove CHECK_UNICODE_CALLS logic.
2527 Remove include of windows.h since this now done it
2529 * win/tclWinReg.c: Remove duplicate include of windows.h.
2531 2001-07-18 Andreas Kupries <andreas_kupries@users.sourceforge.net>
2533 * generic/tclIO.c: Aftermath to [SF #427196]. Squash empty buffers
2534 if they are smaller than the requested buffersize, to prevent
2535 reusage of old buffers and to honor changes in the requested
2536 buffersize made by the user.
2538 2001-07-17 Mo DeJong <mdejong@redhat.com>
2540 * win/tclWinFile.c (TclpReadlink): Add Cygwin specific definition
2541 for the TclpReadlink function. This method implements reading of
2542 symbolic links when build with Cygwin.
2544 2001-07-17 Mo DeJong <mdejong@redhat.com>
2546 * win/tclWinPort.h: Add Cygwin specific defines for environ
2547 and timezone variables.
2549 2001-07-17 Andreas Kupries <andreas_kupries@users.sourceforge.net>
2551 * generic/tclIO.c (GetInput): Fixed [SF #427196]. Memory was
2552 overwritten because a buffer was used after a change of the
2553 requested buffersize together with that requested buffersize and
2554 not its actual size, which was smaller. Note that the continous
2555 reuse of the smaller buffer negatively impacts performance. The
2556 system never allocates a buffer with the newly requested bigger
2559 2001-07-16 Mo DeJong <mdejong@redhat.com>
2561 * generic/tcl.h: Define __WIN32__ when
2562 __CYGWIN__ or __MINGW32__ is defined.
2563 * generic/tclAlloc.c: Define caddr_t when
2564 compiling with VC++ or mingw. This type is
2565 already defined when compiling with Cygwin.
2567 2001-07-16 Mo DeJong <mdejong@redhat.com>
2569 * win/tclWinConsole.c:
2572 * win/tclWinSerial.c:
2574 Remove unnecessary #includes of dos.h, direct.h,
2575 and tchar.h. This will help the Cygwin porting
2576 effort since these headers do not exist under Cygwin.
2578 2001-07-16 Jeff Hobbs <jeffh@ActiveState.com>
2580 * win/tclWinPipe.c (PipeClose2Proc): constrained the mutex lock to
2581 just the TerminateThread call and waiting for termination. (jsmith)
2583 * generic/tclCmdMZ.c: Removed extra copy of the SCAN_* macros
2584 #defined in generic/tclScan.c. (porter) [Bug 441230]
2586 2001-07-12 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2588 * tests/unixInit.test (unixInit-2.8): Added extra constraint,
2589 notInstalledInTmp, to stop this test from damaging installations
2590 in /tmp; not much fun to have to reinstall the Tcl library every
2591 time you run the test suite!
2593 * tests/subst.test (subst-10.*): Updated tests to check new
2594 behaviour for 'break' in command substitutions.
2595 (subst-1.2,subst-7.1): Error messages changed.
2596 * doc/SubstObj.3: New file, to document Tcl_SubstObj.
2597 * doc/subst.n: Improved and updated documentation for 'subst' to
2598 help support the changed behaviour.
2599 * generic/tcl.decls (generic-437): Declaration for Tcl_SubstObj
2600 * generic/tcl.h (TCL_SUBST_*): Added flags for Tcl_SubstObj.
2601 * generic/tclCmdMZ.c (Tcl_SubstObj,Tcl_SubstObjCmd): Divided into
2602 two parts to allow people to access the innards of 'subst' and
2603 changed the behaviour when command substitutions do a 'break' to
2604 be different from 'continue'. Also now works with objects, which
2605 allows for some nifty optimisations with variable substitutions
2606 and a slight improvement with command substitutions. [TIP#36]
2608 2001-07-10 Mo DeJong <mdejong@redhat.com>
2610 * unix/Makefile.in: Add AR variable for use in STLIB_LD.
2611 * unix/configure: Regen.
2612 * unix/configure.in: Use STLIB_LD when defining MAKE_LIB
2613 and MAKE_STUB_LIB. Subst RANLIB and AR.
2614 * unix/tcl.m4 (SC_CONFIG_CFLAGS): Add doc comment about
2615 STLIB_LD command. Check ${AR} env var when setting
2616 STLIB_LD and delay evaluation until make time.
2617 * win/configure: Regen.
2618 * win/tcl.m4 (SC_CONFIG_CFLAGS): Delay evaluation of
2619 ${AR} in STLIB_LD and add flags to better match the
2620 Unix implementation. Don't bother defining AR when
2621 using VC++ since it is not used.
2623 2001-07-06 Mo DeJong <mdejong@redhat.com>
2625 * win/configure: Regen.
2626 * win/tcl.m4 (SC_CONFIG_CFLAGS): Pass -e _WinMain@16 in
2627 addition to the -mwindows flag to work around a problem
2628 with ld when it incorrectly use main() as the executable
2629 entry point when both WinMain() and main() are available.
2631 2001-07-06 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2633 * tests/cmdAH.test: Added leading zero to file modes to work
2634 around fault in HPUX strtol() which ignores the base parameter
2637 2001-07-05 Mo DeJong <mdejong@redhat.com>
2639 * win/Makefile.in: Subst DEPARG directly instead
2640 of relying on a variable. This will make Cygwin
2641 builds faster since an extra exec will be avoided.
2642 * win/configure: Regen.
2643 * win/configure.in: Subst DEPARG.
2644 * win/tcl.m4 (SC_CONFIG_CFLAGS): Move AC_MSG_CHECKING
2645 after the AC_CHECK_PROG so that status messages do
2646 not get mixed together. Set DEPARG based on the
2647 results of the cygpath check so that we avoid using
2648 an extra exec when it is not needed. Use ac_cv_cygwin
2649 status flag instead of looking at the output of
2650 gcc -v, which works in the case where -mno-cygwin is
2653 2001-07-04 Jeff Hobbs <jeffh@ActiveState.com>
2659 * win/README.binary: updated READMEs with purls
2661 2001-07-03 Mo DeJong <mdejong@redhat.com>
2663 * win/Makefile.in: Remove PATHTYPE variable.
2664 * win/configure: Regen.
2665 * win/configure.in: Don't subst PATHTYPE.
2666 * win/tcl.m4 (SC_CONFIG_CFLAGS): Remove PATHTYPE
2667 variable. Set CYGPATH to "cygpath -w" if the
2668 cygpath executable is found on the path. This
2669 approach works for native Cygwin builds and
2672 2001-07-03 Jeff Hobbs <jeffh@ActiveState.com>
2675 * generic/tclVar.c (Tcl_VariableObjCmd): added patch to check for
2676 number of args. [Patch #426038]
2678 * generic/tclVar.c (Tcl_GetVar2Ex): added ability to recognize
2679 TCL_TRACE_READS flags to cause creation of part1 in TclLookupVar
2680 to make sure newly created array will get read traces triggered
2681 appropriately. This is called by Tcl_ObjGetVar2, Tcl_GetVar, and
2683 (TclSetIndexedScalar, TclSetElementOfIndexedArray): added read
2684 trace triggering for lappend case.
2685 (Tcl_LappendObjCmd): pass TCL_TRACE_READS to Tcl_ObjGetVar2 to
2686 trigger possible read traces for new arrays.
2688 * generic/tclExecute.c (TclExecuteByteCode): added TCL_TRACE_READS
2689 flag to INST_LAPPEND(_ARRAY)_STK case to trigger read traces for
2690 newly created arrays. Removed unnecessary #ifdef for
2691 TCL_COMPILE_DEBUG in INST_LOAD_SCALAR1 case.
2693 * tests/append.test:
2694 * tests/appendComp.test: added tests for read trace triggering for
2697 2001-07-03 Mo DeJong <mdejong@redhat.com>
2699 * tests/clock.test (clock-2.5): Adjust test so that it passes
2700 when the time slice is 60 msecs, now passes under Windows 98.
2702 2001-07-03 Mo DeJong <mdejong@redhat.com>
2704 * win/tcl.m4 (SC_CONFIG_CFLAGS): Don't pass the v flag
2705 to ${AR} when using gcc, verbose output is not needed.
2707 2001-07-03 Don Porter <dgp@users.sourceforge.net>
2709 * tests/unixInit.test (unixInit-2.8): Changed test back to using
2710 installation layout, adding comments explaining why the test writes
2711 to the directories it does, and checks to avoid destroying other
2714 2001-07-03 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2716 * tests/unixInit.test (unixInit-1.2): Fixed faults reported in
2717 Bug#438070 - well, at least enough to work on Solaris - and added
2718 comments that should make what is going on in the test clearer.
2720 2001-07-02 Jeff Hobbs <jeffh@ActiveState.com>
2722 * tests/util.test: added util-4.6
2723 * generic/tclUtil.c (Tcl_ConcatObj): Corrected walking backwards
2724 over utf-8 chars. [Bug #227512]
2726 2001-07-02 Don Porter <dgp@users.sourceforge.net>
2728 * tests/unixInit.test (unixInit-2.8): Corrected test for all
2729 absolute pathnames in library path when executable is installed
2730 near root directory to use correct development directory layout.
2733 * tests/unixInit.test (unixInit-2.9):
2734 * unix/tclUnixInit.c (TclpInitLibraryPath):
2735 * win/tclWinInit.c (TclpInitLibraryPath): Corrected buggy
2736 construction of search path entries relative to executable.
2737 Added test for bad construction. [Bug 438014]
2739 2001-06-28 Miguel Sofer <msofer@users.sourceforge.net>
2741 * generic/tclNamesp.c: Correction to faulty patch from [Bug: 231259]
2743 2001-06-28 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2745 * tests/unixInit.test (unixInit-1.2): Modified so as not to
2746 require a local echo service, which fails on many systems which
2747 have that turned off for security reasons...
2749 2001-06-27 Jeff Hobbs <jeffh@ActiveState.com>
2753 * unix/Makefile.in: added a -DPURIFY mode that makes Tcl_Obj's
2754 allocated and free singularly (instead of in alloc in blocks and
2755 never free) to allow checkers like Purify to operate better.
2757 * library/encoding/koi8-u.enc: added koi8-u (Ukranian variant)
2761 * generic/tclUtf.c (Tcl_UtfBackslash): Corrected backslash
2762 handling of multibyte utf-8 chars. [Bug #217987]
2764 * generic/tclCmdIL.c (InfoProcsCmd): fixed potential mem leak in
2765 info procs that created objects without using them.
2767 * generic/tclCompCmds.c (TclCompileStringCmd): fixed mem leak when
2768 string command failed to parse the subcommand.
2771 * doc/unknown.n: updated notes about what is in a safe interp.
2774 2001-06-27 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2776 * tests/event.test (event-11.5): Removed hard-coded port number
2777 which could fail on some systems. [Bug #436727]
2779 2001-06-26 Mo DeJong <mdejong@redhat.com>
2782 * win/Makefile.in: Add `make shell` target. This target
2783 will set the proper env vars before invoking tclsh
2784 from the build directory.
2786 2001-06-26 Mo DeJong <mdejong@redhat.com>
2788 * win/Makefile.in: Use : to separate VPATH entries. This
2789 works for both Cygwin builds and cross builds, the VPSEP
2790 variable is simply unneeded complexity.
2791 * win/configure: Regen.
2792 * win/configure.in: Don't subst VPSEP.
2793 * win/tcl.m4 (SC_CONFIG_CFLAGS): Remove VPSEP variable.
2795 2001-06-26 Mo DeJong <mdejong@redhat.com>
2797 * unix/configure: Regen.
2798 * unix/configure.in: Fix last checkin by removing
2799 export since that only works in bash.
2800 * win/configure: Regen.
2801 * win/configure.in: Ditto.
2803 2001-06-26 Mo DeJong <mdejong@redhat.com>
2805 * unix/configure: Regen.
2806 * unix/configure.in: Set CFLAGS to "" if the user
2807 did not set CFLAGS in the env. This keeps AC_PROG_CC
2808 from adding "-g -O2" to the CFLAGS by default.
2809 * win/configure: Regen.
2810 * win/configure.in: Ditto.
2812 2001-06-25 Mo DeJong <mdejong@redhat.com>
2814 * win/configure: Regen.
2815 * win/configure.in: Use RC_DEFINE flag from tcl.m4.
2816 * win/tcl.m4 (SC_CONFIG_CFLAGS): Set RC_DEFINE
2817 flag based on the compiler in use.
2819 2001-06-25 Mo DeJong <mdejong@redhat.com>
2821 * win/tcl.m4 (SC_CONFIG_CFLAGS): Link to the
2822 imm32 library when building with mingw gcc.
2824 2001-06-25 Mo DeJong <mdejong@redhat.com>
2826 * win/configure: Regen.
2827 * win/tcl.m4 (SC_CONFIG_CFLAGS): When building with
2828 gcc, don't attempt to link with LD or support dllwrap.
2829 Simply require a recent version of Cygwin gcc or Mingw
2830 gcc that supports -shared. When linking, use gcc instead
2831 of ld since gcc automatically includes libs like -lmsvcrt.
2833 2001-06-22 Mo DeJong <mdejong@redhat.com>
2835 * win/configure: Regen.
2836 * win/configure.in: Add resource compiler fix from
2837 8.3.3 to fix compiling with mingw.
2839 2001-06-22 Mo DeJong <mdejong@redhat.com>
2841 * win/configure: Regen.
2842 * win/tcl.m4: Fix silly typo in last checkin.
2844 2001-06-22 Mo DeJong <mdejong@redhat.com>
2846 * unix/Makefile.in: Set CFLAGS to @CFLAGS@ and @CFLAGS_DEFAULT@.
2847 Set LDFLAGS to @LDFLAGS@ and @LDFLAGS_DEFAULT@. Add LDFLAGS_DEBUG
2848 and LDFLAGS_OPTIMIZE to match the way CFLAGS_DEFAULT works.
2849 This will support user set CFLAGS or LDFLAGS at configure time.
2850 * unix/configure: Regen.
2851 * unix/configure.in: Don't set CFLAGS to CFLAGS_DEFAULT, instead
2852 subst CFLAGS_DEFAULT into the Makefile. Add AC_SUBST for CFLAGS_DEFAULT,
2853 LDFLAGS_DEFAULT, LDFLAGS_DEBUG, and LDFLAGS_OPTIMIZE.
2854 * unix/tcl.m4 (SC_ENABLE_SYMBOLS): Modify LDFLAGS_DEFAULT so that
2855 it uses a Makefile variable just like CFLAGS_DEFAULT.
2856 * win/Makefile.in: Set CFLAGS to @CFLAGS@ and @CFLAGS_DEFAULT@.
2857 Set LDFLAGS to @LDFLAGS@ and @LDFLAGS_DEFAULT@.
2858 This will support user set CFLAGS or LDFLAGS at configure time.
2859 * win/configure: Regen.
2860 * win/configure.in: Don't set CFLAGS or LDFLAGS, instead subst
2861 CFLAGS_DEFAULT and LDFLAGS_DEFAULT into the Makefile.
2862 * win/tcl.m4 (SC_ENABLE_SYMBOLS): Modify LDFLAGS_DEFAULT so that
2863 it uses a Makefile variable just like CFLAGS_DEFAULT.
2865 2001-06-22 Mo DeJong <mdejong@redhat.com>
2868 * win/tcl.m4 (SC_CONFIG_CFLAGS): Don't set LDFLAGS_DEBUG
2869 to -g or LDFLAGS_OPTIMIZE to -O when compiling with gcc.
2870 These flags are not needed and can cause problems with
2871 the Cygwin version of ld.
2873 2001-06-18 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2875 * tests/unixInit.test (unixInit-1.2,unixInit-2.8): Added test for
2876 code described below, and fixed a couple of errors that caused
2877 problems during testing; the code to determine the installedTcl
2878 constraint was wrong, and test unixInit-2.8 assumed that /tmp/lib
2879 was free for use and could be deleted, which clashed nastily with
2880 my installation and made other tests fail unnecessarily!
2882 * unix/tclUnixChan.c (TtyInit,TclpOpenFileChannel,
2883 Tcl_MakeFileChannel,TclpGetDefaultStdChannel): Alterations so that
2884 the standard channels - stdin, stdout and stderr - have the
2885 correct type and fconfigure options. This required making the
2886 initialisation of serial lines a little more sophisticated to
2887 make the console behave correctly in interactive mode... [Bug
2888 #219137 and duplicates]
2890 2001-06-16 Don Porter <dgp@users.sourceforge.net>
2892 * generic/tclInt.decls:
2894 * generic/tclPanic.c (Tcl_PanicVA):
2895 * mac/tclMacAppInit.c (main):
2896 * mac/tclMacPanic.c (TclpPanic):
2897 * unix/tclUnixPort.h:
2898 * win/tclWinPort.h: Replaced TclMacSetPanic with TclpPanic
2899 for setting a platform-specific panic handler. TclpPanic
2900 is NULL on Unix and Windows. Fixes broken wish on Mac due
2901 to earlier patches. [Patch 415648]
2903 * generic/tclIntPlatDecls.h:
2904 * generic/tclStubInit.c: `make gentubs` after above changes.
2906 2001-06-13 Don Porter <dgp@users.sourceforge.net>
2908 * mac/tclMacAppInit.c (main, Macintosh_Init):
2909 * mac/tclMacBOAAppInit.c (main):
2910 * mac/tclMacPanic.c: Applied patches from Dan Steffen correcting
2911 problems on the Macintosh in the 2001-06-08 changes.
2913 2001-06-12 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2915 * tests/regexp.test (regexp-18.12):
2916 * generic/tclCmdMZ.c (Tcl_RegexpObjCmd): Fixed so that submatches
2917 that do not match always have index pair {-1 -1} [Bug #219232]
2919 2001-06-08 Don Porter <dgp@users.sourceforge.net>
2922 * generic/tcl.decls:
2923 * generic/tclPanic.c: Added CONST to Tcl_*Panic* public interfaces.
2924 [Patch 415648, TIP 27]
2926 * generic/tclInt.decls:
2927 * mac/tclMacAppInit.c (main):
2928 * mac/tclMacBOAAppInit.c (main):
2929 * mac/tclMacPanic.c: Modified special Mac implementations of
2930 Tcl_*Panic* to be exact copies of the generic implementations.
2931 Added TclMacSetPanic. The generic implementations should be
2932 used directly, rather than copies, but that requires further
2933 changes by someone familiar with the Mac build systems.
2936 * generic/tclDecls.h:
2937 * generic/tclIntPlatDecls.h:
2938 * generic/tclStubInit.c: `make gentubs` after above changes.
2941 * unix/mkLinks: New file documenting Tcl_*Panic* public interfaces,
2942 followed by `make mklinks`. [Patch 415648, Bug 219170, Bug 414936]
2944 2001-06-03 Jeff Hobbs <jeffh@ActiveState.com>
2946 * generic/tclUtil.c (Tcl_DStringAppendElement): patch to save an
2947 extra strlen call. [Bug #428572]
2949 2001-05-30 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2951 * generic/tclExecute.c (TclExecuteByteCode): Added two casts to
2952 INST_STR_CMP implementation to get rid of a couple warnings from
2953 the SUNWspro C compiler.
2955 * generic/tclBasic.c (Tcl_GetMathFuncInfo,Tcl_ListMathFuncs):
2956 * generic/tclCmdIL.c (Tcl_InfoObjCmd,InfoFunctionsCmd):
2957 * generic/tcl.decls (generic table, positions 435+436):
2960 * doc/info.n: Changes due to TIP #15 "Functions to List and Detail
2963 2001-05-28 Jeff Hobbs <jeffh@ActiveState.com>
2965 * library/init.tcl (unknown): removed errant " in error message
2967 2001-05-27 Jeff Hobbs <jeffh@ActiveState.com>
2969 * generic/regc_locale.c: updated character class range data for
2970 Unicode v3.1.0 compliance.
2971 * generic/tclUniData.c: regenerated from Unicode v3.1.0 data file
2972 (new as of 2001-05-16). This brings Tcl to current unicode
2975 * tests/utf.test: added tests to check unicode 3 compliance
2977 * unix/Makefile.in (tclUtf.o): added tclUniData.c dependency.
2979 * tools/uniClass.tcl: added comments to output format and the
2980 script for clarification.
2982 * tools/uniParse.tcl: corrected filename output and GetDelta macro
2983 to use 'info' as param (was 'infO')
2985 2001-05-26 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2987 * generic/tclVar.c (tclArraySearchType,SetArraySearchObj,
2988 ParseSearchId): Added code to speed up array searching by reducing
2989 the amount of parsing needed for searchIds.
2991 * generic/tclObj.c (TclInitObjSubsystem):
2992 * generic/tclIndexObj.c (Tcl_GetIndexFromObjStruct):
2993 * generic/tclNamesp.c (TclInitNamespaceSubsystem):
2994 * generic/tclInt.h: Moved some Tcl_ObjType initialisation to
2995 TclInitObjSubsystem to be with the bulk of the rest.
2996 [Patch 424851] Committed by Miguel Sofer <mig@utdt.edu>
2998 2001-05-23 Jeff Hobbs <jeffh@ActiveState.com>
3000 * tests/io.test: changed io-52.[9-11] to not be platform sensitive
3001 with EOL translation.
3003 * library/encoding/cp1250.enc:
3004 * library/encoding/cp1251.enc:
3005 * library/encoding/cp1252.enc:
3006 * library/encoding/cp1253.enc:
3007 * library/encoding/cp1254.enc:
3008 * library/encoding/cp1255.enc:
3009 * library/encoding/cp1256.enc:
3010 * library/encoding/cp1257.enc:
3011 * library/encoding/cp1258.enc:
3012 * library/encoding/cp874.enc:
3013 * library/encoding/iso8859-6.enc:
3014 * library/encoding/iso8859-7.enc:
3015 * library/encoding/iso8859-8.enc:
3016 * library/encoding/iso8859-10.enc (new):
3017 * library/encoding/iso8859-13.enc (new):
3018 * library/encoding/iso8859-14.enc (new): updated encoding tables
3019 based on http://www.unicode.org/Public/MAPPINGS/. (kuhn)
3021 2001-05-23 Mo DeJong <mdejong@redhat.com>
3023 * unix/tcl.m4 (SC_PATH_TCLCONFIG): Fix comments,
3024 and typo in cached variable name.
3026 2001-05-23 Mo DeJong <mdejong@redhat.com>
3028 * unix/tcl.m4 (SC_LOAD_TKCONFIG):
3029 Remove use of undefined TCLCONFIG variable and
3030 call AC_MSG_RESULT to print the checking result.
3031 * win/tcl.m4: Ditto.
3033 2001-05-22 Jeff Hobbs <jeffh@ActiveState.com>
3035 * generic/tclObj.c (TclAllocateFreeObjects): simplified
3036 objSizePlusPadding to use sizeof(Tcl_Obj) (max)
3037 Corrected use of tclObjsAlloced/Freed/Shared in TCL_MEM_DEBUG
3040 2001-05-22 Miguel Sofer <msofer@users.sourceforge.net>
3042 * generic/tclExecute.c: removed Tcl_DuplicateObj in INST_DUP
3044 2001-05-21 Jeff Hobbs <jeffh@ActiveState.com>
3046 * tests/tcltest.test (tcltest-19.1): fixed failing test that was
3047 getting affected by Windows env handling of empty valued elements.
3049 * unix/tcl.m4: added more common install directories in which to
3050 search for *Config.sh [Bug #419812]
3052 * tests/cmdMZ.test (cmdMZ-1.4): added notLinux constraint to test
3053 to prevent failure message on Linux due to OS caching bug.
3055 * tests/httpd (httpdRespond): added response to timeout value in
3058 * tests/http.test: removed unused notLinux constraint setting
3060 * generic/tclRegexp.c (Tcl_RegExpExecObj): added use of
3061 Tcl_GetUnicodeFromObj.
3063 2001-05-19 Andreas Kupries <andreas_kupries@users.sourceforge.net>
3065 * Note that "tclbench" (see project "tcllib") was extended with
3066 performance benchmarks for [fcopy] too.
3068 * doc/fcopy.n: Updated to reflect the extended behaviour of 'fcopy'.
3070 * tests/io.test: Added tests 'io-52.9', 'io-52.10' and 'io-52.11'
3071 to test the handling of encodings by 'fcopy' / 'TclCopychannel'
3074 * generic/tclIO.c: Split of both 'Tcl_ReadChars' and
3075 'Tcl_WriteChars' into a public error checking and an internal
3076 working part. The public functions now use the new internal
3077 ones. The new functions are 'DoReadChars' and 'DoWriteChars'.
3078 Extended 'CopyData' to use the new functions 'DoXChars' when
3079 required by the encodings on the input and output channels
3082 2001-05-16 Jeff Hobbs <jeffh@ActiveState.com>
3084 * library/history.tcl (tcl::HistAdd): prevent empty calls from
3085 being added to the history (arndt)
3087 * tests/error.test: updated error-1.3 message to account for
3088 string index being compiled at toplevel.
3089 * tests/appendComp.test:
3090 * tests/stringComp.test: new files for extended bytecode testing
3092 * generic/tclBasic.c: added new CompileProc invocations to basic
3093 command initialization.
3094 * generic/tclCompCmds.c: added new compile commands for append,
3095 lappend, lindex and llength. Refactored set and incr compile
3096 commands to use new TclPushVarName function for handling the
3097 varname component during compilation (also used by append and
3098 lappend). Changed string compile command to compile toplevel code
3099 as well (when possible).
3100 * generic/tclCompile.c: added new instruction enums
3101 * generic/tclCompile.h: added debug info for new instructions
3102 * generic/tclExecute.c (TclExecuteByteCode): moved elemPtr to
3103 toplevel var (oft-used). Added definitions for new bytecode
3104 instructions INST_LIST_INDEX, INST_LIST_LENGTH, INST_APPEND_SCALAR1,
3105 INST_APPEND_SCALAR4, INST_APPEND_ARRAY1, INST_APPEND_ARRAY4,
3106 INST_APPEND_ARRAY_STK, INST_APPEND_STK, INST_LAPPEND_SCALAR1,
3107 INST_LAPPEND_SCALAR4, INST_LAPPEND_ARRAY1, INST_LAPPEND_ARRAY4,
3108 INST_LAPPEND_ARRAY_STK, INST_LAPPEND_STK.
3109 Refactored repititious code for reuse with INST_LOAD_STK (same as
3110 INST_LOAD_SCALAR_STK), INST_STORE_STK (same as
3111 INST_STORE_SCALAR_STK).
3112 Updated INST_STR_CMP with style of fix of 2001-04-06 Fellows
3113 [Bug #219201] as that fix only affected the runtime eval'ed
3114 "string" (string compare is normally byte-compiled now). We
3115 may want to back these out for speed in the future, noting the
3116 problems with \x00 comparisons in the docs.
3117 * generic/tclInt.h: declarations for new compile commands.
3118 * generic/tclVar.c: change TclGetIndexedScalar,
3119 TclGetElementOfIndexedArray, TclSetElementOfIndexedArray and
3120 TclSetIndexedScalar to use flags. The Set functions now support
3121 TCL_APPEND_ELEMENT and TCL_LIST_ELEMENT as well.
3122 * generic/tclInt.decls:
3123 * generic/tclIntDecls.h: minor signature changes for above.
3125 * generic/tclCmdMZ.c: made use of new Tcl_GetUnicodeFromObj.
3127 2001-05-16 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3129 * doc/console.n: Deleted. Put it in the wrong source tree! D'oh!
3131 2001-05-15 Jeff Hobbs <jeffh@ActiveState.com>
3133 * generic/tcl.decls:
3134 * generic/tclDecls.h:
3135 * generic/tclStubInit.c:
3136 * generic/tclStringObj.c (Tcl_GetUnicodeFromObj): new function to
3137 parallel Tcl_GetStringFromObj (fix of an API oversight).
3139 * unix/tclUnixPipe.c: updated pipeChannelType to
3140 TCL_CHANNEL_VERSION_2 type specification.
3142 * tests/fileName.test: corrected tests not to fail on win when a
3145 * generic/tclFileName.c (ExtractWinRoot): corrected ABR error
3147 2001-05-15 Miguel Sofer <msofer@users.sourceforge.net>
3149 * tests/lindex.test: added test for nested braces [Patch: 423617]
3151 2001-05-15 Miguel Sofer <msofer@users.sourceforge.net>
3154 * generic/tclNamesp.c: invalidate all bytecodes in a namespace if
3155 a new command shadows a bytecoded command.
3156 * tests/namespace.test
3157 Patched from [Bug: 231259]
3159 2001-05-15 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3161 * doc/console.n: Created. It seems very odd to me that the
3162 console implementation is part of the Tcl distribution and not
3163 part of Tk, but given the location of the source, the
3164 documentation must obviously match up...
3166 2001-05-14 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3168 * generic/tclCmdMZ.c (Tcl_StringObjCmd):
3169 * tests/string.test (string-4.14): Negative string indices should
3170 not be added as offsets to the result of [string first] but
3171 instead be treated as referring to the start of the string.
3174 2001-05-11 Mo DeJong <mdejong@redhat.com>
3176 * unix/Makefile.in: Add a LDFLAGS variable to the
3177 Makefile instead of directly substing @LDFLAGS@.
3178 * unix/configure: Regen.
3179 * unix/tcl.m4: Fix CFLAGS_DEFAULT so that the name
3180 of a Makefile variable is passed as @CFLAGS@.
3181 * win/Makefile.in: Move the setting of CFLAGS
3182 higher up in the Makefile.
3183 * win/configure: Regen.
3184 * win/configure.in: Use dnl to comment out macros
3185 so that they are not accidently expanded.
3186 * win/tcl.m4: Fix CFLAGS_DEFAULT so that the name
3187 of a Makefile variable is passed as @CFLAGS@.
3189 2001-05-07 Miguel Sofer <msofer@users.sourceforge.net>
3191 * generic/tclExecute.c: insure different rand() seeds in different
3192 threads [Bug 416643]
3194 2001-05-03 Jeff Hobbs <jeffh@ActiveState.com>
3196 * tests/tcltest.test: removed extraneous 'c' (doh!) [Bug: 414031]
3198 * tools/tcltk-man2html.tcl: removed use of 'exec' for portability
3201 2001-05-03 Don Porter <dgp@users.sourceforge.net>
3205 * tests/autoMkindex.t*: Modified [auto_import] to apply
3206 pattern matching in the [namespace import] style. [Bug 420186]
3207 ***POTENTIAL INCOMPATIBILITY*** for any callers of [auto_import]
3208 from outside Tcl that expect the pattern matching to be like that
3211 2001-05-03 Miguel Sofer <msofer@users.sourceforge.net>
3213 * generic/tclParse.c:
3214 * tests/namespace.test: Insure consistent behaviour of the
3215 [unknown] command: when a command is unknown, it is always
3216 processed by [::unknown], ignoring any namespace proc which
3217 happens to be called "unknown" [Patch #421166, Bug #420507]
3219 2001-05-02 Don Porter <dgp@users.sourceforge.net>
3221 * tools/genStubs.tcl: Add a package require of Tcl 8
3222 at the beginning of the script so that the script
3223 will print a descriptive error message when run
3224 in an old Tcl 7 shell.
3226 2001-04-27 Kevin Kenny <kennykb@crd.ge.com>
3228 * generic/tclInt.decls:
3230 * generic/tclCmdIL.c:
3231 * generic/tclProc.c:
3232 * generic/tclVar.c: Added another collection of missing CONSTs
3233 related to TclGetNamespaceForQualName.
3234 * generic/tclIntDecls.h: Regenerated.
3236 2001-04-25 Mo DeJong <mdejong@redhat.com>
3238 * unix/configure: Regen.
3239 * unix/tcl.m4: Subst TCL_THREADS into tclConfig.sh.
3240 * unix/tclConfig.sh.in: Add TCL_THREADS variable.
3241 * win/configure: Regen.
3242 * win/tcl.m4: Subst TCL_THREADS into tclConfig.sh.
3243 * win/tclConfig.sh.in: Add TCL_THREADS variable.
3245 2001-04-25 Mo DeJong <mdejong@redhat.com>
3247 * unix/configure: Regen.
3248 * unix/configure.in: Use $@ in MAKE_LIB and MAKE_STUB_LIB
3249 commands instead of using a delayed subst variable. Replace
3250 instances of STUB_LIB_FILE with TCL_STUB_LIB_FILE.
3252 2001-04-25 Mo DeJong <mdejong@redhat.com>
3254 * unix/Makefile.in: Use TCL_STUB_LIB_FILE instead of STUB_LIB_FILE.
3255 * unix/configure: Regen.
3256 * unix/configure.in: Don't subst STUB_LIB_FILE, use TCL_STUB_LIB_FILE
3259 2001-04-25 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3261 * tools/encoding/iso8859-15.txt:
3262 * library/encoding/iso8859-15.enc: Oops! Got the full encoding
3263 wrong. Should be fixed now...
3265 * tools/encoding/iso8859-15.txt:
3266 * library/encoding/iso8859-15.enc:
3267 * tools/tcl.wse.in: Added ISO 8859-15 (a.k.a. Latin-1 + Euro
3268 currency symbol) support.
3270 * generic/tclNamesp.c:
3271 * generic/tclBasic.c (TclRenameCommand): Missing CONST from
3272 several declarations relating to use of TclGetNamespaceForQualName
3274 2001-04-24 Kevin B. Kenny <kennykb@acm.org>
3280 * generic/tclBasic.c:
3281 * generic/tclCmdMZ.c:
3283 * generic/tclNamesp.c:
3284 * generic/tcl.decls:
3286 * generic/tclInt.decls:
3287 * generic/tclInt.h: (TIP #27) Another round of CONST changes, this
3288 time adding CONST to the API's exported from tclBasic.c.
3290 ***POTENTIAL INCOMPATIBILITY*** from 8.4a2, in which Vince
3291 Darley's changes to command tracing were added. A const has been
3292 added to the type signature of one of the parameters to
3293 Tcl_CommandTraceProc.
3295 2001-04-10 Kevin B. Kenny <kennykb@acm.org>
3296 * unix/tclUnixTime.c: Altered code to use memcpy instead of
3297 structure assigments in an effort to achieve better K&R
3300 2001-04-10 Kevin B. Kenny <kennykb@acm.org>
3302 * unix/tclUnixTime.c: Fixed silly typo in calls to 'gmtime' and
3303 'localtime' that broke the Linux build.
3305 2001-04-09 Kevin B. Kenny <kennykb@acm.org>
3307 * unix/tclLoadShl.c: Added DYNAMIC_PATH to the load flags so that
3308 the SHLIB_PATH will be searched for other libraries. [Bug #219140]
3310 2001-04-09 Kevin B. Kenny <kennykb@acm.org>
3312 * unix/tcl.m4: Added _REENTRANT to Solaris build so that thread
3313 safe library routines are included.
3314 * unix/configure: Re-ran 'autoconf' with changed tcl.m4
3315 * tclUnixTime.c: Modified for thread safety of 'gmtime' and
3316 'localtime' system calls [Bugs #219136 and #232558]
3318 2001-04-09 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3320 * tests/expr.test (expr-21.*): Tests to check below fix.
3321 * generic/tclParseExpr.c (GetLexeme): Now recognises the
3322 non-numeric boolean literals for what they are. It no longer makes
3323 sense for anyone to create functions with the same name as one of
3324 them, but this was true in 7.* as well [Bug #217777; finally!]
3326 2001-04-07 Miguel Sofer <msofer@users.sourceforge.net>
3328 * generic/tclExecute.c: Avoid panic when there are extra items in
3329 the tcl stack [Bug #406709, Patch #414470]
3330 * tests/foreach.test: test to exercise the patch
3332 2001-04-07 Miguel Sofer <msofer@users.sourceforge.net>
3334 * doc/namespace.n: document correct functionality
3335 * generic/tclNamesp.c: corrected behaviour of [namespace code]
3336 (Bug #219385, Patch #403530)
3338 * tests/namespace-old.test: test correct functionality
3339 * tests/namespace.test: test correct functionality
3341 2001-04-07 Andreas Kupries <andreas_kupries@users.sourceforge.net>
3343 * unix/Makefile.in (checkdoc): New target, checking the
3344 definitions as found in the compiled library against the
3345 manpages to find undocumented public functionality.
3347 * unix/mkLinks: Updated to include the new manpage.
3349 * doc/UniCharIsAlpha.3: New manpage documenting the Unicode
3350 character classification APIs [Bug #218720].
3352 2001-04-07 Andreas Kupries <andreas_kupries@users.sourceforge.net>
3354 * unix/mkLinks: Updated to incorporate the changes below.
3356 * doc/StringObj.3: Added 'Tcl_AttemptSetObjLength' to the NAME
3357 section. [Bug #414435].
3359 * doc/Alloc.3: Added both 'Tcl_AttemptAlloc' and
3360 'Tcl_AttemptRealloc' to the NAME section. [Bug #414435].
3362 * doc/Utf.3: Added both 'Tcl_UniCharCaseMatch' and
3363 'Tcl_UniCharNcasecmp' to the NAME section. [Bug #414435].
3365 2001-04-06 Don Porter <dgp@users.sourceforge.net>
3368 * tests/init.test: Modified processing of $::errorInfo by
3369 [unknown] when the auto-loaded command throws an error to better
3370 cover the tracks of auto-loading. [Bug 219280, Patch 403551]
3372 2001-04-06 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3374 * doc/read.n: Added section on "USE WITH SERIAL PORTS" to resolve
3377 * tests/string.test (string-2.30): Test for this case
3378 * generic/tclCmdMZ.c (Tcl_StringObjCmd, STR_COMPARE branch): Fixed
3379 problem caused by Utf-rep of \x00 being more than Utf-rep of \x01
3380 fooling memcmp by forcing everything through Utf-based
3381 comparisons. Added optimizations for case where objects have a
3382 string/unicode-rep or a bytearray-rep (i.e. where we can perform
3383 comparisons on fixed-size units.) [Bug #219201]
3384 * generic/tclUtf.c (Tcl_UtfNcmp): Corrected seriously erroneous
3387 2001-04-05 Andreas Kupries <andreas_kupries@users.sourceforge.net>
3389 * doc/Macintosh.3: Removed duplicates from .SH line
3392 2001-04-05 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3394 * generic/tclCmdMZ.c (Tcl_StringObjCmd): Fixed so will compile
3395 with K&R compilers [Patch #413844, Bug #413847]
3397 2001-04-04 Don Porter <dgp@users.sourceforge.net>
3399 * generic/tclMain.c: Patch from Kevin Kenny to restore support of
3400 pre-ANSI compilers. [Bug 413846, Patch 413842]
3402 2001-04-04 Andreas Kupries <andreas_kupries@users.sourceforge.net>
3404 * unix/mkLinks: Updated to contain the new manpage.
3406 * doc/Environment.3: New manpage, describes Tcl_PutEnv
3409 * doc/Macintosh.3: New manpage describing the macintosh specific
3410 parts of the public API [Bug #219169].
3412 2001-04-04 Jeff Hobbs <jeffh@ActiveState.com>
3415 * unix/tcl.m4: extended test of termios vs. termio vs. sgtty to
3416 better detect result on Linux and when certain configure
3417 redirections are being used. (max) [Patch #402923; Bug #227412,
3420 2001-04-04 Andreas Kupries <andreas_kupries@users.sourceforge.net>
3422 * generic/tclTest.c:
3423 * tests/io.tests: TIP #10 followup correcting a problem with the
3424 original patch because of the lack of 'testthread id' for a
3425 non-threaded compilation.
3427 2001-04-04 Kevin Kenny <kennykb@acm.org>
3430 * doc/DumpActiveMemory.3:
3434 * generic/tcl.decls:
3436 * generic/tclBinary.c:
3437 * generic/tclCkalloc.c:
3438 * generic/tclDecls.h:
3439 * generic/tclListObj.c:
3442 * generic/tclStringObj.c:
3443 * generic/tclStubLib.c:
3444 (TIP#27) Changed a number of Tcl API's to accept "CONST char*"
3445 in place of simple "char*". (kennykb) [Patch #404026]
3447 2001-04-04 Jeff Hobbs <jeffh@ActiveState.com>
3449 * generic/tclListObj.c (Tcl_SetListObj): set objPtr->length = 0 in
3450 empty object case to maintain sanctity of Tcl_Obj bytes/length
3451 pairing. (porter) [Patch #405998]
3453 2001-04-03 Andreas Kupries <andreas_kupries@users.sourceforge.net>
3455 * unix/mkLinks: Added 'Signal.3', 'Tcl_WaitPid'.
3457 * doc/DetachPids.3: Added description of 'Tcl_WaitPid' [Bug #219173].
3459 * doc/Signal.3: New man page describing the public API procedures
3460 'Tcl_SignalId' and 'Tcl_SignalMsg' [Bug #219172].
3462 2001-04-02 Jeff Hobbs <jeffh@ActiveState.com>
3466 * win/README.binary: further notes corrections.
3469 * win/tcl.m4 (SHLIB_LD): added -incremental:no. [Bug #219381]
3471 2001-04-01 Jeff Hobbs <jeffh@ActiveState.com>
3476 * win/README.binary:
3477 * unix/README: updated patchlevel information to 8.4a3 and
3478 updated links and notes.
3482 * win/configure.in (VER):
3485 * unix/configure.in (VER):
3486 * unix/tcl.spec: updated patchlevel information to 8.4a3
3488 2001-03-30 Jeff Hobbs <jeffh@ActiveState.com>
3490 * generic/tclCkalloc.c (TclFinalizeMemorySubsystem): set curTagPtr
3491 to NULL to allow for reuse.
3492 * generic/tclEvent.c (Tcl_Finalize): moved the tsdPtr
3493 initialization inside the subsystemsInitialized check to prevent
3494 it potentially getting called twice during finalization. (wu)
3495 [Patch #403532, Bug #219391]
3497 * generic/tclThreadTest.c (Tcl_ThreadObjCmd): cast fixes
3498 * generic/tclTest.c (TestChannelCmd): added cast to mollify
3499 Windows debug build.
3501 * win/tclWinSock.c (SocketEventProc): Fixed race condition in
3502 readability of socket on Windows.
3503 [Patch #410674, Bug #219205 #219333]
3505 * win/tcl.m4: added imm32.lib to LIBS_GUI for Tk IME support.
3507 * win/Makefile.in (install-libraries): removed extra \s that broke
3509 (install-doc): improved install-* targets to use their base build
3512 2001-03-30 Andreas Kupries <andreas_kupries@users.sourceforge.net>
3514 * All of the changes below belong to TIP #10 [Tcl I/O Enhancement:
3515 Thread-Aware Channels]. See also [Patch #403358] at SF.
3517 * generic/tclIO.h (struct ChannelState, line 236f): Extended the
3518 structure with a new field of type 'Tcl_ThreadId' to hold the id
3519 of the thread currently managing all channels with this state.
3521 Note: This structure is shared by all channels in a stack of
3524 * generic/tclIO.c (Tcl_CreateChannel, lines 1058-1065): Modified
3525 to store the Id of the current thread in the 'ChannelState' of
3528 * generic/tclIO.c (Tcl_SpliceChannel, lines 2265-2270): Modified
3529 in the same manner as 'Tcl_CreateChannel' as the channel will be
3530 managed by the current thread afterward.
3532 * generic/tclIO.c (Tcl_GetChannelThread, lines 1478-1503):
3533 * generic/tcl.decls (Tcl_GetChannelThread, lines 1504-1506): New
3534 API function to retrieve the Id of the managing thread from a
3535 channel. Implementation and declaration.
3537 * generic/tclTest.c (TestChannelCmd, lines 4520-4532): Added
3538 subcommand 'mthread' to query a channel about its managing
3541 2001-03-29 Mo DeJong <mdejong@redhat.com>
3543 * tests/interp.test: Print out warning when
3544 testinterpdelete command is not defined.
3545 Add tests that checks to make sure a
3546 child interp inherits the parent's cwd.
3548 2001-03-29 Jeff Hobbs <jeffh@gimlet.activestate.com>
3550 * doc/tcltest.n: corrected incorrect macro usage.
3552 * doc/lsort.n: corrected unbalanced nroff macros.
3554 * unix/tclUnixPipe.c (TclpCreateTempFile): prevent potential race
3555 condition and security leak in tmp filename creation.
3556 (max) [Patch #402924]
3559 * unix/tcl.m4: corrected IRIX-5.x config to not use -n32.
3560 (english) [Patch #403626]
3562 * unix/tclUnixThrd.c (Tcl_ConditionWait): fixed handling of
3563 timeout for threads (corrects excessive CPU usage issue for Tk on
3564 Unix in threaded Tcl environment). (ruppert) [Bug #411603]
3566 2001-03-29 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3568 * doc/lsort.n: Added some notes that clarify the behaviour of
3569 [lsort] as well as a whole bunch of examples. [Bug #219202]
3571 2001-03-27 Jeff Hobbs <jeffh@gimlet.activestate.com>
3573 * doc/Alloc.3: corrected docs to note that Tcl_Attempt* return
3574 char *'s, not ints. [Bug #411388]
3576 * tests/regexp.test (regexp-19.1):
3577 * generic/tclCmdMZ.c (Tcl_RegsubObjCmd): fixed handling of nulls
3580 2001-03-26 Don Porter <dgp@users.sourceforge.net>
3582 * generic/tclDecls.h (Tcl_InitCustomHashTable): Correction to
3583 patch from 2001-01-18; tclDecls.h was not generated using
3586 2001-03-26 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3588 * win/tclWinInt.h (tclWinTCharEncoding): Removed as now a static
3589 variable in win/tclWin32Dll.c instead.
3591 2001-03-23 Jeff Hobbs <jeffh@activestate.com>
3593 * generic/tclVar.c (Tcl_ArrayObjCmd): Corrected retrieval of
3594 resultPtr to prevent possible corruption.
3596 * generic/tclNamesp.c (Tcl_Import): Correctly freed a DString.
3597 (lavana) [Patch #403755]
3599 2001-03-15 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3601 * tests/set-old.test (set-old-7.2): Changed error behaviour of
3602 [unset] to agree with documentation, so must change test as well.
3604 2001-03-14 Don Porter <dgp@users.sourceforge.net>
3606 * library/package.tcl (pkg_mkIndex): Added patch from Vince
3607 Darley to make [pkg_mkIndex -verbose] even more verbose.
3608 [Bug 219349, Patch 403529]
3610 2001-03-13 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3612 * doc/info.n: Improved documentation for [info hostname].
3615 * generic/tclVar.c (Tcl_UnsetObjCmd): Made command behave as
3616 documented [issue remaining from bug #405769]
3618 * generic/tclCmdMZ.c (Tcl_StringObjCmd): A missing
3619 {return TCL_OK;} was causing memory corruption. [Bug #408002]
3621 * generic/tclExecute.c (TclDeleteExecEnv, GrowEvaluationStack,
3622 TclExecuteByteCode): Added some casts to ClientData that are
3623 apparently needed on some architectures.
3625 2001-03-12 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3627 * tests/string.test: Fixed some test numberings and added a test.
3630 2001-03-06 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3632 * generic/tclVar.c (Tcl_UnsetObjCmd): Rewrote argument parser to
3633 avoid a read off the end of the argument array that could occur
3634 when executing something like [unset -nocomplain] was executed.
3635 Improved the error message given when too few arguments are given
3636 (-nocomplain should obviously be *before* --, not after it) and
3637 also modified the test suite to take account of that and the
3638 documentation to use the same improvement. [Bug 405769]
3640 2001-03-02 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3642 * generic/tclExecute.c (TclExecuteByteCode): Fixed bug that could
3643 pass pointers to freed memory to command implementations, which
3644 most obviously caused some weird behaviour with [info level], but
3645 could have caused problems with user code and command traces too.
3646 [Bug 404865, Patch 405436]
3648 2001-02-23 msofer <msofer@users.sourceforge.net>
3649 * no changes; fixing up the missing comment in the previous one.
3652 2001-02-23 msofer <msofer@ant.utdt>
3654 * /cvsroot/tcl/tcl/tests/execute.test:
3655 added test for evaluation of an expression in a variable; evals once
3656 by compiling, second time using the previous compilation
3658 2001-02-18 Kevin B. Kenny <kennykb@acm.org>
3660 * doc/clock.n: Updated documentation to reflect the addition of
3661 compat/strftime.c, including the correct formatting of
3662 ISO-8601:1988 fiscal week number (%V).
3664 2001-02-15 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3666 * generic/tclCmdMZ.c (Tcl_SplitObjCmd): Improved efficiency of
3667 splitting strings into individual characters by adding hash so
3668 that only one Tcl_Obj per character is created. Improves
3669 performance of splitting of short strings and makes a huge
3670 difference to splitting of long strings, such as is done in the
3671 mime package in tcllib. [Bug #131523]
3673 2001-01-31 Don Porter <dgp@users.sourceforge.net>
3675 * win/makefile.vc (install-libraries): Corrected misdirected
3676 install directory for the msgcat 1.2 package.
3678 2001-01-30 Don Porter <dgp@users.sourceforge.net>
3680 * generic/tclIO.c (CopyData): Moved code that updates the count
3681 of how many bytes are left to copy. Corrects bug that when
3682 writing occurs in the background, the copy loop could be
3683 escaped without updating the count, causing CopyData() to try
3684 to copy more bytes than the toRead value originally passed to
3685 TclCopyChannel(), leading to hangs and misreporting of number
3686 of bytes copied. [Bug 118203, Patch 103432]
3688 2001-01-18 Andreas Kupries <a.kupries@westend.com>
3690 * Everything below belongs together, it fixes bug #123153.
3692 * generic/tcl.h (line 342): A bit more explanation about the
3693 default value for TCL_PRESERVE_BINARY_COMPATABILITY.
3695 * generic/tcl.h (line 1208): Define the macro 'Tcl_InitHashTable'
3696 only when TCL_PRESERVE_BINARY_COMPATIBILITY is not set
3697 as it kills binary compatibility to 8.3 and earlier
3698 versions. This is the main part of the patch/change.
3700 * generic/tcl.decls (line 1469):
3701 * generic/tclHash.c (Tcl_InitHashTable):
3702 * generic/tclHash.c (Tcl_InitHashTableEx):
3703 * generic/tclObj.c (Tcl_InitObjHashTable): Changed
3704 'Tcl_InitHashTableEx' to 'Tcl_InitCustomHashTable'. This change
3705 is more of an estethical nature, replacing the ubiquitous 'Ex'
3706 suffix with a more meaningful name. The introduced binary
3707 incompatibility is deemed acceptable as it is between alpha
3708 versions. Updated callers.
3711 * unix/mkLinks: Changed 'Tcl_InitHashTableEx' to
3712 'Tcl_InitCustomHashTable'.
3714 2001-01-10 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3716 * tests/winPipe.test (winpipe-1.20):
3717 * tests/winDde.test (createChildProcess):
3718 * tests/pkgMkIndex.test (pkgtest::createIndex): Removed
3719 assumption that paths contain no spaces which causes problems with
3720 both [eval] and [open |...] due to the well-known differences
3721 between lists and strings. Fixes bug #119406
3723 2001-01-04 Don Porter <dgp@users.sourceforge.net>
3725 * tests/unixInit.test:
3726 * unix/tclUnixInit.c (TclpInitLibraryPath):
3727 * win/tclWinInit.c (TclpInitLibraryPath): Several entries in
3728 the library path ($tcl_libPath) are determined relative to the
3729 absolute path of the executable. When the executable is
3730 installed in or near the root directory of the file system,
3731 relative pathnames were being incorrectly generated, and in
3732 the worst case, memory access violations were crashing the program.
3733 [Bug 119416, Patch 102972]
3735 ******************************************************************
3736 *** CHANGELOG ENTRIES FOR 2000 IN "ChangeLog.2000" ***
3737 *** CHANGELOG ENTRIES FOR 1999 AND EARLIER IN "ChangeLog.1999" ***
3738 ******************************************************************