library

Clone Tools
  • last updated 11 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Harden nx::shell against inlined return statements

code generator changes: - create enum types instead of enum values for nsf API - use enum types in code

  1. … 5 more files in changeset.
- add test for the global cmd literal sharing - keep experimental code for disassembling methods

  1. … 2 more files in changeset.
- return the result of ::mongo::run

Some cleanup and adding basic test cases

  1. … 3 more files in changeset.
nx::shell reform: Provide an alternative nx::shell impl (nx::shell2), used by all four shell scripts. nx::shell2 builds on Tcl's event loop, rather than while + update. This avoids blocking the Tk main window (update). In addition, nx::shell2 is closer to Tcl's native shells (e.g., no extra lines on enter, catches EOF).

  1. … 2 more files in changeset.
Improved mongodb interface for json/bson parsing: - rename function mongo::json to mongo::json::generate - introduce mongo::json::parse

Some verbosity for tracing issue

  1. … 1 more file in changeset.
xotcl2: - added "-returns" flag to XOTcl's instprocs/procs and methods, very similar to "-returns" in nx - extended serializer to handle "-returns" flag - extended regression test

  1. … 1 more file in changeset.
- fix one case in interaction between get-trace and default value

  1. … 1 more file in changeset.
Make XOTcl tests runnable again from plain tarball/git checkout

- Allow combination of "-trace get" with default value (was previously disallowed) - Extend regression test

  1. … 2 more files in changeset.
- fix serializing of info internals for XOTcl

  1. … 1 more file in changeset.
- nsf mongodb: reduce verbosity - white-space changes

- improve robustness of serializer, otherwise "::nx::Object::slot::__info" triggers an exception

- bump version number of XOTcl to 2.1

- turned all for-loops controlled over a nonnull value into while loops - updated TODO, copyright notices, version number

  1. … 9 more files in changeset.
- upadte version numbers in README

Slot trace reform: - redesign of slot interface of traces from * variables contains cmds and variable references to * slot specific methods with the same interface as slot-setters - new: * specify flag "-trace" with a list of values "get", "set", "default" * when flag is set, a trace will be registered calling methods value=get obj variable value=set obj variable value value=default obj variable on the slot (actually the first two are identical with the methods used for slot-defined accessors) - updated regression test * new flag "-notrace" for "nsf::var::set" and "nsf::var::get"

  1. … 7 more files in changeset.
xotclsh, xowish: Make sure minor versions >2.1 are accepted

nx::shell: Have xotclsh and xowish use nx::shell

  1. … 2 more files in changeset.
nx::shell: Avoid poluting global namespace

Started refactoring scripted shell environment into a single, package location (nx::shell) to ease sharing between nxsh & friends, as well as to facilitate implementingNX/XOTcl shells in wrapped applications (tclkits)

- added flags "-debug" and "-deprecated" to XOTcl 2 "instproc", "proc", "instforward" and "forward" methods

  1. … 1 more file in changeset.
- generalize method serialization of forwarders

    • -100
    • +120
    ./serialize/serializer.tcl
- provide backward compatibility in method-serializer

serializer: - added handling of "-debug" and "-deprecated" in serializer - allow export of nsfprocs via "exportMethods declaration" in order to keep otherwise excluded cmds in the result. this allows us to keep nsf::debug::* or nsf::deprecated definitions in the blueprint in OpenACS. - hardened serializer (use e.g. "::namespace" instead of "namespace" when there is a potential conflict with a method named "namespace", prefer nsf::directdispatch, etc.) - extended regression test

  1. … 2 more files in changeset.
- nx: added flag "-debug" and "-deprecated" to methods "method" "object method" "alias" "object alias" "forward" "object forward" such one can use e.g. /cls/ public alias -deprecated|-debug /method/ ... /cls/ public forward -deprecated|-debug /method/ ... /cls/ public method -deprecated|-debug /method/ ... /obj/ public object alias -deprecated|-debug /method/ ... /obj/ public object forward -deprecated|-debug /method/ ... /obj/ public object method -deprecated|-debug /method/ ...

- added new cmd:

nsf::method::property /obj/ ?-per-object? /method/ exists

to check, whether a method is defined for an object.

- output triggered via "-debug" is now generated via the

tcl functions "nsf::debug::call" and "nsf::debug::exit",

that can be redefined (similar to e.g. nsf::deprecated)

- cleanup of nsfProfile.c commands

- extended regression test

  1. … 13 more files in changeset.
- nx: added options "-debug" and "-deprecated" to methods "method" and "obejct method", such one can use e.g. C public method -deprecated bar {} {return 1} - extended regression test

  1. … 2 more files in changeset.
- nx: added new introspection options /cls/ info method debug /cls/ info method deprecated /obj/ info object method debug /obj/ info object method deprecated - extended regression test

  1. … 3 more files in changeset.