[LON-CAPA-admin] LON-CAPA version 2.11.0

Stuart Raeburn raeburn at msu.edu
Mon Jun 30 13:39:33 EDT 2014


New Version 2.11.0 Released

This new version builds on LON-CAPA's strengths in assessment by
providing new problem templates, new features for quizzes/exams, and
rule-based grading of student graph sketching.  In addition, the task
of modernizing and standardizing the user interface, begun with the
previous release, has continued with 2.11. Course Management has been
made easier and more intuitive, and there have been several improvements
to the course editor, e.g., an enhanced clipboard to support
copying or moving multiple items (including nested folders).
For administrators, there are additional tools to help streamline
management and user support tasks in a LON-CAPA domain.

It is highly recommended that domains update from 2.10, as this new
release includes 130 enhancements/bug fixes (see details below).

Note: at 200 MB the compressed archive file for this new release
(loncapa-2.11.0.tar.gz) is three times the size of the file for 2.10.1.
This is due to the inclusion of the HTML5 version of GeoGebra, for which
the geogebra_html5.tar.gz file is 115 MB in size.

Changes from 2.10.1

General user interface
- "Functions" menu for Roles/Courses screen has icons/links for some
   or all of:
     Check for changes, Hotlist, Request course, Request author role,
     Show queued, Include expired, Course catalog. (which are shown depends on
     number of roles user has and user's rights in the system).
   - Check for changes eliminates need to logout and log-in again in order to
     display and select new roles assigned since log-in.
- Inline menu changes:
   - Fullname (top left) is drop-down with user's personal info/settings:
     Information, Preferences, Portfolio, Stored Links, Calendar, RSS Feeds
   - Course context: Grades, People, Settings, Public (or Syllabus & Feeds)
     - Grades, People, Settings and Public (course personnel) have drop-downs.
     - "Return to Last Location" link is now icon instead of text.
- Course Contents tabs: "Main Content", "Supplemental Content",
   "Content Search".
- "Stored Links" utility for Users with advanced privileges (i.e., authoring
   or coordinator) which allows saving (and management) of links to content in
   shared resource pool (also available if browsing a colleague's course as
   student).
- Countdown timer available for items with either: due date set, or interval
   parameter set (timer displayed automatically for a timed quiz).
- "Set my preferences" - jPicker used for color preferences.
- New standard element: "action box" for contextual actions at end of page.
- Messages/communication page design and usability improved.
- Critical messages now displayed in reverse chronological order, by default.
- "Edit" link/icon in "Functions" menu for users with privileges to edit
   current content standardized to support more pages, (e.g., templated pages).
   ("About Me", Syllabus, Discussion Board, Simple Page), Student-viewable
   roster, uploaded html file, and "External Resource".
- Supplemental Content display uses breadcrumbs for nested folders to
   facilitate access to higher level folders.
- Self-creation of a user account with e-mail address as username uses single
   web form to request e-mail address, password and user information
   (information fields can be required or optional).
- Browser detection for mobile devices (e.g., iPhone, iPad etc.) offers:
   - improved handling of scrolling and pop-up help for such devices.
   - different display mode for PDFs for such devices.
   - suppress autocapitalization/autocorrection of username, domain on
     log-in page.
- Pop-up windows now modal windows (page behind pop-up is viewable) in several
   cases (e.g., previous tries, feedback composition, parameter setting).
- Upload of files to dropbox/essay assignments allows overwriting of file with
   same name/location in user's portfolio (user will be prompted to allow it).
- Student's display of currently submitted files for dropboxes:
   - Show/Hide display of path for files from portfolio; default: only  
filename.
- Portfolio file selection for submission to a Bridge Task (BT) which includes
   IP-based access control avoids blocking of portfolio access from  
exam blocks.
- Previous tries screens use encoding of HTML Entities when displaying past
   submissions.
- Time/date of each submission shown in display of student's previous tries.
- More comprehensive information available to students about
   making reservations for items with access controlled by slots (e.g.,
   for slots with future reservation open dates).
- In non-anonymous discussion posts, username:domain only appended to a
   poster's nickname when viewer is one of the course personnel.
- Improved Progress indicator -- uses jQuery.
- Additional math renderer: MathJax (source code of math expressions can be
   extracted in TeX and MathML formats by right clicking the equation).
- For servers running Apache/SSL rewrite rules updated to ensure requests for
   syllabus page (could contain iframe loading external site) and also external
   resources where external site served by http) are served by http to avoid
   default blocking by some browsers because of "mixed active content".


Course Management
- Folder management changes
   - Edit Folder icon/link in Functions menu (displaying resource), and
     also icon alongside a folder name in Course Contents link directly to
     Course Editor for specific folder.
   - Icon used to link to the Course Editor to edit folder contents now also
     displayed for "composite pages" added to a course via the Course Editor.
- Syllabus and Feeds items included in inline menu for Course Coordinators.
   - other roles also receive Feeds item if there are any visible course
     RSS Feeds.
   - other roles also receive Syllabus item if syllabus has been edited and
     is not in Main Content.
