Itcl - the [incr Tcl] extension

Timeline
Login
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2019 Conference, Houston/TX, US, Nov 4-8
Send your abstracts to [email protected]
or submit via the online form by Sep 9.

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

50 most recent check-ins

2019-07-22
20:49
merge sebres-memopt-perf-branch (fixed trunk, no segfaults anymore) Leaf check-in: 620f15a6ee user: sebres tags: sebres-on-dmnd-resolver-perf-branch
20:48
merge trunk Leaf check-in: 3f80494398 user: sebres tags: sebres-memopt-perf-branch
19:09
[4f2e4ff880] ItclDeleteFunction() was failing to remove the entry from the "procMethods" table during class destruction. This left the entry in place, available for retrieval when random chance in memory re-circulation would bring the same key into play again. Retrieving and using pointers to freed structs is bad.    Fix was to stop the filtering out of some entry removals. They had been blocked because the legacy path to finding the table had been segfaulting before. The proper fix though, should not have been to leave the table polluted, but to use the simpler path to that table which already exists. Leaf check-in: 557476a050 user: dgp tags: trunk
15:51
Add some type-casts, such that Itcl compiles warning-free with -Wwrite-strings. check-in: e65e0a777f user: jan.nijtmans tags: trunk
11:19
Eliminate all usage of some C++-specific keywords, as "new" and "public". check-in: afdbec1e27 user: jan.nijtmans tags: trunk
2019-07-16
19:42
Stop trying to delete [itcl::genericclass] when no such command is created. check-in: 3f52a601ed user: dgp tags: trunk
19:29
[d8b5035423] Fix EnsembleParser life management. check-in: ddbbff5043 user: dgp tags: trunk
19:23
When cleaning up the EnsembleParser, use the assoc data machinery. dont compete. Closed-Leaf check-in: a1a244369d user: dgp tags: bug-d8b5035423
18:43
Stop retrieving Tcl_InterpDeleteProc that we do not use. check-in: 2d16a7917f user: dgp tags: bug-d8b5035423
2019-07-15
16:47
Satisfy test sfbug-254.2 with destructor handing of Itcl's TclOO foundations. check-in: 4e53598f06 user: dgp tags: trunk
2019-07-05
20:26
[dc068b3255] Backout checkin that fixed one memory fault, but created many more. check-in: e4c69b3785 user: dgp tags: trunk
2019-07-01
16:22
Stop trying to delete [itcl::genericclass] when no such command is created. Closed-Leaf check-in: 009d4da901 user: dgp tags: bug-cd042fb567
15:33
The static array itclCmds[] contains a list of Itcl command names for the sole purpose of telling [itcl::finish] what commands need to be destroyed.    Long ago, the command [itcl::genericclass] was added to that list, while the actual command [itcl::internal::commands::genericclass] was created. So [itcl::finish] has been trying and failing to delete a non-existent command ever since. Stop that. Closed-Leaf check-in: 834544b4b5 user: dgp tags: bug-cf042fb567
14:44
Bring the tests over from trunk. They do not pass. check-in: 4dc8fdf99b user: dgp tags: bug-cf042fb567
14:29
Add tests for [cf042fb567]. check-in: 38793c147d user: dgp tags: bug-cd042fb567
2019-06-30
23:29
Fix [cd042fb567] by reverting the change that created it. check-in: cd25e7e6ff user: dgp tags: bug-cf042fb567
2019-06-28
17:21
merge trunk check-in: 1688177b6e user: dgp tags: sebres-memopt-perf-branch
17:03
When built with -DOBJ_REF_COUNT_DEBUG=1, Itcl appears ready to provide a debugging command [::itcl::dumprefcountinfo], and that command shows up in a few test files in the test suite. However, the core of the implementation seems to be in a routine Tcl_DbDumpRefCountInfo() which has the disadvantage of having never actually existed. Removed remnants of the incomplete experiment. check-in: 8c45cdd2a9 user: dgp tags: trunk
16:52
Support "-singleproc 1 -file widgetclass.test" check-in: 3ab80a0fc2 user: dgp tags: trunk
16:50
Support "-singleproc 1 -file widgetadaptor.test" check-in: 8a1e76ca32 user: dgp tags: trunk
14:10
Use qualified pathname for [load] argument to end failed loads. check-in: 483da782fd user: dgp tags: trunk
2019-06-27
22:45
merge sebres-memopt-perf-branch (reintegrate cherry-picking changes from trunk, conflicts resolved) check-in: a3ec8efb1d user: sebres tags: sebres-on-dmnd-resolver-perf-branch
22:40
merge trunk check-in: 696d1ccf3f user: sebres tags: sebres-memopt-perf-branch
22:38
fixed inherit-1.10 testing with -singleproc 1 (was depending on previous tests, so for some reasons sporadical) check-in: 1d0f864141 user: sebres tags: trunk
22:25
closes segfault [4f2e4ff880]: reset iclsPtr only if last method reference is free (ItclReleaseIMF would call ItclDeleteFunction on last reference) check-in: 1ca2d5abfb user: sebres tags: trunk
20:24
make: amend to [15f03b25f8] (don't need a double quoting after --args) check-in: 9e49245d62 user: sebres tags: trunk
20:03
make: fix gdb-test target check-in: 15f03b25f8 user: sebres tags: trunk
18:45
merge trunk check-in: 234b04de03 user: dgp tags: sebres-memopt-perf-branch
18:38
Repair inverted logic of one change in [65fc8ad29b]. check-in: 58b43d7aae user: dgp tags: trunk
16:10
merge trunk check-in: fb325f617d user: dgp tags: sebres-memopt-perf-branch
15:49
Remove other code that was only written to interact with the experimental resolver (NEW_PROTO_RESOLVER). check-in: 59ace5434a user: dgp tags: trunk
15:35
Remove an unused experimental resolver (NEW_PROTO_RESOLVER) that appears to have been abandoned. If there is anyone out there who misses it, we can retrieve again from the code history. check-in: 2a08252728 user: dgp tags: trunk
14:05
merge trunk check-in: b2bcfb0404 user: dgp tags: sebres-memopt-perf-branch
2019-05-29
12:50
tests-perf: fix typo (now parameter -load works really) check-in: 97914e0ddd user: sebres tags: sebres-on-dmnd-resolver-perf-branch
12:14
merged trunk check-in: 34b8ed67f7 user: sebres tags: sebres-on-dmnd-resolver-perf-branch
2019-05-10
12:36
Always compile Itcl with -DTCL_NO_DEPRECATED, since it then only uses the public TIP #139 stub entries, not the private ones. check-in: b529534754 user: jan.nijtmans tags: trunk
2019-05-09
20:56
Eliminate all usage of Tcl_GetStringResult() and Tcl_StringMatch() check-in: 2d510e2305 user: jan.nijtmans tags: trunk
2019-04-17
20:47
on-demand var-resolver ready - code cleanup & review check-in: 8a6f5cc182 user: sebres tags: sebres-on-dmnd-resolver-perf-branch
20:46
more performance cases (covering memory preservation, branch sebres-memopt-perf-branch) check-in: ce8cbde7be user: sebres tags: sebres-on-dmnd-resolver-perf-branch
20:46
stop call of var-resolver twice (add TCL_GLOBAL_ONLY - trick to avoid call resolver for namespace of current frame, all vars are fully-qualified). check-in: c98c2c9ea2 user: sebres tags: sebres-on-dmnd-resolver-perf-branch
20:46
add performance test-suite check-in: b8ab55a29e user: sebres tags: sebres-on-dmnd-resolver-perf-branch
20:45
move bypass-logic of internal dicts into and simplify Itcl_ParseVarResolver check-in: d46639da5b user: sebres tags: sebres-on-dmnd-resolver-perf-branch
20:44
some clean-ups / review check-in: 7b37e1c98b user: sebres tags: sebres-on-dmnd-resolver-perf-branch
20:44
**todo: review** on demand resolver ready (all tests passed) check-in: ce5e0de1c4 user: sebres tags: sebres-on-dmnd-resolver-perf-branch
20:43
on demand resolver almost ready (check if0-commented cases - inheritance, 2-3 test cases failed) check-in: 87972ed991 user: sebres tags: sebres-on-dmnd-resolver-perf-branch
20:43
**interim** improved, but not ready (tests failed, segfault, rebuild on inheritance, etc) check-in: 904c4d882c user: sebres tags: sebres-on-dmnd-resolver-perf-branch
20:42
*interim* try to implement on demand var-resolver virtual table check-in: c3440a6f46 user: sebres tags: sebres-on-dmnd-resolver-perf-branch
20:41
avoid duplicates of vlookup by same var (protected vars of ancestor class), can use same handle across all namespaces check-in: 0020101e54 user: sebres tags: sebres-on-dmnd-resolver-perf-branch
20:40
Itcl_BuildVirtualTables: avoid whole recreation of var-resolver table (huge speed-up of class creation) check-in: 4744d4ba35 user: sebres tags: sebres-on-dmnd-resolver-perf-branch
20:36
fix disable assert for release-version (normally NDEBUG signaling no asserts) check-in: fcbb36b8f9 user: sebres tags: sebres-on-dmnd-resolver-perf-branch