community-core-procs.tcl

  • last updated 22 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Implement acs_user:: cache through nsv, instead of the util_memoize cache. Note that now this information won't expire anymore unless explicitly flushed.

Remove unnecessary backslashes, remove leftover usages of get_from_username_not_cached cache, minimize catch wrapping

Reuse acs_user::get_by_username to retrieve user_id in order to reduce query duplication and cache entries for acs_user::get, simplify idiom

  1. … 1 more file in changeset.
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. … 475 more files in changeset.
Prefer '{}' to '[list]' when creating empty lists

  1. … 71 more files in changeset.
improve documentation

  1. … 10 more files in changeset.
Use acs_magic_object instead of acs_lookup_magic_object

  1. … 1 more file in changeset.
Portrait management reform and correction

Moved logics to create a portrait in a proc in order to reuse it in other places

such as picture retrieval services (e.g. Bach picture retrieval at WU). Turns out

we were not doing our homeworks here: when the portrait is created into CR, a

cr_child_rel is created. When the portrait was erased though, this was not cleaned

up propely, leaving dangling acs_objects with no reference in cr_child_rels table.

On busy sites, this can grow in the ten thousands order of magnitude. Changes include

also fix for this behavior and tuples cleanup.

  1. … 16 more files in changeset.
Move deprecated procs into deprecated-procs.tcl

  1. … 10 more files in changeset.
Small improvement for portrait management (deletion)

Exploit existing on delete cascade constraints when we delete a portrait, instead of deleting stuff manually.

Also, put remaining logics into a proc and use it in acs_user::delete to address legit use case of people wanting

to remove a user permanently without removing portrait in advance.

  1. … 2 more files in changeset.
merged changes from the oacs-5-9 branch and resolved conflicts

  1. … 7834 more files in changeset.
Fix code in cases, were object_type is not provided

Standardize spelling of names of products (Tcl, AOLserver, PostgreSQL, NaviServer)

  1. … 43 more files in changeset.
Fix spelling errors

  1. … 22 more files in changeset.
- let acs_user::flush_cache succeed in cases, where the privides ID is e-g- a person, but not in cc_users

- one more typo

- fix recent editing bug

- fix documentation of acs_user::get: list full set of returned

attributes in documentation

- acs_user::get: return dict, when no argument "-array" is provided

- mark cc_* functions as deprecated, since more general functions exists in acs_user::, party::, or group:: namespaces

- make "*_not_cached" versions hidden

.xql-file reform of acs-tcl (part 1)

- remove sql statements from the code, where these are provided via .xql

- prefer empty sql statements over various forms of *SQL*

  1. … 7 more files in changeset.
- add editor hints to keep spaces/tabs in the furture more consistent

  1. … 754 more files in changeset.
Merging back to HEAD branch oacs-5-8 (using tag vg-merge-oacs-5-8-from-20141027).

  1. … 2547 more files in changeset.
- get rid of deprecated calls to acs_sc_call during regression test

  1. … 6 more files in changeset.
Flushing ::party::email_not_cached in case party email has been updated.

Use the same pattern for flushing person::name that has been used to cache it (sigh)

Missed a detail when moving bio back to person.

  1. … 4 more files in changeset.
Moved "bio" back to "person", but with type-specific storage. People can

fight over where such things belong on another day, for now keeping it in

"person" has the advantage that the Tcl API is 100% unchanged so moving it

to type-specific storage won't break .LRN.

  1. … 8 more files in changeset.
Moved "bio" from person/generic storage to user/type-specific storage as TIP'd

(PG only, Oracle to follow soon).

  1. … 6 more files in changeset.
normalize some more expressions

  1. … 6 more files in changeset.