• last updated 23 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Add 'acs_subsite_rel_type_roles' test case, covering 'rel_types::create_role' and 'rel_types::create_role'

Add 'acs_subsite_relation_procs' test case, covering 'relation_add', 'relation_remove', 'relation::get_object_one', 'relation::get_object_two', 'relation::get_objects' and 'relation::get_id'

Whitespace changes

improve test coverage

Add 'acs_subsite_attribute_datatypes' test case, covering 'attribute::translate_datatype' and 'attribute::datatype_validator_exists_p' procs

Remove unnecessary aliases

Add 'attribute::value_add' and 'attribute::value_delete' to the 'acs_subsite_attributes' test case

complete listing of covered procs in test cases

  1. … 14 more files in changeset.
Remove leftovers

Whitespace changes

Add new test 'acs_subsite_attributes' covering the 'attribute::add', 'attribute::exists_p' and 'attribute::delete' procs

prefer ns_dbquotevalue over db_quote, mark latter as deprecated

  1. … 3 more files in changeset.
improve listing of test coverage

  1. … 17 more files in changeset.
make listing of tested procs more complete

  1. … 11 more files in changeset.
make end of options explicit

  1. … 15 more files in changeset.
address issue #3456

fix typos

fix for issue #3455

Prefer 'namespace which' over 'info commands', as it is faster (on local tests, around 2x) and returns a single value. Many thanks to Nathan Coulter.

  1. … 57 more files in changeset.
prefer db_0or1row for exists-queries

support passing a dict as argument to "group::update" (not only array)

prefer db_0or1row +"where exists" over db_string + "select case"

  1. … 3 more files in changeset.
Improve sql portability

  1. … 1 more file in changeset.
Replace limit with a portable idiom

Make apm callbacks private and move them together with the others

When a new group is created, flush all the group::get_id caches with the same name so that the new group has a chance to be retrieved

Note that it is wrong to assume a group_name will be unique, although this is normally not far from the truth in our everyday practice

Cover more group api

this also exposes a potential problem with group::get_id when a group is created, deleted, and then a new one is created with the same name (e.g. executing the test multiple times). As the memoize cache is not maintained, the returned group_id will be incorrect.

Increase proc coverage

Fix typo

acs-lang reform

Provide an optional object_id which can be used to register message keys that will be bound to the lifecycle of an acs-object. When the object is deleted, so will the message key.

This is useful for groups that automatically define a message key for their pretty name. Tcl api was already aware of this and would cleanup such message keys, but other idioms e.g. stored procedures used to delete groups would leave leftovers behind. These can become relatively numerous on group-intensive systems such as LEARN.

Other future usages for this new feature might be the automatic localization of xowiki FormPage properties.

  1. … 9 more files in changeset.