xotcl

Clone Tools
  • last updated 15 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- Addressed a number of issues in the NX slot infrastructure (which revealed themselves when running Mark's BusinessActivities implementation in XOTcl2 mode): - generic/nsf.c: Initcmd blocks (as set for registering per-class slot traces) were subjected to argument checks causing unexpected behavior (e.g., attempts of unboxing initcmds as Tcl lists or of checking initcmds against value types). This was fixed by exempting NSF_ARG_INITCMD params from argument checking in ArgumentCheck() explicitly. - library/nx/nx.tcl: For per-class parameters, the use of valuechangedcmd effectively overruled the default value specified (simply because the generated initcmd holding the trace statements took the place of the default value). While for defaultcmd and for valuecmd the parallel use of default is forbidden, the valuechangedcmd semantics allow for specifying a default, in principle. This was fixed by providing a default-setting statement in the initcmd. - tests/parameters.test: Added tests to cover the above (and beyond). - library/xotcl/library/xotcl2.tcl: Extended the backwards compatibility of the hybrid XOTcl2/NX slots infrastructure to the XOTcl 1 interface: This includes support for inline -proc statements and instvar. This compat level corresponds to the slot interface as documented (by examples) in the XOTcl language ref and the manual. - library/xotcl/tests/slottest.xotcl: Added tests for the above compat enhancements.

  1. … 3 more files in changeset.
Most issues resolved, however, the ordering of default vs. traces is pending

  1. … 3 more files in changeset.
- change "#!/bin/env" into "#!/usr/bin/env"

  1. … 6 more files in changeset.
- increase backward compatibility for ::xotcl::Attribute by defining the public methods "set", "exists" and "istype"

- library/xotcl/library/xotcl2.tcl: Provided a virtual slot "multivalued" to establish backward compatibility with XOTcl1; also, allow old-style class creation based on unknown for ::xotcl::Attribute - library/xotcl/tests/slottest.xotcl: Added some tests on backward compatibility for XOTcl slots

Fixed test case statement

- library/xotcl/library/xotcl2.tcl: Provided a virtual slot "multivalued" to establish backward compatibility with XOTcl1 - library/xotcl/tests/slottest.xotcl: Added some tests on backward compatibility for XOTcl slots

- don't allow object creation to overwrite non-object cmds (e.g. procs)

  1. … 5 more files in changeset.
- Bump version number of head to 2.0b4

  1. … 4 more files in changeset.
BEWARE: We are missing multivalued support in xotcl1 emulation

- fixed potential crash from method caching, when permissions on cmds are changed and become e.g. unresolvable - removed flag allowmethoddispatch, since behavior can be achived via private flag. - extended regression test

  1. … 9 more files in changeset.
- deacitivate for the time being allowmethoddispatch (make it behave always like true) - added instead new flag "perobjectdispatch" to make behavior of ensembleobjects configurable. - The behavior for keepcallerself is currently only activated for the method-interface for object dispatch, since otherwise the following would be dangerous, since "o2 foo" would destroy o2 nx::Object create o1 nsf::object::property o1 keepcallerself true nx::Object create o2 { ::public method foo {} {o1 destroy} } o2 foo

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

  1. … 13 more files in changeset.
Extend handling of dashses in XOTcl's configure method to perform a more eager search for command begins (same change as in XOTcl 1)

  1. … 1 more file in changeset.
- Added exerpimental object property "allowmethoddispatch" for child-objects to be called from parent objects via method interface. Background: both, per-object methods and childobjects are implemented via cmds in the same tcl namespace. Without special care, both are callable via the standard dispatch. Apparently, this is not always wanted. - handled allowmethoddispatch and keepcallerself in copy/move - set allowmethoddispatch per-default in XOTcl - removed visablilty of objects with "allowmethoddispatch" false in "info methods" and "info search methods" - extended regression test

  1. … 10 more files in changeset.
- simplified usage of ObjectName() and ClassName() macros (no caller parenthesis needed) - added exerpimental object property keepcaller self (currently only evaluated by aliased objects)

  1. … 8 more files in changeset.
Bump version number to 2.0 to avoid confusions with the serializer from XOTcl 1

- xotcl/library/comm/Httpd.xotcl: force dates in GMT as HTTP RFCs require

nsf.c, nsf.h, nsfStack.c, nx.tcl, tcl-cool.tcl, xotcl2.tcl - fix spelling in comments - strip unneeded space

  1. … 6 more files in changeset.
- better to let file classify this file as latex than C++

all artifacts saved

  1. … 4 more files in changeset.
- bump version number to 2.0b3

  1. … 4 more files in changeset.
- added copyright notice to nx.tc and xotcl2.tcl

  1. … 1 more file in changeset.
Revert "- Changed "Institute of IS ..." to "Institute for IS ...""

  1. … 8 more files in changeset.
- Changed "Institute of IS ..." to "Institute for IS ..."

  1. … 8 more files in changeset.
- update copyright files

  1. … 5 more files in changeset.
- remove obsolete CVS IDs

  1. … 2 more files in changeset.
- make sure to use "XOTcl 2.0" instead of just XOTcl in "package req" to avoid confusions due to beta state - remove more obsolete and untested files

  1. … 42 more files in changeset.
- remove currently untested scripts, requiring in part currently unssupported packages

    • -151
    • +0
    ./apps/actiweb/AgentClient.xotcl
    • -205
    • +0
    ./apps/actiweb/FormsWithState.xotcl
    • -82
    • +0
    ./apps/actiweb/securePlaceDemo.xotcl
    • -204
    • +0
    ./apps/actiweb/univ/UNIVERSAL.rdf
  1. … 16 more files in changeset.
- rename "info method handle /methodName/" into "info method registrationhandle /methodName/" - rename "info method origin /methodName/" into "info method definitionhandle /methodName/" - added "info method origin" to return the target of an alias (or empty)

  1. … 19 more files in changeset.