View · Index

Weblog

Showing 31 - 40 of 691 Postings (summary)

Upgrade to OpenACS 5.10

Created by Gustaf Neumann, last modified by Gustaf Neumann 07 Oct 2021, at 01:57 PM

Upgrades from earlier version than OpenACS 5.8 should read upgrade-oacs-5-8 and upgrade-oacs-5-9.

OpenACS 5.10 requires PostgreSQL 9.6 or newer, Tcl 8.6.2 or newer and XOTcl 2.1 or newer (part of the nsf package). XOTcl 2.0 can be installed e.g. via install-ns, or from Debian sid https://packages.debian.org/sid/, or from sources https://next-scripting.org/. In order to check the versions of these packages already installed in your OpenACS installation, check the output of /xotcl/version-numbers in your installation.

Before upgrading to OpenACS 5.10, upgrade all packages in your current installation to recent versions in your OpenACS 5.9 installation, which OpenACA 5.9.1(i.e. in the oacs-5-9 channel).

In general it is always recommended to backup your current installation before overwriting it. Make e.g. a tar archive of all files of the OpenACS tree and a database dump.

After upgrading the packages in the oacs-5-9 channel,  the following steps are recommended:

  • Restart the server with the newest OpenACS 5.9
  • Install newest version of the source files (e.g. from the OpenACS 5.10 tar distributions, or install/upgrade from the oacs-5-10 branch from cvs),
  • Upgrade the acs-core packages via package manager, restart server
  • Upgrade/install application packages via package manager as needed (from file-system or from repository)

Note: when one installs now from the openacs-5.9.1 tar ball, there will be a problem with a PostgreSQL 11, since the tar ball is older than this PostgreSQL release. However, the version of OpenACS 5.9.1 in the repositories (CVS or github) can be installed as well with newer PostgreSQL versions.

 

Step by step upgrade to OpenACS 5.10.0

The following steps assume, you have a plain, not modified version of OpenACS running.

  1. Upgrade to the latest version of OpenACS 5.9.1, e.g. via
       cvs -r oacs-5-9 openacs-4
    upgrade the packages, restart the server and make sure, you have really upgraded all packages;
    under /acs-admin/apm/ you should see a Kernel like 5.9.1* running.
     
  2. Either fet release tar file of openacs-5.10.0, unpack it (e.g. under /usr/local), make sure, your configuration file points to the right source tree, and restart server, or upgrade via cvs
       cvs -r oacs-5-10 -Pd openacs-4
     
  3. Upgrade packages:
    Browse to /acs-admin/install click on "upgrade from local", select all packages, restart server - done.

In case, you have a locally modified version of OpenACS, but you have not modified the kernel packages, then make sure to get the tar file of the core packages in step (2), proceed as described, upgrade the acs-core packages first and then the application packages of your installation.

In case you have in your installation as well changes in the acs-core packages (which is not recommended, but it happens), then get the diffs (you local changes) between the acs-core packages of oacs-5-10 and your installation, proceed as with the unmodified acs-core packages (paragraph above) and apply/merge your local changes after upgrading.

These steps are working also with recent versions of PostgreSQL such as 13.3.

xowf (XoWiki Workflow)

Created by Gustaf Neumann, last modified by Gustaf Neumann 02 Oct 2021, at 10:41 AM

XoWiki Content Flow - an XoWiki based workflow system implementing state-based behaviour of wiki pages and forms (short intro).


Package Specification Summary for Package: xowf

Summary: XoWiki Content Flow - an XoWiki based workflow system implementing state-based behavior of wiki pages and forms
Description:
Maturity: Mature
This package depends on: xowiki xotcl-core acs-tcl acs-automated-testing acs-templating
Packages that depend on xowf: xooauth
Package parameters:
parameter_page
::xowiki::FormPage to search for parameters. The page name has to contain a language prefix and can refer to a different xowiki instance. Example: //xowiki/en:xowiki-standard-parameter (default , type string, scope instance)
use_hstore
Use hstore for accessing instance attributes. Create index for existing values via ::xowiki::hstore::update_form_instance_item_index -package_id $package_id (default 0, type number, scope instance)

