• last updated 23 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Modernize tcl

Add extension to UI images

when website is behind a proxy, proxy server migtht not be smart enough to resolve images without extension

Follow the "ugly" smell

rework of general-comments rendering so that the templating system is used, instead of handcrafted markup. Also, allow theming in the future.

Check if file exists or no file descriptor will be created

Fix typos + Whitespace changes

Fix typos

Fix capitalization

    • -2
    • +2
    /openacs-4/packages/search/tcl/search-procs.tcl
add themeing support for templated footers

add sample regression test cases

    • -0
    • +227
    /openacs-4/packages/xowf/tcl/test/xowf-test-procs.tcl
whitespace changes

add interface for processing html files via xpath interface

white space changes

    • -185
    • +184
    /openacs-4/packages/acs-tcl/tcl/security-procs.tcl
allow access via automated testing also via standard login interface

Small improvement of css-edit triggered by "ugly" code smell

Remove obsolete table apm_package_db_types: this was superseded by threaded cache ::acs::known_database_types

Removed unused sql

Deprecate proc apm_pretty_name_for_db_type as is not used anywhere and also relies on questionable datamodel

    • -14
    • +25
    /openacs-4/packages/acs-tcl/tcl/apm-procs.tcl
Remove unused query mentioning a table not part of the datamodel anymore. Remove inline sql in the tcl file as xql version is available

make spelling of names more consistent

site-nodes cache reform: use ns_urlsspace instead of brute-force caching.

For OpenACS site with recent versions of NaviServer and XOTcl2,

cache sitenode information much more efficiently by the built-in

URL trie, which supports tree match operations, for

tree information. This means that for example for .vuh

handlers it is not necessary to cache the full url for

obtaining the site-node, like it was until now:

3839 id-/storage/view/installers/windows-installer/installer.htm

3839 id-/storage/view/aolserver/install.tgz

3839 id-/storage/view/tutorial/OpenACS_Tutorial.htm

3839 id-/storage/view/openacs-dotlrn-conference-2007-spring/Methodology_ALPE.pdf

3839 id-/storage/view/xowiki-resources/Assessment.jpg

3839 id-/storage/view/tutorial-page-map.png

...

Providing a single entry like

ns_urlspace set -key sitenode /storage/* 3839

is sufficient.

Why is this needed: current cache sizes of larger sites show 330K

(site A) and 390K (site B) cache entries. Matchbase flushes have to

gor thhrough all these entries, causing long lock times. Running

thhis code at OpenACS.org shows an improvement by a factor of more

than 200x.

    • -252
    • +343
    /openacs-4/packages/acs-tcl/tcl/site-nodes-procs.tcl
Use proper thread cached variables instead of legacy proc

Deprecate proc 'apm_db_type_keys' as the info it provides is already in 'ad_known_database_types' without need for queries

TODO: find out if we really need a table of database types

Improve indentation, use non indentation-breaking idioms to create report string

TODO: refactor this bug-tracker dependency outside the core, e.g. using a callback

    • -112
    • +113
    /openacs-4/packages/acs-tcl/lib/page-error.tcl
Revert massive replacement of empty list creation sentences. The use of '[list]' instead of '{}' adds semantics that could be used for performance improvements in the future, such as using a different internal representation. There is already work in this direction, avoiding the generation of the string representation during comparison of empty strings (huge thanks to Stefan Sobernig for the pointer: https://core.tcl.tk/tcl/info/44527c632ed609c2).

  1. … 461 more files in changeset.
Reduce query duplication

Prefer indivudual 'set' operations over 'lassign' in this case.

Rework variable assigning loops (set -> lassign)

Rework variable assigning loops (set -> lassign) + Whitespace changes

    • -36
    • +35
    /openacs-4/packages/acs-tcl/tcl/pools-init.tcl
Prefer 'lset' to 'lreplace'.

Prefer string operators to 'string equal'.