Hello everyone,
The following versions of Totara Learn have now been released:
- Release 16.4
- Release 15.10
- Release 14.15
- Release 13.23
- Release 12.46
- Release 11.54
- Release 10.57
- Release 9.64
Each release ncludes bug fixes and improvements.
Kind regards
Release 16.4 (26th August 2022):
Important:
TL-35164 Fixed upgrade of relative due date calculation of program/certification assignments potentially resulting in loss of data
This fixes a potential data loss issue.
It affects sites which got upgraded from any version of 14.5 or higher to 15 or
16 (not including this fix) and which make use of relative due dates in program
or certification assignments.
Sites upgraded from a version prior to 14.5 directly to 15 or 16 are not
affected.
This issue had an immediate impact on relative due date periods set on
program/certification assignment. This did not affect existing program
completion due dates but any future due date calculations used 0 DAYS as a time
frame potentially resulting in learners not being able to complete their
program.
In Totara 14.5 we changed the way relative due dates are calculated. Previously,
it used a static 30 days per month during the calculation of the real due date.
To improve accuracy we changed this to use the correct date functionality and
therefore count in the real number of days for the timeframe.
To convert the existing data to the new data we introduced an upgrade step which
migrates the records into the new format using new columns in the
prog_assignment database table. Due to a bug in the upgrade code, assignments
already using the new structure for relative due dates are migrated wrongly
during the next upgrade, which sets the affected relative periods to 0 DAYS.
The upgrade step has now been fixed to ensure the program/certification
assignment data for relative due dates is correctly migrated, even when run
multiple times.
For sites who have already upgraded the following SQL query can be used to
determine if your site was affected.
If a result is returned then please seek support from us and we will assist you
in confirming the issue, and in supporting you to recover the lost data.
SELECT
p.id AS program_id,
p.idnumber as idnumber,
p.fullname AS name,
CASE WHEN p.certifid IS NOT NULL THEN 'certification'
ELSE 'program' END AS program_or_certification,
CASE WHEN pa.assignmenttype = 1 THEN 'organisation'
WHEN pa.assignmenttype = 2 THEN 'position'
WHEN pa.assignmenttype = 3 THEN 'audience'
WHEN pa.assignmenttype = 5 THEN 'individual'
WHEN pa.assignmenttype = 6 THEN 'job assignment'
WHEN pa.assignmenttype = 7 THEN 'learning plan'
ELSE ''
END AS assignment_type
FROM mdl_prog_assignment AS pa
LEFT JOIN mdl_prog AS p ON p.id = pa.programid
WHERE pa.completionoffsetamount = 0
AND pa.completiontime IS NULL
AND pa.completionoffsetunit = 2;
Improvements:
TL-30485 Updated strings on the Engage access form when creating a resource and added an info icon button to the topic selector
TL-34166 Improved wording in content visibility settings of resources and playlists
TL-34864 Improved UI behaviour for Tenant default values field when the "Override with file and defaults" value for existing user details field is selected
When "Override with file and defaults" value is selected then "Tenant default
values" field will be disabled.
TL-34888 Allow escaping hyphens with a backslash in OAuth2 field mapping
The hyphen character is used as an object nesting divider i.e.
'Country-region-city' field will look up $country->region->city in the userinfo
data source. This prevents using the hyphen character as a regular character. We
added an ability to use a backslash character before the hyphen to treat it as a
regular hyphen.
TL-35052 Increased size of the Totara Menu URL field to allow for a url up to 1333 characters in length
Bug fixes:
TL-32601 Changed 'Course Provider' language string to 'Content provider'
TL-32996 Fixed Auth plugins settings not being updated when custom fields are updated
TL-33236 Made settings_navigation_tree GraphQL query and its tests more robust
Fixed an issue where the query would have returned a site admin node if called
with an admin page and the setting 'legacyadminsettingsmenu' being disabled.
TL-33565 Fixed intermittent failing unit test caused by a timing issue
TL-33607 Improved XMLDB Editor path validation for included files
TL-34200 Replaced the icon used for edit personal goals link with the editstring icon
TL-34447 Fixed an issue where a course creator was unable to select an activity type when creating single-activity course
This patch creates a new capability, 'format/singleactivity:addanyactivity',
that allows the bearer to select any type of activity when creating a
single-activity course. On upgrade, this capability is given to all roles based
on the course creator archetype.
TL-34551 Suppressed notifications when updating temporary manager via HR import
TL-34652 Fixed the displaying of the suspended user option in user sources page
TL-34683 Fixed course category caching issue with icons display when searching for courses in the course administration.
TL-34776 Fixed the LTI tool check to display a green mark check when a valid URL is entered
TL-34785 Added has_middleware interface to server/totara/reportbuilder/classes/webapi/resolver/query/template.php resolver
TL-34808 Fixed stderr not being redirected to stdout when using pcntl extension on PHP version 8.0.20 or 8.1.7
On PHP 8.0.20 and 8.1.7 a patch has been released which breaks widely used code
to redirect stderr to stdout in CLI scripts. Even though 8.0.21 and 8.1.8
reverted the change Totara code has been fixed to work on all supported
versions.
TL-34861 Improved error handling for invalid cache in appraisal multichoice questions
TL-34865 Fixed a help lang string for bulk adding goals
TL-34868 Fixed the machine learning healthcheck showing exceptions before the GraphQL cache had fully built
TL-34889 Included library files which can not be auto loaded
TL-34890 Fixed the add audience dialogue overlapping the footer
The add audiences dialogue has been fixed so that the list of audiences no
longer overlaps the footer.
TL-34907 Added a course completion due date for Current Learning block and Record of Learning reportbuilder sources
TL-34920 Fixed user custom fields not being populated when uploading tenant users
TL-35025 Ensured empty Report Builder scheduled reports are not sent or saved
TL-35084 Fixed visibility column exporting data as HTML in Visible Learning report source
TL-35165 Fixed an exception when including child positions in a position/organisation assignment
The set_duedate() method is not compatible to the duedate parameter being null..
This changes make sure to convert null to 0 before calling the set_duedate()
method.
TL-34929 removed role attribute in course header and summary section HTML
Technical changes:
TL-34899 Fixed an issue where isset on an entity returns false if the relationship exists but is not loaded
Tui front end framework:
TL-29586 Added `toHaveNoViolations()` to jest's expect() result
When using JavaScript unit tests (as provided by jest), a `toHaveNoViolations`
function has been added to the `expect()` return value. This allows the test to
check the accessibility of the given component and avoids importing the function
from jest-axe package `toHaveNoViolations()`
TL-34555 Fixed the function dom/position/getBox to be functional in IE11
Library updates:
TL-33146 Upgraded development library "stylelint" from 12.0 to 14.6
TL-34192 Updated indirect npm dependencies to eliminate vulnerability warnings
* Updated indirect dependencies with "npm audit fix"
Release 15.10 (26th August 2022):
Important:
TL-35164 Fixed upgrade of relative due date calculation of program/certification assignments potentially resulting in loss of data
This fixes a potential data loss issue.
It affects sites which got upgraded from any version of 14.5 or higher to 15 or
16 (not including this fix) and which make use of relative due dates in program
or certification assignments.
Sites upgraded from a version prior to 14.5 directly to 15 or 16 are not
affected.
This issue had an immediate impact on relative due date periods set on
program/certification assignment. This did not affect existing program
completion due dates but any future due date calculations used 0 DAYS as a time
frame potentially resulting in learners not being able to complete their
program.
In Totara 14.5 we changed the way relative due dates are calculated. Previously,
it used a static 30 days per month during the calculation of the real due date.
To improve accuracy we changed this to use the correct date functionality and
therefore count in the real number of days for the timeframe.
To convert the existing data to the new data we introduced an upgrade step which
migrates the records into the new format using new columns in the
prog_assignment database table. Due to a bug in the upgrade code, assignments
already using the new structure for relative due dates are migrated wrongly
during the next upgrade, which sets the affected relative periods to 0 DAYS.
The upgrade step has now been fixed to ensure the program/certification
assignment data for relative due dates is correctly migrated, even when run
multiple times.
For sites who have already upgraded the following SQL query can be used to
determine if your site was affected.
If a result is returned then please seek support from us and we will assist you
in confirming the issue, and in supporting you to recover the lost data.
SELECT
p.id AS program_id,
p.idnumber as idnumber,
p.fullname AS name,
CASE WHEN p.certifid IS NOT NULL THEN 'certification'
ELSE 'program' END AS program_or_certification,
CASE WHEN pa.assignmenttype = 1 THEN 'organisation'
WHEN pa.assignmenttype = 2 THEN 'position'
WHEN pa.assignmenttype = 3 THEN 'audience'
WHEN pa.assignmenttype = 5 THEN 'individual'
WHEN pa.assignmenttype = 6 THEN 'job assignment'
WHEN pa.assignmenttype = 7 THEN 'learning plan'
ELSE ''
END AS assignment_type
FROM mdl_prog_assignment AS pa
LEFT JOIN mdl_prog AS p ON p.id = pa.programid
WHERE pa.completionoffsetamount = 0
AND pa.completiontime IS NULL
AND pa.completionoffsetunit = 2;
Improvements:
TL-30485 Updated strings on the Engage access form when creating a resource and added an info icon button to the topic selector
TL-34166 Improved wording in content visibility settings of resources and playlists
TL-34864 Improved UI behaviour for Tenant default values field when the "Override with file and defaults" value for existing user details field is selected
When "Override with file and defaults" value is selected then "Tenant default
values" field will be disabled.
TL-35052 Increased size of the Totara Menu URL field to allow for a url up to 1333 characters in length
Bug fixes:
TL-31585 Hide facilitator type form field when adding it through a seminar event
TL-32601 Changed 'Course Provider' language string to 'Content provider'
TL-32996 Fixed Auth plugins settings not being updated when custom fields are updated
TL-33236 Made settings_navigation_tree GraphQL query and its tests more robust
Fixed an issue where the query would have returned a site admin node if called
with an admin page and the setting 'legacyadminsettingsmenu' being disabled.
TL-33565 Fixed intermittent failing unit test caused by a timing issue
TL-33607 Improved XMLDB Editor path validation for included files
TL-34200 Replaced the icon used for edit personal goals link with the editstring icon
TL-34447 Fixed an issue where a course creator was unable to select an activity type when creating single-activity course
This patch creates a new capability, 'format/singleactivity:addanyactivity',
that allows the bearer to select any type of activity when creating a
single-activity course. On upgrade, this capability is given to all roles based
on the course creator archetype.
TL-34652 Fixed the displaying of the suspended user option in user sources page
TL-34683 Fixed course category caching issue with icons display when searching for courses in the course administration.
TL-34776 Fixed the LTI tool check to display a green mark check when a valid URL is entered
TL-34785 Added has_middleware interface to server/totara/reportbuilder/classes/webapi/resolver/query/template.php resolver
TL-34808 Fixed stderr not being redirected to stdout when using pcntl extension on PHP version 8.0.20 or 8.1.7
On PHP 8.0.20 and 8.1.7 a patch has been released which breaks widely used code
to redirect stderr to stdout in CLI scripts. Even though 8.0.21 and 8.1.8
reverted the change Totara code has been fixed to work on all supported
versions.
TL-34861 Improved error handling for invalid cache in appraisal multichoice questions
TL-34865 Fixed a help lang string for bulk adding goals
TL-34868 Fixed the machine learning healthcheck showing exceptions before the GraphQL cache had fully built
TL-34920 Fixed user custom fields not being populated when uploading tenant users
TL-35025 Ensured empty Report Builder scheduled reports are not sent or saved
TL-35084 Fixed visibility column exporting data as HTML in Visible Learning report source
TL-35165 Fixed an exception when including child positions in a position/organisation assignment
The set_duedate() method is not compatible to the duedate parameter being null..
This changes make sure to convert null to 0 before calling the set_duedate()
method.
TL-34929 removed role attribute in course header and summary section HTML
Technical changes:
TL-34899 Fixed an issue where isset on an entity returns false if the relationship exists but is not loaded
Tui front end framework:
TL-29586 Added `toHaveNoViolations()` to jest's expect() result
When using JavaScript unit tests (as provided by jest), a `toHaveNoViolations`
function has been added to the `expect()` return value. This allows the test to
check the accessibility of the given component and avoids importing the function
from jest-axe package `toHaveNoViolations()`
TL-34555 Fixed the function dom/position/getBox to be functional in IE11
Library updates:
TL-33146 Upgraded development library "stylelint" from 12.0 to 14.6
TL-34192 Updated indirect npm dependencies to eliminate vulnerability warnings
* Updated indirect dependencies with "npm audit fix"
TL-35082 Upgraded mustache library to version 2.14.1
Release 14.15 (26th August 2022):
Important:
TL-35164 Fixed upgrade of relative due date calculation of program/certification assignments potentially resulting in loss of data
This fixes a potential data loss issue.
It affects sites which got upgraded from any version of 14.5 or higher to 15 or
16 (not including this fix) and which make use of relative due dates in program
or certification assignments.
Sites upgraded from a version prior to 14.5 directly to 15 or 16 are not
affected.
This issue had an immediate impact on relative due date periods set on
program/certification assignment. This did not affect existing program
completion due dates but any future due date calculations used 0 DAYS as a time
frame potentially resulting in learners not being able to complete their
program.
In Totara 14.5 we changed the way relative due dates are calculated. Previously,
it used a static 30 days per month during the calculation of the real due date.
To improve accuracy we changed this to use the correct date functionality and
therefore count in the real number of days for the timeframe.
To convert the existing data to the new data we introduced an upgrade step which
migrates the records into the new format using new columns in the
prog_assignment database table. Due to a bug in the upgrade code, assignments
already using the new structure for relative due dates are migrated wrongly
during the next upgrade, which sets the affected relative periods to 0 DAYS.
The upgrade step has now been fixed to ensure the program/certification
assignment data for relative due dates is correctly migrated, even when run
multiple times.
For sites who have already upgraded the following SQL query can be used to
determine if your site was affected.
If a result is returned then please seek support from us and we will assist you
in confirming the issue, and in supporting you to recover the lost data.
SELECT
p.id AS program_id,
p.idnumber as idnumber,
p.fullname AS name,
CASE WHEN p.certifid IS NOT NULL THEN 'certification'
ELSE 'program' END AS program_or_certification,
CASE WHEN pa.assignmenttype = 1 THEN 'organisation'
WHEN pa.assignmenttype = 2 THEN 'position'
WHEN pa.assignmenttype = 3 THEN 'audience'
WHEN pa.assignmenttype = 5 THEN 'individual'
WHEN pa.assignmenttype = 6 THEN 'job assignment'
WHEN pa.assignmenttype = 7 THEN 'learning plan'
ELSE ''
END AS assignment_type
FROM mdl_prog_assignment AS pa
LEFT JOIN mdl_prog AS p ON p.id = pa.programid
WHERE pa.completionoffsetamount = 0
AND pa.completiontime IS NULL
AND pa.completionoffsetunit = 2;
Improvements:
TL-30485 Updated strings on the Engage access form when creating a resource and added an info icon button to the topic selector
TL-34166 Improved wording in content visibility settings of resources and playlists
TL-34864 Improved UI behaviour for Tenant default values field when the "Override with file and defaults" value for existing user details field is selected
When "Override with file and defaults" value is selected then "Tenant default
values" field will be disabled.
Bug fixes:
TL-32996 Fixed Auth plugins settings not being updated when custom fields are updated
TL-33607 Improved XMLDB Editor path validation for included files
TL-34200 Replaced the icon used for edit personal goals link with the editstring icon
TL-34447 Fixed an issue where a course creator was unable to select an activity type when creating single-activity course
This patch creates a new capability, 'format/singleactivity:addanyactivity',
that allows the bearer to select any type of activity when creating a
single-activity course. On upgrade, this capability is given to all roles based
on the course creator archetype.
TL-34683 Fixed course category caching issue with icons display when searching for courses in the course administration.
TL-34785 Added has_middleware interface to server/totara/reportbuilder/classes/webapi/resolver/query/template.php resolver
TL-34808 Fixed stderr not being redirected to stdout when using pcntl extension on PHP version 8.0.20 or 8.1.7
On PHP 8.0.20 and 8.1.7 a patch has been released which breaks widely used code
to redirect stderr to stdout in CLI scripts. Even though 8.0.21 and 8.1.8
reverted the change Totara code has been fixed to work on all supported
versions.
TL-34861 Improved error handling for invalid cache in appraisal multichoice questions
TL-34865 Fixed a help lang string for bulk adding goals
TL-34920 Fixed user custom fields not being populated when uploading tenant users
TL-35025 Ensured empty Report Builder scheduled reports are not sent or saved
TL-35084 Fixed visibility column exporting data as HTML in Visible Learning report source
TL-35165 Fixed an exception when including child positions in a position/organisation assignment
The set_duedate() method is not compatible to the duedate parameter being null..
This changes make sure to convert null to 0 before calling the set_duedate()
method.
Technical changes:
TL-34899 Fixed an issue where isset on an entity returns false if the relationship exists but is not loaded
Tui front end framework:
TL-29586 Added `toHaveNoViolations()` to jest's expect() result
When using JavaScript unit tests (as provided by jest), a `toHaveNoViolations`
function has been added to the `expect()` return value. This allows the test to
check the accessibility of the given component and avoids importing the function
from jest-axe package `toHaveNoViolations()`
TL-34555 Fixed the function dom/position/getBox to be functional in IE11
Library updates:
TL-34192 Updated indirect npm dependencies to eliminate vulnerability warnings
* Updated indirect dependencies with "npm audit fix"
TL-35082 Upgraded mustache library to version 2.14.1
Release 13.23 (26th August 2022):
Improvements:
TL-34166 Improved wording in content visibility settings of resources and playlists
Bug fixes:
TL-33607 Improved XMLDB Editor path validation for included files
TL-34200 Replaced the icon used for edit personal goals link with the editstring icon
TL-34683 Fixed course category caching issue with icons display when searching for courses in the course administration.
TL-34785 Added has_middleware interface to server/totara/reportbuilder/classes/webapi/resolver/query/template.php resolver
TL-34861 Improved error handling for invalid cache in appraisal multichoice questions
TL-34865 Fixed a help lang string for bulk adding goals
TL-34920 Fixed user custom fields not being populated when uploading tenant users
TL-35025 Ensured empty Report Builder scheduled reports are not sent or saved
TL-35084 Fixed visibility column exporting data as HTML in Visible Learning report source
Technical changes:
TL-34899 Fixed an issue where isset on an entity returns false if the relationship exists but is not loaded
Tui front end framework:
TL-29586 Added `toHaveNoViolations()` to jest's expect() result
When using JavaScript unit tests (as provided by jest), a `toHaveNoViolations`
function has been added to the `expect()` return value. This allows the test to
check the accessibility of the given component and avoids importing the function
from jest-axe package `toHaveNoViolations()`
TL-34555 Fixed the function dom/position/getBox to be functional in IE11
Library updates:
TL-34192 Updated indirect npm dependencies to eliminate vulnerability warnings
* Updated indirect dependencies with "npm audit fix"
TL-35082 Upgraded mustache library to version 2.14.1
Release 12.46 (26th August 2022):
Bug fixes:
TL-33607 Improved XMLDB Editor path validation for included files
TL-34865 Fixed a help lang string for bulk adding goals
Library updates:
TL-35082 Upgraded mustache library to version 2.14.1
Release 11.54 (26th August 2022):
Bug fixes:
TL-33607 Improved XMLDB Editor path validation for included files
Library updates:
TL-35082 Upgraded mustache library to version 2.14.1
Release 10.57 (26th August 2022):
Bug fixes:
TL-33607 Improved XMLDB Editor path validation for included files
Release 9.64 (26th August 2022):
Bug fixes:
TL-33607 Improved XMLDB Editor path validation for included files
