Fossil

File History
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History of src/th_tcl.c

2019-02-24
20:32
Update error message in 'loadTcl' to make it more concise. file: [e69b2da1] check-in: [f2f01669] user: mistachkin branch: trunk, size: 40272
14:33
Make fossil work with Tcl 8.7 (still in alpha), even when Tcl is compiled with -DTCL_NO_DEPRECATED file: [fd143f19] check-in: [08e63e17] user: jan.nijtmans branch: trunk, size: 40285
2018-02-12
16:32
Patch from Pietro Cerutti to enable TCL shared library loading in TH1 on FreeBSD. file: [aedefabe] check-in: [29adfac4] user: drh branch: trunk, size: 40272
2017-12-03
16:19
Fix the th_tcl.c to include new macros defined in file.c. file: [afa334f0] check-in: [e27b1856] user: drh branch: trunk, size: 40067
2017-11-30
17:58
Refactor the symlink processing logic so that most of the file access routines take a new parameter indicating the conditions under which symlinks should and should not be followed. This should fix a few bugs related to symlink processing. Lots of testing required before merging to trunk. file: [00408c9a] check-in: [e7767de2] user: drh branch: symlink-refactor, size: 39908
2016-11-04
22:37
Consistently use the count(X) macro in place of sizeof(X)/sizeof(*X) throughout the Fossil core, excluding things that don't use makeheaders. Also use count(X) instead of ArraySize(X) which has the same definition. file: [2b70a8da] check-in: [e5b62edb] user: andygoth branch: trunk, size: 39899
2015-11-02
23:05
Permit compilation without Tcl private stubs using Tcl 8.5. file: [c5c448fc] check-in: [b500f89c] user: mistachkin branch: trunk, size: 39945
2015-07-11
23:13
Add 'tclIsSafe' and 'tclMakeSafe' commands to the Tcl integration subsystem. file: [4d68ad29] check-in: [501f35e5] user: mistachkin branch: trunk, size: 39595
2015-07-10
20:57
Check sqlite3_mprintf() return value in the Tcl integration subsystem. file: [67b5449a] check-in: [e7f7f79c] user: mistachkin branch: trunk, size: 36980
18:43
Incorporate recent downstream changes for the Tcl integration subsystem. file: [1be1bbce] check-in: [c5f71552] user: mistachkin branch: trunk, size: 36952
2015-06-11
21:25
Further improvements to the Tcl integration subsystem. file: [daed7009] check-in: [18fc492a] user: mistachkin branch: trunk, size: 36874
2015-06-10
22:18
Coding style adjustments to the Tcl integration subsystem. file: [dc8a2dd7] check-in: [fec856f4] user: mistachkin branch: trunk, size: 35903
21:42
Enhance Tcl integration subsystem to check for the FOSSIL_TCL_PATH environment variable. It present, it will be used as a directory or file name where a Tcl 8.x library might be located. file: [f47104c5] check-in: [b523bf0b] user: mistachkin branch: trunk, size: 35623
2015-04-05
00:24
Formally translate TH1 to Tcl return codes and vice-versa, where necessary, in the Tcl integration subsystem. file: [7b37123b] check-in: [4aba7584] user: mistachkin branch: trunk, size: 33051
2014-09-05
06:23
Minor enhancements to the Tcl integration subsystem. file: [be14bb8d] check-in: [946c3eb6] user: mistachkin branch: trunk, size: 30911
2014-02-04
20:30
Cleanup use of Tcl integration for launching the Tk diff viewer internally. file: [4cb7c079] check-in: [fe9990ad] user: mistachkin branch: trunk, size: 30062
09:34
Use built-in Tcl for "diff --tk" implementation if possible. Fallback is to spawn an external "tclsh" as before. file: [0fafdf5e] check-in: [252aff3e] user: jan.nijtmans branch: trunk, size: 29649
2013-10-30
08:09
More style cleanup. file: [cfe4c672] check-in: [e4e2f9f7] user: mistachkin branch: trunk, size: 29117
2013-10-27
04:48
Modify TH1/Tcl integration macros to avoid using a generic variable name. file: [3a306432] check-in: [63a9998c] user: mistachkin branch: trunk, size: 29116
2013-09-27
07:49
unloadTcl is only needed on Win32, not for Win64 or any other platform. file: [a32329be] check-in: [0013d9cc] user: jan.nijtmans branch: win64-unloadTcl, size: 28825
2013-09-25
23:56
Add formal unloading support to the Tcl integration subsystem. This is necessary to prevent a deadlock while exiting the process when Tcl is loaded. Add runtime detection of the ability to directly invoke an objProc for a Tcl command. Support USE_TCL_STUBS define in the version information. file: [95fc3c09] check-in: [6b58c67e] user: mistachkin branch: trunk, size: 29101
08:36
Remove unnecessary code which does not give any advantage. This fixes dynamical loading of Tcl 8.4 as well. file: [f383d993] check-in: [132c1b4c] user: jan.nijtmans branch: pending-review, size: 23955
08:29
FOSSIL_ENABLE_TCL_PRIVATE_STUBS only makes sense when USE_TCL_STUBS is defined as well. Use that consistantly in the code. Easier testing whether Tcl integration works fine, just by "fossil version -v". file: [ce2b1285] check-in: [0038f4c9] user: jan.nijtmans branch: pending-review, size: 26521
2013-09-23
12:09
Loading Tcl 8.4 only works when USE_TCL_EVALOBJV=1. Reason: the function Tcl_GetCommandFromObj is introduced in Tcl 8.5 (TIP #139). Actually, the source code history for Tcl indicates that this is not correct. Both Tcl_GetCommandFromObj and Tcl_GetCommandInfoFromToken are present for Tcl 8.4. The Tcl_GetCommandInfoFromToken function was added in TIP #32 and the Tcl_GetCommandFromObj function exists since the initial check-in in the Tcl repository, circa 1998. file: [898d2aaf] check-in: [2234fabe] user: jan.nijtmans branch: support-tcl84-stubs, size: 26492
2013-09-19
18:36
Per feedback, further improve the Tcl shared library error message. file: [9f677bdf] check-in: [aad3ef32] user: mistachkin branch: trunk, size: 26469
06:32
Improve the error message when loading a Tcl shared library fails. file: [f613f98b] check-in: [43c56304] user: mistachkin branch: trunk, size: 26428
2013-09-17
11:33
Don't set USE_TCL_EVALOBJV=1 for Tcl 8.6b3 and higher by default. file: [8dda47b2] check-in: [8c8c6bce] user: jan.nijtmans branch: trunk, size: 26431
10:06
Minor cleanup of Tcl integration code. Also, add more comments describing USE_TCL_EVALOBJV. file: [c9928b8a] check-in: [d7f83e74] user: mistachkin branch: trunk, size: 26558
09:31
Support overriding the USE_TCL_EVALOBJV define via a custom Makefile. file: [7abeb0e6] check-in: [5782fa03] user: mistachkin branch: trunk, size: 25575
09:00
Use Tcl_EvalObjv in any Tcl version, not only when compiled with Tcl 8.6 headers. file: [e549207e] check-in: [92fd8ddc] user: jan.nijtmans branch: pending-review, size: 23817
2013-09-16
23:38
Support the ability to determine at runtime if the private stubs mechanism was used for Tcl. file: [5d062d74] check-in: [e10d1171] user: mistachkin branch: trunk, size: 25197
23:17
Fix missing argument check for pxDeleteInterp in the Tcl integration module. file: [7682a053] check-in: [ee9d2bfb] user: mistachkin branch: trunk, size: 25192
22:51
Add support for compiling a Tcl-enabled Fossil using the private stubs mechanism. file: [1fa5016b] check-in: [955886f1] user: mistachkin branch: trunk, size: 25173
07:36
Fix a couple missed changes. file: [101a12dc] check-in: [9562a16f] user: mistachkin branch: tcl-stubs, size: 24937
07:23
Correct typo in auto.def. Improvements to the Tcl integration. file: [fc9f8c56] check-in: [efaea6b6] user: mistachkin branch: trunk, size: 22743
06:23
Fix inaccurate error message. file: [9c5bb7b4] check-in: [0a94396d] user: mistachkin branch: tcl-stubs, size: 24899
06:17
Further cleanup and naming consistency. file: [2b70dea1] check-in: [48f501ec] user: mistachkin branch: tcl-stubs, size: 24901
05:54
Enhance the private (i.e. fake) Tcl stubs mechanism support and make it optional at compile-time. file: [d0f27c94] check-in: [a76a134b] user: mistachkin branch: tcl-stubs, size: 24892
03:54
Merge updates from trunk. file: [66841696] check-in: [fc1442ca] user: mistachkin branch: tcl-stubs, size: 22147
2013-09-13
12:15
CONST -> const file: [956ed5f8] check-in: [8897edb7] user: jan.nijtmans branch: trunk, size: 21440
11:55
Eliminate the need for the Tcl stub library to be linked with. Fossil uses public Tcl functions only, so tclStubPtr is the only variable which needs to be present and initialized. The function Tcl_InitStubs reduces to only 15 lines of code, which as well can be put in directly. Advantage: Presence of 3 header files (tcl.h, tclDecls.h and tclPlatDecls.h) from whatever Tcl version is sufficient to compile Fossil with Tcl support through stubs. file: [787a8969] check-in: [9f77be88] user: jan.nijtmans branch: tcl-stubs, size: 22147
2013-04-28
22:23
Add 'tclReady' TH1 command, with tests. Adjust expected result for test 'th1-tcl-8'. file: [eed73f34] check-in: [a87eaae3] user: mistachkin branch: trunk, size: 21440
2013-03-28
22:30
(!Experiment, not meant for trunk, ever!) How would the fossil code look like, if the Tcl_InitSubsystems() function (TIP #414) was available. file: [82469ec7] check-in: [be1a7396] user: jan.nijtmans branch: initsubsystems2, size: 18820
2012-12-08
06:46
Merge updates from trunk. file: [25ca4063] check-in: [fc7e8d01] user: mistachkin branch: tclRdOnly, size: 21951
2012-10-21
19:07
Make sure that Tcl integration related script errors have consistent casing. file: [ca7a3032] check-in: [d769ee70] user: mistachkin branch: trunk, size: 21439
2012-10-07
14:22
Experimental proof-of-concept for the 'tcl-rdonly' setting and related functionality. file: [96966a4a] check-in: [851e0755] user: mistachkin branch: tclRdOnly, size: 21951
13:55
Enhance Tcl integration with support for notifications before and after Tcl scripts are evaluated. file: [060b51ef] check-in: [49c63f8c] user: mistachkin branch: trunk, size: 21439
10:12
Add 'tcl-setup' setting for the optional Tcl script to evaluate after creating and initializing the Tcl interpreter. Make sure Tcl gets a copy of all the original expanded arguments. file: [93858d1d] check-in: [fa4e8286] user: mistachkin branch: trunk, size: 18844
2012-09-29
07:29
Skip calling Tcl_InitStubs when not compiled to use the Tcl stubs mechanism. file: [bb5731f6] check-in: [1f4cfd57] user: mistachkin branch: tclStubsV2, size: 18173
2012-09-28
20:15
Refinements to the Tcl stubs integration. file: [73d3049f] check-in: [a0b3507d] user: mistachkin branch: tclStubsV2, size: 18109
07:26
load Tcl dynamically using the Stubs mechanism in stead of linking in the library statically. file: [70f73d4e] check-in: [ba91fe5f] user: jan.nijtmans branch: stubbed-tcl, size: 14848
2012-09-01
04:45
Remove leftover instances of non-ASCII characters from several files. file: [fd12bc58] check-in: [f15ce59b] user: mistachkin branch: trunk, size: 13432
2012-08-29
23:17
Update file header comments for the TH1/Tcl integration source code. file: [29dfaf88] check-in: [5f22bc09] user: mistachkin branch: trunk, size: 13430
2012-08-22
11:42
Always call Tcl_FindExecutable, even when the command line arguments are invalid. file: [22672925] check-in: [a7392129] user: mistachkin branch: tcl-argv-handling-v2, size: 13270
11:33
When there are no command line arguments, set the argv script variable to an empty list. file: [6fb9f4ec] check-in: [b04d5ab4] user: mistachkin branch: tcl-argv-handling-v2, size: 13236
11:15
Modify the Tcl argument handling to deal with object reference counts and errors. file: [b7fc9cd0] check-in: [46864ac9] user: mistachkin branch: tcl-argv-handling-v2, size: 13247
07:45
Pass argv arguments to Tcl file: [612eb2c0] check-in: [3709b1ea] user: jan.nijtmans branch: tcl-argv-handling, size: 11805
2012-08-21
13:29
Tcl only uses argv0, so it's enough to transfer this argument only file: [0d80e8b9] check-in: [b82eacd5] user: jan.nijtmans branch: tcl-argv0-only, size: 11493
2012-03-29
14:54
Add vim modline everywhere file: [40269a4f] check-in: [a496d8e8] user: mgagnon branch: mgagnon_fix, size: 11565
2011-11-05
02:54
Cherrypick the changes [389f9fca5d] and [d0233e1792] to skip adding script commands that have a NULL name or function pointer. file: [356133de] check-in: [d6c6a433] user: mistachkin branch: trunk, size: 11523
00:05
Fix non-C89 compliant variable declaration. file: [8d2efa7e] check-in: [d0233e17] user: mistachkin branch: jimtcl, size: 12136
00:01
Skip over Jim commands to create if they have a NULL name or function pointer. file: [311354f8] check-in: [389f9fca] user: mistachkin branch: jimtcl, size: 12127
2011-11-04
23:34
Cleanup style and use Jim_Obj APIs when bridging commands from Tcl to Jim. file: [36afe3a5] check-in: [d8745491] user: mistachkin branch: jimtcl, size: 12065
21:57
Replace the TH1 interpreter with Jim Tcl. file: [17767551] check-in: [863e789e] user: steveb branch: jimtcl, size: 11561
20:05
Add the BSD copyright notice to the top of the th_tcl.c source file. file: [c3469c18] check-in: [bf1ebbe1] user: drh branch: trunk, size: 11452
2011-10-27
13:45
Enable building with Tcl integration enabled using autosetup and/or makemake.tcl. Patch provided by Steve Bennett. file: [c2aa6f24] check-in: [5ffb7d71] user: mistachkin branch: tcl-integration, size: 10989
2011-10-26
14:57
Perform lazy setup of the Tcl integration subsystem when it is actually enabled. file: [a5ae2dd4] check-in: [e4958150] user: mistachkin branch: tcl-integration, size: 10930
2011-08-29
10:31
Silence compiler warnings about unused variables in print_timeline. file: [c3f8764c] check-in: [b76ce3d5] user: mistachkin branch: tcl-integration, size: 9240
09:27
Add workaround for bug in Tcl_EvalObjCmd when compiled against Tcl 8.6. file: [3b29810e] check-in: [3a626569] user: mistachkin branch: tcl-integration, size: 9234
00:54
Protect against Tcl commands with no objProc. file: [b706105d] check-in: [8f6a03f7] user: mistachkin branch: tcl-integration, size: 8697
2011-08-28
23:45
Use macros to tidy up TH1 to Tcl argument marshalling. Use the Tcl interp result when Tcl_ExprObj does not return ok. Check for Tcl interp deletion. The TH1 'puts' command should flush when writing to stdout. Add 'repository' TH1 command. Use obj API to get Tcl cmdInfo. Add tests for Tcl integration. file: [05ac892c] check-in: [53b9445b] user: mistachkin branch: tcl-integration, size: 8499
06:54
Reset result prior to direct Tcl invocation. Cast all ckalloc return values. Make sure the global config database is open for the 'test_th_render' command. Allow the 'tcl' setting to be enabled via the environment. file: [366abc23] check-in: [5cc15d08] user: mistachkin branch: tcl-integration, size: 7279
03:00
Do not free the Tcl result (or interp) prior to setting the TH1 result. file: [9077c7d0] check-in: [0299d484] user: mistachkin branch: tcl-integration, size: 7222
2011-08-27
16:26
Add ability to evaluate Tcl expressions from TH1. Add ability to invoke Tcl commands from TH1. Add the ability to evaluate TH1 scripts and expressions from Tcl. file: [0d4c0626] check-in: [c5a6e9ea] user: mistachkin branch: tcl-integration, size: 7222
14:42
Initial code to support TH1/Tcl integration. file: [22de1fd7] check-in: [f7236477] user: mistachkin branch: tcl-integration, size: 2480 Added