Bug Tracker Summary for Package: xowf

There is no package with the name "xowf" known to bug-tracker.


Code Metrics Summary for Package: xowf

# Tcl Procs 7
# Tcl Lines 12264
# Tcl Blank Lines 1094
# Tcl Comment Lines 3242
# Automated Tests 6
# Stored Procedures PG: 0 ORA: 0
# SQL Lines PG: 0 (blank 1 comments 0) ORA: 0 (blank 1 comments 0)
# ADP pages 1
# ADP lines 32
# Include pages (xowf/lib/) 2
# Documentation pages 0
# Documentation lines 0
Browse Source API-browser
Github Repository: https://github.com/openacs/xowf/tree/oacs-5-10
 

xowf depends on xowiki.

Workflow Examples:

  • A two-chambers legislative process, loosely based on the Italian one. A law proposal is submitted to the first chamber, then passed to the second one. The text keeps being passed between the two chambers until no amendments (changes) are made. Once this condition is met, the law is approved. Workflow example of a legislative process

 

OpenACS Release Status

Created by Dave Bauer, last modified by Gustaf Neumann 27 Sep 2021, at 02:15 PM

Current Stable Release

5.10.0 Released 2021-09-15

Download OpenACS 5.10.0 Core

Download OpenACS 5.10.0 Full

Previous Releases

5.9.1 Released 2017-08-08

Download OpenACS 5.9.1 Core

Download OpenACS 5.9.1 Full

5.9.0 Released 2015-12-01

Download OpenACS 5.9.0

5.8.1 Released 2014-10-25

Download OpenACS 5.8.1

5.8.0 Released 2013-08-30 

Download OpenACS 5.8.0

5.7.0 Released 2013-07-17 

Download OpenACS 5.7.0

5.6.0 Released 2010-09-22 

Download OpenACS 5.6.0

5.5.0 Released 2009-06-22 

Download OpenACS 5.5.0

5.4.3 Released  2008-11-26 (No more releases on the 5.4 branch)

Download OpenACS 5.4.3

5.4.2 Released  2008-06-08

Download OpenACS 5.4.2

5.4.1 Released  2008-04-07

Download OpenACS 5.4.1

5.4.0 Released  2008-02-07

Download OpenACS 5.4.0

5.3.2 Released  2007-07-18 (No more releases on the 5.3 branch)

Download OpenACS 5.3.2

Next Bugfix Release 

undecided

Next Major Release

undecided

TODO list for next release

Streaming HTML

Created by Gustaf Neumann, last modified by Gustaf Neumann 11 Sep 2021, at 09:58 AM

Streaming HTML can be used to output HTML content to a user incrementally. This is in particular useful for pages for pages with longer response time, to inform during processing about the progress of the tasks.

Newer OpenACS versions come with templates for the standard themes for streaming pages. The template for streaming pages can be retrieved for the current theme via the API call "template::streaming_template". An application developer should structure streaming HTML pages as follows:

Output top of page:

set context ...
set title ...
ad_return_top_of_page [ad_parse_template \
    -params [list context title] \
    [template::streaming_template]]

Output HTML incrementally:

# Assume, we are collecting HTML in the Tcl variable HTML.
# Send this HTML chunk incrementally to the user
ns_write [lang::util::localize $HTML]

Flush Output from body scripts:
(e.g. template::add_body_script, template::add_event_listener, template::add_body_handler, template::add_script)

ns_write [template::collect_body_scripts]

End of Page:

# Optionally
ns_write [lang::util::localize [template::get_footer_html]]
ns_write [template::collect_body_scripts]

Full sample script:
Putting everything together

set title "Sample HTML streaming page"
set context [list $title]
ad_return_top_of_page [ad_parse_template \
                           -params [list context title] \
                           [template::streaming_template]]
