Makefile.in

Clone Tools
  • last updated 10 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Property reform part 1:

- disallow protection modifiers for "properties" and

add new flag "-accessor" to "property" and "variable"

This changes definitions like

Class create C {

:property {a a1}

:public property {b b1}

:protected property {c c1}

:private property {d d1}

}

to

Class create C {

:property {a a1}

:property -accessor public {b b1}

:property -accessor protected {c c1}

:property -accessor private {d d1}

}

since "properties" are always public accessible

over the "configure" and "cget" interface, but the

accessors methods might not be public. The value of

the accessor might be also "none" (specifying explicitely

that no accessor is wanted) or "", which means: use the default.

Same holds for "variable"

- disallow parameter option "incremental" and change it to a flag

of the property or variable. The motivation for this is due to

the fact, that "incremental" is a property of the accessor, and

not of the value.

old:

Class create C {

:property foo:int,incremental

:variable bar:int,incremental

}

new:

Class create C {

:property -incremental foo:int

:variable -incremental bar:int

}

- disallow "public class property" and friends since these are not needed

- removed parameter property "noaccessor"

- removed "nx::configure defaultPropertyCallProtection" and

method hook "__default_property_call_protection"

- introduced "nx::configure defaultAccessor" and

method hook "__default_accessor"

- for the time being, "defaultAccessor" is "public" for NX and XOTcl,

will be changed to "none" in NX

- extended regression test (new file properties.test)

  1. … 16 more files in changeset.
- renamed testlog file, remove it on "make clean"

  1. … 2 more files in changeset.
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.
nx::test: - added summary at the end of "make test" via log file - updated .gitignore

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

  1. … 3 more files in changeset.
- don't hide call to make.tcl

Improve wording in instructions

- tests/serialize.test: Added some basic regression tests, in particular to challenge the filter options provided by Serializer->deepSerialize() and Serializer->all(). - Included a test for commit 595e6a2. - Along the line, two minor issues where fixed: 1) Set Serializer->ignore() to public, otherwise the various external message sends to this method would fail; 2) Object-serialize() did not distinguish between serialising a per-object or per-class container properly; as a consequence, per-object containers were not restored at all. Add a test covering this.

  1. … 2 more files in changeset.
- restructured directories, added configure options, some more cleanup

  1. … 16 more files in changeset.
- run FilterInvalidateObjOrders() only, when filters are/were defined

  1. … 2 more files in changeset.
- updated "make tar"

  1. … 8 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. … 56 more files in changeset.
- add .tcl to nxdocIndex to make it recognized as Tcl file (pkgIndex has as well a .tcl extension)

  1. … 1 more file in changeset.
- remove currently unsupported and untested .xotcl files, also c-extensions of the old binary interface. Some of these package might come back later with tests for nx or xotcl.

  1. … 129 more files in changeset.
- added example file for container classes

  1. … 2 more files in changeset.
- added tk-spread and tk-locomotive to example scripts

  1. … 8 more files in changeset.
- nx-traits: * use "info methods -closure" instead of instantiating a class at trait-insertion time * added trait as package nx::callback

- example scripts: added tk-mini and tk-horse-race

  1. … 11 more files in changeset.
- library/lib/nxdoc-core.tcl: Major refactoring accomplished: Managed to refactor the validation code into a separate module, obtain a better separation between the backend implementations, ... Relocate the validate() method implementations into the Validator mixin layer. Validation (the validate cascade) is now triggered from within the mixin layer ... further improves the separation of concerns in nxdoc ... Also, moved frontend code into two distinct Tcl packages: We now distinguish between the DC ("Documentation Comments") and the XODoc frontends. I also remastered the entire frontend handling and disentangled the various concerns: specifying documentation sources, 1st- and 2nd pass handling, etc. - Support for document multiple Tcl packages per NXDoc project. Multi-package support, plus validation mode for packages, adding missing files to the repo - tests/doc.test: General cleanup, deactivated some tests for the time being (till the DC interface settles) - library/lib/nxdoc-core.tcl: Removed dead comments and dead codex - YUIDoc template suite: Added Monikas recent adaptations/extensions. I still have to check the resource paths for the xowiki backend, which are most probably broken for now. - Adjusted TODO for accomplished tasks.

  1. … 21 more files in changeset.
- add traits package and example scripts

  1. … 5 more files in changeset.
- nsf.c - added experimental parameter option noleadingdash - additionalal regression test file method-parameter.test - provide selective error messages for unknown nonpos args

  1. … 11 more files in changeset.
- change permissions back

- removed escaped reported config variable for cflags, since not portable

  1. … 2 more files in changeset.
build-environment: * make configure.in Makefile.in more in line with the TEA sample app (removing leftovers from prior versions of TEA) * remove GNU-Makefile-isms from Makefile.in

  1. … 5 more files in changeset.
- Makefile.in: Added two new targets: [make yuidoc-dev] and [make xowiki-dev]; both will be generate the documentation including validation data and will make proper use of the nxdocIndex restrictions. - apps/utils/nxdoc: Some minor fixes/additions - library/lib/nxdoc-core.tcl: Completed the nx::doc::mkIndex helper

  1. … 2 more files in changeset.
- Makefile.in: Added file-level deps to the [make yuidoc] and [make xowiki] sub-targets.

- apps/utils/nxdoc: Created a first version of a command-line script around the nxdoc machinery, for Makefile integration. - Makefile.in: Added two experimental nxdoc make-targets: [make yuidoc] and [make xowiki]. In addition, provided for a doc-specific cleanup target: [make cleandoc]. Also changed the way TCLLIBPATH is initialised for makefile runs, to preserve the surrounding environment settings. - tests/doc.test: Deactivated obsolete sections; actual cleanup is pending. - Refactored nxdoc code fragments into sub-packages, namely the html and xowiki rendering components; renamed some file and directory. - Some necessary adjustments to make nxdoc work with the new property/variable nomenclature; spotted some misbehaviour of [namespace import] when running under 8.6b2 (to be investigated; see XOTcl-lanfRef.xotcl)

  1. … 82 more files in changeset.
- generic/nsf.c: After several takes, adding support for basic handling of hidden and re-exposed objects in the sense of [interp hidden|hide|expose]. I wanted to make sure that NSF does not crash upon basic hiding/exposing operations (see tests/interp.test) and guarantees that hidden/re-exposed objects are properly handled when cleaning up object systems, i.e., the destructors are called and physical deletion is performed. [interp hidden|hide|expose] is challenging for NSF (as well as TclOO) because they way it is implementing effectively modifyies command names *without* providing any calling back to trace these changes (as for renames). As a consequence, object and command names start to diverge once an object has been hidden or re-exposed. As the changes affect the cleanup machinery in ObjectSystemsCleanup() & friends, I verified for leaks by running valgrind; no leaks were found running destroy.test and interp.test. - tests/interp.test: A test suite that covers basic scenarios of hiding and exposing objects. - Makefile.in: Registering interp.test with make env

  1. … 2 more files in changeset.
- added example rosetta-unknown-method.tcl

  1. … 3 more files in changeset.
- added example rosetta-abstract-type.tcl

  1. … 3 more files in changeset.
- tests/tcloo.test: Added a prototype implementation of TclOO's export|unexport feature, as a mere test suite. - Makefile.in: Registered tests/tcloo.test

  1. … 1 more file in changeset.