tests

Clone Tools
  • last updated 8 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- reanimated 5 tests in tests/destroytest.tcl

  1. … 1 more file in changeset.
- fixed "info methods" and added "-methodtype all" for setting class-only

  1. … 2 more files in changeset.
- Started separating the documentation into four documentation projects, each with its own documentation artifact: nsf (predefined.tcl), nsl/nx (nx.tcl), xotcl (xotcl2.tcl), libraries (several?). - Removed documentation blocks from gentclAPI.decls - Added default namespace resolution for documentation entities. @project and @package can now specify a default namespace which is applied to all relative (not fully qualified) entity names. This avoids the redundant writing of longish qualified entity names. As a @project may contain several @packages, multiple default namespaces can be specified. - Added a distinct @class entity family. - @project and @package can now trace the creation of specified part entities (@class, @object, @command) to be structurally linked to them. - Fixed search box support for @command views - Excluded template files from output directories

  1. … 8 more files in changeset.
- added object info methods mixinguard, mixinclasses to objectInfoMethod - added class info methods mixinguard, mixinclasses to classInfoMethod - built a temporary solution for dispatcher "mixin", since forward mangles args - nx: we have now "obj info mixin guard name" instead of "obj info filter -guard name" - nx: we have now "obj info mixin classes ...." instead of "obj info filter ...." - updated migration guide

  1. … 8 more files in changeset.
- started new interface bundles, objectInfoMethod and classInfoMethod for using new infrastructure - added object info methods filterguard, filtermethods, vars to objectInfoMethod - added class info methods filterguard, filtermethods to classInfoMethod - built a temporary solution for dispatcher "filter", since forward mangles args - nx: we have now "obj info filter guard name" instead of "obj info filter -guard name" - nx: we have now "obj info filter methods ...." instead of "obj info filter ...."

  1. … 7 more files in changeset.
- added option "-returns" to Class.method - added subcmd to method/object method in nx - delete class methods in freeAllXOTclObjectsAndClasses() explicitly to handle potential double-deletes - extended regression test for subcmds

  1. … 5 more files in changeset.
- use prefix sub= for methods invoked on "object as method" - change further instances of "my connection" to "[self]::connection" in xo*comm*

  1. … 9 more files in changeset.
- implemented experimental delegating version of "object as method" that keeps the original self.

  1. … 7 more files in changeset.
- replaced "obj|cls mixinguard name cond" by "obj|cls mixin guard name cond" - replaced "obj|cls info mixinguard name" by "obj|cls info mixin -guard name" - replaced "cls object info mixinguard name" by "cls object info mixin -guard name" - removed XOTclObjInfoMixinguardMethod() - removed XOTclClassInfoMixinguardMethod() - extended regression test - updated migration guide

  1. … 7 more files in changeset.
- replaced "obj|cls filterguard name cond" by "obj|cls filter guard name cond" - replaced "obj|cls info filterguard name" by "obj|cls info filter -guard name" - replaced "cls object info filterguard name" by "cls object info filter -guard name" - removed XOTclObjInfoFilterguardMethod() - removed XOTclClassInfoFilterguardMethod() - extended regression test - updated migration guide

  1. … 7 more files in changeset.
- use now class-only for all methods methods of meta-classes. Methods of meta-classes are intended to be applied on classes, one should not change this via per-object mixins. - respect class-only in "info callable methods|method" - extended regression test - provided relation name "object-filter" to slot filter.

  1. … 4 more files in changeset.
- removed XOTCL_METHODTYPE_OBJECT from XOTCL_METHODTYPE_BUILTIN - default methodtype returns now everything, which is a true method (except objects) - methodtype -all includes objects - the object "slot" does not appear now in the method listing per default for classes having slots

  1. … 5 more files in changeset.
- removed methods object-mixin and object-filter from the interface. (Caused some duplication of logic in the method "object") _ added option noforwarder to RelationSlots - some minor cleanup

  1. … 2 more files in changeset.
- Accomplished major rewrite and cleanup of the comment block parser. The revised design allows us to express parsing states (context, description, part) as well as their substates reflecting the comment line processed (tag, text, space) directly. The design follows a METHODS-FOR-STATES strategy. Also, the parsing logic is now self-contained and is not interwoven with the class hierarchy documentation entities anymore (i.e., the former process() method of Entity and its subclasses). - The modal/reactive design of the comment block parser has been streamlined: There is a CommentBlockParser class which acts as the event source. The actual parsing is achieved by the mixin-refined entity objects by reacting upon the parsing events (process, parse, next). - Adjusted the tests in doc.tcl accordingly. - Changed occurrences of [info callable] to reflect the latest changes.

  1. … 1 more file in changeset.