ns_write "<ul>\n"
foreach i {1 2 3 4} {
    set HTML "<li>finish $i: ...</li>\n"
    ns_write [lang::util::localize $HTML]
    ns_write [template::collect_body_scripts]
    ns_sleep 1s
}
ns_write "</ul>\n"
ns_write "<p>Done.</p>"

ns_write [lang::util::localize [template::get_footer_html]]
ns_write [template::collect_body_scripts]

See this sample script in action: https://openacs.org/streaming

Caveat: Windows PCs having the current (Sept 2020) version of Bitdefender (antivirus software ) installed with HTTP traffic scanning activated don't show the incremental rendering of the page, but just the full page after it has finished. This might be seen as a problem of Bitdefender and affects streaming HTML from all sites.

Available OpenACS Packages

Created by Gustaf Neumann, last modified by Gustaf Neumann 03 Sep 2021, at 12:00 PM

Wiki pages for the packages available in the OpenACS code repository:

List of the actively maintained packages

In the oacs-5-10 channel, currently 93 packages are actively maintained. Additionally, the packages is use on openacs.org are maintained as well, but not necessarily recommended for new installations. The packages in the main branch are in different states, some of these work perfecty, some of these migh use outdated calls an can be seen as starting points for new projects.

Packages in the oacs-5-9 channel.
Packages in the oacs-5-10 channel.

Packages available in the oacs-5-9 channel

Created by Gustaf Neumann, last modified by Gustaf Neumann 03 Sep 2021, at 11:59 AM

acs-admin
acs-api-browser
acs-authentication
acs-automated-testing
acs-bootstrap-installer
acs-content-repository
acs-core-docs
acs-datetime
acs-developer-support
acs-events
acs-kernel
acs-lang
acs-mail-lite
acs-messaging
acs-outdated
acs-reference
acs-service-contract
acs-subsite
acs-tcl
acs-templating
acs-translations
ajaxhelper
assessment
assessment-portlet
attachments
bm-portlet
bulk-mail
calendar
calendar-portlet
categories
chat
chat-portlet
dotlrn
dotlrn-assessment
dotlrn-bm
dotlrn-calendar
dotlrn-chat
dotlrn-dotlrn
dotlrn-evaluation
dotlrn-faq
dotlrn-forums
dotlrn-fs
dotlrn-homework
dotlrn-news
dotlrn-portlet
dotlrn-static
dotlrn-xowiki
evaluation
evaluation-portlet
faq
faq-portlet
file-storage
forums
forums-portlet
fs-portlet
general-comments
intermedia-driver
new-portal
news
news-portlet
notifications
oacs-dav
openacs-bootstrap3-theme
openacs-default-theme
profile-provider
ref-countries
ref-language
ref-timezones
richtext-ckeditor4
richtext-tinymce
richtext-xinha
rss-support
search
static-portlet
survey
theme-zen
tsearch2-driver
user-profile
views
xotcl-core
xotcl-request-monitor
xowf
xowiki
xowiki-portlet

Packages available in the oacs-5-10 channel

Created by Gustaf Neumann, last modified by Gustaf Neumann 03 Sep 2021, at 11:48 AM