- Syllabus Management
   - Two additional syllabus types available - uploaded file, and minimal
     template (single editable WYSIWYG text area).
   - For standard template-based syllabus, list of course personnel to
     display is configurable.
   - "Edit" button for syllabus provides direct access to configuration
     (replaces access via: Course Configuration -> General course settings).
- Access to content editing
   - "External Resources" editable directly from "Edit" link (i.e., without
     entering Course Editor).
   - Edit icon in row of icons for each item in a composite page, if user has
     privileges to edit the content item.
- Course Editor paste buffer improvements:
   - Main Content <-> Supplemental Content pasting within course handled
     correctly.
   - Folders created via Course Editor containing other folders can be
     cut/copied/pasted.
   - Paste buffer can be used to copy content (including entire folders)
     between courses.
   - If "cut" in current course put content in paste buffer, and content is
     an uploaded folder/page, discussion board or simple page, paste includes
     options to either: (a) copy (i.e., make new item), or (b) "move", i.e,
     move as current item.
   - When pasting Simple Pages added to paste buffer via "cut", can choose move
     or copy.
   - When pasting Simple Pages added to paste buffer via "copy", page is copied
     (i.e., a new page is created, which, when edited, has no effect on old
      page).
- Course Editor interface improvements:
   - "Edit" link is included for all editable items (uploaded html, css, js,
     and txt files), templated files (Syllabus, Simple Page, Simple Problem,
     External Resource, About Me) and published resources for which user has
     rights to edit.
   - A "blank" web page can be created and the RichText Editor, and "manage
     dependencies" button used to edit it.
   - Undo delete and history tabs available for both Supplemental Content and
     Main Content.
   - Archive files can be uploaded (and decompressed) in the Main Content and
     Supplemental Content areas. Options provided to extract contents, and
     decide how extracted items should be deployed in the course.
   - HTML files uploaded to Supplemental Content can be edited, and any
     dependencies can be replaced (or uploaded if missing).
   - Switching of the active tab on mouse-over has been eliminated; clicking an
     already active tab will make the tab inactive.
   - Display of file input elements for External Resource, Load Map,  
Upload File
     and IMS Import now triggered by clicking the icon/link for the particular
     action.
   - Use of static HTML files: extpickframe.html and extpickcode.html
     discontinued for External Resource.
   - Use of unique identifier is ensured when adding a folder or composite page
     to course.
   - No cut/copy links are provided for special folders created when using
     groups: (Groups Folder, folder for each group, and Discussion Boards
              folder for each group).
   - Location of Remove, Rename, Cut, Copy links consistent for each line in
     Course Editor (visibility hidden if Cut or Copy not available for a
     particular resource).
   - Checkboxes for hidden, URL hidden, Randomly Pick, Random Order can be
     selected for multiple items in a folder and submitted all at once.
   - External resources can be included in Composite pages (iframes used).
   - Support for uploading multiple (linked) pages to a course, where only
     one (containing links to others) is included in a folder.
   - Editing utilities not specific to current folder moved to separate
     "Content Utilities" tab.
   - Copy Course Content to Authoring Space now displays hierarchical view
     of folders and content, and allows user to pick which ones to copy (if
     user session NOT hosted on home server, switch server link shown).
   - Copy Course Content to Authoring Space prompts user to explicitly
     choose target space, if user has co-author access to Authoring Spaces
     as well as own Authoring Space.
   - "Simple Pages" and "Simple Problems" added to a course using the Course
     Editor can be copied to Authoring Space ("Simple Problems" converted to
     appropriate response type).
   - Unique time-based id included in path for storage of uploaded photos in
     Simple Pages to avoid overwriting files with same name in different Simple
     Pages in same course.
   - Verification of valid xhtml for Simple Pages supports more tags and
     supports rendering of HTML entities.
- Managing content uploaded to a course
   - Dependencies in HTML pages uploaded directly to a course can be managed
     via a Manage Dependencies button available when editing the file.
   - When Camtasia 6 or Camtasia 8 files are uploaded directly to course in a
     zip file, they can be automatically unpacked.
- Discussion Posts
   - When using discussion voting, a course setting can be used to configure
     styles used for popular/unpopular posts.
   - Course Coordinators can undelete all previously deleted posts in a
     discussion board.
- Listing course users
   - Display of date/time of last "login" by user/role/section added to a
     Course's What's New screen and also to "List Users" screen in the User
     Management menu (a "login" event is selection of a course role).
   - When displaying user lists, checkboxes can be used to decide what user
     information to include for each user listed.
    - Course owner can revoke/modify Course Coordinator roles from the "list
      users" screen.
- Exam blocking configuration has more options:
   - Generation of printouts can be added to the features blocked.
   - Access to content in LON-CAPA course (aside from online exam itself) can
     be blocked.
   - Blocking event may be set to only apply for a specified timed quiz (i.e.,
     a folder with a timer set), and take effect when user presses
     "Show Resource" to start timer.
