| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|\
| |
| | |
more harm than good. Purged them.
|
| |
| |
| | |
more harm than good. Purged them.
|
| |
| |
| |
| | |
* tests/pkg.test: TCL_TIP268 sections.
|
| |
| |
| |
| |
| |
| | |
* generic/tclPkg.c (CheckVersion): Tcl_Alloc() with calls to
* unix/tclUnixTime.c (SetTZIfNecessary): ckalloc(), which better
* win/tclAppInit.c (setargv): supports memory debugging.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When no requirements are supplied to a [package require $pkg] and
[package unknown] is invoked to find a satisfying package, pass the
requirement argument "0-" (which means all versions are
acceptable). This permits a registered [package unknown] command to
call [package vsatisfies $testVersion {*}$args] without any special
handling of the empty $args case. This fixes/avoids a bug in
[::tcl::tm::UnknownHandler] that was causing old TM versions to be
provided in preference to newer TM versions. Thanks to Julian Noble
for discovering the issue.
|
| |
| |
| |
| |
| | |
argument version==NULL passed in. Backport of the fix for the
same problem in 8.5.
|
| |
| |
| |
| |
| |
| | |
return information from 'Tcl_PkgRequireProc'. Keep the
interpreter result empty. Backport of fix for problem found
while testing #268 under 8.5. More details in the comments.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* generic/tclBasic.c: Define TCL_TIP268 to activate the new
* generic/tclDecls.h: features.
* generic/tclInt.h:
* generic/tclPkg.c:
* generic/tclStubInit.c:
* generic/tclTest.c:
* library/init.tcl
* library/package.tcl:
* tests/pkg.test:
* tests/platform.test:
* tests/safe.test:
* doc/PkgRequire.3:
|
| |
| |
| |
| |
| | |
* generic/tclPkg.c (Tcl_PkgRequireEx): replace Tcl_GlobalEval(Obj)
with more efficient Tcl_Eval(Obj)Ex
|
| |
| |
| |
| |
| |
| |
| | |
to be even more forgiving of package version mismatch errors in
[package ifneeded] commands, not even logging any warning messages.
This further reduces the ***POTENTIAL INCOMPATIBILITY*** noted for
that change.
|
| |
| |
| |
| |
| |
| | |
* tests/pkg.test: to be more forgiving of package version
mismatch errors in [package ifneeded] commands. This reduces the
***POTENTIAL INCOMPATIBILITY*** noted for that change.
|
| |
| |
| |
| |
| |
| |
| |
| | |
* tests/pkg.test: by Tcl_PkgRequire(Ex) so that the returned
values will always agree with what is stored in the package database.
This way repeated calls to Tcl_PkgRequire(Ex) have the same results.
Thanks to Hemang Lavana. [Bug 1162286].
* tests/namespace.test (25.7,8): Backport test of knownBug.
|
| |
| |
| |
| | |
backported from trunk.
|
| |
| |
| |
| | |
* generic/tclPkg.c (Tcl_PkgInitStubsCheck):
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
* generic/tclPkg.c: source compatibility with callers of
* generic/tclStubLib.c: Tcl_InitStubs(interp, TCL_VERSION, 1).
[Bug 1578344].
|
| |
| |
| |
| |
| | |
* generic/tclPkg.c: [package require -exact] to be compatible
* tests/pkg.test: with Tcl 8.4. [Bug 1578344].
|
| |
| |
| |
| |
| | |
* generic/tclPkg.c: [package present] and [package require]
* tests/pkg.test: commands. [Bug 1723675]
|
| |
| |
| |
| | |
1515234]
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* tests/pkg.test: [package require $pkg] and [package unknown]
is invoked to find a satisfying package, pass the requirement argument
"0-" (which means all versions are acceptable). This permits a
registered [package unknown] command to call
[package vsatisfies $testVersion {*}$args] without any special
handling of the empty $args case. This fixes/avoids a bug in
[::tcl::tm::UnknownHandler] that was causing old TM versions to
be provided in preference to newer TM versions. Thanks to Julian
Noble for discovering the issue.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* generic/tcl.decls: New public routines Tcl_ObjPrintf,
* generic/tclStringObj.c: Tcl_AppendObjToErrorInfo, Tcl_Format,
* generic/tclInt.h: Tcl_AppendLimitedToObj,
Tcl_AppendFormatToObj and Tcl_AppendPrintfToObj. Former internal
versions removed.
* generic/tclDecls.h: make genstubs
* generic/tclStubInit.c:
* generic/tclBasic.c: Updated callers.
* generic/tclCkalloc.c:
* generic/tclCmdAH.c:
* generic/tclCmdIL.c:
* generic/tclCmdMZ.c:
* generic/tclCompExpr.c:
* generic/tclCompile.c:
* generic/tclDictObj.c:
* generic/tclExecute.c:
* generic/tclIORChan.c:
* generic/tclIOUtil.c:
* generic/tclMain.c:
* generic/tclNamesp.c:
* generic/tclObj.c:
* generic/tclPkg.c:
* generic/tclProc.c:
* generic/tclStrToD.c:
* generic/tclTimer.c:
* generic/tclUtil.c:
* unix/tclUnixFCmd.c:
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* generic/tclCkalloc.c: TclObjPrintf() routines to panic when unable
* generic/tclCmdAH.c: to complete their formatting operations, rather
* generic/tclCmdIL.c: than report an error message. This means an
* generic/tclCmdMZ.c: interp argument for error message recording is
* generic/tclDictObj.c: no longer needed, further simplifying the
* generic/tclExecute.c: interface for callers.
* generic/tclIORChan.c:
* generic/tclIOUtil.c:
* generic/tclInt.h:
* generic/tclMain.c:
* generic/tclNamesp.c:
* generic/tclParseExpr.c:
* generic/tclPkg.c:
* generic/tclProc.c:
* generic/tclStringObj.c:
* generic/tclTimer.c:
* generic/tclUtil.c:
* unix/tclUnixFCmd.c:
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* generic/tclCkalloc.c: TclObjPrintf, TclFormatObj, and
* generic/tclCmdAH.c: TclFormatToErrorInfo to a new set of
* generic/tclCmdIL.c: routines TclAppendPrintfToObj,
* generic/tclCmdMZ.c: TclAppendFormatToObj, TclObjPrintf, and
* generic/tclDictObj.c: TclObjFormat, with the intent of making
* generic/tclExecute.c: the latter list, plus TclAppendLimitedToObj
* generic/tclIORChan.c: and TclAppendObjToErrorInfo, public via
* generic/tclIOUtil.c: a revised TIP 270.
* generic/tclInt.h:
* generic/tclMain.c:
* generic/tclNamesp.c:
* generic/tclParseExpr.c:
* generic/tclPkg.c:
* generic/tclProc.c:
* generic/tclStringObj.c:
* generic/tclTimer.c:
* generic/tclUtil.c:
* unix/tclUnixFCmd.c:
|
| |
| |
| |
| |
| | |
changed Tcl_Alloc()/Tcl_Free() calls to ckalloc()/ckfree() for easier
memory debugging in the future. [Bug 1568373]
|
| |
| |
| |
| | |
when argument version=NULL passed in.
|
| |
| |
| |
| |
| |
| |
| | |
* tests/pkg.test: before comparison. The shorter string is the
smaller number. Added testcases as well. Interestingly all
existing test cases for vcompare compared numbers of the same
length with each other. See [SF Tcl Bug 1563836].
|
| |
| |
| |
| | |
{-1, 0, 1} to match expectations of CompareVersion() callers.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
boundary. [SF Tcl Bug 1563836].
* generic/tclPkg.c: [SF Tcl Bug 1563836]. Rewrote CompareVersion
to perform string comparison instead of numeric. This breaks
through the 32bit limit on version numbers. See code for details
(handling of leading zeros, signs, etc.). un-CONSTed some
arguments of CompareVersions, RequirementSatisfied, and
AllRequirementsSatisfied. The new compare modifies the string
(temporary string terminators). All callers use heap-allocated
ver-intreps, so we are good with that.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* generic/tclDecls.h: Regenerated from tcl.decls.
* generic/tclStubInit.c:
* doc/PkgRequire.3: Documentation of extended API,
* doc/package.n: extended testsuite.
* tests/pkg.test:
* generic/tcl.decls: Implementation.
* generic/tclBasic.c:
* generic/tclConfig.c:
* generic/tclInt.h:
* generic/tclPkg.c:
* generic/tclTest.c:
* generic/tclTomMathInterface.c:
* library/init.tcl:
* library/package.tcl:
* library/tm.tcl:
|
| |
| |
| |
| |
| | |
* generic/tclPkg.c (Tcl_PkgRequireEx): replace Tcl_GlobalEval(Obj)
with more efficient Tcl_Eval(Obj)Ex
|
| |
| |
| |
| |
| |
| |
| | |
* tests/pkg.test: by Tcl_PkgRequire(Ex) so that the returned
values will always agree with what is stored in the package database.
This way repeated calls to Tcl_PkgRequire(Ex) have the same results.
Thanks to Hemang Lavana. [Bug 1162286].
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* generic/tclBinary.c:
* generic/tclCmdAH.c:
* generic/tclCmdIL.c:
* generic/tclCmdMZ.c:
* generic/tclCompExpr.c:
* generic/tclDictObj.c:
* generic/tclEncoding.c:
* generic/tclExecute.c:
* generic/tclFCmd.c:
* generic/tclHistory.c:
* generic/tclIndexObj.c:
* generic/tclInterp.c:
* generic/tclIO.c:
* generic/tclIOCmd.c:
* generic/tclNamesp.c:
* generic/tclObj.c:
* generic/tclPkg.c:
* generic/tclResult.c:
* generic/tclScan.c:
* generic/tclTimer.c:
* generic/tclTrace.c:
* generic/tclUtil.c:
* generic/tclVar.c:
It is a poor practice to directly set or append to the value
of the objResult of an interp, because that value might be
shared, and in that circumstance a Tcl_Panic() will be the
result. Searched for example of this practice and replaced
with safer alternatives, often using the Tcl_AppendResult()
routine that dkf just rehabilitated.
|
|/
|
|
|
|
|
| |
to 'Tcl_Panic' (the function). The #define
of panic in tcl.h clearly states it is
deprecated in the comments.
[Patch 865264]
|
|
|
|
|
|
|
| |
* generic/tclObj.c: renamed global variable emptyString ->
tclEmptyString because it is no longer static.
* generic/tclPkg.c: Fix for panic when library is loaded on a
platform without backlinking without proper use of stubs. [Bug 476537]
|
|
|
|
|
|
|
| |
overlooked before. Updated callers.
***POTENTIAL INCOMPATIBILITY***
Includes a source incompatibility in the tablePtr arguments of
the Tcl_GetIndexFromObj* routines.
|
|
|
|
|
| |
package arguments it receives, not stopping when a package is
not found. [Bug 415273]
|
|
|
|
| |
in place of simple "char*". (kennykb) [Patch #404026]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tests/timer.test: changed after delay in timer test 6.29 from
1 to 10. [Bug: 2796]
* tests/pkg.test:
* generic/tclPkg.c: fixed package version check to disallow 1.2..3
[Bug: 2539]
* unix/Makefile.in: fixed gendate target - this never worked
since RCS was intro'd.
* generic/tclGetDate.y: updated to reflect previous changes
to tclDate.c (leap year calc) and added CEST and UCT time zone
recognition. Fixed 4 missing UCHAR() casts. [Bug: 2717, 954,
1245, 1249]
* generic/tclCkalloc.c: changed Tcl_DumpActiveMemory to really
dump to stderr and close it [Bug: 725] and changed Tcl_Ckrealloc
and Tcl_Ckfree to not bomb when NULL was passed in [Bug: 1719]
and changed Tcl_Alloc, et al to not panic when a alloc request
for zero came through and NULL was returned (valid on AIX, Tru64)
[Bug: 2795, etc]
* tests/clock.test:
* doc/clock.n:
* generic/tclClock.c: added -milliseconds switch to clock clicks
to guarantee that the return value of clicks is in the millisecs
granularity [Bug: 2682, 1332]
1999-09-15 Jeff Hobbs <hobbs@scriptics.com>
* generic/tclIOCmd.c: fixed potential core dump in conjunction
with stacked channels with result obj manipulation in
Tcl_ReadChars [Bug: 2623]
* tests/format.test:
* generic/tclCmdAH.c: fixed translation of %0#s in format [Bug: 2605]
* doc/msgcat.n: fixed \\ bug in example [Bug: 2548]
* unix/tcl.m4:
* unix/aclocal.m4: added fix for FreeBSD-[1-2] recognition
[Bug: 2070] and fix for IRIX SHLIB_LB_LIBS. [Bug: 2610]
* doc/array.n:
* tests/var.test:
* tests/set.test:
* generic/tclVar.c: added an array unset operation, with docs
and tests. Variation of [Bug: 1775]. Added fix in TclArraySet
to check when trying to set in a non-existent namespace. [Bug: 2613]
1999-09-14 Jeff Hobbs <hobbs@scriptics.com>
* tests/linsert.test:
* doc/linsert.n:
* generic/tclCmdIL.c: fixed end-int interpretation of linsert
to correctly calculate value for end, added test and docs [Bug: 2693]
* doc/regexp.n:
* doc/regsub.n:
* tests/regexp.test:
* generic/tclCmdMZ.c: add -start switch to regexp and regsub
with docs and tests
* doc/switch.n: added proper use of comments to example.
* generic/tclCmdMZ.c: changed switch to complain when an error
occurs that seems to be due to a misplaced comment.
* generic/tclCmdMZ.c: fixed illegal ref for \[0-9] substitutions
in regsub [Bug: 2723]
* generic/tclCmdMZ.c: changed [string equal] to return an Int
type object (was a Boolean)
|
| |
|
| |
|
| |
|
|
|