TODO

Clone Tools
  • last updated 23 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
nsf.c: - made argument of cget required

nx.tcl:

- added Tk-style methods "configure" and "cget"

- added additional regression test set for cget and configure

  1. … 7 more files in changeset.
nsf.c: - implememted cget as a configure-like method, dropped ensemble method variant

nx.tcl:

- simplified "/obj|cls/ delete method" due to resolving capabilities in

nsf::delete::method

  1. … 5 more files in changeset.
nsf.c: - extended nsf::method::delete to handle ensemble names

nx.tcl:

- added tk/incr-tcl style cget methods on class/object levels.

- improve copy handling with other child-types of the slot container working

- make sure to ignore non-slot-type objects in slot introspection

- worked on regression test until "methods.test". others are missing,

but maybe reconsideration

  1. … 7 more files in changeset.
- updated 34 copyright notices

  1. … 33 more files in changeset.
nx.tcl: - rename the following internally called methods (not for XOTcl). alloc -> __alloc dealloc -> __dealloc objectparameter -> __objectparameter recrate -> __recreate - from these methods, only __objectparameter is defined per default, the others are defined on demand

  1. … 6 more files in changeset.
changes to allow efficient tk/incr tcl compatible configure/cget - refactored code to allow to parameterize handling of required flag for parameters - don't flag an error when configure is called on an initialized object (logic: if the object is initialized, configure must have been called before, and the required action must have been already taken).

  1. … 4 more files in changeset.
- rename nx::Object.configure to nx::Object.__configure to free method name "configure" for an e.g. tk-like configure

  1. … 5 more files in changeset.
nx::test: - added summary at the end of "make test" via log file - updated .gitignore

  1. … 4 more files in changeset.
nx.tcl: - set multiplicty for mixins and filters by default from 1..n to 0..n to avoid error messages, when e.g. empty mixin lists are configured. Setting emtpy mixin-lists is strictly speaking not necessary, but this eases the code in cases the lists are sometimes empty.

  1. … 3 more files in changeset.
- handle cyclical superclassclass dependencies during object system finalize - extend regression test

  1. … 2 more files in changeset.
nsf.c: - ignore in internall calls to "dealloc" protection settings - handle cyclical class dependencies during object system finalize - extend regression test

  1. … 2 more files in changeset.
- added a SlotContainerCmdResolver() to avoid interaction of slot names with names of callable tcl commands. Without the SlotContainerCmdResolver() the call to "list" in a property named "list" leads to a call to the container object ::Test2::slot::list instead to the intended ::list. The implementation is not perfect, since it ignores the namespace path inside the slot container. - added regression test.

  1. … 2 more files in changeset.
nsfShadow.c - bump MethodEpoch when a tcl ::rename command happens on a nsf method (which might be cached in a Tcl_Obj) This fixes a crash reported by Arthur Schreiber nsf.c: - make NsfInstanceMethodEpochIncr() and NsfObjectMethodEpochIncr() accessible from all files using nsfInt.h - remove experimental code (backslash escaping for "," in parameter option parse

  1. … 4 more files in changeset.
- document private properties in tutorial and migration guide - improve wording in documenting - extend regression test

  1. … 5 more files in changeset.
- added documentation for "/obj/ info name" to migration guide and .nxd file - adding more comments to examples in migration guide

  1. … 3 more files in changeset.
- added design study ruby-mixins.tcl to example-docs and regression test

  1. … 3 more files in changeset.
- start error messages with a lower case word for consistency and to follow closer to Tcl's conventions

  1. … 6 more files in changeset.
- implement escaping for comma in value of parameter options: escaping in values can be achived via duplicating the comma. - extend regression test

  1. … 2 more files in changeset.
- explorative implementation of object method dispatches with KEEP_CALLER_SELF and no NSF_PER_OBJECT_DISPATCH - extend regression test

  1. … 2 more files in changeset.
- serializer: * pertain perobjectdispatch and keepcallerself in serializer * extend regression test

  1. … 2 more files in changeset.
- serializer: * make [::Serializer deepSerialize -ignoreVarsRE "" $o] behave like [::Serializer deepSerialize $o], since learn@wu depends on that, and a value for ignoreVarsRE of empty looks more like an omitted value than a regular expression, that should match everything. * extended regression test

  1. … 2 more files in changeset.
- added compile macro NSF_STACKCHECK to provide stack monitoring/debugging (especially useful for multi threaded programs, where stack is more limited)

  1. … 4 more files in changeset.
- protect serial generation for parameters via mutex

  1. … 1 more file in changeset.
- fix compilation when compiled without threads (many thanks for r.zaumseil for noting this).

  1. … 1 more file in changeset.
- tcl86.test: better implementation of method "each", cleanup and extension of enumerator tests

  1. … 1 more file in changeset.
- extended regression tests for yield - implemented "next" for ruby-like enumerators (each needs still more work)

  1. … 1 more file in changeset.
- pass property name to slot "initialize" method to conform with the interface to "assign", "get" ... (all these receive the property name as well) - allow slot "initialize" method to be protected (handled similarly to "init")

  1. … 3 more files in changeset.
nsf.c: - added object parameter option "slotinitialize" - renamed object parameter option "invokesetter" -> "slotassign" - call slot.assign instead of setter of object - removed restriction on nosetter/invokesetter: nosetter can be used in connection with slotassign - added regression test for slot.initialize

  1. … 4 more files in changeset.
- Fixed a bad interaction between Tcl's apply (pushing lambda frames) and the variable resolvers. The variable resolver was not able to resolve variables, while the command resolver was still working correctly. - Extended regression test

  1. … 2 more files in changeset.
documented dependencies between configure flags and feature activation cpp macros

  1. … 1 more file in changeset.