- Content Parameters
   - New parameters
     - lenient (partial credit for optionresponse and matchresponse).
     - retrypartial (new submission allowed, subject to tries limit, for
       partially correct).
     - discussvote (voting like/unlike on discussion posts).
     - printstartdate and printenddate (define window outside which printouts
       not allowed).
   - Simple pages can have content open/close dates and other content style
     parameters.
   - More compact layout used for parameter selection (including inline
     scrollbox) in resource parameter editing screens.
- Course Configuration/Settings
   - Display of course from which current course was cloned moved from "Other"
     to "General course settings".
   - Discussion Voting -- styles used for text in posts based on classification
     (likes or  unlikes) -- mean +/- 1 sigma; mean +/- 2sigma) -- configurable
     via course settings.
   - Classlists and staff listing: new setting which allows domains to be
     specified to check for privileged users (besides course's domain).
   - Efficiency improvements when checking if course personnel should be hidden
     - identity of privileged users (i.e., Dom. Coord.) in a domain are
       cached.
- Assessment Chart and Statistics
   - Assessment Chart (Coordinators) now shows correct total possible points
     where folder is using randompick and all items in the folder carry equal
     weight.
   - Detailed Problem Analysis page uses inline scrollbox for problem selector.
- Other changes
   - Can define end reservation time for student-schedulable slot reservations
   - Student names containing accented character(s) no longer cause
     misalignment of columns in Assessment Chart.
   - Role switcher used to switch between course roles supports switching
     between roles when viewing a page with "URL hidden", if URL hiding applies
     in one role, but not the other.
   - Time column in student submission reports (HTML and csv output)
     internationalized.
   - Generation of breadcrumb trails in auto-enrollment configuration screens
     uses standard routines.
   - Credits earned for a course can be different for a specific student (e.g.,
     retrieved from institutional classlist data), or specified when a Course
     Coordinator adds a student to a course via the web GUI.


Grading
- Bubblesheet grading of CODEd exams now supports use of the randomorder and
   randompick parameters for the folder being graded.
- When using bubblesheets to record grades for handgraded exams, user can
   choose what filled last bubble represents (either a zero or maximum  
possible).
- When composing messages to students on grading screens, decision on whether
   or not to have scrollbars is left to web browser.
- Support Turning Technologies clickers.
- Course personnel permitted to view grades can view a student's prior
   versions of a Bridge Task (BT).


Spreadsheet
- spreadsheet functions -- &NUM(), &BIN(), &SUM(), &MEAN, &STDDEV(), &PROD(),
   &MAX(), &MIN(), &SUMMAX, &SUMMIN(), &MAX(), &MIN(), &SUMMAX, &SUMMIN() when
   counting numbers of cells now exclude cells previously populated, but since
   updated to contain nothing.


Printouts
- When problems/resources from folder are printed for CODEd assignments, order
   will be the same as seen on screen for a particular CODE, where randomorder
   is set for the folder.
- When printing problems/resources for another user in cases where
   "randompick" is set for the folder, resources printed are appropriate for
   "randompick" in force for other user.
- Ability to print resources controllable by setting printstartdate and/or
   printenddate.
- Attribute direction="horizontal" for radiobutton response types applies in
   printouts.
- Privileged users can print incomplete problems for selected students.
- Printout option to sort by section, then students (the default) works as
   advertised.
- In multi-lingual resources, hyphenation used in PDFs is determined by
   language of text block being rendered.


Gnuplot
- Support is available for utf-8 encoding (requires gnuplot 4.4 or later).
- More control is provided over arrows in vector plots.
- Complete control is provided over axis major tics.
- Tick labels can be rotated.
- Drop-down color-picker available (uses jPicker).
- Support for dashed lines in Gnuplot (both screen and printouts).
- Support for color in PDF printouts of Gnuplot output.


Authoring
- New problem responsetype: functionplotresponse (uses GeoGebra).
   - Students using mouse pointer or trackpad etc., to drag handles to  
construct
     graph with splines.
   - Uses either GeoGebra HTML5 javascript in modern browser, otherwise falls
     back to Java applet.
   - Author establishes rules for determining correctness of graph (e.g., match
     of function itself, or match of first derivative, or second derivative
     etc. to student submission) to grade submission.
- New problem templates
   - Custom Response comparing Equations using Computer Algebra System.
   - Functionplotresponse with Background Plot.
   - Functionplotresponse with Labels.
   - Functionplotresponse with Vectors and Hints.
   - Functionplotresponse with two Splines and Hints.
   - Drop Box.
   - Option Response - Matching (multilingual).
   - Numerical Response Multiple Answers unordered.
- More comprehensive example template for externalresponse.
- Spell-checking available in <input type='text'> and <textarea> via
   spellcheck attribute. Supported languages are: en, de, es, fr, he, pt, tr.
- Warnings about significant figures where answer format is set to be nS, but
   correct answer is an integer with multiple trailing zeroes are eliminated.
- Radiobuttonresponse containing foil with location="bottom" and value="false"
   can now include "true" foil in next to bottom position.
- Optionresponse includes a "noprompt" attribute in <foilgroup> tag which can
   suppress the default: "all that are true" text displayed in checkbox mode.
- Matchresponse:  An additional attribute: "columns", works in tandem with the
   existing attribute: "direction". If columns not set, display defaults to a
   single row, for direction=horizontal, or single column - otherwise).
   - When columns is set an integer (e.g., 3), for direction=horizontal items
     labelled as:
       A B C
       D E F
     or, for direction=vertical:
       A C E
       B D F
