Timeline
Not logged in
Tcl 2015 Conference, Manassas/VA, US, Oct 19-23
Send your abstracts to tclconference@googlegroups.com by Aug 24.

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

50 most recent check-ins

2015-06-26
22:17
[3dbf04cbca] Leaf: More WIP. Segfaulting. Moving to machine with a debugger. (user: dgp, tags: dgp-wip)
20:15
[434f0cb8c3] Work in progress to move to another machine. (user: dgp, tags: dgp-wip)
2015-06-25
15:50
[7dc08975cf] Leaf: merge trunk (user: dgp, tags: dgp-info-args)
15:48
[22d16cca02] Leaf: Bring back ItclEnsembleSubCmd(). Itk needs it. (user: dgp, tags: trunk)
2015-06-24
19:50
[014f180789] The [info] and [info::delegated] commands are implemented as Tcl ensembles. They are no longer Itcl ensembles. They no longer make use of the @error mechanism, so there's no need to keep around the support for it. (user: dgp, tags: dgp-info-args)
19:13
[6d6b477375] merge trunk (user: dgp, tags: dgp-info-args)
2015-06-23
20:40
[9e4a79c8f4] [87a1bc6e82] Stop tailcall abuse by re-architecting the builtin info method. (user: dgp, tags: trunk)
20:22
[b1eee49e1d] Closed-Leaf: Some more cleanup plus mega-correction of broken error messages and mega-updating of relentless stringified result setting. This ain't 1998 no more! (user: dgp, tags: dgp-tailcall)
18:51
[1dfdbe0bd1] A lot of work in progress simplifying the [info] implementation. (user: dgp, tags: dgp-tailcall)
18:49
[324497c860] Must save and restore namespace around method invocation when a C implemented body is a possibility. (user: dgp, tags: dgp-tailcall)
2015-06-19
19:14
[346bdb0c18] Scratch work commit. Needs a lot of cleanup and commentary, but it proves the concept. A major reworking of the "info" method support. Arrange for every Itcl class to have its own info method, rather than inheriting one from the base class. This give each info call the context needed to return class-specific results reliably. With that in place huge tracts of code complexity just fall away. (user: dgp, tags: dgp-tailcall)
2015-06-12
19:50
[2faf2340b3] unused var (user: dgp, tags: dgp-tailcall)
19:25
[8929af497d] Prevent the class command resolver from acting on "info" so that itcl::class C {} itcl::class D {inherit C} namespace eval D namespace which info    resolves to D::info and not to C::info. This is needed so that [info class] has the right context to deliver the right answer.    Also revised [info class] to the new non-proc-wrapped environment. (user: dgp, tags: dgp-tailcall)
13:07
[7c7fbfe141] Re-implement the builtin [info] method with a direct route to the C implementation (Tcl_ObjCmdProc) of the itcl::builtin::Info ensemble. This avoids the proc-like method wrapping, which is what brought about the need for a [tailcall] to get the fallback frame correct.    Now tests fail, because portions of the itcl::builtin::Info ensemble were written to account for the wrapped environment. That needs correcting, but the final result should be better. (user: dgp, tags: dgp-tailcall)
2015-06-11
13:42
[483bd8785d] Leaf: merge trunk (user: dgp, tags: bug-f3a2e7407c)
12:40
[e790445bf8] Creation and routing through subcommand [::info itclinfo] serves no apparent purpose, and adds a layer of complexity and confusion. Remove. (user: dgp, tags: trunk)
02:36
[5ce23c50eb] Stop Itcl extensions to [info args] breaking the original function. Commited to a branch for now, for a few reasons. 1) Two tests fail due to changed error messages. Have to consider relative merits. 2) Could not merge forward the implementation from Itcl 3 because Itcl 4 is admirably intruding less into the Tcl internals. This means a Tcl_Eval() fallback implementation, which suggests that a rewrite might be even better. (user: dgp, tags: dgp-info-args)
02:10
[ff7a645c05] Leaf: Stop letting Itcl's extension to [info args] break its original function. (user: dgp, tags: itcl-3-branch)
2015-06-10
19:23
[38ce2d09ec] Use our own namespace to class lookup table to determine access permissions. This takes away a dependence on an internal detail of how TclOO makes use of namespaces. (user: dgp, tags: bug-f3a2e7407c)
17:56
[1cc9eab968] When a class has two namespaces, make sure Itcl_IsClassNamespace() identifies both of them. (user: dgp, tags: bug-f3a2e7407c)
17:46
[f4ac0c72f5] If we use namespace deletion callbacks, there's no need for phony commands like [__this] just for signalling. (user: dgp, tags: bug-f3a2e7407c)
2015-06-08
18:58
[a7481925de] merge trunk (user: dgp, tags: bug-f3a2e7407c)
18:56
[dcdbeababe] Remove pointless complexity from access command destruction. (user: dgp, tags: trunk)
18:50
[09c710df3c] Use metadata destruction callbacks to make sure both Itcl Class namespaces are removed from tables and torn down when two are forced to exist. (user: dgp, tags: bug-f3a2e7407c)
17:30
[4ba2e88467] merge trunk (user: dgp, tags: bug-f3a2e7407c)
17:29
[a0d501e2d3] If we don't want to handle rename traces, then don't ask for them. (user: dgp, tags: trunk)
2015-06-05
18:48
[6ccfc9b953] Segfault appears to occur because Itcl's resolvers are not attached to the namespace of the TclOO object. Commit correction to that. Not confident, and the patch only stops crashing; doesn't lead to correct function, so work committed to non-trunk branch. (user: dgp, tags: bug-f3a2e7407c)
17:01
[9960c2f84f] Add refcounting for reference stored as clientData of [__this] command. (user: dgp, tags: trunk)
2015-06-04
18:08
[b39fcdc58f] Remove some assert() calls that are separately tested and whose false conditions are handled. (user: dgp, tags: trunk)
17:01
[29e7bab741] We have a namespace lookup table. Use it! Don't scan and string-match over the table for class name lookups, assuming naming conventions. (user: dgp, tags: trunk)
16:47
[b947eab8a2] Lookup namespaces in the table indexed by namespaces, *not* via naming assumptions about classes. (user: dgp, tags: trunk)
16:05
[fe873b9ea0] Remove legacy hash table lookup that no longer performs any useful function. (user: dgp, tags: trunk)
15:12
[aa78a09260] [f3a2e7407c] Stop asking TclOO to have a new object use the class namespace of its class. TclOO will not do this. Going though the motion of asking just adds confusion. (user: dgp, tags: trunk)
2015-06-01
03:17
[8efa6bef21] Replace the Preserve/ReleaseData management of (ItclClass *) values with a system of refcounting using a field in the struct itself. With this new system remove those Preserve/Release operations not actually needed and in some cases not properly balanced. (user: dgp, tags: trunk)
2015-05-29
19:56
[f71a135a2e] compile err msg (user: dgp, tags: trunk)
18:10
[ecd708c3c6] [5885edb242] Fix the "unknown" method of Itcl classes so that it is more selective, enabling the C++ declaration inspired syntax [$class $instance] without taking lots of missteps in the presence of unknown methods as well. (user: dgp, tags: trunk)
18:09
[0a86d0bee2] Closed-Leaf: merge trunk (user: dgp, tags: bug-5ea6971709)
17:56
[8614d34d33] Remove pointless legacy hashtable scan.    In the beginning, items were not removed from the hash table on class teardown. Memory leaked. It was bad.    Then a dumb solution was added. On each class destruction, scan the whole table looking for the class value stored in it, and remove what's found.    Later the right answer was added. Use the info about the class being destroyed, to lookup just the hash table entry that matters and remove that.    But the dumb solution remained. We kept scanning a hash table, looking for something that now we never find, because the right solution has already removed it.    Until today. Now finally the pointless dumb solution code is removed.    This is the tale of the "namespaceClasses" table. That's all I'm looking at today. I presume very similar tales still lurk seeking their happy endings. (user: dgp, tags: trunk)
16:24
[3f99ec1183] Rework Itcl_FindClass (user: dgp, tags: trunk)
16:06
[9459d3f33c] Improve Itcl_FindClassNamespace() by using more of what Tcl API provides. (user: dgp, tags: trunk)
15:47
[5d87d2f45e] The code to enable overwriting in the auto_import stub mechanism was too narrowly tailored to test import-2.5. Added import-2.6 to demo and then made fix. (user: dgp, tags: trunk)
2015-05-26
19:44
[8a11d531cc] Repair obviously broken logic. Prefix "::" is special. Prefixes "a:" and ":a" are not. (user: dgp, tags: trunk)
18:23
[d2e376ca8b] Fix the "unknown" method of Itcl classes so that it is more selective, enabling the C++ declaration inspired syntax [$class $instance] without taking lots of missteps in the presence of unknown methods as well. Patch takes significant effort to preserve error messages, even when in my judgment they are sub-par, and better ones would be simpler, just for sake of compatibility. This patch leaves test import-2.5 failing due to another bug [f3a2e7407c]. (user: dgp, tags: bug-5ea6971709)
2015-05-22
17:14
[5885edb242] Disable crackpot code. No substantial harm demonstrated by test suite. (user: dgp, tags: bug-5ea6971709)
2015-05-21
14:00
[3d78d3a91a] Remove (buggy and ineffective) screen out of non-implemented methods. Don't want to do this anyway. Remove portion of "unknown" method handler that treats (ItclMemberFunc *) as (ItclDelegatedFunction *). (user: dgp, tags: trunk)
13:58
[f60f298360] Closed-Leaf: TEA update/repair (user: dgp, tags: dgp-member-flags)
13:56
[2642a4eccf] Best I can tell, the condition on make only an implemented method known to the TclOO machinery -- leaving out those with no body yet defined -- is just an error. TclOO needs to know about them in order to match them up with the itcl::body that later defines them or to trigger auto-loading of their bodies. (user: dgp, tags: dgp-member-flags)
2015-05-20
20:04
[b049519e72] Suppress clearly broken code (ItclMemberFunc != ItclDelegatedFunction). (user: dgp, tags: dgp-member-flags)
2015-05-08
14:08
[807132490d] TEA update (user: dgp, tags: trunk)
12:28
[a9b92b644e] Attempt to correct flags confusion leads to trouble. (user: dgp, tags: dgp-member-flags)