Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: downloads/tcl8.5.2/ChangeLog.1999 @ 25

Last change on this file since 25 was 25, checked in by landauf, 16 years ago

added tcl to libs

File size: 89.0 KB
Line 
11999-12-22  Jeff Hobbs  <hobbs@scriptics.com>
2
3        * changes: updated changes file
4        * tools/tclSplash.bmp: updated to show 8.3
5
61999-12-21  Jeff Hobbs  <hobbs@scriptics.com>
7
8        * README:
9        * generic/tcl.h:
10        * mac/README:
11        * unix/configure.in:
12        * tools/tcl.wse.in:
13        * win/README.binary:
14        * win/configure.in: updated to patch level 8.3b1
15
16        * unix/Makefile.in: added -srcdir=... for 'make html'
17
18        * doc/Hash.3: fixed reference to ckfree [Bug 3912]
19        * doc/RegExp.3: fixed calling params for Tcl_RegExecFromObj
20        * doc/open.n: fixed minor formatting errors
21        * doc/string.n: fixed minor formatting errors
22
23        * doc/lsort.n: added -unique docs
24        * tests/cmdIL.test:
25        * generic/tclCmdIL.c: added -unique option to lsort
26
27        * generic/tclThreadTest.c: changed thread ids to longs [Bug 3902]
28
29        * mac/tclMacOSA.c: fixed applescript for I18N [Bug 3644]
30
31        * win/mkd.bat:
32        * win/rmd.bat: removed necessity of tag.txt [Bug 3874]
33
34        * win/tclWinThrd.c: changed CreateThread to _beginthreadex and
35        ExitThread to _endthreadex
36
371999-12-12  Jeff Hobbs  <hobbs@scriptics.com>
38
39        * doc/glob.n:
40        * tests/fileName.test:
41        * generic/tclInt.decls:
42        * generic/tclInt.h:
43        * generic/tclIntDecls.h:
44        * generic/tclStubInit.c:
45        * generic/tclEncoding.c:
46        * generic/tclFileName.c:
47        * mac/tclMacFile.c:
48        * unix/tclUnixFile.c:
49        * win/tclWinFile.c: enhanced the glob command with the new options
50        -types -path -directory and -join. Deprecated TclpMatchFiles with
51        TclpMatchFilesTypes, extended TclGlob and TclDoGlob and added
52        GlobTypeData structure. [Bug 2363]
53
541999-12-10  Jeff Hobbs  <hobbs@scriptics.com>
55
56        * tests/var.test:
57        * generic/tclCompile.c: fixed problem where setting to {} array would
58        intermittently not work. [Bug 3339] (Fontaine)
59
60        * generic/tclCmdMZ.c:
61        * generic/tclExecute.c: optimized INST_TRY_CVT_TO_NUMERIC to recognize
62        boolean objects. [Bug 2815] (Spjuth)
63
64        * tests/info.test:
65        * tests/parseOld.test:
66        * generic/tclCmdAH.c:
67        * generic/tclProc.c: changed Tcl_UplevelObjCmd (uplevel) and
68        Tcl_EvalObjCmd (eval) to use TCL_EVAL_DIRECT in the single arg case as
69        well, to take advantage of potential pure list input optimization.
70        This means that it won't get byte compiled though, which should be
71        acceptable.
72        * generic/tclBasic.c: made Tcl_EvalObjEx pure list object aware in the
73        TCL_EVAL_DIRECT case for efficiency.
74        * generic/tclUtil.c: made Tcl_ConcatObj pure list object aware, and
75        return a list object in that case [Bug 2098 2257]
76
77        * generic/tclMain.c: changed Tcl_Main to not constantly reuse the
78        commandPtr object (interactive case) as it could be shared. (Fellows)
79
80        * unix/configure.in:
81        * unix/tcl.m4:
82        * unix/tclUnixPipe.c: removed checking for compatible vfork function
83        and use of the vfork function. Modern VM systems rarely suffer any
84        performance degradation when fork is used, and it solves multiple
85        problems with vfork. Users that still want vfork can add -Dfork=vfork
86        to the compile flags. [Bug 942 2228 1312]
87
881999-12-09  Jeff Hobbs  <hobbs@scriptics.com>
89
90        * win/aclocal.m4: made it just include tcl.m4
91
92        * doc/exec.n:
93        * doc/open.n:
94        * win/tclWin32Dll.c:
95        * win/tclWinChan.c:
96        * win/tclWinFCmd.c:
97        * win/tclWinInit.c:
98        * win/tclWinPipe.c:
99        * win/tclWinSock.c: removed all code that supported Win32s. It was no
100        longer officially supported, and likely didn't work anyway.
101        * win/makefile.vc: removed 16 bit stuff, cleaned up.
102
103        * win/tcl16.rc:
104        * win/tclWin16.c:
105        * win/winDumpExts.c: these files have been removed from the source
106        tree (no longer necessary to build)
107
1081999-12-07  Jeff Hobbs  <hobbs@scriptics.com>
109
110        * tests/io.test: removed 'knownBug' tests that were for unsupported0,
111        which is now fcopy (that already has tests)
112
113        * mac/tclMacPort.h: added utime.h include
114
115        * generic/tclDate.c:
116        * unix/Makefile.in: fixed make gendate to swap const with CONST so it
117        uses the Tcl defined CONST type [Bug 3521]
118
119        * generic/tclIO.c: removed panic that could occur in FlushChannel when
120        a "blocking" channel would receive EAGAIN, instead treating it the
121        same as non-blocking. [Bug 3773]
122
123        * generic/tclUtil.c: fixed Tcl_ScanCountedElement to not step beyond
124        the end of the counted string. [Bug 3336]
125
1261999-12-03  Jeff Hobbs  <hobbs@scriptics.com>
127
128        * doc/load.n: added note about NT's buggy handling of './' with
129        LoadLibrary
130
131        * library/http2.1/http.tcl: fixed error handling in http::Event. [Bug
132        3752]
133
134        * tests/env.test: removed knownBug limitation from working test
135        * tests/all.tcl: ensured that ::tcltest::testsDirectory would be set
136        to an absolute path
137
138        * tests/expr-old.test:
139        * tests/parseExpr.test:
140        * tests/string.test:
141        * generic/tclGet.c:
142        * generic/tclInt.h:
143        * generic/tclObj.c:
144        * generic/tclParseExpr.c:
145        * generic/tclUtil.c:
146        * generic/tclExecute.c: added TclCheckBadOctal routine to enhance
147        error message checking for when users use invalid octal numbers (like
148        08), as well as replumbed the Expr*Funcs with a new VerifyExprObjType
149        to simplify type handling. [Bug 2467]
150
151        * tests/expr.test:
152        * generic/tclCompile.c: fixed 'bad code length' error for 'expr +
153        {[incr]}' case, with new test case [Bug 3736] and seg fault on 'expr
154        + {[error]}' (different cause) that was caused by a correct
155        optimization that didn't correctly track how it was modifying the
156        source string in the opt. The optimization was removed, which means
157        that:
158                expr 1 + {[string length abc]}
159        will be not be compiled inline as before, but this should be written:
160                expr {1 + [string length abc]}
161        which will be compiled inline for speed. This prevents:
162                expr 1 + {[mindless error]}
163        from seg faulting, and only affects optimizations for degenerate cases
164        [Bug 3737]
165
1661999-12-01  Scott Redman <redman@scriptics.com>
167
168        * generic/tcl.decls:
169        * generic/tclMain.c:
170        * unix/tclAppInit.c:
171        * win/tclAppInit.c: Added two new internal functions,
172        TclSetStartupScriptFileName() and TclGetStartupScriptFileName() and
173        added hooks into the main() code for supporting TclPro and other "big"
174        shells more easily without requiring a copy of the main() code.
175
176        * generic/tclEncoding.c:
177        * generic/tclEvent.c: Moved encoding-related startup code from
178        tclEvent.c into the more appropriate tclEncoding.c.
179
1801999-11-30  Jeff Hobbs  <hobbs@scriptics.com>
181
182        * generic/tclIO.c: fix from Kupries for Tcl_UnstackChannel that
183        correctly handles resetting translation and encoding.
184
185        * generic/tclLoad.c: #def'd out the unloading of DLLs at finalize time
186        for Unix in TclFinalizeLoad. [Bug 2560 3373] Should be parametrized
187        to allow for user to specify unload or not.
188
189        * win/tclWinTime.c: fixed handling of %Z on NT for time zones that
190        don't have DST.
191
1921999-11-29  Jeff Hobbs  <hobbs@scriptics.com>
193
194        * library/dde1.1/pkgIndex.tcl:
195        * library/reg1.0/pkgIndex.tcl: added supported for debugged versions
196        of the libraries
197
198        * unix/tclUnixPipe.c: fixed PipeBlockModeProc to properly set
199        isNonBlocking flag on pipe. [Bug 1356 710]
200        removed spurious fcntl call from PipeBlockModeProc
201
202        * tests/scan.test:
203        * generic/tclScan.c: fixed scan where %[..] didn't match anything and
204        added test case. [Bug 3700]
205
2061999-11-24  Jeff Hobbs  <hobbs@scriptics.com>
207
208        * doc/open.n:
209        * win/tclWinSerial.c: adopted patch from Schroedter to handle
210        fconfigure $sock -lasterror on Windows. [RFE 3368]
211
212        * generic/tclCmdIL.c: made SORTMODE_INTEGER work with Longs [Bug 3652]
213
2141999-11-23  Scott Stanton  <stanton@scriptics.com>
215
216        * library/tcltest1.0/tcltest.tcl: Fixed bug where tcltest output went
217        to stdout instead of the specified output file in some cases.
218
2191999-11-19  Jeff Hobbs  <hobbs@scriptics.com>
220
221        * generic/tclProc.c: backed out change from 1999-11-18 as it could
222        affect return string from upvar as well.
223
224        * tools/tcl.wse.in: added tcltest1.0 library to distribution list
225
226        * doc/http.n:
227        * library/http2.1/http.tcl:
228        * library/http2.1/pkgIndex.tcl: updated http package to 2.2
229
2301999-11-18  Jeff Hobbs  <hobbs@scriptics.com>
231
232        * unix/tcl.m4: added defined for _THREAD_SAFE in --enable-threads
233        case; added check for pthread_mutex_init in libc; in AIX case, with
234        --enable-threads ${CC}_r is used; fixed flags when using gcc on SCO
235
236        * generic/tclProc.c: corrected error reporting for default case at the
237        global level for uplevel command.
238
239        * generic/tclIOSock.c: changed int to size_t type for len in
240        TclSockMinimumBuffers.
241
242        * generic/tclCkalloc.c: fixed Tcl_DbCkfree to return a value on NULL
243        input. [Bug 3400]
244
245        * generic/tclStringObj.c: fixed support for passing in negative length
246        to Tcl_SetUnicodeObj, et al handling routines. [Bug 3380]
247
248        * doc/scan.n:
249        * tests/scan.test:
250        * generic/tclScan.c: finished support for inline scan by supporting
251        XPG identifiers.
252
253        * doc/http.n:
254        * library/http2.1/http.tcl: added register and unregister commands to
255        http:: package (better support for tls/SSL), as well as -type argument
256        to http::geturl. [RFE 2617]
257
258        * generic/tclBasic.c: removed extra decr of numLevels in Tcl_EvalObjEx
259        that could cause seg fault. (mjansen@wendt.de)
260
261        * generic/tclEvent.c: fixed possible lack of MutexUnlock in
262        Tcl_DeleteExitHandler. [Bug 3545]
263
264        * unix/tcl.m4: Added better pthreads library check and inclusion of
265        _THREAD_SAFE in --enable-threads case
266        Added support for gcc config on SCO
267
268        * doc/glob.n: added note about ..../ glob behavior on Win9*
269        * doc/tcltest.n: fixed minor example errors. [Bug 3551]
270
2711999-11-17 Brent Welch <welch@scriptics.com>
272
273        * library/http2.1/http.tcl: Correctly fixed the -timeout problem
274        mentioned in the 10-29 change. Also added error handling for failed
275        writes on the socket during the protocol.
276
2771999-11-09  Jeff Hobbs  <hobbs@scriptics.com>
278
279        * doc/open.n: corrected docs for 'a' open mode.
280
281        * generic/tclIOUtil.c: changed Tcl_Alloc to ckalloc
282
283        * generic/tclInt.h:
284        * generic/tclObj.c: rolled back changes from 1999-10-29
285        Purify noted new leaks with that code
286
287        * generic/tclParse.c: added code in Tcl_ParseBraces to test for
288        possible unbalanced open brace in a comment
289
290        * library/init.tcl: removed the installed binary directory from the
291        auto_path variable
292
293        * tools/tcl.wse.in: updated to 8.3a1, fixed install of twind.tcl and
294        koi8-r.enc files
295
296        * unix/tcl.m4: added recognition of pthreads library for AIX
297
2981999-10-29  Brent Welch <welch@scriptics.com>
299
300        * generic/tclInt.h: Modified the TclNewObj and TclDecrRefCount in two
301        ways. First, in the case of TCL_THREADS, we do not use the special
302        Tcl_Obj allocator because that is a source of lock contention. Second,
303        general code cleanup to eliminate duplicated code. In particular,
304        TclDecrRefCount now uses TclFreeObj instead of duplicating that code,
305        so it is now identical to Tcl_DecrRefCount.
306
307        * generic/tclObj.c: Changed Tcl_NewObj so it uses the TclNewObj macro
308        instead of duplicating the code. Adjusted TclFreeObj so it understands
309        the TCL_THREADS case described above.
310
311        * library/http2.1/http.tcl: Fixed a bug in the handling of the
312        state(status) variable when the -timeout flag is specified. Previously
313        it was possible to leave the status undefined instead of empty, which
314        caused errors in http::status
315
3161999-10-28  Jeff Hobbs  <hobbs@scriptics.com>
317
318        * unix/aclocal.m4: made it just include tcl.m4
319
320        * library/tcltest1.0/tcltest.tcl: updated makeFile to return full
321        pathname of file created
322
323        * generic/tclStringObj.c: fixed Tcl_AppendStringsToObjVA so it only
324        iterates once over the va_list (avoiding a memcpy of it, which is not
325        portable).
326
327        * generic/tclEnv.c: fixed possible ABR error in environ array
328
329        * tests/scan.test:
330        * generic/tclScan.c: added support for use of inline scan, XPG3
331        currently not included
332
333        * tests/incr.test:
334        * tests/set.test:
335        * generic/tclCompCmds.c: fixed improper bytecode handling of 'eval
336        {set array($unknownvar) 5}' (also for incr). [Bug 3184]
337
338        * win/tclWinTest.c: added testvolumetype command, as atime is
339        completely ignored for Windows FAT file systems
340        * win/tclWinPort.h: added sys/utime.h to includes
341        * unix/tclUnixPort.h: added utime.h to includes
342        * doc/file.n:
343        * tests/cmdAH.test:
344        * generic/tclCmdAH.c: added time arguments to atime and mtime file
345        command methods (support 'touch' functionality)
346
3471999-10-20  Jeff Hobbs  <hobbs@scriptics.com>
348
349        * unix/tclUnixNotfy.c: fixed event/io threading problems by making
350        triggerPipe non-blocking. [Bug 2792]
351
352        * library/tcltest1.0/tcltest.tcl:
353        * generic/tclThreadTest.c: fixed mem leaks in threads
354
355        * generic/tclResult.c: fixed Tcl_AppendResultVA so it only iterates
356        once over the va_list (avoiding a memcpy of it, which is not
357        portable).
358
359        * generic/regc_color.c: fixed mem leak and assertion, from HS
360
361        * generic/tclCompile.c: removed savedChar trick that appeared to be
362        causing a segv when the literal table was released
363
364        * tests/string.test:
365        * generic/tclCmdMZ.c: fixed [string index] to return ByteArrayObj when
366        indexing into one (test case string-5.16). [Bug 2871]
367
368        * library/http2.1/http.tcl: protected gets with catch. [Bug 2665]
369
3701999-10-19  Jennifer Hom  <jenn@scriptics.com>
371
372        * tests/tcltest.test:
373        * doc/tcltest.n:
374        * library/tcltest1.0/tcltest.tcl: Removed the extra return at the end
375        of the tcltest.tcl file, added version information about tcl.
376
377        Applied patches sent in by Andreas Kupries to add helper procs for
378        debug output, add 3 new flags (-testsdir, -load, -loadfile), and
379        internally refactors common code for dealing with paths into separate
380        procedures. [Bug 2838, 2842]
381
382        Merged code from core-8-2-1 branch that changes the checks for the
383        value of tcl_interactive to also incorporate a check for the existence
384        of the variable.
385
386        * tests/autoMkindex.test:
387        * tests/pkgMkIndex.test: Explicitly cd to ::tcltest::testsDirectory at
388        the beginning of the test run
389
390        * tests/basic.test: Use version information defined in tcltest instead
391        of hardcoded version number
392
393        * tests/socket.test: package require tcltest before attempting to use
394        variable defined in tcltest namespace
395
396        * tests/unixInit.test:
397        * tests/unixNotfy.test: Added explicit exits needed to avoid problems
398        when the tests area run in wish.
399
4001999-10-12  Jim Ingham  <jingham@scriptics.com>
401
402        * mac/tclMacLoad.c: Stupid bug - we converted the filename to
403        external, but used the unconverted version.
404        * mac/tclMacFCmd.c: Fix a merge error in the bug fix for [Bug 2869]
405
4061999-10-12  Jeff Hobbs  <hobbs@scriptics.com>
407
408        * generic/regc_color.c:
409        * generic/regc_cvec.c:
410        * generic/regc_lex.c:
411        * generic/regc_locale.c:
412        * generic/regcomp.c:
413        * generic/regcustom.h:
414        * generic/regerrs.h:
415        * generic/regex.h:
416        * generic/regexec.c:
417        * generic/regguts.h:
418        * generic/tclRegexp.c:
419        * generic/tclTest.c:
420        * tests/reg.test: updated to Henry Spencer's new regexp engine
421        (mid-Sept 99). Should greatly reduce stack space reqs.
422
423        * library/tcltest1.0/pkgIndex.tcl: fixed procs in pkgIndex.tcl file
424
425        * generic/tclEnv.c: fixed mem leak with putenv and DStrings
426        * doc/Encoding.3: corrected docs
427        * tests/basic.test: updated test cases for 8.3
428        * tests/encoding.test: fixed test case that change system encoding to
429        a double-byte one (this causes a bogus mem read error for purify)
430        * unix/Makefile.in: purify has to use -best-effort to instrument
431        * unix/tclAppInit.c: identified potential mem leak when compiling
432        tcltest (not critical)
433        * unix/tclUnixPipe.c: fixed mem leak in TclpCreateProcess when doing
434        alloc between vfork and execvp.
435        * unix/tclUnixTest.c: fixed mem leak in findexecutable test command
436
4371999-10-05  Jeff Hobbs  <hobbs@scriptics.com>
438
439        * {win,mac,unix,tools,}/README:
440        * win/README.binary:
441        * win/makefile.vc:
442        * {win,unix}/configure.in:
443        * generic/tcl.h:
444        * library/init.tcl: updated to 8.3a1 from 8.2.0.
445
446        * library/http2.1/http.tcl: fixed possible use of global c var.
447
448        * win/tclWinReg.c: fixed registry command to properly 'get'
449        HKEY_PERFORMANCE_DATA root key data. Needs more work.
450
451        * generic/tclNamesp.c:
452        * generic/tclVar.c:
453        * generic/tclCmdIL.c: fixed comment typos
454
455        * mac/tclMacFCmd.c: fixed filename stuff to support UTF-8. [Bug 2869]
456
457        * win/tclWinSerial.c: changed SerialSetOptionProc to return TCL_OK by
458        default. (patch from Rolf Schroedter)
459
4601999-09-21  Jennifer Hom  <jenn@scriptics.com>
461
462        * library/tcltest1.0/tcltest.tcl: Applied patches sent in by Andreas
463        Kupries to fix typos in comments and ::tcltest::grep, fix hook
464        redefinition problems, and change "string compare" to "string equal".
465        [Bug 2836, 2837, 2839, 2840]
466
4671999-09-20  Jeff Hobbs  <hobbs@scriptics.com>
468
469        * tests/env.test:
470        * unix/Makefile.in: added support for AIX LIBPATH env var. [Bug 2793]
471        removed second definition of INCLUDE_INSTALL_DIR (the one that
472        referenced @includedir@) [Bug 2805]
473        * unix/dltest/Makefile.in: added -lc to LIBS. [Bug 2794]
474
4751999-09-16  Jeff Hobbs  <hobbs@scriptics.com>
476
477        * tests/timer.test: changed after delay in timer test 6.29 from 1 to
478        10. [Bug 2796]
479
480        * tests/pkg.test:
481        * generic/tclPkg.c: fixed package version check to disallow 1.2..3
482        [Bug 2539]
483
484        * unix/Makefile.in: fixed gendate target - this never worked since RCS
485        was intro'd.
486        * generic/tclGetDate.y: updated to reflect previous changes to
487        tclDate.c (leap year calc) and added CEST and UCT time zone
488        recognition. Fixed 4 missing UCHAR() casts. [Bug 2717, 954, 1245,
489        1249]
490
491        * generic/tclCkalloc.c: changed Tcl_DumpActiveMemory to really dump to
492        stderr and close it [Bug 725] and changed Tcl_Ckrealloc and
493        Tcl_Ckfree to not bomb when NULL was passed in [Bug 1719] and changed
494        Tcl_Alloc, et al to not panic when a alloc request for zero came
495        through and NULL was returned (valid on AIX, Tru64) [Bug 2795, etc]
496
497        * tests/clock.test:
498        * doc/clock.n:
499        * generic/tclClock.c: added -milliseconds switch to clock clicks to
500        guarantee that the return value of clicks is in the millisecs
501        granularity. [Bug 2682, 1332]
502
5031999-09-15  Jeff Hobbs  <hobbs@scriptics.com>
504
505        * generic/tclIOCmd.c: fixed potential core dump in conjunction with
506        stacked channels with result obj manipulation in Tcl_ReadChars. [Bug
507        2623]
508
509        * tests/format.test:
510        * generic/tclCmdAH.c: fixed translation of %0#s in format. [Bug 2605]
511
512        * doc/msgcat.n: fixed \\ bug in example. [Bug 2548]
513
514        * unix/tcl.m4:
515        * unix/aclocal.m4: added fix for FreeBSD-[1-2] recognition [Bug 2070]
516        and fix for IRIX SHLIB_LB_LIBS. [Bug 2610]
517
518        * doc/array.n:
519        * tests/var.test:
520        * tests/set.test:
521        * generic/tclVar.c: added an array unset operation, with docs and
522        tests. Variation of [Bug 1775]. Added fix in TclArraySet to check
523        when trying to set in a non-existent namespace. [Bug 2613]
524
5251999-09-14  Jeff Hobbs  <hobbs@scriptics.com>
526
527        * tests/linsert.test:
528        * doc/linsert.n:
529        * generic/tclCmdIL.c: fixed end-int interpretation of linsert to
530        correctly calculate value for end, added test and docs. [Bug 2693]
531
532        * doc/regexp.n:
533        * doc/regsub.n:
534        * tests/regexp.test:
535        * generic/tclCmdMZ.c: add -start switch to regexp and regsub with docs
536        and tests
537
538        * doc/switch.n: added proper use of comments to example.
539        * generic/tclCmdMZ.c: changed switch to complain when an error occurs
540        that seems to be due to a misplaced comment.
541
542        * generic/tclCmdMZ.c: fixed illegal ref for \[0-9] substitutions in
543        regsub. [Bug 2723]
544
545        * generic/tclCmdMZ.c: changed [string equal] to return an Int type
546        object (was a Boolean)
547
5481999-09-01  Jennifer Hom  <jenn@scriptics.com>
549
550        * library/tcltest1.0/tcltest.tcl: Process command-line arguments only
551        ::tcltest doesn't have a child namespace (requires that command-line
552        args are processed in that namespace)
553
5541999-09-01  Jeff Hobbs  <hobbs@scriptics.com>
555
556        * generic/tclParseExpr.c: changed '"' to '\"' to make FreeBSD happy.
557        [Bug 2625]
558        * generic/tclProc.c: moved static buf to better location and changed
559        static msg that would overflow in ProcessProcResultCode [Bug 2483]
560        and added Tcl_DStringFree to Tcl_ProcObjCmd. Also reworked size of
561        static buffers.
562        * tests/stringObj.test: added test 9.11
563        * generic/tclStringObj.c: changed Tcl_AppendObjToObj to properly
564        handle the 1-byte dest and mixed src case where both had had Unicode
565        string len checks made on them. [Bug 2678]
566        * unix/aclocal.m4:
567        * unix/tcl.m4: adjusted fix from 8-21 to add -bnoentry to the AIX-*
568        case and readjusted the range
569
5701999-08-31  Jennifer Hom  <jenn@scriptics.com>
571
572        * library/tcltest1.0/tcltest.tcl:
573        * doc/tcltest.n:
574        * tests/README: Modified testConstraints variable so that it isn't
575        unset every time ::tcltest::initConstraints is called and cleaned up
576        documentation in the README file and the man page.
577
5781999-08-27  Jennifer Hom  <jenn@scriptics.com>
579
580        * tests/env.test:
581        * tests/exec.test:
582        * tests/io.test:
583        * tests/event.test:
584        * tests/tcltest.test: Added 'exit' calls to scripts that the tests
585        themselves write, and removed accidental checkin of knownBugThreaded
586        constraints for Solaris and Linux.
587
588        * library/tcltest1.0/tcltest.tcl: Modified tcltest so that variables
589        are only initialized to their default values if they did not
590        previously exist.
591
5921999-08-26  Jennifer Hom  <jenn@scriptics.com>
593
594        * tests/tcltest.test:
595        * library/tcltest1.0/tcltest.tcl: Added a -args flag that sets a
596        variable named ::tcltest::parameters based on whatever's being sent in
597        as the argument to the -args flag.
598
5991999-08-23  Jennifer Hom  <jenn@scriptics.com>
600
601        * tests/tcltest.test: Added additional tests for -tmpdir, marked all
602        tests that use exec as unixOrPc.
603
604        * tests/encoding.test:
605        * tests/interp.test:
606        * tests/macFCmd.test:
607        * tests/parseOld.test:
608        * tests/regexp.test: Applied patches from Jim Ingham to add encoding
609        to a Mac only interp test, change an error message in macFCmd.tet, put
610        a comment in parseOld.test, fix tests using the testencoding path
611        command, and put unixOrPc constraints on tests that use exec.
612
6131999-08-21  Jeff Hobbs  <hobbs@scriptics.com>
614
615        * unix/aclocal.m4: Changed AIX-4.[2-9] check to AIX-4.[1-9] [Bug 1909]
616
6171999-08-20  Jeff Hobbs  <hobbs@scriptics.com>
618
619        * generic/tclPosixStr.c: fixed typo. [Bug 2592]
620
621        * doc/*: fixed various nroff bugs in man pages. [Bug 2503 2588]
622
6231999-08-19  Jeff Hobbs  <hobbs@scriptics.com>
624
625        * win/README.binary: fixed version info and some typos. [Bug 2561]
626
627        * doc/interp.n: updated list of commands available in a safe
628        interpreter. [Bug 2526]
629
630        * generic/tclIO.c: changed Tcl_GetChannelNames* to use style guide
631        headers (pleases HP cc)
632
6331999-08-18  Jeff Hobbs  <hobbs@scriptics.com>
634
635        * doc/Eval.3: fixed doc on input args. [Bug 2114]
636
637        * doc/OpenFileChnl.3:
638        * doc/file.n:
639        * tests/cmdAH.test:
640        * tclIO.c:
641        * tclCmdAH.c: added "file channels ?pattern?" tcl command, with
642        associated Tcl_GetChannelNames and Tcl_GetChannelNamesEx public C APIs
643        (added to tcl.decls as well), with docs and tests.
644
645        * tests/expr.test:
646        * generic/tclCompile.c: add TCL_TOKEN_VARIABLE to the part types that
647        cause differed compilation for exprs, to correct the expr
648        double-evaluation problem for vars. Added test cases. Related to [Bug
649        732]
650
651        * unix/Makefile.in: changed the dependency structure so that install-*
652        is dependent on * (ie - install-binaries is dependent on binaries).
653
654        * library/auto.tcl:
655        * library/init.tcl:
656        * library/ldAout.tcl:
657        * library/package.tcl:
658        * library/safe.tcl:
659        * library/word.tcl:
660        * library/http2.1/http.tcl:
661        * library/msgcat1.0/msgcat.tcl: updated libraries to better Tcl style
662        guide (no more string comparisons with == or !=, spacing changes).
663
6641999-08-05  Jim Ingham  <jingham@cygnus.com>
665
666        * mac/tclMacProjects.sea.hqx: Rearrange the projects so that the build
667        directory is separate from the sources. Much more convenient!
668
6691999-08-13  Scott Redman <redman@scriptics.com>
670
671        * /: 8.2.0 tagged for final release
672
6731999-08-12  Scott Stanton  <stanton@scriptics.com>
674
675        * win/Makefile.in: Added COMPILE_DEBUG_FLAGS macro to make it easier
676        to turn on compiler tracing.
677
678        * tests/parse.test:
679        * generic/tclParse.c: Fixed bug in Tcl_EvalEx where the termOffset was
680        not being updated in cases where the evaluation returned a non TCL_OK
681        error code. [Bug 2535]
682
6831999-08-12  Scott Redman  <redman@scriptics.com>
684
685        * win/tclWinSerial.c: Applied patch from Petteri Kettunen to remove
686        compiler warning.
687
6881999-08-10  Scott Redman  <redman@scriptics.com>
689
690        * generic/tclAlloc.c:
691        * generic/tclCmdIL.c:
692        * generic/tclIO.c:
693        * generic/tclThread.c:
694        * win/tclWinThrd.c:
695        * unix/tclUnixThrd.c: Fixed Brent's changes so that they work on
696        Windows (and he fixed the bug in the Unix thread implementation).
697
6981999-08-09  Brent Welch  <welch@scriptics.com>
699
700        * generic/tcl.decls:
701        * generic/tclAlloc.c:
702        * generic/tclCkalloc.c:
703        * generic/tclCmdIL.c:
704        * generic/tclDecls.h:
705        * generic/tclIO.c:
706        * generic/tclInt.decls:
707        * generic/tclIntDecls.h:
708        * generic/tclStubInit.c:
709        * generic/tclVar.c:
710        * mac/tclMacThrd.c:
711        * unix/tclUnixThrd.c:
712        * win/tclWinThrd.c: Added use of Tcl_GetAllocMutex to tclAlloc.c and
713        tclCkalloc.c so they can be linked against alternate thread packages.
714        Added Tcl_GetChannelNames to tclIO.c. Added TclVarTraceExists hook so
715        "info exists" triggers read traces exactly like it did in Tcl 7.6.
716        Stubs table changes to reflect new internal and external APIs.
717
7181999-08-09  Jeff Hobbs  <hobbs@scriptics.com>
719
720        * tests/string.test: added largest_int proc to adapt for >32 bit
721        machines and int overflow testing.
722        * tests/tcltest.test: fixed minor error in 8.2 result (from dgp)
723
724        * doc/Object.3: clarified Tcl_DecrRefCount docs. [Bug 1952]
725        * doc/array.n: clarified array pattern docs. [Bug 1330]
726        * doc/clock.n: fixed clock docs. [Bug 693]
727        * doc/lindex.n: clarified to account for new end-int behavior.
728        * doc/string.n: fixed formatting errors. [Bug 2188 2189]
729        * doc/tclvars.n: fixed doc error. [Bug 2042]
730        * library/init.tcl: fixed path handling in auto_execok (it could miss
731        including the normal path on some Windows machines). [Bug 1276]
732
7331999-08-05  Jeff Hobbs  <hobbs@scriptics.com>
734
735        * doc/tclvars.n: Made it clear that tcl_pkgPath was not set for
736        Windows (already mentioned in init.tcl). [Bug 2455]
737        * generic/tclLiteral.c: fixed reference to bytes that might not be
738        null terminated (using objPtr->bytes, which is). [Bug 2496]
739        * library/http2.1/http.tcl: Made use of "i" in init section use local
740        var and start at 0 (was 1). [Bug 2502]
741
7421999-08-04  Scott Stanton  <stanton@scriptics.com>
743
744        * tests/reg.test: Added test for REG_EXPECT bug fixed by Henry's
745        patch.
746
747        * generic/regc_nfa.c:
748        * generic/regcomp.c:
749        * generic/rege_dfa.c:
750        * generic/regexec.c:
751        * generic/regguts.h: Applied patches supplied by Henry Spencer to
752        greatly enhance the performance of certain classes of regular
753        expressions. [Bug 2440, 2447]
754
7551999-08-03  Scott Redman  <redman@scriptics.com>
756
757        * win/tclWinInt.h: Remove function declarations in header that was
758        moved to tclInt.decls file in previous changes.
759
7601999-08-02  Scott Redman  <redman@scriptics.com>
761
762        * unix/configure.in:
763        * win/configure.in: Change beta level to b2.
764
765        * generic/tcl.h:
766        * generic/tcl.decls:
767        * generic/tclDecls.h:
768        * generic/tclInt.h:
769        * generic/tclInt.decls:
770        * generic/tclIntDecls.h:
771        * generic/tclRegexp.h:
772        * generic/tclStubInit.c: Move some exported public and internal
773        functions to the stub tables. Removed functions that are in the stub
774        tables (from this and previous changes) from the original header
775        files.
776
7771999-08-01  Scott Redman  <redman@scriptics.com>
778
779        * win/tclWinSock.c: Added comment block to SocketThread() function.
780        Added code to avoid calling TerminateThread(), but instead to send a
781        message to the socket event window to tell it to terminate its thread.
782
7831999-07-30  Jennifer Hom  <jenn@scriptics.com>
784
785        * tests/tcltest.test:
786        * library/tcltest1.0/tcltest.tcl: Exit with non-zero status if there
787        were problems with the way the test suite was started (e.g. wrong #
788        arguments).
789
7901999-07-30  Jeff Hobbs  <hobbs@scriptics.com>
791
792        * generic/tclInt.decls: added declaractions necessary for the Tcl test
793        code to work wth stubs. [Bug 2445]
794
7951999-07-30  Scott Redman  <redman@scriptics.com>
796
797        * win/tclWinPipe.c:
798        * win/Makefile.in: Fixing launching of 16-bit apps on Win9x from wish.
799        The command line was primed with tclpip82.dll, but it was ignored.
800        Fixed that, then fixed the gmake makefile to build tclpip82.dll as an
801        executable.
802
803        * win/tclWinSock.c: Applied small patch to get thread-specific data
804        after initializing the socket driver.
805
806        * unix/tclUnixThrd.c: Applied patch to fix threads on Irix 6.5. Patch
807        from James Dennett. [Bug 2450]
808
809        * tests/info.test: Enable test for tclParse.c change (info complete).
810
8111999-07-30  Jeff Hobbs  <hobbs@scriptics.com>
812
813        * tclIO.c: added fix for Kupries' trf patch. [Bug 2386]
814
815        * tclParse.c: fixed bug in info complete regarding nested square
816        brackets. [Bug 2382, 2466]
817
8181999-07-29  Scott Redman  <redman@scriptics.com>
819
820        * win/tclWinChan.c: Allow tcl to open CON and NUL, even for std
821        channels. Checking for bad/unusable std channels was moved to Tk since
822        its only purpose was to check whether to use the Tk Console Window for
823        the std channels. [Bug 2393 2392 2209 2458]
824
825        * unix/mkLinks.tcl: Applied patch to avoid linking pack.n to
826        pack-old.n. Patch from Don Porter. [Bug 2469]
827
828        * doc/Encoding.n: Applied patch to fix typo in .SH NAME line. Patch
829        from Don Porter. [Bug 2451]
830
831        * win/tclWinSock.c: Free Win32 Event handles when destroying the
832        socket helper thread.
833
8341999-07-28  Jennifer Hom  <jenn@scriptics.com>
835
836        * tests/tcltest.test:
837        * library/tcltest1.0/tcltest.tcl: Fixed the condition under which
838        ::tcltest::PrintError had an infinite loop problem and added a test
839        case for it. Added an optional argument to ::tcltest::getMatchingFiles
840        telling it where to search for test files.
841
8421999-07-27  Scott Redman  <redman@scriptics.com>
843
844        * tools/tclSplash.bmp: Updated Windows installer bitmap to ready
845        Tcl/Tk Version 8.2.
846
8471999-07-26  Scott Redman  <redman@scriptics.com>
848
849        * tests/tcltest.test: Need to close the new core file, there seems to
850        be a hang in threaded WinNT if the file isn't closed. Open issue, need
851        to fix that hang.
852
853        * tests/httpold.test: Add time delay in response from Http server so
854        that test cases can properly detect timeout conditions with threads
855        enabled on multi-CPU WinNT.
856
857        * tests/winFCmd.test: Test case winFcmd-1.33 was looking for
858        c:\windows, which may not exist. Instead, create a new directory on
859        c:\ and use it for the test.
860
861        * win/tclWinConsole.c:
862        * win/tclWinPipe.c:
863        * win/tclWinSock.c: Fix terminating helper threads by holding any
864        mutexes from the primary thread while waiting for the helper thread to
865        terminate. Without these changes, the test suite hangs on WinNT with 2
866        CPUs and threads enabled. Open issue, seems to be a sporadic hang on
867        dual CPU systems still (very rare).
868
8691999-07-26  Jennifer Hom  <jenn@scriptics.com>
870
871        * tests/tcltest.test:
872        * library/tcltest1.0/tcltest.tcl:
873        * doc/tcltest.n: Cleaned up code in ::tcltest::PrintError, revised
874        documentation, and added tests for the tcltest package.
875
8761999-07-23  Scott Redman  <redman@scriptics.com>
877
878        * tests/info.test:
879        * generic/tclParse.c: Removed patch for info command, breaks test
880        cases on Unix. Patch was bad and needs to be redone properly. [Bug
881        2382]
882
8831999-07-22  Scott Redman  <redman@scriptics.com>
884
885        * Changed version to 8.2b2.
886
887        * win/tclWinSock.c: Fixed hang with threads enabled, fixed semaphores
888        with threads disabled.
889
890        * win/safe.test: Fixed safe-6.3 with threads enabled.
891
892        * win/Makefile.in: Fixed calling of tcltest to fix safe.test failures
893        due to path TCL_LIBRARY path.
894
895        * win/tclWinPort.h: Block out include of sys/*.h in order to build
896        extensions with MetroWerks compiler for Win32. [Bug 2385]
897
898        * generic/tclCmdMZ.c:
899        * generic/tclIO.c: Fix ANSI-style prototypes based on patch from
900        Ulrich Ring. [Bug 2391]
901
902        * unix/Makefile.in: Need to make install-sh executable before calling
903        (with chmod +x). [Bug 2413]
904
905        * tests/var.test:
906        * generic/tclVar.c: Fixed bug that caused a seg. fault when using
907        "array set a(b) {}", which is a bad array name anyway. Now the "array
908        set" command will return an error in this case. Added test case and
909        fixed existing test. [Bug 2427]
910
9111999-07-21  Scott Redman  <redman@scriptics.com>
912
913        * tests/info.test:
914        * generic/tclParse.c: Applied patch to fix "info complete" for the
915        string {[a [b]}. Patch from Peter Spjuth. [Bug 2382]
916
917        * doc/Utf.3:
918        * generic/tcl.decls:
919        * generic/tclDecls.h:
920        * generic/tclUtf.c: Changed function declarations in
921        non-platform-specific public APIs to use "unsigned long" instead of
922        "size_t", which may not be defined on certain compilers (rather than
923        include sys/types.h, which may not exist).
924
925        * unix/Makefile.in: Added the Windows configure script to the
926        distribution file list, already shipping configure.in and the .m4
927        files, but needed the configure script itself.
928
929        * win/makefile.vc: Changed version number of DDE package in VC++
930        makefile to use 1.1 instead of 1.0.
931
932        * doc/open.n: Added documentation of \\.\comX notation for opening
933        serial ports on Windows (alternative to comX:).
934
935        * tests/ioCmd.test:
936        * doc/open.n:
937        * win/tclWinSerial.c: Applied patch from Rolf Schroedter to add
938        -pollinterval option to fconfigure to modify the maxblocktime used in
939        the fileevent polling. Added documentation and fixed the test case as
940        well.
941
942        * win/tclWinSock.c: Modified 8.1.0 version of the Win32 socket driver
943        to move the handling of the socket event window in a separate thread.
944        It also turned out that Win95 & Win98 were, in some cases, getting
945        multiple FD_ACCEPTs but only handling one. Added a count for the
946        FD_ACCEPT to take care of this. Tested on NT4 SP3, NT4 SP4, Win95, and
947        Win98. [Bug 2178 2256 2259 2329 2323 2355]
948
9491999-07-21  Jerry Peek  <jpeek@scriptics.com>
950
951        * README: Small tweaks to clean up typos and wording.
952
9531999-07-20  Melissa Hirschl  <hershey@matisse.scriptics.com>
954
955        * generic/tclInitScript.h:
956        * unix/tclUnixInit.c: merged code with 8.0.5. We now use an
957        intermediate global tcl var "tclDefaultLibrary" to keep the
958        "tcl_library" var from being set by the default value in the Makefile.
959        Also fixed a bug in which caused the value of TCL_LIBRARY env var to
960        be ignored.
961        * unix/tclWinInit.c: just updated some comments.
962
9631999-07-19  Melissa Hirschl  <hershey@matisse.scriptics.com>
964
965        * library/http2.1/http.tcl: updated -useragent text to say version
966        2.1.
967
9681999-07-16  Scott Redman  <redman@scriptics.com>
969
970        * generic/tcl.decls:
971        * generic/tclDecls.h:
972        * generic/tclStubInit.c: Add Tcl_SetNotifier to stub table. [Bug 2364]
973
974        * unix/aclocal.m4:
975        * unix/tcl.m4: Add check for Alpha/Linux to correct the IEEE floating
976        flag to the compiler, should be -mieee. Patch from Don Porter.
977
978        * tools/tcl.hpj.in: Change version number of .cnt file referenced in
979        .HPJ file.
980
9811999-07-15  Scott Redman  <redman@scriptics.com>
982
983        * tools/tcl.wse.in: Fixed naming of target files for Windows.
984
9851999-07-14  Jerry Peek  <jpeek@scriptics.com>
986
987        * doc/re_syntax.n: Deleted sentence as suggested by Scott S.
988
9891999-07-12  Jerry Peek  <jpeek@scriptics.com>
990
991        * doc/re_syntax.n: Removed two notes to myself (oops), cleaned up
992        wording, fixed changebars, made two examples easier to read.
993
9941999-07-11  Scott Redman  <redman@scriptics.com>
995
996        * win/makefile.vc: Since the makefile.vc should continue to work while
997        we're working out bugs/issues in the new TEA-style
998        autoconf/configure/gmake build mechanism for Windows, the version
999        numbers of the Tcl libraries need to remain in sync. Modified the
1000        version numbers in the makefile to reflect the change to 8.2b1.
1001
10021999-07-09  Scott Redman  <redman@scriptics.com>
1003
1004        * win/configure.in: Eval DLLSUFFIX, LIBSUFFIX, and EXESUFFIX in the
1005        configure script so that substitutions get expanded before being
1006        placed in the Makefile. The "d" portion for debug libraries and DLLs
1007        was not being set properly.
1008
10091999-07-08  Scott Stanton  <stanton@scriptics.com>
1010
1011        * tests/string.test:
1012        * generic/tclCmdMZ.c: Fixed bug in string range bounds checking code.
1013
10141999-07-08  Jennifer Hom  <jenn@scriptics.com>
1015
1016        * doc/tcltest.n:
1017        * library/tcltest1.0/tcltest.tcl: Removed -asidefromdir and
1018        -relateddir flags, removed unused ::tcltest::dotests proc, cleaned up
1019        implementation of core file checking, and fixed the code that checks
1020        for 1-letter flag abbreviations.
1021
10221999-07-08  Scott Stanton  <stanton@scriptics.com>
1023
1024        * win/Makefile.in: Added tcltest target so runtest works properly.
1025        Added missing names to the clean/distclean targets.
1026
1027        * tests/reg.test:
1028        * generic/rege_dfa.c: Applied fix supplied by Henry Spencer for bug in
1029        DFA state caching under lookahead conditions. [Bug 2318]
1030
10311999-07-07  Scott Stanton  <stanton@scriptics.com>
1032
1033        * doc/fconfigure.n: Clarified default buffering behavior for the
1034        standard channels. [Bug 2335]
1035
10361999-07-06  Scott Redman  <redman@scriptics.com>
1037
1038        * win/tclWinSerial.c: New implementation of serial port driver from
1039        Rolf Shroedter (Rolf.Schroedter@dlr.de) that allows more than one byte
1040        to be read from the port. Implemented using polling instead of
1041        threads, there is a max. 10ms latency between checking the port for
1042        file events. [Bug 1980 2217]
1043
10441999-07-06  Brent Welch  <welch@scriptics.com>
1045
1046        * library/http2.0/http.tcl: Fixed the -timeout option so it handles
1047        timeouts that occur during connection attempts to hosts that are down
1048        (the only case that really matters!)
1049
10501999-07-03  Brent Welch  <welch@scriptics.com>
1051
1052        * doc/ChnlStack.3:
1053        * generic/tcl.decls:
1054        * generic/tclIO.c: Added a new variant of the "Trf patch" from Andreas
1055        Kupres that adds new C APIs Tcl_StackChannel, Tcl_UnstackChannel, and
1056        Tcl_GetStackedChannel.
1057
10581999-07-03  Brent Welch  <welch@scriptics.com>
1059
1060        * generic/tclNotify.c:
1061        * unix/tclUnixNotfy.c:
1062        * unix/tclXtTest.c:
1063        * unix/tclXtNotify.c:
1064        * win/tclWinNotify.c:
1065        * mac/tclMacNotify.c: Added Tcl_SetNotifier and the associated hook
1066        points in the notifiers to be able to replace the notifier calls at
1067        runtime. The Xt notifier and test program use this hook.
1068
10691999-07-03  Brent Welch  <welch@scriptics.com>
1070
1071        * generic/tclParse.c: Changed parsing of variable names to allow empty
1072        array names. Now "$(foo)" is a variable reference! Previous you had to
1073        use something like $::(foo), which is slower. This change is requested
1074        by Jean-Luc Fontaine for his STOOOP package.
1075
10761999-07-01  Scott Redman  <redman@scriptics.com>
1077
1078        * generic/tclCmdAH.c:
1079        * generic/tclFCmd.c: Call TclStat instead of TclpStat in order to
1080        allow Tcl_Stat hooks to work properly.
1081
10821999-06-29  Jennifer Hom  <jenn@scriptics.com>
1083
1084        * library/tcltest1.0/pkgIndex.tcl:
1085        * library/tcltest1.0/tcltest.tcl:
1086        * doc/tcltest.n:
1087        * tests/all.tcl: Added -preservecore, -limitconstraints, -help, -file,
1088        -notfile, -relateddir and -asidefromdir flags to the tcltest package
1089        along with exported proc ::tcltest::getMatchingFiles. The
1090        documentation was modified to match and all.tcl was modified to use
1091        the new functionality instead of implementing -file itself.
1092
10931999-06-28  Scott Redman  <redman@scriptics.com>
1094
1095        * generic/tclIndexObj.c:
1096        * doc/GetIndex.3:
1097        * tests/binary.test:
1098        * tests/winDde.test: Applied patch from Peter Hardie (with changes) to
1099        fix problem with Tcl_GetIndexFromObj() when the key being passed is
1100        the empty string. It used to match "" and return TCL_OK, but it should
1101        have returned TCL_ERROR instead. Added test case to "binary" and "dde"
1102        commands to check the behavior. Added documentation note as well.
1103
11041999-06-26  Scott Redman  <redman@scriptics.com>
1105
1106        * win/tclWinDde.c: Applied patch from Peter Hardie to add poke command
1107        to dde. Also rev'd version of dde package to 1.1. [Bug 1738]
1108
11091999-06-25  Jennifer Hom  <jenn@scriptics.com>
1110
1111        * unix/Makefile.in:
1112        * win/Makefile.in:
1113        * library/tcltest1.0/pkgIndex.tcl:
1114        * library/tcltest1.0/tcltest.tcl:
1115        * library/tcltest1.0: Added initial implementation of the Tcl test
1116        harness package. This package was based on the defs.tcl file that was
1117        part of the tests directory. Reversed the way that tests were
1118        evaluated to fix a problem with false passes.
1119
1120        * doc/tcltest.n: Added documentation for the tcltest package.
1121
1122        * tests/README:
1123        * tests/defs.tcl:
1124        * tests/all.tcl: Modified all test files (tests/*.test) and all.tcl to
1125        use the new tcltest package and removed references to the defs.tcl
1126        file. Modified the README file to point to the man page for tcltest.
1127
11281999-06-25  Scott Stanton  <stanton@scriptics.com>
1129
1130        * tests/reg.test:
1131        * generic/regexec.c: Fixed bugs in non-greedy quantifiers.
1132
11331999-06-23  Jerry Peek  <jpeek@scriptics.com>
1134
1135        * doc/re_syntax.n:
1136        * doc/switch.n:
1137        * doc/lsearch.n:
1138        * doc/RegExp.3:
1139        * doc/regexp.n:
1140        * doc/regsub.n: Moved information about syntax of 8.1 regular
1141        expressions from regexp(n) manpage into new re_syntax(n) page. Added
1142        pointers from other manpages to new re_syntax(n) page.
1143
11441999-06-23  Scott Stanton  <stanton@scriptics.com>
1145
1146        * unix/Makefile.in: Changed install-doc to install-man.
1147
1148        * tools/uniParse.tcl:
1149        * tools/uniClass.tcl:
1150        * tools/README:
1151        * tests/string.test:
1152        * generic/regc_locale.c:
1153        * generic/tclUniData.c:
1154        * generic/tclUtf.c:
1155        * doc/string.n: Updated Unicode character tables to reflect latest
1156        Unicode 2.1 data. Also rationalized "regexp" and "string is"
1157        definitions of character classes.
1158
11591999-06-21  Scott Stanton  <stanton@scriptics.com>
1160
1161        * unix/tclUnixThrd.c (TclpThreadCreate): Fixed memory leak where
1162        thread attributes were not being released. [Bug 2254]
1163
11641999-06-17  Scott Stanton  <stanton@scriptics.com>
1165
1166        * tests/regexp.test:
1167        * generic/tclCmdMZ.c:
1168        * generic/tclCmdIL.c: Changed to use new regexp interfaces. Added
1169        -expanded, -line, -linestop, and -lineanchor switches to regsub.
1170
1171        * doc/RegExp.3: Documented the new regexp interfaces and the
1172        compile/execute flags.
1173
1174        * generic/tclTest.c:
1175        * generic/tclRegexp.h:
1176        * generic/tclRegexp.c:
1177        * generic/tcl.h:
1178        * generic/tcl.decls: Renamed Tcl_RegExpMatchObj to Tcl_RegExpExecObj
1179        and added a new Tcl_RegExpMatchObj that is equivalent to
1180        Tcl_RegExpMatch. Added public macros for the regexp compile/execute
1181        flags. Changed to store either an object pointer or a string pointer
1182        in the TclRegexp structure. Changed to avoid adding a reference to the
1183        object or copying the string.
1184
1185        * generic/regcomp.c: lint
1186
1187        * tests/reg.test:
1188        * generic/regex.h:
1189        * generic/regc_lex.c: Added REG_BOSONLY flag to allow Expect to
1190        iterate through a string an only find matches that start at the
1191        current position within the string.
1192
11931999-06-16  Michael Thomas  <wart@scriptics.com>
1194
1195        * unix/configure.in:
1196        * unix/Makefile.in:
1197        * unix/tcl.m4:
1198        * unix/aclocal.m4: Numerous build changes to make Tcl conform to the
1199        proposed TEA spec
1200
12011999-06-16  Melissa Hirschl  <hershey@matisse.scriptics.com>
1202
1203        * generic/tclVar.c (Tcl_VariableObjCmd): fixed premature increment in
1204        loop that was causing out-of-bounds reads on array "varName".
1205
12061999-06-16  Scott Stanton  <stanton@scriptics.com>
1207
1208        * tests/execute.test:
1209        * generic/tclExecute.c (TclExecuteByteCode): Fixed crash caused by a
1210        bug in INST_LOAD_SCALAR1 where the scalar index was read as a signed 1
1211        byte value instead of unsigned. [Bug 2243]
1212
12131999-06-14  Melissa Hirschl  <hershey@matisse.scriptics.com>
1214
1215        * doc/StringObj.3
1216        * test/stringObj.test
1217        * unix/Makefile.in
1218        * win/Makefile.in
1219        * win/makefile.vc
1220        * generic/tclStringObj.c:
1221        Merged String and Unicode object types. Added new functions to the
1222        puplic API: Tcl_NewUnicodeObj, Tcl_SetUnicodeObj, Tcl_GetUnicode,
1223        Tcl_GetUniChar, Tcl_GetCharLength, Tcl_GetRange,
1224        Tcl_AppendUnicodeToObj.
1225
12261999-06-09  Scott Stanton  <stanton@scriptics.com>
1227
1228        * generic/tclUnicodeObj.c: Lots of cleanup and simplification. Fixed
1229        several memory bugs. Added TclAppendUnicodeToObj.
1230
1231        * generic/tclInt.h: Added declarations for various Unicode string
1232        functions.
1233
1234        * generic/tclRegexp.c:
1235        * generic/tclCmdMZ.c: Changed to use new Unicode string interfaces for
1236        better performance.
1237
1238        * generic/tclRegexp.h:
1239        * generic/tclRegexp.c:
1240        * generic/tcl.h:
1241        * generic/tcl.decls: Added Tcl_RegExpMatchObj and Tcl_RegExpGetInfo
1242        calls to access lower level regexp API. These features are needed by
1243        Expect. This is a preliminary implementation pending final review and
1244        cleanup.
1245
1246        * generic/tclCmdMZ.c:
1247        * tests/string.test: Fixed bug where string map failed on null strings
1248
1249        * generic/regexec.c:
1250        * unix/tclUnixNotfy.c: lint
1251
1252        * tools/genStubs.tcl: Changed to always write output in LF mode.
1253
12541999-06-08  Scott Stanton  <stanton@scriptics.com>
1255
1256        * win/tclWinSock.c: Rolled back to the 8.1.0 implementation because of
1257        serious problems with the new driver. Basically no incoming socket
1258        connections would be reported to a server port. The 8.1.1 code needs
1259        to be redesigned and fixed correctly.
1260
12611999-06-07  Melissa Hirschl  <hershey@matisse.scriptics.com>
1262
1263        * tests/string.test:
1264        * generic/tclVar.c (Tcl_SetVar2Ex):
1265        * generic/tclStringObj.c (Tcl_AppendObjToObj):
1266        * generic/tclCmdMZ.c (Tcl_StringObjCmd): optimized the string index,
1267        string length, string range, and append command in cases where the
1268        object's internal rep is a bytearray. Objects with other internal reps
1269        are converted to have the new unicode internal rep.
1270
1271        * unix/Makefile.in:
1272        * win/Makefile.in:
1273        * win/Makefile.vc:
1274        * tests/unicode.test:
1275        * generic/tclInt.h:
1276        * generic/tclObj.c:
1277        * generic/tclUnicodeObj.c: added a new object type to store the
1278        unicode representation of a string.
1279
1280        * generic/tclTestObj.c: added the objtype option to the testobj
1281        command. This option returns the name of the type of internal rep an
1282        object has.
1283
12841999-06-04  Scott Stanton  <stanton@scriptics.com>
1285
1286        * win/configure.in:
1287        * win/Makefile.in: Windows build now handles static/dynamic
1288        debug/nodebug builds and supports the standard targets using Cygwin
1289        user tools plus GNU make and autoconf.
1290
12911999-06-03  Scott Stanton  <stanton@scriptics.com>
1292
1293        * generic/tclCmdMZ.c (Tcl_StringObjCmd):
1294        * tests/string.test: Fixed bug where string equal/compare -nocase
1295        reported wrong result on null strings. [Bug 2138]
1296
12971999-06-02  Scott Stanton  <stanton@scriptics.com>
1298
1299        * generic/tclUtf.c (Tcl_UtfNcasecmp): Fixed incorrect computation of
1300        relative ordering. [Bug 2135]
1301
13021999-06-01  Scott Stanton  <stanton@scriptics.com>
1303
1304        * unix/configure.in: Fixed various small configure.in patches
1305        submitted by Jan Nijtmans. [Bug 2121]
1306
1307        * tests/reg.test:
1308        * generic/regc_color.c:
1309        * generic/regc_cvec.c:
1310        * generic/regc_lex.c:
1311        * generic/regc_locale.c:
1312        * generic/regc_nfa.c:
1313        * generic/regcomp.c:
1314        * generic/regcustom.h:
1315        * generic/rege_dfa.c:
1316        * generic/regerror.c:
1317        * generic/regerrs.h:
1318        * generic/regex.h:
1319        * generic/regexec.c:
1320        * generic/regfree.c:
1321        * generic/regfronts.c:
1322        * generic/regguts.h:
1323        * generic/tclCmdMZ.c:
1324        * generic/tclRegexp.c:
1325        * generic/tclRegexp.h:
1326        * generic/tclTest.c: Applied Henry Spencer's latest regexp patches
1327        that fix an infinite loop bug and add support for testing whether a
1328        string could match with additional input. [Bug 2117]
1329
13301999-05-28  Scott Stanton  <stanton@scriptics.com>
1331
1332        * generic/tclObj.c: Changed to eliminate use of isupper/tolower in
1333        favor of the Unicode versions.
1334
1335        * win/Makefile.in:
1336        * win/configure.in: Added preliminary TEA implementation.
1337
1338        * win/tclWinDde.c: Fixed bug where dde calls were being passed an
1339        invalid dde handle because Initialize had not been called. [Bug 2124]
1340
13411999-05-26  Scott Redman  <redman@scriptic.com>
1342
1343        * generic/tclThreadTest.c: Fixed race condition in testthread code
1344        that showed up in the WinNT test suite intermittently.
1345
1346        * win/tclWinSock.c: Fixed a hang in the WinNT socket driver, wake up
1347        the socket thread every 100ms to check for events on the sockets that
1348        did not wake up the thread (race condition).
1349
13501999-05-24  Scott Stanton  <stanton@scriptics.com>
1351
1352        * tools/genStubs.tcl: Changed to allow a list of platforms instead of
1353        just one at a time.
1354
1355        * generic/tcl.decls:
1356        * generic/tclCmdMZ.c:
1357        * generic/tclDecls.h:
1358        * generic/tclInt.decls:
1359        * generic/tclIntDecls.h:
1360        * generic/tclPort.h:
1361        * generic/tclStubInit.c:
1362        * generic/tclStubLib.c: Various header file related changes and other
1363        lint to try to get the Mac builds working.
1364
13651999-05-21  Scott Redman  <redman@scriptics.com>
1366
1367        * win/tclWinPipe.c: Fix bug when launching command.com on Win95/98.
1368        Need to wait for the procInfo.hProcess of the process that was
1369        created, not the hProcess of the current process. [Bug 2105]
1370
13711999-05-20  Scott Redman  <redman@scriptics.com>
1372
1373        * library/init.tcl: Add the directory where the executable is, and the
1374        ../lib directory relative to that, to the auto_path variable.
1375
13761999-05-19  Scott Stanton  <stanton@scriptics.com>
1377
1378        Merged in various changes submitted by Jeff Hobbs:
1379
1380        * generic/tcl.decls:
1381        * generic/tclUtf.c: Added Tcl_UniCharIs* functions for control, graph,
1382        print, and punct classes.
1383
1384        * generic/tclUtil.c:
1385        * doc/StrMatch.3: Added Tcl_StringCaseMatch() implementation to
1386        support case-insensitive globbing.
1387
1388        * doc/string.n:
1389        * unix/mkLinks:
1390        * tests/string.test:
1391        * generic/tclCmdMZ.c: Added additional character class tests, added
1392        -nocase switch to "string match", changed string first/last to use
1393        offsets.
1394
13951999-05-19  Scott Redman  <redman@scriptics.com>
1396
1397        * generic/tcl.h: Add extern "C" block around entire header file for
1398        C++ compilers to fix linkage issues. Submitted by Don Porter and Paul
1399        Duffin.
1400
1401        * generic/tclRegexp.c: Fix bug when the regexp cache is empty and an
1402        empty pattern is used in regexp ( such as {} or "" ).
1403
14041999-05-18  Scott Stanton  <stanton@scriptics.com>
1405
1406        * win/tclWinChan.c: Modified initialization code to avoid inherenting
1407        closed or invalid channels. If the standard input is anything other
1408        than a console, file, serial port, or pipe, then we fall back to the
1409        standard Tk window console.
1410
14111999-05-14  Scott Stanton  <stanton@scriptics.com>
1412
1413        * generic/tclCmdAH.c (Tcl_ForObjCmd): Fixed crash caused by failure to
1414        reset the result before evaluating the test expression.
1415
14161999-05-14  Bryan Surles  <surles@scriptics.com>
1417
1418        * generic/tclBasic.c (Tcl_CreateInterp): Added introspection variable
1419        for threaded interps. If the interp was compiled with threads enabled,
1420        the tcl_platform(threaded) variable will exist.
1421
14221999-05-14  Scott Redman  <redman@scriptics.com>
1423
1424        * generic/tclDate.c: Applied patch to fix 100-year and 400-year
1425        boundaries in leap year code, from Isaac Hollander. [Bug 2066]
1426
14271999-05-13  Scott Stanton  <stanton@scriptics.com>
1428
1429        * unix/Makefile.in:
1430        * unix/tclAppInit.c: Minor cleanup related to Xt notifier.
1431
1432        * unix/tclUnixInit.c (TclpSetInitialEncodings): Tcl now looks for an
1433        encoding subfield in the LANG/LC_ALL variables in cases where the
1434        locale is not found in the locale table. Ensure that setlocale() is
1435        called at least once so X11 will initialize properly. Also, forces the
1436        LC_NUMERIC locale to be "C" so numeric processing in scripts is not
1437        affected by the current locale setting. [Bug 1989]
1438
1439        * generic/tclRegexp.c: Increased per-thread regexp cache to 30 slots.
1440        This seems to be about the right number for larger applications like
1441        exmh. [Bug 1063]
1442
14431999-05-12  Scott Stanton  <stanton@scriptics.com>
1444
1445        * doc/tclsh.1: Updated references to rc script names to accurately
1446        reflect the platform differences on Windows.
1447
1448        * tests/regexp.test:
1449        * generic/tclInt.h:
1450        * generic/tclBasic.c:
1451        * generic/tclRegexp.h:
1452        * generic/tclRegexp.c: Replaced the per-interpreter regexp cache with
1453        a per-thread cache. Changed the Regexp object to take advantage of
1454        this extra cache. Added a reference count to the TclRegexp type so
1455        regexps can be shared by multiple objects. Removed the per-interp
1456        regexp cache from the interpreter. Now regexps can be used with no
1457        need for an interpreter. [Bug 1063]
1458
1459        * win/tclWinInit.c (TclpSetVariables): Avoid calling GetUserName if
1460        the value can be determined from the USERNAME environment variable.
1461        GetUserName is very slow.
1462
14631999-05-07  Scott Stanton  <stanton@scriptics.com>
1464
1465        * win/winDumpExts.c:
1466        * win/makefile.vc: Removed incorrect patch. [Bug 1998]
1467
1468        * generic/tcl.decls: Replaced const with CONST.
1469
1470        * generic/tclResult.c (Tcl_AppendResultVA):
1471        * generic/tclStringObj.c (Tcl_AppendStringsToObjVA): Fixed to copy
1472        arglist using memcpy instead of assignment so it works properly on
1473        OS/390. [Bug 1997]
1474
1475        * generic/tclLoadNone.c: Updated to use current interfaces, added
1476        TclpUnloadFile. [Bug 2003]
1477
1478        * win/winDumpExts.c:
1479        * win/makefile.vc: Changed to emit library name in defs file. [Bug
1480        1998]
1481
1482        * unix/configure.in: Added fix for OS/390. [Bug 1976]
1483
14841999-05-06  Scott Stanton  <stanton@scriptics.com>
1485
1486        * tests/string.test:
1487        * generic/tclCmdMZ.c:
1488        * doc/string.n: Fixed bug in string equal/compare code when using
1489        -length option. Cleaned up docs a bit more.
1490
1491        * tests/http.test: Unset "data" array before running tests to avoid
1492        failures due to previous tests.
1493
1494        * doc/string.n:
1495        * tests/cmdIL.test:
1496        * tests/cmdMZ.test:
1497        * tests/error.test:
1498        * tests/ioCmd.test:
1499        * tests/lindex.test:
1500        * tests/linsert.test:
1501        * tests/lrange.test:
1502        * tests/lreplace.test:
1503        * tests/string.test:
1504        * tests/cmdIL.test:
1505        * generic/tclUtil.c:
1506        * generic/tclCmdMZ.c: Replaced "string icompare/iequal" with -nocase
1507        and -length switches to "string compare/equal". Added a -nocase option
1508        to "string map". Changed index syntax to allow integer or
1509        end?-integer? instead of a full expression. This is much simpler with
1510        safeTcl scripts since it avoids double substitution issues.
1511
1512        * doc/Utf.3:
1513        * generic/tclStubInit.c:
1514        * generic/tclDecls.h:
1515        * generic/tclUtf.c:
1516        * generic/tcl.decls: Added Tcl_UtfNcmp and Tcl_UtfNcasecmp.
1517
15181999-05-05  Scott Stanton  <stanton@scriptics.com>
1519
1520        * win/makefile.vc: Added encoding directory to install-libraries
1521        target.
1522
15231999-05-03  Scott Stanton  <stanton@scriptics.com>
1524
1525        * doc/string.n:
1526        * tests/cmdMZ.test:
1527        * tests/string.test:
1528        * generic/tclCmdMZ.c (Tcl_StringObjCmd): Changed "string length" to
1529        avoid regenerating the string rep of a ByteArray object.
1530
1531        * tests/cmdIL.test:
1532        * tests/cmdMZ.test:
1533        * tests/error.test:
1534        * tests/lindex.test:
1535        * tests/linsert.test:
1536        * tests/lrange.test:
1537        * tests/lreplace.test:
1538        * tests/string.test:
1539        * generic/tclCmdMZ.c (Tcl_StringObjCmd):
1540        * generic/tclUtil.c (TclGetIntForIndex): Applied Jeff Hobbs's string
1541        patch which includes the following changes [Bug 1845]:
1542        - string compare now takes optional length arg (for strncmp behavior)
1543        - added string equal (just a few lines of code blended in with string
1544          compare)
1545        - added string icompare/iequal for case-insensitive comparisons
1546        - string index's index can now be ?end[+-]?expression
1547          I made this change in the private TclGetIntForIndex, which means
1548          that the list commands also benefit, as well as string range, et al.
1549        - added [string repeat string count]
1550          Repeats given string number of times
1551        - added string replace, string equiv to lreplace
1552          (quasi opposite of string range):
1553                string replace first last ?string?
1554          Example of use, replacing end of string with ... should the string
1555          be more than 16 chars long:
1556                string replace $string 16 end "..."
1557          This just returns the string len < 16, so it will only affect the
1558          long strings.
1559        - added optional first and last args to string to*
1560          This allows you to just affect certain regions of a string with the
1561          command (like just capping the first letter). I found the original
1562          totitle to be too draconian to be useful.
1563        - added [string map charMap string]
1564          where charMap is a {from to from to} list that equates to what one
1565          might get from [array get]. Each and can be multiple chars (or none
1566          at all). For Tcl/CGI users, this is a MAJOR speed booster.
1567
1568        * generic/tclParse.c (Tcl_ParseCommand): Changed to avoid modifying
1569        eval'ed strings that are already null terminated. [Bug 1793]
1570
1571        * tests/binary.test:
1572        * generic/tclBinary.c (DupByteArrayInternalRep): Fixed bug where type
1573        was not being set in duplicated object. [Bug 1975, 2047]
1574
15751999-04-30  Scott Stanton  <stanton@scriptics.com>
1576
1577        * Changed version to 8.1.1.
1578
15791999-04-30  Scott Stanton  <stanton@scriptics.com>
1580
1581        * Merged changes from 8.1.0 branch:
1582
1583        * generic/tclParse.c: Fixed memory leak in CommandComplete.
1584
1585        * generic/tclPlatDecls.h:
1586        * generic/tclIntPlatDecls.h:
1587        * generic/tclIntDecls.h:
1588        * generic/tclDecls.h:
1589        * tools/genStubs.tcl: Added 'extern "C" {}' block around the stub
1590        table pointer declaration so the stub library can be used from C++.
1591        [Bug 1934]
1592
1593        * Lots of documentation and other release engineering fixes.
1594
15951999-04-28  Scott Stanton  <stanton@scriptics.com>
1596
1597        * mac/tclMacResource.c:
1598        * generic/tclListObj.c:
1599        * generic/tclObj.c:
1600        * generic/tclStringObj.c: Changed to avoid freeing the string
1601        representation before freeing the internal rep. This helps with
1602        debugging since the string rep will still be valid when the free proc
1603        is invoked.
1604
16051999-04-27  Scott Stanton  <stanton@scriptics.com>
1606
1607        * generic/tclLiteral.c (TclHideLiteral): Fixed so hidden literals get
1608        duplicated to avoid accidental sharing in the global object table.
1609
16101999-04-23  Scott Stanton  <stanton@scriptics.com>
1611
1612        * generic/tclStubInit.c:
1613        * tools/genStubs.tcl: Changed to avoid the need for forward
1614        declarations in stub initializers.
1615
16161999-04-23  Scott Stanton  <stanton@scriptics.com>
1617
1618        * library/encoding/koi8-r.enc:
1619        * tools/encoding/koi8-r.txt: Added support for the koi8-r Cyrillic
1620        encoding. [Bug 1771]
1621
16221999-04-22  Scott Stanton  <stanton@scriptics.com>
1623
1624        * win/tclWinFCmd.c:
1625        * win/tclWin32Dll.c: Changed uses of "try" to "__try", since that is
1626        the actual keyword. This eliminates the need for some -D flags from
1627        the makefile.
1628
1629        * generic/tclPort.h: Added include of tcl.h since it defines various
1630        Windows macros that are needed before deciding which platform porting
1631        file to use.
1632
1633        * generic/tclEvent.c: lint
1634
1635        * win/tclWinInit.c (TclpInitPlatform): Added call to TclWinInit when
1636        building a static library since DllMain will not be invoked. This
1637        could break old code that explicitly called TclWinInit, but should be
1638        simpler in the long run.
1639
16401999-04-22  Scott Stanton  <stanton@scriptics.com>
1641
1642        * generic/tclInt.h:
1643        * generic/tclInt.decls:
1644        * generic/tclCompile.c: Added TclSetByteCodeFromAny that takes a hook
1645        procedure to invoke after compilation but before the byte codes are
1646        emitted. This makes it possible to do postprocessing on the compiled
1647        byte codes before the ByteCode is generated.
1648
1649        * generic/tclLiteral.c: Added TclHideLiteral and TclAddLiteralObj to
1650        make it possible to create local unshared literal objects.
1651
1652        * win/tclWinInit.c:
1653        * unix/tclUnixInit.c: Changed initial search path to match that
1654        found used by tcl_findLibrary.
1655
16561999-04-22  Scott Redman  <redman@scriptics.com>
1657
1658        * win/tclWinPort.h:
1659        * win/tclWinSock.c: Added code to use WinSock 2.0 API on NT to avoid
1660        creating a window to handle sockets. API not available on Win95 and
1661        needs to be fixed on Win98, until then continue to use the older
1662        (window-based) scheme on those two OSes.
1663
16641999-04-15  Scott Stanton  <stanton@scriptics.com>
1665
1666        * Merged 8.1 back into the main trunk
1667
16681999-04-13  Scott Stanton  <stanton@scriptics.com>
1669
1670        * library/encoding/gb2312.enc:
1671        * library/encoding/euc-cn.enc:
1672        * tools/encoding/gb2312.txt:
1673        * tools/encoding/cp950.txt:
1674        * tools/encoding/Makefile: Restored the double byte definition of
1675        GB2312 and added the EUC-CN encoding. EUC-CN is a variant of GB2312
1676        that shifts the characters into bytes with the high bit set and
1677        includes ASCII as a subset. [Bug 632]
1678
16791999-04-13  Scott Redman  <redman@scriptics.com>
1680
1681        * win/tclWinSock.c: Apply patch to allow write access to a socket if
1682        FD_WRITE is sent but FD_CONNECT is not. Some strange problem with
1683        either Win32 or a socket driver. [Bug 1664 1776]
1684
16851999-04-09  Scott Redman  <redman@scriptics.com>
1686
1687        * unix/tclUnixNotfy.c: Fixed notifier deadlock situation when the pipe
1688        used to talk back notifier thread is filled with data. When calling
1689        the write() function to feed data down that pipe, unlock the
1690        notifierMutex to allow the notifier to wake up again. Found as a
1691        result of the focus.test for Tk hanging. [Bug 1700]
1692
16931999-04-06  Scott Stanton  <stanton@scriptics.com>
1694
1695        * tests/unixNotfy.test: Fixed hang in tests when built with thread
1696        support.
1697
1698        * tests/httpold.test: Fixed broken test that didn't wait long enough
1699        for events to arrive.
1700
1701        * tests/unixInit.test: Fixed race condition in test.
1702
1703        * tests/unixInit.test:
1704        * tests/fileName.test: Minor test nits.
1705
1706        * unix/tclUnixInit.c (TclpSetInitialEncodings): Fixed bad initial
1707        encoding string.
1708
17091999-04-06  Bryan Surles  <surles@scriptics.com>
1710
1711        * generic/tclVar.c:
1712        * generic/tclEnv.c: Moved the "array set" C level code into a common
1713        routine (TclArraySet). The TclSetupEnv routine now uses this API to
1714        create an env array w/ no elements.
1715
1716        * generic/tclEnv.c:
1717        * generic/tclWinInit.h:
1718        * generic/tclUnixInit.h:
1719        * generic/tclInt.h: Made the Env module I18N compliant. Changed the
1720        FindVariable routine to TclpFindVariable, that now does a case
1721        insensitive string comparison on Windows, and not on UNIX. [Bug 1299,
1722        1500]
1723
17241999-04-05  Scott Stanton  <stanton@scriptics.com>
1725
1726        * tests/io.test: Minor test cleanup.
1727
1728        * generic/tclEncoding.c (Tcl_CreateEncoding): Minor lint to make it
1729        easier to compile on Digital-unix. [Bug 1659]
1730
1731        * unix/configure.in:
1732        * unix/tclUnixPort.h: Applied patch for OS/390 to handle lack of
1733        sys/param.h. [Bug 1725]
1734
1735        * unix/configure.in: Fixed BSD/OS 4.* configuration to support shared
1736        libraries properly. [Bug 1730]
1737
17381999-04-05  Scott Redman  <redman@scriptics.com>
1739
1740        * win/tclWinDde.c: decrease timeout value for DDE calls to 30k. [Bug
1741        1639]
1742
1743        * generic/tcl.decls:
1744        * generic/tcl.h:
1745        * generic/tclDecls.h:
1746        * generic/tclInt.decls:
1747        * generic/tclInt.h:
1748        * generic/tclIntDecls.h:
1749        * generic/tclStubInit.c:
1750        * generic/tclUtil.c: Added more functions to the Tcl stubs table,
1751        including all Tcl_ functions not already in it (except Cmd functions)
1752        and Tcl_GetCwd() and Tcl_Chdir() (new functions).
1753
1754        * tests/safe.test:
1755        * doc/safe.n:
1756        * generic/tclBasic.c:
1757        * library/safe.tcl: The encoding command is not safe as-is, so create
1758        a safe alias to mask out the "encoding system <name>" but allow all
1759        other uses including "encoding system". Added test cases and updated
1760        the man page for Safe Tcl.
1761
17621999-04-05  Scott Stanton  <stanton@scriptics.com>
1763
1764        * tests/winTime.test:
1765        * win/tclWinTime.c: Fixed crash in clock command that occurred when
1766        manipulating negative time values in timezones east of GMT. [Bug
1767        1142, 1458]
1768
1769        * tests/platform.test:
1770        * tests/fileName.test: Fixed broken tests.
1771
1772        * generic/tclFileName.c: Moved global regexps into thread local
1773        storage.
1774
1775        * tests/socket.test: Changed so tests don't reuse sockets, since
1776        Windows is slow to release sockets.
1777
1778        * win/tclWinConsole.c:
1779        * win/tclWinPipe.c:
1780        * win/tclWinSerial.c: Fixed race condition where background threads
1781        were terminated while they still held a lock in the notifier.
1782
17831999-04-02  Scott Stanton  <stanton@scriptics.com>
1784
1785        * tests/http.test: Fixed bad test initialization code.
1786
1787        * generic/tclThreadTest.c (ThreadExitProc): Fixed bug where static
1788        memory was being returned instead of a dynamically allocated result in
1789        error cases.
1790
17911999-04-02  Scott Redman  <redman@scriptics.com>
1792
1793        * doc/dde.n:
1794        * tools/tcl.wse.in:
1795        * win/makefile.vc:
1796        * win/pkgIndex.tcl:
1797        * win/tclWinDde.c: Add new DDE package, code removed from Tk now
1798        separated into its own package. Changed DDE-based send code into "dde
1799        eval" command. Can be loaded into tclsh (not just wish). Windows only.
1800
18011999-04-02  Scott Stanton  <stanton@scriptics.com>
1802
1803        * tests/expr.test:
1804        * tests/for-old.test:
1805        * tests/for.test:
1806        * tests/foreach.test:
1807        * tests/format.test:
1808        * tests/httpold.test:
1809        * tests/if.test:
1810        * tests/init.test:
1811        * tests/interp.test:
1812        * tests/while.test: Added some tests for known bugs (marked with
1813        knownBug constraint), and cleaned up a few bad tests.
1814
1815        * generic/regc_locale.c:
1816        * generic/regcustom.h:
1817        * generic/tcl.decls:
1818        * generic/tclCmdIL.c:
1819        * generic/tclCmdMZ.c:
1820        * generic/tclInt.h:
1821        * generic/tclRegexp.c:
1822        * generic/tclScan.c:
1823        * generic/tclTest.c:
1824        * generic/tclUtf.c:
1825        * win/tclWinFCmd.c:
1826        * win/tclWinFile.c: Made various Unicode utility functions public. The
1827        following functions were made public and added to the stubs table:
1828                Tcl_UtfToUniCharDString, Tcl_UniCharToUtfDString,
1829                Tcl_UniCharLen, Tcl_UniCharNcmp, Tcl_UniCharIsAlnum,
1830                Tcl_UniCharIsAlpha, Tcl_UniCharIsDigit, Tcl_UniCharIsLower,
1831                Tcl_UniCharIsSpace, Tcl_UniCharIsUpper, Tcl_UniCharIsWordChar
1832
18331999-04-01  Scott Stanton  <stanton@scriptics.com>
1834
1835        * tests/registry.test:
1836        * win/tclWinReg.c: Internationalized the registry code. It now uses
1837        Unicode interfaces on NT. [Bug 1197]
1838
1839        * tests/parse.test:
1840        * generic/tclParse.c: Fixed crash due to multiple frees in parser
1841        during error cleanup when parsing commands with more tokens than will
1842        fit in the static area of the parse structure. [Bug 1681]
1843
1844        * generic/tclInt.h: Removed duplicate declarations.
1845
1846        * generic/tclInt.decls:
1847        * generic/tcl.decls: Added Tcl_WinUtfToTChar and Tcl_WinTCharToUtf to
1848        the tclPlat table.
1849
18501999-04-01  Scott Redman  <redman@scriptics.com>
1851
1852        * generic/tcl.decls:
1853        * generic/tcl.h:
1854        * generic/tclBasic.c:
1855        * generic/tclDecls.h:
1856        * generic/StubInit.c:
1857        * tools/genStubs.tcl:
1858        * unix/Makefile.in:
1859        * win/makefile.vc: Applied patch from Jan Nijtmans to fix Ultrix
1860        multiple symbol definition problem. Now, even Tcl includes a copy of
1861        the Tcl stub library. Also fixed TCL_MEM_DEBUG mode (for Tk).
1862
18631999-03-31  Scott Redman  <redman@scriptics.com>
1864
1865        * win/tclWinConsole.c: WinNT has a bug when reading a single character
1866        from the console. Rewrote the code for the console to read an entire
1867        line at a time using the reader thread.
1868
18691999-03-30  Scott Stanton  <stanton@scriptics.com>
1870
1871        * unix/Makefile.in: Removed trailing backslash that broke the "depend"
1872        target.
1873
1874        * unix/tclUnixInit.c (TclpSetInitialEncodings): Changed to avoid
1875        calling setlocale(). We now look directly at env(LANG) and
1876        env(LC_CTYPE) instead. [Bug 1636]
1877
1878        * generic/tclFileName.c:
1879        * generic/tclDecls.h:
1880        * generic/tcl.decls: Removed CONST from Tcl_JoinPath and
1881        Tcl_TranslateFileName because it changes the signature of Tcl_JoinPath
1882        in an incompatible manner.
1883
1884        * generic/tclInt.h:
1885        * generic/tclLoad.c (TclFinalizeLoad):
1886        * generic/tclEvent.c (Tcl_Finalize): Defer unloading of loadable
1887        modules until all exit handlers have been invoked. [Bug 998, 1273,
1888        1573, 1593]
1889
18901999-03-29  Scott Stanton  <stanton@scriptics.com>
1891
1892        * generic/tclFileName.c:
1893        * generic/tclDecls.h:
1894        * generic/tcl.decls: Added CONST to Tcl_JoinPath and
1895        Tcl_TranslateFileName.
1896
18971999-03-29  Scott Redman  <redman@scriptics.com>
1898
1899        * tools/genStubs.tcl:
1900        * unix/configure.in:
1901        * unix/Makefile.in:
1902        * win/makefile.vc:
1903        * generic/tcl.h:
1904        * generic/tclBasic.c:
1905        * generic/tclDecls.h:
1906        * generic/tclIntDecls.h:
1907        * generic/tclPlatDecls.h:
1908        * generic/tclIntPlatDecls.h: Removed the stub functions and changed
1909        the stub macros to just use the name without params. Pass &tclStubs
1910        into the interp (don't use tclStubsPtr because of collisions with the
1911        stubs on Solaris).
1912
19131999-03-27  Scott Redman  <redman@scriptics.com>
1914
1915        * win/makefile.bc: Removed makefile for Borland compiler, no longer
1916        supported.
1917
19181999-03-26  Scott Redman  <redman@scriptics.com>
1919
1920        * win/tclWinSerial.c:
1921        * win/tclWinConsole.c:
1922        * win/tclWinPipe.c: Don't close the Win32 handle for a channel if it's
1923        a stdio handle (GetStdHandle()) during shutdown of a thread to prevent
1924        it from destroying the stdio of other threads.
1925
19261999-03-26  Suresh Ankolekar  <suresh@scriptics.com>
1927
1928        * unix/configure.in: --nameble-shared is now the default and build Tcl
1929        as a shared library; specify --disable-shared to build a static Tcl
1930        library and shell.
1931
19321999-03-25  Scott Stanton  <stanton@scriptics.com>
1933
1934        * tests/interp.test:
1935        * generic/tclInterp.c (AliasObjCmd): Changed so aliases are invoked at
1936        current scope in the target interpreter instead of at the global
1937        scope. This was an incompatibility introduced in 8.1 that is being
1938        removed. [Bug 1153, 1556]
1939
1940        * library/encoding/big5.enc:
1941        * library/encoding/gb2312.enc:
1942        * tools/encoding/big5.enc:
1943        * tools/encoding/gb2312.enc: Added ASCII to big5 and gb2312 encodings.
1944        [Bug 632]
1945
1946        * generic/tclPkg.c (Tcl_PkgRequireEx): Fixed broken clientData
1947        initialization in package code.
1948
1949        * unix/Makefile.in (dist): Added tcl.decls and tclInt.decls to source
1950        distribution. [Bug 1571]
1951
1952        * doc/Thread.3: Updated documentation of Tcl_MutexLock to indicate
1953        that the recursive locking behavior is undefined. On Windows, it does
1954        not block, on Unix it deadlocks. [Bug 1275]
1955
19561999-03-24  Scott Stanton  <stanton@scriptics.com>
1957
1958        * tests/execute.test:
1959        * generic/tclExecute.c (TclExecuteByteCode): Fixed expression code
1960        that incorrectly returned floating point values for integers if the
1961        internal rep happened to be a double. Now we check to see if the
1962        object has a string rep that looks like an integer before using the
1963        double internal rep. [Bug 1516]
1964
19651999-03-24  Scott Redman  <redman@scriptics.com>
1966
1967        * generic/tclAlloc.c:
1968        * generic/tclEncoding.c:
1969        * generic/tclProc.c:
1970        * unix/tclUnixTime.c:
1971        * win/tclWinSerial.c: Fixed compilation warnings/errors for VC++ 5.0
1972        and 6.0 and HP-UX native compiler without -Aa or -Ae. [Bug 1323 1518
1973        1324 1583 1585 1586]
1974
1975        * win/tclWinSock.c: Make sockets thread-safe on Windows. The current
1976        implementation uses windows to handle events on the socket, one for
1977        each thread (thread local storage). Previously, there was only one
1978        window shared between threads, which didn't work. [Bug 1326]
1979
19801999-03-23  Scott Stanton  <stanton@scriptics.com>
1981
1982        * tools/tcl.wse: Fixed file association to look in the right place for
1983        the wish icon. [Bug 1544]
1984
1985        * tests/winNotify.test:
1986        * tests/ioCmd.test:
1987        * tests/event.test: Changed to use new style conditionals.
1988
1989        * tests/encoding.test: Fixed nonportable test.
1990
1991        * unix/dltest/configure.in:
1992        * unix/dltest/Makefile.in: Added missing DBGX macros. [Bug 1564]
1993
1994        * tests/winNotify.test:
1995        * mac/tclMacNotify.c:
1996        * win/tclWinNotify.c:
1997        * unix/tclUnixNotfy.c:
1998        * generic/tclNotify.c: Added a new Tcl_ServiceModeHook interface that
1999        is invoked whenever the service mode changes. This is needed to allow
2000        the Windows notifier to create a communication window the first time
2001        Tcl is about to enter an external modal event loop instead of at
2002        startup time. This will avoid the various problems that people have
2003        been seeing where the system hangs when tclsh is running outside of
2004        the event loop. [Bug 783]
2005
2006        * generic/tclInt.h:
2007        * generic/tcl.decls: Renamed TclpAlertNotifier back to
2008        Tcl_AlertNotifier since it is part of the public notifier driver API.
2009
20101999-03-23  Scott Redman  <redman@scriptics.com>
2011
2012        * win/tclWinSerial.c: Fixed problem with fileevent on the serial port
2013        and nonblocking mode. Gets no longer hangs, fileevents fire whenever
2014        there is any character data on the port.
2015
2016        * tests/winConsole.test:
2017        * win/tclWinConsole.c: Fixed problem with fileevents and gets from a
2018        console stdin. Previously, fileevents were firing before an entire
2019        line was available for reading, which meant that when you did a gets
2020        or read, it blocked (even in nonblocking mode). Now, it should work
2021        the same as Unix: fileevents fire when an entire line is ready, and
2022        gets and read do not block in non-blocking mode. Added an interactive
2023        test case to check for this.
2024
20251999-03-22  Scott Stanton  <stanton@scriptics.com>
2026
2027        * tests/reg.test:
2028        * generic/regc_color.c: Applied regexp bug fix from Henry Spencer.
2029
20301999-03-19  Scott Redman  <redman@scriptics.com>
2031
2032        * generic/tclCmdIL.c: Fixed the initialization of an array so that the
2033        Sun 5.0 C compiler wouldn't complain.
2034
2035        * unix/configure.in: Added support for --enable-64bit. For now, this
2036        is only supported on Solaris 7 64bit (SunOS 5.7) using the Sun
2037        compiler (not gcc).
2038
20391999-03-18  Scott Stanton  <stanton@scriptics.com>
2040
2041        * win/tclWinChan.c (TclpOpenFileChannel, Tcl_MakeFileChannel): Changed
2042        to only test for console or comm handles when the type is
2043        FILE_TYPE_CHAR to avoid useless tests on simple files. Also reordered
2044        tests so consoles are tested first as this is more common.
2045
2046        * win/makefile.vc: Regularized usage of mkd and rmd and rm.
2047
2048        * library/encoding/shiftjis.enc:
2049        * tools/encoding/shiftjis.txt: Missing/incorrect characters in
2050        shift-jis table. [Bug 1008, 1526]
2051
2052        * generic/tclInt.decls:
2053        * generic/tcl.decls: Eliminated use of "string" and "list" from
2054        argument lists to avoid conflicts with C++ STL. [Bug 1181]
2055
2056        * win/tclWinFile.c (TclpMatchFiles): Changed to ignore the
2057        FS_CASE_IS_PRESERVED bit and always return exactly what we get from
2058        the system.
2059
20601999-03-17  Scott Stanton  <stanton@GASPODE>
2061
2062        * win/README.binary:
2063        * win/README:
2064        * unix/configure.in:
2065        * generic/tcl.h:
2066        * README: Updated version to 8.1b3.
2067
20681999-03-14  Scott Stanton  <stanton@GASPODE>
2069
2070        * win/tclWinConsole.c:
2071        * win/tclWinPipe.c:
2072        * win/tclWinSerial.c: Changed so channel drivers wait for the
2073        reader/writer threads to exit before returning during a close
2074        operation. This ensures that the main thread is the last thread to
2075        exit, so the process return value is set properly.
2076
2077        * generic/tclIntDecls.h:
2078        * generic/tclIntPlatDecls.h:
2079        * generic/tclIntPlatStubs.c:
2080        * generic/tclIntStubs.c:
2081        * generic/tclPlatDecls.h:
2082        * generic/tclPlatStubs.c:
2083        * generic/tclStubInit.c:
2084        * generic/tclStubs.c: Fixed bad eol characters.
2085
2086        * generic/tclInt.decls: Changed "const" to "CONST" in declarations for
2087        better portability.
2088
2089        * generic/tcl.decls: Renamed panic and panicVA to Tcl_Panic and
2090        Tcl_PanicVA in the stub files.
2091
2092        * generic/tclInterp.c (Tcl_MakeSafe): Remove tcl_platform(user) from
2093        safe interps.
2094
20951999-03-11  Scott Stanton  <stanton@GASPODE>
2096
2097        * unix/Makefile.in:
2098        * unix/configure.in: Include compat files in the stub library in
2099        addition to the main library. Compat files are now built for dynamic
2100        use in all cases.
2101
2102        * generic/tcl.h: Changed magic number so it doesn't match the plus
2103        patch, at Jan's request.
2104
2105        * unix/tclConfig.sh.in:
2106        * unix/dltest/Makefile.in:
2107        * unix/dltest/configure.in:
2108        * unix/dltest/pkga.c:
2109        * unix/dltest/pkgb.c:
2110        * unix/dltest/pkgc.c:
2111        * unix/dltest/pkgd.c:
2112        * unix/dltest/pkge.c:
2113        * unix/dltest/pkgf.c: Changed package tests to build against the stubs
2114        library.
2115
21161999-03-10  Scott Stanton  <stanton@GASPODE>
2117
2118        * generic/tcl.h:
2119        * generic/tcl.decls: Changed Tcl_ReleaseType from an enum to macros so
2120        it can be used in .rc files. Added Tcl_GetString.
2121
2122        * mac/tclMacNotify.c:
2123        * generic/tclNotify.c:
2124        * generic/tclInt.h:
2125        * win/tclWinNotify.c:
2126        * generic/tcl.h: Renamed Tcl_AlertNotifier to TclpAlertNotifier.
2127
2128        * generic/tclInt.decls: Added TclWinAddProcess to make it possible for
2129        expect to use Tcl_WaitForPid(). This patch is from Gordon Chaffee.
2130
2131        * mac/tclMacPort.h:
2132        * win/tclWinInit.c:
2133        * unix/tclUnixPort.h:
2134        * generic/tclAsync.c: Added TclpAsyncMark to fix bug in async handling
2135        on Windows where async events don't wake up the event loop. This patch
2136        comes from Gordon Chaffee.
2137
2138        * generic/tcl.decls: Fixed declarations of reserved slots.
2139
21401999-03-10  Scott Redman  <redman@scriptic.com>
2141
2142        * generic/tclCompile.h: Ensure that the ByteCode struct is binary
2143        compatible with the version in 8.0.6.
2144
2145        * generic/tcl.h:
2146        * generic/tclBasic.c: Add Tcl_GetVersion() function to the public C
2147        API to allow programs to check the version number of the Tcl library
2148        at runtime. Also added an enum to clarify the release level (alpha,
2149        beta, final).
2150
21511999-03-09  Scott Stanton  <stanton@GASPODE>
2152
2153        * Integrated changes from Tcl 8.0 including:
2154                stubs mechanism
2155                configure patches from Jan Nijtmans
2156                rename of panic to Tcl_Panic
2157
21581999-03-08  Lee Bernhard  <lfb@scriptics.com>
2159
2160        * win/tclWin32Dll.c: Removed Dll instance from thread-local storage.
2161
21621999-03-08  Scott Stanton  <stanton@GASPODE>
2163
2164        * generic/tcl.h: Moved Tcl_Mutex, etc. macros above the inclusion of
2165        tclDecls.h to avoid macro conflicts.
2166
2167        * generic/tclInt.h:
2168        * generic/regc_color.c:
2169        * generic/regcomp.c:
2170        * generic/tclCmdIL.c:
2171        * generic/tclCmdAH.c:
2172        * generic/tclIOCmd.c:
2173        * generic/tclParse.c:
2174        * generic/tclStringObj.c:
2175        * unix/tclUnixNotfy.c: Cleaned up various compiler warnings,
2176        eliminated UCHAR bugs.
2177
2178        * unix/tclUnixNotfy.c:
2179        * unix/tclUnixThrd.c:
2180        * generic/tclThreadTest.c:
2181        * mac/tclMacThrd.c: Changed TclpCondition*() to Tcl_Condition*().
2182
2183        * INTEGRATED PATCHES FROM 8.0.6:
2184
2185        * generic/tcl.decls:
2186        * generic/tcl.h:
2187        * generic/tclBasic.c:
2188        * generic/tclDecls.h:
2189        * generic/tclInt.decls:
2190        * generic/tclInt.h:
2191        * generic/tclIntDecls.h:
2192        * generic/tclIntPlatDecls.h:
2193        * generic/tclIntPlatStubs.c:
2194        * generic/tclIntStubs.c:
2195        * generic/tclPlatDecls.h:
2196        * generic/tclPlatStubs.c:
2197        * generic/tclStubInit.c:
2198        * generic/tclStubLib.c:
2199        * generic/tclStubs.c:
2200        * tools/genStubs.tcl:
2201        * unix/configure.in:
2202        * unix/Makefile.in:
2203        * unix/tclConfig.sh.in:
2204        * win/makefile.vc:
2205        * win/tclWinPort.h: Added Tcl stubs implementation. There are now two
2206        new macros USE_TCL_STUBS and USE_TCL_STUB_PROCS that enable use of
2207        stubs and disable stub macros respectively. All of the public and
2208        private function declarations from tcl.h and tclInt.h have moved into
2209        the *.decls files and the *Stubs.c and *Decls.h files are generated
2210        using the genStubs.tcl script.
2211
2212        * unix/Makefile.in:
2213        * unix/configure.in:
2214        * unix/ldAix: Enhanced AIX shared library support.
2215
2216        * win/tclWinSock.c: Removed a bunch of extraneous PASCAL FAR
2217        attributes from internal functions.
2218
2219        * win/tclWinReg.c: Changed registry package to use stubs mechanism so
2220        it no longer depends on the specific version of Tcl.
2221
2222        * doc/AddErrInfo.3:
2223        * doc/Eval.3:
2224        * doc/PkgRequire.3:
2225        * doc/SetResult.3:
2226        * doc/StringObj.3:
2227        * generic/tcl.h:
2228        * generic/tclBasic.c:
2229        * generic/tclPanic.c:
2230        * generic/tclStringObj.c:
2231        * generic/tclUtil.c:
2232        * unix/mkLinks: Added va_list versions of all VARARGS functions so
2233        they can be invoked from the stub functions.
2234
2235        * doc/package.n:
2236        * doc/PkgRequire.3:
2237        * generic/tclPkg.c: Added Tcl_PkgProvideEx, Tcl_RequireEx,
2238        Tcl_PresentEx, and Tcl_PkgPresent. Added "package present" command.
2239
2240        * generic/tclFileName.c:
2241        * mac/tclMacFile.c:
2242        * mac/tclMacShLib.exp:
2243        * unix/tclUnixFile.c:
2244        * win/tclWinFile.c: Changed so TclGetUserHome is defined on all
2245        platforms, even though it is currently a noop on mac and windows, and
2246        renamed it to TclpGetUserHome.
2247
2248        * generic/tclPanic.c:
2249        * generic/panic.c: Renamed panic to Tcl_Panic.
2250
22511999-02-25  Scott Redman  <redman@scriptics.com>
2252
2253        * win/makefile.vc: Added tclWinConsole.c and tclWinSerial.c
2254
2255        * win/tclWinConsole.c: New code to properly deal with fileevents and
2256        nonblocking mode on consoles.
2257
2258        * win/tclWinSerial.c: New code to properly deal with fileevents and
2259        nonblocking mode on serial ports.
2260
2261        * win/tclWinPipe.c:
2262        * win/tclWinPort.h: Exported functions to allow creation of pipe
2263        channels from tclWinChan.c
2264
2265        * win/tclWinChan.c: Check the type of a channel, including for the
2266        standard (stdin/stdout/stderr), and use the correct channel type to
2267        create the channel (file, serial, console, or pipe).
2268
22691999-02-11  Scott Stanton  <stanton@GASPODE>
2270
2271        * README:
2272        * generic/tcl.h:
2273        * win/README.binary:
2274        * win/README:
2275        * unix/configure.in:
2276        * mac/README: Updated version numbers to 8.1b2.
2277
22781999-02-10  Scott Stanton  <stanton@GASPODE>
2279
2280        * library/auto.tcl: Fixed auto_mkindex so it handles .tbc files. Did
2281        some general cleanup to handle bad eval statements that didn't use
2282        "list".
2283
2284        * unix/mkLinks:
2285        * doc/SetVar.3:
2286        * generic/tcl.h:
2287        * generic/tclVar.c: Restored Tcl_ObjGetVar2 and Tcl_ObjSetVar2 from
2288        8.0. Renamed Tcl_Get/SetObjVar2 to Tcl_GetVar2Ex and Tcl_SetVar2Ex.
2289
22901999-02-10  Scott Stanton  <stanton@GASPODE>
2291
2292        INTEGRATED PATCHES FROM 8.0.5b2:
2293
2294        * test/winPipe.test: Changed to remove echoArgs.tcl temporary file
2295        when done.
2296
2297        * tests/cmdAH.test:
2298        * generic/tclFileName.c (TclGetExtension): Changed behavior so the
2299        split happens at the last period in the name instead of the first
2300        period of the last run of periods. So, "foo..o" is split into "foo."
2301        and ".o" now. [Bug 1126]
2302
2303        * win/makefile.vc: Added better support for paths with spaces in the
2304        name. Added .lib and support .dlls to the install-binaries target.
2305        Added generate of a pkgIndex.tcl script to the install-libraries
2306        target.
2307
2308        * win/tclAppInit.c:
2309        * unix/tclAppInit.c:
2310        * mac/tclMacAppInit.c:
2311        * generic/tclTest.c: Changed some EXTERN declarations to extern since
2312        they are not defining exported interfaces. This avoids generating
2313        useless declspec() attributes and makes the windows makefile simpler.
2314
2315        * generic/tcl.h: Moved Tcl_AppInit declaration to end and cleared out
2316        TCL_STORAGE_CLASS so it is not declared with a declspec().
2317
2318        * tests/interp.test:
2319        * generic/tclInterp.c (DeleteAlias): Changed to use
2320        Tcl_DeleteCommandFromToken so we handle renames properly. This avoids
2321        senseless panic. [Bug 736]
2322
2323        * unix/tclUnixChan.c:
2324        * win/tclWinSock.c:
2325        * doc/socket.n: Applied Gordon Chaffee's patch to handle failures
2326        during asynchronous socket connection operations. This adds a new
2327        "-error" fconfgure option to socket channels. [Bug 893]
2328
2329        * generic/tclProc.c:
2330        * generic/tclNamesp.c:
2331        * generic/tclInt.h:
2332        * generic/tclCmdIL.c:
2333        * generic/tclBasic.c:
2334        * generic/tclVar.c: Applied patch from Viktor Dukhovni to rationalize
2335        TCL_LEAVE_ERR_MSG behavior when creating variables.
2336
2337        * generic/tclVar.c: Fixed bug in namespace tail computation. Fixed bug
2338        where upvar could resurrect a namespace variable whose namespace had
2339        been deleted.
2340
2341        * generic/tclCompile.c (TclCompileExprCmd): Eliminated yet another
2342        bogus optimization in expression compilation.
2343
2344        * unix/configure.in: Added branch for BSD/OS-4* to shared library case
2345        statement. [Bug 975]
2346        Fixed to correctly handle IRIX 6.5 n32 library support. [Bug 1117]
2347
2348        * win/winDumpExts.c: Patched to be pickier about stripping @'s. [Bug
2349        920]
2350
2351        * library/http2.0/http.tcl: Added catch around eof test in CopyDone
2352        since the user may have already called http::reset. [Bug 1108]
2353
2354        * unix/configure.in: Changed Linux and IRIX to set SHLIB_LIBS to LIBS
2355        so shared libraries are linked with the system libraries. [Bug 1018]
2356
2357        * generic/tclCompile.c (CompileExprWord): Fixed exception stack
2358        overflow bug caused by missing statement. [Bug 928]
2359
2360        * generic/tclIOCmd.c:
2361        * generic/tclBasic.c: Objectified the "open" command. [Bug 1113]
2362
2363        * generic/tclPosixStr.c (Tcl_ErrnoId, Tcl_ErrnoMsg): When using egcs,
2364        ENOTSUP and EOPNOTSUPP are the same, so now we handle that case. [Bug
2365        1137]
2366
2367        * library/init.tcl: Various small changes requested by Jan Nijtmans.
2368        - If the variable $tcl_library contains the empty string, this empty
2369          string will be put in $auto_path. This is not useful at all, it only
2370          slows down later package processing.
2371        - If the variable tcl_pkgPath is not set, the "unset __dir" fails.
2372          Thich makes init.tcl totally unusable. Better put a "catch" around
2373          it.
2374        - In the function tcl_findLibraries, the "string match" function only
2375          works correctly if $tcl_patchLevel is in one of the forms "?.?a?",
2376          "?.?b?" or "?.?.?". Could a "regexp" be used instead, then it allows
2377          anything to be appended to the patchLevel string. And it is more
2378          efficient.
2379        - The tclPkgSetup function assumes that if $type != "load" then the
2380          type must be "source". This needn't be true. Some users want to add
2381          their own setup types.
2382        [RFE 1138] [Bug 978]
2383
2384        * win/tclWinReg.c:
2385        * doc/registry.n: Added support for HKEY_PERFORMANCE_DATA and
2386        HKEY_DYN_DATA keys. [Bug 1109]
2387
2388        * win/tclWinInit.c (TclPlatformInit): Added code to ensure tcl_pkgPath
2389        is set to "" when no registry entry is found. [Bug 978]
2390
23911999-02-01  Scott Stanton  <stanton@GASPODE>
2392
2393        * generic/tclBasic.c:
2394        * generic/tclCmdAH.c:
2395        * generic/tclCmdIL.c:
2396        * generic/tclCmdMZ.c:
2397        * generic/tclExecute.c:
2398        * generic/tclHistory.c:
2399        * generic/tclIO.c:
2400        * generic/tclIOUtil.c:
2401        * generic/tclInterp.c:
2402        * generic/tclMain.c:
2403        * generic/tclNamesp.c:
2404        * generic/tclParse.c:
2405        * generic/tclProc.c:
2406        * generic/tclTest.c:
2407        * generic/tclTimer.c:
2408        * generic/tcl.h: Made eval interfaces compatible with 8.0 by renaming
2409        Tcl_EvalObj to Tcl_EvalObjEx, renaming Tcl_Eval2 to Tcl_EvalEx and
2410        restoring Tcl_EvalObj and Tcl_GlobalEvalObj interfaces so they match
2411        Tcl 8.0.
2412
24131999-01-28  Scott Stanton  <stanton@GASPODE>
2414
2415        * Merged Tcl 8.0.5b1 changes.
2416
2417        * generic/tclUtil.c (Tcl_DStringSetLength): Changed so the buffer
2418        overallocates in a manner similar to Tcl_DStringAppend. This should
2419        improve performance for TclUniCharToUtfDString.
2420
24211998-12-11    === Tcl 8.1b1 Release ===
2422
24231998-12-10  Scott Stanton  <stanton@GASPODE>
2424
2425        * Fixed lots of files that used TCL_THREAD instead of TCL_THREADS.
2426
2427        * generic/tclEncoding.c (Tcl_FreeEncoding): Moved most of the code
2428        into a static FreeEncoding routine that does not grab the
2429        encodingMutex to avoid deadlocks/races when called from other routines
2430        that already have the mutex.
2431
24321998-12-09  Scott Stanton  <stanton@GASPODE>
2433
2434        * library/msgcat1.0/msgcat.tcl: Fixed bad export list, fixed so all
2435        locale strings are converted to lower case, including file names.
2436
2437        * generic/regcomp.c (makescan): Fixed bug in longest match case that
2438        caused anchored patterns to fail. [Bug 897]
2439
24401998-12-08  Scott Stanton  <stanton@GASPODE>
2441
2442        * library/msgcat1.0/msgcat.tcl: changed mc to invoke mcunknown in the
2443        calling context, changed locale lookups to be case insensitive
2444
24451998-12-07  Scott Stanton  <stanton@GASPODE>
2446
2447        * generic/tclAlloc.c (TclpRealloc): Fixed a memory allocation bug
2448        where big blocks that were reallocated into a different heap location
2449        were not being placed into the bigBlocks list. [Bug 933]
2450
2451        * tests/msgcat.test: Added message catalog test suite.
2452
2453        * library/msgcat1.0/msgcat.tcl: minor bug fixes, integrated latest
2454        changes from Mark Harrison.
2455
24561998-12-04  Scott Stanton  <stanton@GASPODE>
2457
2458        * library/msgcat1.0/msgcat.tcl: Changed code to conform to Tcl coding
2459        standards. Changed to use file join for portability.
2460
2461        * library/msgcat1.0: Added initial implementaion of Tcl message
2462        catalog package contributed by Mark Harrison.
2463
24641998-12-03  Scott Stanton  <stanton@GASPODE>
2465
2466        * win/tclWinPipe.c (BuildCommandLine): Fixed bug that kept arguments
2467        containing spaces from being properly quoted.
2468
2469        * tests/defs: Changed so auto_path is set to only contain the Tcl
2470        library directory. This keeps the tests from accidentally picking up
2471        stuff in installed packages.
2472
2473        * generic/tclUtil.c (Tcl_StringMatch): Changed to match 8.0 behavior
2474        in corner case where there is no closing bracket.
2475
24761998-12-02  Scott Stanton  <stanton@GASPODE>
2477
2478        * win/tclWinPipe.c (TclpCreateCommandChannel): Changed reader/writer
2479        threads to have THREAD_PRIORITY_HIGHEST so they will have a chance to
2480        run whenever there is something to do.
2481
2482        * generic/tclIO.c (WriteBytes, WriteChars): Fixed so extraneous
2483        flushes do not happen in line mode.
2484        (TranslateOutputEOL): Made translation more efficient in line mode and
2485        fixed a buffer overflow bug in CRLF translation. [Bug 887]
2486
24871998-12-02  Brent Welch  <welch@SAGE>
2488
2489        * Updated patchlevel to 8.1b1
2490
24911998-12-02  Scott Stanton  <stanton@GASPODE>
2492
2493        * generic/regc_color.c (subcolor): Added check for error case to avoid
2494        an out of bounds array reference.
2495
2496        * generic/tclCmdAH.c (Tcl_EncodingObjCmd): Changed to avoid using
2497        Tcl_DStringResult because it is not binary clean.
2498
2499        * generic/tclParse.c (Tcl_ParseCommand): Fixed bug in comment parsing
2500        where a trailing comment looked like an incomplete command.
2501
25021998-12-02  Brent Welch  <welch@SAGE>
2503
2504        * Merged changes from 8.0.4, especially the new pkg_mkIndex
2505
25061998-12-01  Scott Stanton  <stanton@GASPODE>
2507
2508        * generic/tclIO.c (Tcl_ReadChars): Added a call to UpdateInterest so
2509        we don't block when there is data sitting in the buffers.
2510
2511        * generic/tclTest.c (TestevalobjvObjCmd): Updated for EvalObjv change.
2512
2513        * tests/parse.test: Updated tests for EvalObjv change.
2514
2515        * generic/tclParse.c (EvalObjv, Tcl_EvalObjv): Changed Tcl_EvalObjv
2516        interface to remove string and length arguments, preserved original
2517        interface as EvalObjv for internal use.
2518
2519        * generic/tcl.h: Changed Tcl_EvalObjv interface to remove string and
2520        length arguments.
2521
2522        * doc/Eval.3: Updated documentation for Tcl_EvalObjv to remove string
2523        and length arguments.
2524
2525        * generic/tclCompCmds.c (TclCompileForeachCmd): Fixed code that
2526        corrupted the exceptDepth value in the compile environment when
2527        foreach failed to compile inline. [Bug 884]
2528
2529        * library/encoding/euc-kr.enc:
2530        * library/encoding/ksc5601.enc:
2531        * tools/encoding/ksc5601.txt:
2532        * unix/tclUnixInit.c: Added support for Korean EUC.
2533
2534        * win/tclWinChan.c (TclpGetDefaultStdChannel): added check for a
2535        failure during Tcl_MakeFileChannel.
2536
25371998-11-30  Scott Stanton  <stanton@GASPODE>
2538
2539        * unix/tclUnixNotfy.c (Tcl_WaitForEvent): Fixed hang that occurs when
2540        trying to close a pipe that is currently being waited on by the
2541        notifier thread. [Bug 607]
2542
2543        * unix/tclUnixFCmd.c (GetPermissionsAttribute): Increase size of
2544        returnString buffer to avoid overflow. [Bug 584]
2545
2546        * generic/tclThreadTest.c (TclThreadSend): Fixed memory leak due to
2547        use of TCL_VOLATILE instead of TCL_DYNAMIC.
2548
2549        * generic/tclThread.c (TclRememberSyncObject): Fixed memory leak
2550        caused by failure to reuse condition variables.
2551
2552        * unix/tclUnixNotfy.c (Tcl_AlertNotifier, Tcl_WaitForEvent,
2553        (NotifierThreadProc, Tcl_InitNotifier): Fixed race condition caused by
2554        incorrect use of condition variables when sending messages between
2555        threads. [Bug 607]
2556
2557        * generic/tclTestObj.c (TeststringobjCmd): MAX_STRINGS was off by one
2558        so the strings array was too small.
2559
2560        * generic/tclCkalloc.c (Tcl_DbCkfree): Moved mutex lock so
2561        ValidateMemory is done inside the mutex to avoid a race condition when
2562        validate_memory is enabled. [Bug 880]
2563
25641998-11-23  Scott Stanton  <stanton@GASPODE>
2565
2566        * regexec.c: more performance tuning from Henry Spencer.
2567
25681998-11-17  Scott Stanton  <stanton@GASPODE>
2569
2570        * tclScan.c: moved "scan" implementation out of tclCmdMZ.c and added
2571        Unicode support. This required a complete reimplementation of the
2572        command to avoid using scanf(), which isn't Unicode aware. Two new
2573        features were added in the process: %n to return the current number of
2574        characters consumed, and XPG3-style %n$ argument order specifiers
2575        similar to those provided by the "format" command. [Bug 833]
2576
2577        * tclAlloc.c: changed so allocated memory is always 8-byte aligned to
2578        improve memory performance and to ensure that it will work on systems
2579        that don't like accessing 4-byte aligned values (e.g. Solaris and
2580        HP-UX). [Bug 834]
2581
25821998-11-06  Scott Stanton  <stanton@GASPODE>
2583
2584        * tclVar.c (TclGetIndexedScalar): Fixed bug 796, var name was getting
2585        lost before being passed to CallTraces.
2586
25871998-10-21  Scott Stanton  <stanton@GASPODE>
2588
2589        * added "encoding" command
2590
2591        * Moved internal regexp declarations from tclInt.h to tclRegexp.h
2592
2593        * integrated regexp updates from Henry Spencer
2594
25951998-10-15  Scott Stanton  <stanton@GASPODE>
2596
2597        * tclUtf.c: added Unicode character table support
2598
2599        * tclInt.h: added TclUniCharIsWordChar
2600
2601        * tclCmdMZ.c (Tcl_StringObjCmd): added "totitle" subcommand, changed
2602        "wordend" and "wordstart" to properly handle Unicode word characters
2603        and connector punctuation
2604
26051998-10-05  Scott Stanton  <stanton@GASPODE>
2606
2607        * auto.tcl, package.tcl: fixed SCCS strings
2608
2609        * tclIndex: updated index to reflect 8.1 files
2610
2611        * tclCompile.c (TclCompileScript): changed to avoid modifying the
2612        input string in place because name lookup operations could have
2613        arbitrary side effects
2614
2615        * tclInterp.c: added guard against deleting current interpreter
2616
2617        * tclMacFile.c, tclUnixFile.c, tclWinFile.c, tclFileName.c: added
2618        warnings around code that modifies strings in place
2619
2620        * tclExecute.c: fixed off-by-one copying error, fixed merge bugs
2621
2622        * tclEvent.c: changed so USE_TCLALLOC is tested for value instead of
2623        definition
2624
2625        * tclCompCmds.c: replaced SCCS strings, added warnings around code
2626        that modifies strings in place
2627
2628        * interp.test: added test for interp deleting itself
2629
26301998-09-30  Scott Stanton  <stanton@GASPODE>
2631
2632        * makefile.vc: fixed so TCL_LIBRARY is set before running tcltest
2633
2634        * tclWin32Dll.c: removed TclpFinalize, cleanup of merges
Note: See TracBrowser for help on using the repository browser.