- A "People" item is included in the inline menu if a user's current role is
   author, which provides access to user management (e.g., add/revoke co-author
   roles).
- A "Change Log" item available in the user management area if current role is
   author lists the history of co-author role changes.
- The tabular display of the contents of a LON-CAPA directory is now sortable
   by column, and a new column (Size) has been added, which will show file
   size.
- Publishing a Camtasia 8 file automatically sets allow tags for all
   dependencies.
- Image supported as link in <window> tag.
- New tag <windowlink> will bring up the link in a modal window.
- Icon added to Custom Rights file editor to highlight status of allow/deny
   setting for each entry.
- If iframe tag is included in a resource, and source points at another
   LON-CAPA resource, inhibitmenu="yes" attribute added during rendering,
   unless included in original published resource to avoid duplicate LON-CAPA
   inline menus.
- Support for upload of .webm files (HTML5).
- Enhanced readability of "Large Text Entry Area"-block in colorful editor by
   improving contrast/color.
- Global wording change: "Authoring Space" replaces "Construction Space".
- Additional optional arguments for &submissions() function for use in script
   blocks to retrieve current user's submission for a specific part/response
   item can: (a) remove/replace unwanted characters in retrieved data; (b)
   escape HTML entities (ampersands, double quotes etc.).

Domain Management
- Configuration of self-creation of accounts has more options:
   - e-mail address as username:
    - choice of (original) CAPTCHA, newer reCAPTCHA, or no CAPTCHA on request
      form.
    - can specify which user information fields are required, optional, or
      omitted.
    - requests can be queued for approval, or created automatically, and
      processing can be set to be based on self-reported status (e.g.,
      instructor or student).
   - Shibboleth authenticated SSO username
     - environment variables provided by Shibboleth can be set to provide data
       for specific user information fields.
- Configuration of self-enrollment in a course has more options:
    - configuration rights for self-enrollment can be assigned (by field) to
      course personnel or Domain Coordinators (domain defaults can be
      overridden in each course).
    - self-enrollment requests can be queued, pending validation.
    - self-enrollment validation can be via an external validation server
      or script (e.g., for e-commerce).
- Configuration of course creation requests has more options:
    - a new container type - "textbook" provides a simplified (1 page) request
      form. Options include cloning of pre-fabricated textbook courses or
      template courses.
    - a unique six character code can be generated at course creation time for
      use by self-enrolling students, to search the catalog for the course.
    - Details of pre-fabricated courses: "textbooks" and "templates" for
      cloning when creating a new "textbook" course can be uploaded (subject,
      title, image, author, publisher, and LON-CAPA course domain/ID).
    - Validation of requests available as an option for all course container
      types.
    - Validation of unofficial and textbook courses, and communities can be via
      a validating server/script. Form fields to send to validator can be
      specified.
    - Customization of course request handling supported by customization of
      new routine: &crsreq_updates() in localenroll.pm
- Configuration of course catalog has more options:
    - Type of catalog displayed can be one of: standard (i.e., original
      catalog), domain-only (i.e., no selector to switch to different domain),
      code search form (i.e., form to search by six character code), or no
      catalog.
    - Type of catalog displayed can be set to be different for authenticated
      and unauthenticated users.
- More granular control is provided over what is shown in the Domain
   Coordinator Course Catalog view, i.e., when "Show full details" is checked:
   - Totals can be displayed for unique courses, sections, counts for current,
     future, and past students.
   - Counts of "past" students can be based on: (a) default end access date,
     (b) auto-enrollment end date, or (c) active status on a specific date.
   - Totals can be included for student credit hours, if credits enabled for
     official or unofficial courses.
- Configuration of course/community defaults has more options
    - Default quotas (by course type) for files uploaded directly via Course
      Editor.
    - Default credits (by course type).
- Additional server status access pages:
   - listing of course/community disk usage.
   - listing of six character codes in use.
   - result of checksum-based validation of installed LON-CAPA modules.
- Configuration permits users to request creation of an author role in their
   domain.
   - Requests can either be processed automatically, or queued for approval.
   - Defaults assigned based on institutional status, and can be overridden for
     individuals.
- Logging of changes for domain roles and co-author roles (who, what, when,
   context, and by whom), with access to the appropriate log information via a
   submenu in "Modify users".
- Information to show when listing users in the domain, based on role, is
   selectable. Disk usage and disk quota are new options available when listing
   information about authors.
- Contact Helpdesk can be set to require CAPTCHA validation
   (default: is to not use).
- Display of "Contact Helpdesk" link on log-in page can be disabled
   (default is display).
- Link on log-in page to "log-in help" can point to custom log-in help for
   user's domain (different log-in help files can be provided for different
   languages, and file linked to depends on user's browser language
   preferences).
- A web-based interface is available to manage load balancing on domain's
   servers which supports use of multiple dedicated load balancing servers in a
   particular domain.
   - Servers can be easily taken out/added to the balance pool to facilitate
     maintenance.