acs-admin
acs-api-browser
acs-authentication
acs-automated-testing
acs-bootstrap-installer
acs-content-repository
acs-core-docs
acs-datetime
acs-developer-support
acs-events
acs-kernel
acs-lang
acs-mail-lite
acs-messaging
acs-outdated
acs-reference
acs-service-contract
acs-subsite
acs-tcl
acs-templating
acs-translations
ajaxhelper
assessment
assessment-portlet
attachments
bm-portlet
boomerang
bulk-mail
calendar
calendar-portlet
categories
chat
chat-portlet
contacts-lite
cookie-consent
dotlrn
dotlrn-assessment
dotlrn-bm
dotlrn-bootstrap3-theme
dotlrn-calendar
dotlrn-chat
dotlrn-dotlrn
dotlrn-evaluation
dotlrn-faq
dotlrn-forums
dotlrn-fs
dotlrn-homework
dotlrn-news
dotlrn-portlet
dotlrn-static
dotlrn-xowiki
evaluation
evaluation-portlet
faq
faq-portlet
file-storage
forums
forums-portlet
fs-portlet
general-comments
intermedia-driver
new-portal
news
news-portlet
notifications
oacs-dav
openacs-bootstrap3-theme
openacs-default-theme
proctoring-support
profile-provider
ref-countries
ref-language
ref-timezones
ref-us-states
richtext-ckeditor4
richtext-tinymce
richtext-xinha
rss-support
search
static-portlet
survey
theme-zen
tsearch2-driver
user-profile
views
xml-rpc
xolti
xooauth
xotcl-core
xotcl-request-monitor
xowf
xowf-monaco-plugin
xowiki
xowiki-portlet

When to use URLencode

Created by Gustaf Neumann, last modified by Gustaf Neumann 09 Aug 2021, at 12:31 PM

In general, HTTP requires that URLs are properly encoded. This is not a big issue, when just plain ASCII characters without special characters are used in URL paths and query variables. However, when the framework allows the end-user to define also URLs (such as in xowiki and derivatives), one has to be careful when extending the framework. The section below refers to the behavior in OpenACS 5.10, earlier version might differ in some details.

URLs in HTML

When URLs are embedded in HTML (href, src, ...) the URL must be both first urlencoded and then HTML quoted to be on the safe side from the
point of view of HTML.  Although most characters problematic for HTML are encoded by ns_urlencode, but the single quote is not (this is not a bug but according to the specs, RFC 3986).

ns_urlencode {<a> 'b' "c" &}
# returns:  %3ca%3e+'b'+%22c%22+%26

Only, when it can be guaranteed the the URL contains no "funny characters" the URLencoding can be omitted. Note that double encoding with ns_urlencode leads to over-quoting in the same way as double encoding with ns_quotehtml.


Return_urls

In general, return_urls have to be proper URL encoded according to the HTTP specs. Setting these URLs is more complex, since one has to be aware whether or not an URL as encoded before or not before passing it as a return URL.

Here is a short guideline:

1) Query functions return URLs always URLdecoded

  • ns_conn url
  • ad_conn url
  • xo::cc url

2) Output functions return URLs per default URLencoded

  • export_vars (input parameter "-base" has to be unencoded)
  • ad_return_url
  • :pretty_link

3) Redirect operations have to receive encoded input

  • ad_returnredirect
  • ns_returnredirect
  • :returnredirect

4) Query-variables

When setting query variables with URLs, these should be already URL encoded

   #
   # Setting a query variable
   # 
   set return_url [ad_returnurl]
   set url [export_vars -base . {return_url}]

   #
   # Using query-variable as default value in xo* package
   #
   ad_returnredirect [:query_parameter return_url:localurl [ad_return_url]]

   #
   # Usage in classical OpenACS
   #
   ...
   # get return_url e.g. via page_contract
   ...
   if {[info exists return_url] && $return_url ne ""} {
        ad_returnredirect $return_url
    }

 

OpenACS/dotLRN windows installer how to

Created by Byron Linares, last modified by Gustaf Neumann 26 May 2021, at 12:32 PM

This page is obsolete and kept as a reference.

The how-to for a well maintained Windows installation is here.

OpenACS/dotLRN windows installer how to
Required software:

  • Inno Setup 5 or higher

Download

Installer Sources:
The installer source consists in a main Inno Setup script “installer.iss” and could be found in cvs or obtained with the installer.

