• last updated 19 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates

ad_proc reform:

- use nsf::proc for defining ad_procs, when nsf::proc is available

- nsf::proc is part of the environment of XOTcl2 and provides

an efficient, C-implemented argument parser that can replace

the scripted *__arg_parser of OpenACS.

- The benefits are performance and reduced memory consumption.

* Simple functions (where the calling overhead was a large

part of the execution times can become several times faster

(e.g. db_name is 3x faster, cookie handling is 2x faster),

for functions with much db-activities the percentage will

be less.

* The memory consumption (RSS) of a site like OpenACS.org

is reduced by about 15%.

NEW (with nsf::proc)

::ad_get_cookie x: 10.93 microseconds per iteration

::ad_get_cookie ad_session_id: 21.95 microseconds per iteration

::dt_systime: 24.89 microseconds per iteration

::db_name: 8.70 microseconds per iteration

::db_string dbqd.null.g "select version() from dual": 316.66 microseconds per iteration

::ad_convert_to_html "hello world": 102.29 microseconds per iteration

OLD (without nsf::proc)

::ad_get_cookie x: 19.42 microseconds per iteration

::ad_get_cookie ad_session_id: 30.10 microseconds per iteration

::dt_systime: 27.55 microseconds per iteration

::db_name: 32.28 microseconds per iteration

::db_string dbqd.null.g "select version() from dual": 366.69 microseconds per iteration

::ad_convert_to_html "hello world": 160.51 microseconds per iteration

======================================================================

proc mtime cmd {set c 5000

set t [time [list time $cmd $c]];

regexp {^(-?[0-9]+) +} $t _ mS1;

set ms [expr {$mS1*1.0/$c}];

return "[format %6.2f $ms] microseconds per iteration"

}

set tests {

{::ad_get_cookie x} {::ad_get_cookie ad_session_id} {::dt_systime}

{::db_name} {::db_string dbqd.null.g "select version() from dual"}

{::ad_convert_to_html "hello world"}

}

foreach t $tests {append ::_ $t ": " [mtime $t] \n}

set ::_

======================================================================

- add @see for deprecated proc

- fix page contracts, improve saftey of argument passing via URLs

- update head channel

- remove backup file from repository

file upgrade-5.9.0d4-5.9.0d5.sql was initially added on branch oacs-5-9.

- follow naming conventions proposed by regression test

- bump version number

- add documentation for public procs (fix for issue #3246)

- fix syntax and indentation

- fix syntax

- remove acs_objects.tree_sortkey from xql query for object::get

- reduce verbosity

- backport from oacs-5-9

    • -0
    • +12
    /openacs-4/packages/xowiki/tcl/xowiki-init.tcl
    • -12
    • +28
    /openacs-4/packages/xowiki/tcl/xowiki-procs.tcl
- when form_instance_item_index is dropped, and hstore should be used,

repopulate the item_index with hstore values

- ::xowiki::hstore::update_update_all_form_instances respects now the

use_hstore package parameter values

    • -0
    • +12
    /openacs-4/packages/xowiki/tcl/xowiki-init.tcl
    • -12
    • +28
    /openacs-4/packages/xowiki/tcl/xowiki-procs.tcl
file xowiki-init.tcl was added on branch oacs-5-8 on 2015-08-14 17:28:07 +0000

file xowiki-init.tcl was initially added on branch oacs-5-9.

    • -0
    • +0
    /openacs-4/packages/xowiki/tcl/xowiki-init.tcl
- provide minimal support for ckeditor4 (via CDN)

- added changes from antonio to pass handling for unknown editor to the master templates

- don't enforce xinha as default editor (obey settings from preferred editor)

- perform msg-key substitution directly in script file to have access to the embedded variable pretty_plural

- add environment variables for HOME and LANG to avoid problems with sorting orders and/or with called programs that expect HOME to be set (e.g. dot).

- make structure somewhat closer to install-ns

- backport from head

    • -6
    • +30
    /openacs-4/packages/xowiki/tcl/xowiki-procs.tcl
- backport from HEAD

    • -6
    • +30
    /openacs-4/packages/xowiki/tcl/xowiki-procs.tcl
- implement a stack for resolve_contexts to assure proper behavior for nested calls

    • -6
    • +30
    /openacs-4/packages/xowiki/tcl/xowiki-procs.tcl
- never overwrite the physical_{item|package|parent)_id

    • -4
    • +10
    /openacs-4/packages/xowiki/tcl/xowiki-procs.tcl
- never overwrite the physical_{item|package|parent}_id

    • -4
    • +10
    /openacs-4/packages/xowiki/tcl/xowiki-procs.tcl
- never overwrite the physical_{item|package|parent)_id

    • -4
    • +10
    /openacs-4/packages/xowiki/tcl/xowiki-procs.tcl
- FormPage.edit: when we edit a page thought a link and no return_url

is specified we want to return to the link page. The same is true

in the general case for all kind of embedded pages. The patch

refines the patch from June 8 which was setting the return url too eager.

- FormPage.edit: when we edit a page thought a link and no return_url

is specified we want to return to the link page. The same is true

in the general case for all kind of embedded pages. The patch

refines the patch from June 8 which was setting the return url too eager.

- backport from oacs-5-9

    • -3
    • +26
    /openacs-4/packages/xowiki/tcl/folder-procs.tcl
- backport of item_index fixes from HEAD/oacs-5-9

    • -1
    • +17
    /openacs-4/packages/xowiki/tcl/xowiki-procs.tcl