- Color chooser for color selections in domain configuration interface is
   jPicker.
- Fullname, username & domain shown in domain configuration if DC is to be
   chosen, (e.g., who to notify of authoring space or course requests needing
   approval).
- Utilities available to checksum LON-CAPA modules to verify integrity of
   LON-CAPA  installation, and also to check the availability of new LON-CAPA
   releases
   - recipients of nightly e-mail sent if module changes or LON-CAPA updates
     are detected can be set).
- Domain defaults can be set for credits earned in official or unofficial
   courses.
   - Course-specific credits can be specified when: (a) creating a single
   course,
     (b) in the XML in batch course creation, or (c) via "Modify course" after
     course creation.
   - Course credits for an official course can be specified or retrieved from
     customized localenroll.pm, and can be specified for an unofficial course
     in a course request.
- Institutional user types defined for a domain (e.g., Faculty, Staff and
   Student) can be set via the web-based domain configuration tool. Values set
   this way will supersede values for the domain from a customized inst_types()
   routine in localenroll.pm.  Types can be applicable to self-created
   usernames (e-mail address as username) - self-reported in this case.
- Default disk quotas can be set for Authoring Spaces, based on user's
   affiliation (e.g., Faculty, Staff etc.)
- WebDAV access to Authoring Spaces can be enabled for users with author or
   co-author roles, based on user's affiliation, as long as log-in is supported
   via a non-SSO log-in, i.e., internal, local, or Kerberos.
- Configuration of Contact information has more options:
   - Set recipients of e-mail generated by nightly check of LON-CAPA module
     integrity or release updates.
   - Set recipients of e-mail generated by bi-nightly check for multiple users
     sharing same student/employee ID.
   - Error report e-mail generated when a user submits the error reporting form
     displayed in the case of an ISE (500 error) can be set to not be sent to
     the LON-CAPA developers (at MSU).
- Bubblesheet format file supports additional field (BubblesPerRow), which is
   number of bubbles available  in each row used to bubble an answer. (If
   specified, 10 assumed).
- When an institution has implemented institutional codes, linked select boxes
   to filter by institutional code now available in pop-up used to select a
   course in all contexts.
- Additional items added to domain server status page:
   - Display of LON-CAPA Module changes
   - Display of uploaded content quotas and usage for courses/communities
   - List of courses/communities with assigned six character codes
     (library server)


Institutional integration
- Shibboleth authentication supported for Single Sign On (SSO).
- Institutional status can be set when auto-enrollment adds a new  
LON-CAPA user.
- Credits for individual students can be retrieved from an institutional data
   source and stored in the LON-CAPA roster database file.


Localization
- Many new translations and improvements for German localization.
- Some updates to translations for other supported languages.
- List of languages in user preferences is shown untranslated (i.e., in native
   language/alphabet).
- Internationalization of labels in statistical graphs.


Documentation
- Authoring Manual reorganized -- additional contextual help files
   created/included.
- Text in several help files used in Course Coordination manual clarified or
   extended.
- Help menu provides authors and coordinators access to both Authoring and
   Course Coordination manuals (both PDF and HTML) from dropdown in help menu
   screen header.
- Documentation for functionplotresponse (student graphing response type).
- Added documentation on importing testbanks to Authoring Manual.
- Added documentation on adaptive hints to Authoring Manual.
- Added documentation for library files to Authoring Manual.


Third-party modules
- DragMath WYSIWYG editor updated to 0.7.9 and signed with InCommon code
   signing cert.
- Mimetex renderer updated to 1.74 (addresses rendering issue for certain
   expressions with Ubuntu 10.04, 64 bit architecture).
- GeoGebra updated to 4.4.3.0
- CKeditor (Rich text editor) updated to 3.6.6.1


Other bug fixes
- Access to versioning information available for published content which
   requires wrapping.
- Unwanted log messages on a load-balancer server generated when
   /adm/switchserver is called via internal_redirect, immediately following
   authentication, have been eliminated.
- Speed-up in display of Course Contents screen during timed quiz.
- Incorrect syntax in expression passed to maxima no longer results in "Code
   ran too long" for certain recent Linux distro versions.
- Sporadic "code ran too long" errors for problems involving use of &cas()
   function calls to maxima symbolic math engine eliminated.
- In metadata, creationdate and modificationdate set appropriately at
   publication time.
- Dynamic metadata in multi-part problem includes statistics for other than
   last calculated part.
- Significant figures checking of "computer's answer" no longer warns of
   conflict where answer format set to S, but correct answer is integer with
   multiple trailing zeroes.
- Discussion posts not shown when previewing resource already in the course.
- Image file uploaded to domain configuration as header image no longer
   truncated by 1 byte.
- Portal URL (if defined in domain configuration) is now set in cached domain
   defaults.
- Search of the cross-institutional content repository can once again search
   all domains hosted on a multi-domain server.
- Use of a unique identifier enforced when creating a new folder or composite
   page in a course using the Course Editor, by testing for uniqueness of
   time-based id.
