• last updated 7 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Prefer unset to array unset when the whole array should be deleted

See https://wiki.tcl-lang.org/page/Dict+VS+Array+Speed

  1. … 4 more files in changeset.
tcl9 change: "... -encoding binary ..." not valid in tcl9

merge with missing files

  1. … 1450 more files in changeset.
merge from oacs-5-10

    • -2
    • +12
    ./catalog/xotcl-core.de_DE.ISO-8859-1.xml
    • -2
    • +12
    ./catalog/xotcl-core.en_US.ISO-8859-1.xml
    • -0
    • +10
    ./catalog/xotcl-core.es_ES.ISO-8859-1.xml
    • -0
    • +10
    ./catalog/xotcl-core.it_IT.ISO-8859-1.xml
    • -0
    • +21
    ./catalog/xotcl-core.tr_TR.utf-8.xml
    • -114
    • +694
    ./tcl/06-package-procs.tcl
  1. … 8085 more files in changeset.
bumped version number from development version to release version

  1. … 93 more files in changeset.
improved spelling

  1. … 15 more files in changeset.
whitespace changes

    • -1
    • +1
    ./tcl/test/xotcl-core-db-tutorial-procs.tcl
  1. … 6 more files in changeset.
Removed dependency on file-storage

- there was a "silent" dependency of xotcl core to the file-storage, since it

used many message keys from there. User-experience of xo* was bad when

no file-storage was installed.

- The message keys went to acs-content-repository and acs-kernel

- bumped version to 5.10.1b6

never cache package_id, when acs_admin::require_site_wide_package returns empty.

reduce verbosity

moved functionality to automated testing

Removed memory leaks in the regression test

- new function ::xo::aa_check_leftovers to detect leaks a soon as possible

- made ::xo::stats better reusable by returning a dict

- extended regression test

- bumped xotcl-core to 5.10.1b5

file zz-final-procs.tcl was initially added on branch oacs-5-10.

    • -0
    • +0
    ./tcl/test/zz-final-procs.tcl
Removed warning during startup

Removed reason for protentially confusing warning during startup

Warning: nsf: method <::nx::Class> <-per-object> <init> does not exist

prefer recommended path over deprecated path

require login for version numbers, since this reveals internal information

improved spelling

improved spelling

  1. … 2 more files in changeset.
Improved readability of configuration parameter "parameterSecret"

- Switched to camelCase for better readabilty and uniformity

- NaviServer configuration parameters are case insensitive, so no danger for backward compatibility

  1. … 5 more files in changeset.
reduce verbosity

Quote error message to better protect against XSS attacks

Added parameter to define a default dbn to a database connection

By this change, one can now define a default dbn at the creation time

of a database connection object. Before, it was necessary to pass

the "-dbn" value to every single command. The parameter can still be

used for particular queries as before to overrule the default.

Example for defining a connection context to a pool named "legacy"

using the PostgreSQL database interface

::xo::db::DB-postgresql create ::xo::dc1 -dialect postgresql -dbn legacy

lappend _ [::xo::dc1 get_value . {select count(*) from acs_objects}]

lappend _ [::xo::dc get_value . {select count(*) from acs_objects}]

#> 660 51606

Fix method signature

Fixed implementation of value checker dbtext

The old version was not persistent in the blueprints.

Furthermore, the new version is more than 2x faster by

avoiding regular expressions.

Provide facilities to validate against invalid SQL strings

We introduce a new page contract filter and nsf validator called "dbtext". They implement enforcing of a value to be useable in an SQL query. Currently, this means that the value should not contain the NUL character, but the definition may change in the future or become database-specific.

The html contract filter has also be extended to reject the NUL character.

The test suite has been updated/extended to reflect the changes.

  1. … 2 more files in changeset.
reduced verbosity

Chat reform

The goal of these changes is to reduce the "mode" specific javascript code in the chat implementation and reduce server-side guessing of browser capabilities.

- In the MessageRelay class from xotcl-core, we rework the javascript code sent to the connection when doing scripted streaming to make less assumptions about the functions defined in the parent scope

- In the chat code from xowiki, we move most of the logics to guess the mode into javascript, where we can test the actual capabilities of the browser without relying on the user agent

- The previously 4 javascript files dependant on the chat mode have been made into one

  1. … 6 more files in changeset.
When the mode is "streaming", use Server Sent Events instead of a "plain" endless request

This has the advantage of a clearer, less hacky api, which, for instance, does not require manual parsing of the partial response.

  1. … 3 more files in changeset.
avoid double quoting

Add type=oneof to Serializer exportMethods

Many thanks to Sebastian Scheder and Günter Ernst