| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* All of the changes below belong to TIP #10 [Tcl I/O Enhancement:
Thread-Aware Channels]. See also [Patch #403358] at SF.
* generic/tclIO.h (struct ChannelState, line 236f): Extended the
structure with a new field of type 'Tcl_ThreadId' to hold the id
of the thread currently managing all channels with this state.
Note: This structure is shared by all channels in a stack of
transformations.
* generic/tclIO.c (Tcl_CreateChannel, lines 1058-1065): Modified
to store the Id of the current thread in the 'ChannelState' of
the new channel.
* generic/tclIO.c (Tcl_SpliceChannel, lines 2265-2270): Modified
in the same manner as 'Tcl_CreateChannel' as the channel will be
managed by the current thread afterward.
* generic/tclIO.c (Tcl_GetChannelThread, lines 1478-1503):
* generic/tcl.decls (Tcl_GetChannelThread, lines 1504-1506): New
API function to retrieve the Id of the managing thread from a
channel. Implementation and declaration.
* generic/tclTest.c (TestChannelCmd, lines 4520-4532): Added
subcommand 'mthread' to query a channel about its managing
thread.
|
|
|
|
|
|
| |
testinterpdelete command is not defined.
Add tests that checks to make sure a
child interp inherits the parent's cwd.
|
|
|
|
|
| |
* generic/tclCmdMZ.c (Tcl_RegsubObjCmd): fixed handling of nulls
in subspec value.
|
|
|
|
| |
must change associated test as well.
|
| |
|
|
|
|
| |
of the argument array, and another with the documentation.
|
|
|
|
| |
by compiling, second time using the previous compilation
|
|
|
|
| |
(Applies patch #103174 which fixes bug #119406.)
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tests/unixInit.test:
* unix/tclUnixInit.c (TclpInitLibraryPath):
* win/tclWinInit.c (TclpInitLibraryPath): Several entries in
the library path ($tcl_libPath) are determined relative to the
absolute path of the executable. When the executable is
installed in or near the root directory of the file system,
relative pathnames were being incorrectly generated, and in
the worst case, memory access violations were crashing the program.
[Bug 119416, Patch 102972]
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclExecute.c:
* tests/expr-old.test: Re-wrote Tcl's [expr rand()] and
[expr srand($seed)] implementations, fixing a range error
on some 64-bit platforms. Added tests that detect the bug.
The rewrite changes the seed -> sequence map on 64-bit
platforms, only for seed >= 2^31, a slight incompatibility.
[Bug 121072, Patch 102781]
|
|
|
|
|
|
|
| |
* tests/scan.test:
* generic/tclScan.c (Tcl_ScanObjCmd): changed %o and %x to use
strtoul instead of strtol to correctly preserve scan<>format
conversion of large integers. [Patch #102663, Bug #124600]
|
|
|
|
| |
should not be second-class citizens in the Tcl world...
|
| |
|
|
|
|
| |
See http://www.cs.man.ac.uk/fellowsd-bin/TIP/7.html
|
|
|
|
|
|
|
| |
the fact that it never caused a crash and was blocked most of the time
from coming into play by the way the compiler handles array variable
references. (Yes, the test suite does pass now on this machine at
least...)
|
| |
|
|
|
|
|
|
| |
by subst.
* generic/tclParse.c (Tcl_EvalEx): corrected handling of non-zero,
non-error return code cases for subst. [BUG: 119829]
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* tests/tcltest.test:
* library/tcltest1.0/tcltest.tcl:
* library/tcltest1.0/pkgIndex.tcl:
* docs/tcltest.n: Moved tcltest2 code so that it's the standard
version of tcltest. Removed all tcltest2 files
(tests/tcltest2.test, library/tcltest1.0/tcltest2.tcl,
docs/tcltest2.n).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tests/tcltest2.test
* doc/tcltest2.n: Code and documentation cleanup. Modified
-verbose to take list of keywords as well as string of letters.
Removed Tcl version information from tcltest. Removed
tcltest::grep from tcltest package. Added optional 3rd directory
argument to makeFile/makeDirectory and removeFile/removeDirectory.
* tests/basic.test: Changed references to tcltest::tclVersion to
hardcoded numbers.
* generic/tcl.h: Changed reference to tcltest2.tcl and tcltest.tcl
in comments to tests/basic.test.
|
|
|
|
|
|
|
| |
multiple interpreter tests and channel sharing
* generic/tclIO.c (Tcl_GetChannelNamesEx): corrected function (and
consequently 'file channels') to return channels that are actually
registered for this specific interp, rather than this thread.
|
|
|
|
|
|
| |
command to accept both attribute-value pairs and command line options.
Updated the tests and the documentation for this new format.
Also changed the option names for the test command.
|
|
|
|
|
|
| |
default stacksize (Tru64, AIX) in infinite recursion test. A
solution to check remaining stack space in the core is best, but
hard to do in a cross-platform manner.
|
|
|
|
|
|
|
| |
c:/tcl8975@ after creating it.
* tests/fileName.test: cleaned up the testing of glob patterns for
c:/globTest (Windows) to directly create/remove directory.
|
|
|
|
| |
8.4a2 code base, merged in with some existing new 8.4a2 features.
|
|
|
|
|
| |
from socket-12.*. It requires 'exec', not a remote server.
Cleaned up some coding errors.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* library/tcltest1.0/tcltest2.tcl: New version of tcltest.
Cleanup of command line parsing: allows users to specify command
line arguments through an environment variable named
TCLTEST_OPTIONS [RFE: 3748], does not respond to incorrect
arguments, and forces usage of entire flag name when using command
line arguments. Defines accessor procs for all tcltest
variables. Allows users to use 'return' in test scripts. Allow
users to specify whether test files should be sourced or run in a
separate process. 'all.tcl' code moved to tcltest package.
'test' proc modified to use attribute-value pairs. Allow users to
specify what return codes, output, and errors can be compared and
whether these values should be compared using regexp, glob, or
exact matching. makeDirectory & removeDirectory now operate with
respect to temporaryDirectory [Bug: 6001]. Test results from
tests run in slave interpreters are now included in test totals
[Bug: 1493]. Test files that return error values are now reported.
* tests/all.tcl: Added code to check for the tcltest version
loaded; modified to figure out which tests to run based on the
tcltest version loaded.
* tests/tcltest.test: Modified to explicitly load version 1.0 of
tcltest.
* tests/tcltest2.test: New test suite for tcltest; includes all of
the old tests plus new ones reflecting changes made for version
2.0.
* tests/cmdAH.test: Added singleTestInterp constraint to
cmdAH-31.2; this test does not run if tests aren't sourced into a
single interpreter.
* tests/socket.test: Fixed two tests that were referencing
variables outside of scope.
* tools/tcl.wse.in: Added code to install tcltest2.tcl.
* doc/tcltest2.n: New documentation for tcltest version 2.0.
Removes documentation for tcltest namespace variables. Adds
documentation for new tcltest procs.
* unix/mkLinks: Added code to link to tcltest2.n.
* generic/tcl.h: Added comment to modify tcltest2.tcl as well as
tcltest.tcl for version changes.
|
|
|
|
|
|
|
| |
attempts after the first to match the regexp against the string
should include the TCL_REG_NOTBOL flag, to avoid erroneously
matching ^ in the middle of the string. Added code to set this
flag after the first pass through the matching loop. [Bug: 6284].
|
|
|
|
|
| |
* generic/tclCmdIL.c (Tcl_LsortObjCmd): Applied patch from [Bug:
6212], which corrected an error in the handling of the -index option.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* doc/trace.n: Clarified information about when array traces will
be fired.
* generic/tclVar.c (Tcl_ArrayObjCmd): Corrected call to CallTraces
(for TCL_TRACE_ARRAY) to only be called when the variable is
either an array or is undefined, to ensure that array traces do
not fire for scalar variables.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
syntax as deprecated; added documentation for command
rename/delete traces and variable array traces.
* tests/trace.test: Updated tests for new trace syntax; new tests
for command rename/delete traces; new tests for array traces.
* generic/tclVar.c: Support for new trace syntax; support for
TCL_TRACE_ARRAY.
* generic/tclStubInit.c:
* generic/tclDecls.h:
* generic/tcl.decls: Stub functions for command rename/delete traces.
* generic/tcl.h:
* generic/tclInt.h:
* generic/tclBasic.c: Support for command traces.
* generic/tclCmdMZ.c (TclTraceVariableObjCmd): Patched to support
new [trace] syntax:
trace {add|remove|list} {variable|command} name ops command
Added support for command traces (rename, delete operations).
Added support for TCL_TRACE_ARRAY at Tcl level (array operation
for variable traces).
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
command to test Tcl_WrongNumArgs.
* generic/tclTest.c (TestWrongNumArgsObjCmd): Added test function
for the Tcl_WrongNumArgs function.
* generic/tclIndexObj.c (Tcl_WrongNumArgs): Corrected algorithm to
not insert a space before the message component when objc == 0
[Bug: 6078].
|
| |
|
|
|
|
|
|
|
| |
* library/package.tcl: Enhanced pkg_compareExtension to handle
Unixes which tack the version number on to the end of library
names (eg, foo.so.1.2); such filenames will be correctly matched.
(Patch from Vince Darley).
|
|
|
|
|
|
|
| |
* library/opt0.4/optparse.tcl: Applied patch from Chris Nelson,
which replaces the [Lfirst] function with an inline [lindex ... 0]
and [Lrest] with [lrange ... 1 end], for better performance.
[RFE: 6019]
|
|
|
|
|
|
|
|
|
|
|
| |
* doc/msgcat.n:
* tests/msgcat.test: Applied patches from Chris Nelson, to provide
the mcmset function, which allows the translator to set multiple
string translations in a single function call, rather than
requiring many calls to mcset. [RFE: 6000, 5993]. In addition,
these patches correct mcload to use utf-8 encoding on when reading
message catalog files, and provides for better default behavior
for determining the locale on a Windows system.
|
|
|
|
|
|
|
| |
* library/msgcat1.0/msgcat.tcl: Applied patch from Christian
Krone, to provide extended args support for msgcat::unknown, which
is used for strings without a known translation in the current
locale [Bug: 5984].
|
|
|
|
|
| |
high-ASCII characters (which will fail in multibyte locales);
instead used \uXXXX syntax. [Bug: 3842].
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tests/http.test
* doc/http.n
* library/http2.3/http.tcl: Fixed bug 5741, where unsuccessful
geturl calls sometimes leaked memory and resources (sockets).
Also, switched around some of the logic so that http::wait never
throws an exception. This is because in an asynchronous geturl,
the command callback will probably end up doing all the error
handling anyway, and in an asynchronous situation, the user
expects to check the state when the transaction completes, as
opposed to being thrown an exception. For the http package, this
menas the user can check http::status for "error" and http::error
for the error message after doing the http::wait.
|
|
|
|
|
|
| |
* doc/unset.n:
* generic/tclVar.c (Tcl_UnsetObjCmd): added -nocomplain and --
options to unset, to allow for a silent unset operation.
|
|
|
|
|
|
|
|
|
|
| |
exact matching for [array names] command. [RFE: 3684].
* doc/array.n: Added documentation for [array names
-exact/-regexp/-glob] [RFE: 3684].
* tests/set-old.test: Added tests for [array names
-exact/-regexp/-glob] [RFE: 3684].
|
|
|
|
|
|
|
|
| |
* doc/info.n:
* generic/tclIOUtil.c (Tcl_EvalFile):
* generic/tclCmdIL.c (InfoScriptCmd): added ability to set the
info script return value [info script ?newFileName?]. This will
be beneficial for virtual file system programs. [Bug: 4225]
|
|
|
|
|
| |
corrected tests to reflect improved error messages in first/last.
Added tests against mem overrun in string index bytearray case.
|
|
|
|
|
|
|
|
|
|
| |
specifications.
* generic/tclDate.c: Regenerated from tclGetDate.y.
* generic/tclGetDate.y: Tweaked grammar to properly handle the
"ago" keyword when it follows multiple relative unit specifiers,
as in "2 days 2 hours ago". [Bug: 5497].
|
|
|
|
|
|
| |
* tests/namespace.test:
* generic/tclNamesp.c (Tcl_NamespaceObjCmd): added 'namespace
exists' command. [Bug: 4665]
|
|
|
|
|
|
|
|
|
| |
* doc/Eval.3:
* tests/source.test:
* generic/tclIOUtil.c (Tcl_EvalFile): added explicit \32 (^Z)
eofchar (affects Tcl_EvalFile in C, "source" in Tcl). This was
implicit on Windows already, and is now cross-platform to allow
for scripted documents.
|
| |
|