- Access to functionality in Math::Complex (CPAN module) in Safe Space
   re-enabled by replacing standard module with LONCAPA::LCMathComplex which
   eliminates use of Config.pm (disallowed in Safe Space).
- What's New screen correctly displays roles which became active in specified
   time period.
- Approval of course requests in domains containing a hyphen in the domain
   name now works.
- Generation of javascript for first page of course request form modified to
   work with perl-5.8.8-40.el5_9 (CentOS 5 update: 3/26/2013).
- Improved handling of changing client IP address when using dedicated
   load-balancer server.
- List of selected broadcast message recipients handled correctly in the case
   where there is only one user of the specified type (active, future, or
   previous).
- Support toggle between Rich Text/Plain Text for multiple textareas in a
   composite page.
- Correctly detect browser version for IE, in cases where Chrome Frame plug-in
   is in use.
- Browser type and version detection supports Chrome.
- Use hostname in place of IP address to avoid a "certificate verify failed"
   issue with certain SSL configurations when fetching a user file from a
   remote server for permanent storage in userfiles subdirectory in course's
   directory on home server.
- Can display applets where hidden URL is set, and can also display Camtasia
   files (with dependencies on .js, .swf and .mp4 files) where hidden  
URL is set.
- Access granted to dependencies or linked items within a resource in a course
   which are: (a) referenced in src attribute of iframe tag, script tag
   (i.e., javascript) or (b) referenced in href attribute of a tag or
   (c) referenced in javascript object in text between <script> and </script>.
- Script available to expire DC role for user whose homeserver is also library
   server in a DC role's domain.
- Eliminate creation of unnecessary copies of previous versions of LON-CAPA
   files which have changed (saved as .lpmlsave files) -- if other than the
   latest  stable LON-CAPA version was installed, and later updated  
with a newer
   stable release of LON-CAPA.
- Warnings about significant figures where answer format set to nS,  
but absolute
   value of number is smaller than 10E-5, or larger than 10E15, are eliminated.
- Re-establish availability of ln() function in script blocks for Linux
   distros running perl 5.10.1 or newer.
- Matchresponse editing with colorful editor: additional blocks selected to be
   inserted after the matchingresponse block now added on the correct
   hierarchical level.
- Using the colorful editor will no longer strip out variables from the
   options attribute in a foilgroup in optionresponse.
- Can display student submissions from customresponse items with multiple
   input fields.
- Can view own submissions in anonymous surveys.
- When printing "Selected Problems from entire course for selected people"
   folder title in header on each page varies as course folders are traversed.
- Import of WebCT Vista question-banks includes support for questions with
   images.
- When displaying list of deleted resources in a course (for recovery) exclude
   sequence/page files previously deleted, but since re-imported (e.g., in
   another folder).
- Domain Coordinators' "server" announcements can be sent to domain servers
   which have a hyphen in the LONCAPA "machine name".
- Support ad hoc role switching to a custom role in a course created by a user
   with an e-mail address as username.


Internals
- Author content on filesystem moved to /home/httpd/html/priv/<domain>/<user>
   to better support multi-domain servers and WebDAV.
- Requests to dump contents of a GDBM database file residing on the same
   server as hosting the user session handled by direct filesystem access
   instead of via LON-CAPA daemons.
- Requests for filtered search of GDBM database file used for quick look-up
   of course information for courses in a domain also uses direct filesystem
   access if session server is also the domain's library server.
- Script (searchcat.pl) run bi-nightly by cron to update database tables of
   aggregated data will delete unwanted keys in domain's ids.db GDBM file on
   each library server.
- Support for Apache 2.4 -- $r->user() needs to be set to user's username for
   requests for <Location> directives which include Require valid-user.
- Modifying a domain default which is cached for 24 hours will cause the
   domain defaults caches to be expired on other servers belonging to the
   domain, causing the new default to be retrieved and cached on the domain's
   servers the next time defaults are needed.
- Additional information stored with each submission: maxtries, hinttries,
   (question) type, randomseed (most response types).


Discontinued functionality available in 2.10 and earlier
- Bookmarks (Stored Links are a replacement)
- Pop-up "External" Navigation window


New supported Linux distro versions:
Red Hat 7; CentOS 7 (prerelease); Fedora 17, 18, 19, 20; SuSE 12.2,  
12.3, 13.1;
Ubuntu 12.04 LTS and 14.04 LTS are newer Linux distro versions which are now
supported with LON-CAPA.


