• last updated 23 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
revert last change of Antonio, since this kills Oracle again

It is not clear, which code needs integer as results for Boolean results.

If there is such code, it should handle this requirement locally.

Reintroduce cast to integer using a portable idiom

Fixes for Oracle 19c: invalid cast to integer

This fixes the following bug for Oracle:

: invalid positional variable `:', valid values start with 1

: while executing

: "ns_ora 0or1row nsdb0 {

: select acs_permission.permission_p(:object_id, :party_id, :privilege)::integer from dual

: }"

fix editing bug

V: ----------------------------------------------------------------------

Fixes for Oracle 19c boolean types in query

This fixes the following bug for Oracle:

: select u.user_id,

: u.authority_id,

: u.username,

: u.screen_name,

: u.priv_name,

: u.priv_email,

: u.email_verified_p,

: u.email_bouncing_p,

: u.no_alerts_until,

: u.last_visit,

: to_char(last_visit, 'YYYY-MM-DD HH24:MI:SS') as last_visit_ansi,

: u.second_to_last_visit,

: to_char(second_to_last_visit, 'YYYY-MM-DD HH24:MI:SS') as second_to_last_visit_ansi,

: u.n_sessions,

: u.password,

: u.salt,

: u.password_question,

: u.password_answer,

: u.password_changed_date,

: extract(day from current_timestamp - password_changed_date) as password_age_days,

: u.auth_token,

: mm.rel_id,

: mr.member_state !>>>!= 'approved' as registered_user_p,

: mr.member_state

: from users u

: left join group_member_map mm on mm.member_id = u.user_id

: and mm.group_id = mm.container_id

: and mm.group_id = :registered_users_group_id

: and mm.rel_type = 'membership_rel'

: left join membership_rels mr on mr.rel_id = mm.rel_id

: where u.user_id = :user_id

fixes for Oracle 19c

  1. … 3 more files in changeset.
improve spelling

extend tests and pinpoint essesntials

Cleanup smelly comment: we don't need to catch the error, if it fails it fails and the application should handle it

Minimize and corrrect test: strings containing the null character are expected to fail when fed to the DBMS, even when quoted

New automated test

file db-quoting-test.txt was initially added on branch oacs-5-10.

    • -0
    • +0
    ./test/data/db-quoting-test.txt
Provide a fallback for vhost_url in ad_conn for code executed before this value has been set by the request processor

use "ns_strcoll" for ordered composite when available

  1. … 1 more file in changeset.
include timing information in DEBUG lines only, when nsf was configured properly with it

  1. … 1 more file in changeset.
Deprecate template::util::tcl_to_sql_list, completely replaced by ns_dbquotelist, a native NaviServer command

  1. … 17 more files in changeset.
use icanuse machinery for "ns_reflow_text -offset"

improve comment

Streamline idiom

Whitespace cleanup

extend test cases

Modernize parameter parsing (query and includelet paramters)

- handle invalid UTF-8 exception that might be triggered by

"ns_parsequery" in newer versions of NaviServer

- the new code is about 4 times faster than the old one

- replaced array by dict

- don't create helper procs on the fly but use "nsf::parseargs" if possible

- added icanuse rules for

* "nsf::parseargs -asdict"

* "ns_parsequery -charset"

  1. … 1 more file in changeset.
improve comment

align to the usual naming convention (use "_not_cached" suffix)

mark uncalled function as deprecated

added comments and portlets locations for default ports

security::locations: return configured servers from the driver/servers section

additionally, improve caching

Quote URL in the redirect

ease tracking of warnings of check_deprecated test

This change actually needs the newest api-doc, but we can't add the cyclic dependency

switch to new lintian typo dictionary, adapted to the new format

    • -7673
    • +590
    ./test/doc-check-procs-common-typos.txt