Other files:
There are some necessary file numbers in order to build the installer.

  •  tcl\bintallerw.tcl: the AOLserver configuration script
  •  Install.xml: this XML file control the packages installed by the OpenAcs installer
  •  tcl\Windows-procs.tcl: This file includes various hacks to make OpenACS work     on Windows.Replaces the TCL exec command on Windows, allowing exec to be called with unix-y arguments.Index.tcl : file used for automatic installation.
  • Index-org.tcl: file used for manual installation.
  • Installer.tcl: file used in automatic installation.
  • Installer-org.tcl: file used in manual installation.
  • Stara.bat, stop.bat: batch files for starting and stopping all services.
  • Tools/setx.exe, tools/reg.exe ,/tools/uzip.exe, /tools/reg.exe Windows command line tools necessary for the installation process.
  •  AOLserver_4-0-beta-10_2003-08-04.zip: AOLServer
  •  cygwin.zip:  CygWin Unix environment for Windows. Cygwin.zip also contains the PostgreSQL database
  •  cygwin.bat: file to launch cygwin unix environment console.
  •  license_en.txt: license text file.
  •  important.txt: extra info text file.
  •  Note.txt : especial notes text file.

Download Resources

 

Building the installer:

 

  1. In order to build this installer we need to place all the resources in a folder.
  2. Create tools and tcl folders with the files before mentioned.
  3. Download OpenACS, dotLRN and all desired package and place in a folder and named “oacs-dotlrn”
  4. Open the file installer.iss and generate the installer.


The installer.iss has to important parts:
    [Files] section:
        In this section are listed all the sources for the installer, in this part you
        Can change or add any source that you want.
    [Run] section:
        In this section is where all commands are executed, like the cygwin installation, postgreSQL installation and AOLserver.
    [Code] section:
        Section for define procedures or functions to work around the installation.

These are the main sections in the “installer.iss” script. And the sections that have to be changed form personalize the installer.

developed at the Galileo University (www.galileo.edu) by Byron Haroldo Linares Roman bhlr@galileo.edu as part of the E-LANE project (www.e-lane.org)
 

Instructions on using the installer are at:

Install OpenACS on debian unstable / Ubuntu 7.10

Created by David Arroyo Menéndez, last modified by Gustaf Neumann 26 May 2021, at 12:20 PM

 

This page is mostly obsolete. There are now Debian packages for all OpenACS requirements, and OpenACS (.LRN) itself, and a fairly general installer from scratch naviserver-openacs.

See The debian wiki page

The rest of this page is superseded by the debian wiki page.

You can also use the en:OpenACSDebianInstallGuide quicksheet.

Install tcl 8.4

apt-get install tcl8.4 tcl8.4-dev tcl8.4-doc

Install PostgreSQL 8.2

(from ubuntu repository or debian etch) for PG 8.2 I had to add this line to the /etc/apt/sources.list (under debian etch) 

deb http://www.backports.org/debian etch-backports main contrib non-free 

Install with apt

apt-get install postgresql-8.2 postgresql-client postgresql-dev postgresql-doc 

under debian-etch I did this to avoid downloading some 7.4-packages

apt-get install postgresql-8.2 postgresql-client-8.2 postgresql-dev postgresql-doc-8.2 

Config the postgresql 8.x

from How_to_install_in_Postgres_8.x
/etc/postgresql/8.2/main/postgresql.conf

add_missing_from = on
regex_flavor = extended
default_with_oids = on

On debian you could need to change the postgresql port number to 5432, see /etc/postgresql/8.2/main/postgresql.conf

Create the database


 

su postgres -c "/usr/lib/postgresql/8.2/bin/createlang plpgsql template1"
su postgres -c "createuser service"

Shall the new user be allowed to create
    databases? (y/n) y
  Shall the new user be allowed to create
    more new users? (y/n) y
  CREATE USER
su postgres -c "createdb -E UNICODE service"

Install AOLserver