Specific enhancement requests/bugs addressed: (see http://bugs.loncapa.org)
  838,  874, 1223, 1320, 2201, 2359, 2484, 2598, 2802, 3009, 3374, 3462, 3569,
4046, 4164, 4331, 4334, 4492, 4586, 4639, 4641, 4769, 4827, 4900, 4984, 5047,
5209, 5324, 5590, 5676, 5685, 5712, 5753, 5771, 5794, 5824, 5891, 5943, 5962,
5991, 6034, 6035, 6128, 6127, 6149, 6165, 6168, 6185, 6202, 6224, 6244, 6275,
6291, 6293, 6305, 6340, 6371, 6390, 6408, 6419, 6420, 6431, 6448, 6450, 6455,
6454, 6459, 6470, 6476, 6489, 6490, 6491, 6518, 6540, 6534, 6535, 6542, 6543,
6548, 6550, 6558, 6559, 6561, 6562, 6566, 6577, 6576, 6586, 6587, 6588, 6592,
6593, 6595, 6603, 6606, 6608, 6609, 6610, 6611, 6613, 6614, 6619, 6626, 6629,
6632, 6634, 6638, 6639, 6645, 6646, 6647, 6649, 6653, 6660, 6662, 6667, 6668,
6670, 6671, 6675, 6679, 6682, 6685, 6689, 6694, 6703, 6707, 6710, 6716


Installation Notes:

To use this release you need to have version 1-23 of LONCAPA-prerequisites
installed.

To install this update:

1) You will need to be running CentOS 5, 6 or 7, RHEL (AS|ES) 4, 5, 6, or 7,
Scientific Linux 5 or 6, SLES 9, 10 or 11, Ubuntu LTS 8, 10, 12 or 14,
Fedora Core 13, 14, 15, 16, 17, 18, 19 or 20 or SuSE 11.4, 12.1, 12.2,
12.3 or 13.1. (Fedora Core 9, 10, 11 and 12, and SuSE 11.1, 11.2 & 11.3
should continue to work, but are deprecated).

You will need to be root to use the commands listed at steps 2 to 11 below.
On Ubuntu LTS servers either prepend sudo for each command, or use sudo -i.

2) Update LONCAPA-prerequisites to 1-23

(a) Fedora

yum update

(b) RedHat Enterprise 4

up2date -u LONCAPA-prerequisites

(c) Red Hat 5, 6 and 7/Centos 5, 6 and 7/Scientific Linux 5 and 6

yum update

(d) SuSE/SLES

Use yast-> Installation Source to refresh the LON-CAPA repository
Use yast->Software Management->Search to update LONCAPA-prerequisites

(e) Ubuntu

sudo apt-get update
sudo apt-get upgrade

On all distributions, it is recommended that you check that you have
the correct versions of LONCAPA-prerequisites installed before proceeding.

(i) CentOS/RHEL/Scientific Linux/Fedora/SLES/SuSE
rpm -q LONCAPA-prerequisites

should report:
LONCAPA-prerequisites-1-23.X
(where X is a distro identifier e.g., centos6.lc)

(ii) Ubuntu
sudo dpkg -l loncapa-prerequisites

should report
ii loncapa-prerequisites 1.23-X
(where X is a version number which depends on Ubuntu distro)

3) Download the new LON-CAPA tarball from
wget http://install.lon-capa.org/versions/loncapa-2.11.0.tar.gz

and untar it

tar xzvf loncapa-2.11.0.tar.gz

4) stop the LON-CAPA system services

/etc/init.d/loncontrol stop

5) stop the web server:

Fedora 16 (and older)/RHEL/Centos/Scientific Linux 6 (and older)
/etc/init.d/httpd stop

Fedora 17 (and newer), RHEL/CentOS 7, SuSE 12.X, 13.1:
service httpd stop

SLES 9:
/etc/init.d/apache stop

SuSE 11.X, SLES 10, SLES 11, Ubuntu:
/etc/init.d/apache2 stop


6) Run the UPDATE script as root
(Note: new in 2.11 -- you will be asked to confirm that you wish to  
remove files
installed by older versions of LON-CAPA which are no longer used by 2.11).

cd loncapa-2.11.0
su
./UPDATE


7) If you are updating a LON-CAPA library server from an earlier version
of LON-CAPA, you will need to run a script to migrate authoring spaces
in domain(s) hosted on the server from their old locations in:
/home/ to their new locations in /home/httpd/html/priv

To do this use the command:

perl /home/httpd/perl/debug/move_construction_spaces.pl move

Note: You can perform a dry-run, which will show what would happen, but will
not actually move anything, by omitting the "move" argument.


8) If your Apache web server has been configured to use SSL, and you have
included rewrite rules to rewrite all requests to http://<yourserver>/
to https://<yourserver>/ you will may to modify your rewrite rule to
(a) allow internal HEAD requests to /cgi-bin/mimetex.cgi to be served
http://, in order to support vertical alignment of mimetex images
(one of the options for rendering Math content); (b) allow requests
for certain URLs (external resource, annotations, jsMath, and syllabus)
to be served http:// to accommodate the use of iframes which would
otherwise result in browser blocking of mixed active content.

Starting with LON-CAPA 2.10, a config file containing rewrite
rules -- loncapa_rewrite.conf -- is added to /etc/httpd/conf
(CentOS, Red Hat, Scientific Linux, Fedora) or /etc/apache2 (SuSE, SLES,
Ubuntu, Debian). By default, rewrites are set to off (using
RewriteEngine off).  If you already have you own rewrite rules in place
you should either transfer them to loncapa_rewrite.conf, after completing
the LON-CAPA update, or leave your existing file in place and comment out
the entries in loncapa_rewrite.conf. Otherwise, if you are using
SSL with Apache, and would like requests to http://<yourserver>/
to be rewritten to https://<yourserver>/, you should copy
rewrites/loncapa_rewrite_on.conf to loncapa_rewrite.conf to enable this.
The rules included in that config file do not rewrite internal
requests (i.e., from 127.0.0.1) to https://, so vertical alignment
of mimetex images is supported. In 2.11 there are also rules for the URLs
noted above, which exclude them from rewrites to https:// to avoid
issues with mixed active content.