- checked saftey of Class.method, Class.alias, Class.setter, Class.forward - made Class.filterguard, Class.mixinguard, Class.attribute robust against per-object mixins from meta-classes - fixed mixin/filter delete methods with guarded operations - extended regression test - all methods defined on both, Object and Class are now safe in respect to per-object mixins with meta-classes

  1. … 2 more files in changeset.
- made Class.info, Class.mixin, Class.filter robust against per-object mixins from meta-classes - extended regression test

  1. … 5 more files in changeset.
- changed "info method filter ...." into "info callable filter ..." - fixed "o info callable method" in some cases with mixins - extended regression test - updated migration guide

  1. … 6 more files in changeset.
- renamed "info method name ..." into "info method handle ...", since it returned already the handle - renamed ListMethodName() to ListMethodHandle() - changed output of "info callable -which ..." from definition to method handle - renamed "info callable -which ..." into "info callable method ..." - updated regression test to reflect the changes

  1. … 8 more files in changeset.
- removed method "autoname" from nx.tcl - added "method require autoname" - added "method require exists"

  1. … 4 more files in changeset.
- nsf: provided scripted support for "require/provide methods" - nx: new method ":require namespace" ":require method" "require object method" - added regression test method-require - removed requireNamespace from nx.tcl (still exists in xotcl) - replaced "requireNamespace" by "require namespace" in nx regression tests - updated migration guide

    • -0
    • +58
    ./method-require.tcl
  1. … 6 more files in changeset.
- implemented return value checker (for scripted and c-implemented methods) - additional methodproperty returns (for registering a return value checker) - support for incrementally adding stuff to paramDefs (such as slotobj or return value) - new c-function ParamDefsNew() - added regression test for return value checker

  1. … 6 more files in changeset.
- commented out XOTCL_CMD_NOT_FOUND, since it seems to be obsolete by now - extended regression test to avoid CallDirectly on dealloc (the last place, where XOTCL_CMD_NOT_FOUND was used)

  1. … 3 more files in changeset.
- implemented parameter option "allowempty" - extended regression test

  1. … 3 more files in changeset.
- Implemented "interp alias" support for classes. In some cases. interp-aliased classes worked already without additional code, but e.g. in "... -superclass C ..." it failed. Without this feature, one could not reuse a class with a different namespace, unless it was explicitely "namespace exported" in the source. The problem was the implementation of "::nx::Attribute", which should not be exported in nx (most people do a "namespace import ::nx::*") because there is no need to do so, but ::xotcl::Attribute should reuse it - without subclassing). .... However, we still seem to have a problem, when the interp-aliased Class is exported and imported to a different namespace.

- removed definition of slots from nx, changed regression tests

examples to to ::attribute instead of -slots

  1. … 6 more files in changeset.
- adjusted path in documentation system for nx/nx.tcl

- made the "next scripting laguage" a own, loadable tcl package (currently named nx, name is subject of change) - predefined.tcl is now pretty minimal.

  1. … 21 more files in changeset.
- added interp alias "nx::self" to "nx::core::current method" - changed "current proc" into "current method" in scripts and tests

  1. … 6 more files in changeset.
- updated migration guide, added section for callstack introspection - updated serializer for new names

  1. … 3 more files in changeset.
- xotcl.c: * new function GetObjectFromNsName() to obtail object or class from a fully qualified namespace name used in method handles (such as e.g. ::nx::core::classes::X) * new function MethodHandleObj() to return a tcl_obj containing the methodhandle * removed obsolete method getFullProcQualifier() * info methods obtain now object and/or class from fully qualified method names (method handles) if possible * return message handles in "current next", "current filterreg" and "... info filter ... -order", which can be used in "info method .... " for obtaining more details. * change all occurrances of "self" in next regression tests to current. - xotcl2.tcl * implemented "self" as a proc to provide extensibility and full backward compatibilty; this opens opportunity to replace now e.g. "self proc" by "current method", etc. * provide full compatibility for "self next", "self filterreg" and "... info filter ... -order", returning old-style multiword method handles (such as e.g. "::C instproc foo") - changed "next" to current in documentation framework and templates

  1. … 12 more files in changeset.
- iterated through doc.tcl-TODOs - changed CheckVarName to allow array names like e.g. a(::b) - extended regression test - fixed serializer to handle subobjects of explicitely exported objects

  1. … 3 more files in changeset.