(AOLserver 4.5 for now only from debian unstable)
# Note: on ubuntu maybe more better install AOLserver 4.0 and you can download it from debian stable

  1. Add the next lines to /etc/apt/sources.list
    deb http://http.us.debian.org/debian stable main contrib non-free
    deb http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free
    deb http://security.debian.org stable/updates main contrib non-free
    
  2. Update
    apt-get update
    
    # If you have any trouble with gpg keys, then you must read: http://www.davidam.com/debian/debian-gpg
     
  3. Install wit apt
    
     

    apt-get install -t unstable aolserver4 aolserver4-nscache aolserver4-nsopenssl aolserver4-nspostgres aolserver4-nssha1 aolserver4-dev aolserver4-doc daemontools-installer cvs

    *note: unpack the https.gz from aolserver4-nsopenssl and copy it over to the tcl directory of aolserver4, if not the api with https such as ns_httpspost will not be available.

    https.gz is normally found at /usr/share/doc/aolserver4-nsopenssl/examples/

    The tcl directory for aolserver4 is normally found at /usr/lib/aolserver4/modules/tcl/

  4. Install tdom from cvs
    # Sometimes cvs.tdom.org is down, if you have problems you can download with
    wget http://cognovis.de/file-storage/view/aolserver45.tar.bz2 
    cd /usr/lib/aolserver4
    sudo ln -s /usr/include/aolserver4 include
    mkdir /usr/local/src/aolserver4
    cd /usr/local/src/aolserver4
    sudo cvs -z3 -d:pserver:anonymous@cvs.tdom.org:/usr/local/pubcvs co tdom
    cd tdom/unix  
    ../configure --enable-threads --disable-tdomalloc --with-aolserver=/usr/lib/aolserver4 --prefix=/usr/lib/aolserver4 --with-tcl=/usr/lib/tcl8.4
    sudo make install
    
  5. Install XOTcl
    cd /usr/local/src
    sudo wget http://media.wu-wien.ac.at/download/xotcl-1.6.7.tar.gz
    sudo tar xvfz xotcl-1.6.7.tar.gz
    cd xotcl-1.6.7/
    export CC=gcc
    sudo ./configure --enable-threads --enable-symbols --prefix=/usr/lib/aolserver4 --exec-prefix=/usr/lib/aolserver4 --with-tcl=/usr/lib/tcl8.4
    sudo make
    sudo make install-aol
  6. Install TclLib
    cd /usr/local/src
    sudo wget http://kent.dl.sourceforge.net/sourceforge/tcllib/tcllib-1.10.tar.gz
    sudo tar xvzf tcllib-1.10.tar.gz
    cd tcllib-1.10
    sudo ./configure --prefix=/usr/lib/aolserver4
    sudo make install
    

Download and config OpenACS 5.4

  1. Create the directory where we can install OpenACS
    adduser service
    su - service
    mkdir aolserver
    cd aolserver
  2. Copy the two config files aolserver.nsadmin and nsadmin.tcl there:
    wget http://www.davidam.com/debian/aolserver.nsadmin
    wget http://www.davidam.com/debian/nsadmin.tcl
  3. Change nsadmin to service
    mv aolserver.nsadmin aolserver.service
    mv nsadmin.tcl service.tcl
    
    sed -i "s/nsadmin/service/g" aolserver.service service.tcl
    
  4. Download OpenACS from cvs
    cvs -z3 -d :pserver:anonymous@cvs.openacs.org:/cvsroot co -r oacs-5-4 openacs-4
    mv openacs-4 service 
    chmod 774 aolserver.service
    

     # create log directory (if needed)

     

    mkdir service/log 
  5. Start AOLserver
    ./aolserver.service start
    Some minutes after that, it must be running on http://localhost:8000

Next Page
previous May 2024
Sun Mon Tue Wed Thu Fri Sat
28 29 30 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31 1

Popular tags

17 , 5.10 , 5.10.0 , 5.9.0 , 5.9.1 , ad_form , ADP , ajax , aolserver , asynchronous , bgdelivery , bootstrap , bugtracker , CentOS , COMET , compatibility , CSP , CSRF , cvs , debian , docker , docker-compose , emacs , engineering-standards , exec , fedora , FreeBSD , guidelines , host-node-map , hstore
No registered users in community xowiki
in last 30 minutes
Contributors

OpenACS.org