Once you have the rules for ^/adm/wrapper/ext/(?!https:) and
^/public/.*/syllabus$ in place in loncapa_rewrite.conf you should also add
the following to your <VirtualHost _default_:443> </VirtualHost> block:

   <IfModule mod_rewrite.c>
     RewriteEngine on
     RewriteCond %{HTTPS} =on
     RewriteRule ^/adm/wrapper/ext/(?!https:\/\/)  
http://%{HTTP_HOST}%{REQUEST_URI} [R,L,NE]
     RewriteRule ^/public/.*/syllabus$  
http://%{HTTP_HOST}%{REQUEST_URI} [R,L,NE]
   </IfModule>

Note: this is only needed if you are using SSL (i.e., requests to
https://<yourserver>/ are supported) and you want to rewrite external
requests to http://<yourserver>/ to always use https://<yourserver>/


9) Note about /home/httpd/lib/perl/localenroll.pm
When you use UPDATE to update an existing LON-CAPA installation to a newer
version, the customizable localenroll.pm file is not overwritten.  This
is the file which must be customized to support integration of LON-CAPA
with institutional data sources (e.g., for automated update of course
rosters or user information). Whenever new routines are included in
localenroll.pm these will appear in localenroll-std.pm, which is updated
when a new LON-CAPA version is installed.

If you have previously customized localenroll.pm it is recommended that
you compare the contents of localenroll.pm and localenroll-std.pm after
an update to see if there are new subroutines (which exist as stubs in
localenroll-std.pm) which can be copied to your custom localenroll.pm,
and later customized, should you wish to use that functionality.

Recent changes are addition of new_course() in LON-CAPA 2.10 to support
access to institutional classlist data for a particular course,
based on co-ownership (previously only ownership was considered), and
in LON-CAPA 2.11 (a) addition of crsreq_updates() to support domain-specific
operations during course request processing; (b) a fourth arg in  
allusers_info()
-- $lc_users -- a reference to hash containing LON-CAPA usernames,
suitable for institutions which only allow a server to retrieve
institutional user information when the user's username is included in the
query; (c) validate_instcode() can return a third value: the default credits
earned by students when completing the course corresponding to the supplied
institutional code; (d) validate_crsreq() takes an additional arg:
$custominfo -- an optional reference to a hash of custom form data.
The custom form data themselves will come from crsreq_updates().


10) restart the LON-CAPA system services
/etc/init.d/loncontrol start


11) restart the webserver:

Fedora (16 and older)/RHEL/Centos/Scientific Linux 6 (and older)
/etc/init.d/httpd start

Fedora 17 (and newer), RHEL/CentOS 7, SuSE 12.X, 13.1:
service httpd start

SLES 9:
/etc/init.d/apache start

SuSE 11.X, SLES 10,11, Ubuntu:
/etc/init.d/apache2 start


12) It is recommended that loncron is run
(as the www user) after installation/update is complete.

su www
/home/httpd/perl/loncron

This will write to files in /home/httpd/lonTabs used to
store information about LON-CAPA versions on other servers in
the cluster to which the server belongs.  It may take some
minutes to complete as the script will contact other servers
in the LON-CAPA network sequentially.

13) It is also recommended that you check disk usage for courses
and Authoring Spaces, as 2.11.0 introduces default quotas of 0.5 GB
for each course (content uploaded directly via Course Editor) and
the same for each author.

For courses, log-in as Domain Coordinator and use:
Main Menu -> Status of domain servers -> Display quotas and usage for
Course/Community Content.

For Authoring Spaces, log-in as Domain Coordinator and use:
Main Menu -> Create users or modify the roles and privileges of users
->  Manage Users, and select Author in the "Role" dropdown, then
press the "Display List of Users" button.

The 0.5 GB default quota for Authoring Spaces in domain can be replaced via:
Main Menu -> Set domain configuration -> Blogs, personal web pages,
webDAV/quotas, portfolios

The 0.5 GB default quota for Courses can be replaced via:
Main Menu -> Set domain configuration -> Course/Community defaults

Quotas for individual authors can be set via:
Main Menu -> Create users or modify the roles and privileges of users
-> Add/Modify a User

Quotas for individual courses can be set via:
Main Menu -> View or modify a course or community
then search/select the course and use:
"View/Modify quotas for group portfolio files, and for uploaded content".


----NOTES
1) Defects reports, and enhancements requests can be entered at
         http://bugs.lon-capa.org
2) Mailing lists can be joined and left at http://mail.lon-capa.org
3) Installation/update support is available from helpdesk at loncapa.org
  (replace " at " with @).

Stuart Raeburn
LON-CAPA Academic Consortium



More information about the LON-CAPA-admin mailing list