Hello everyone,
The following versions of Totara Learn have now been released:
These versions do contain security fixes, and for this reason we strongly recommend upgrade.
Each release also includes bug fixes and improvements.
Kind regards,
Release team
Release 15.6 (26th April 2022):
Important: TL-34110 Fixed the migration of evidence to learning plan relationships when upgrading to TXP Evidence was redesigned in Totara 13, and an entirely new data structure was adopted to benefit the evidence feature set. During the upgrade to Totara 13 (that all sites must go through during the upgrade process) Evidence data is migrated from the pre-13 structure to the new structure. The migration moves data item per item, sequentially. Due to a bug in the migration process, links between an evidence item and a user’s learning plan may be broken, with evidence items being incorrectly related to the incorrect learning plan. This mis-mapping can cause evidence items belonging to one user to end up being linked to the learning plan of another user. This affects historic data only, as all future relations are formed correctly post upgrade. The migration has now been fixed to ensure the relationship between an evidence item and a learning plan is correctly maintained. For sites who have already upgraded the following SQL query can be used to determine if your site was affected. If a number greater than 0 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 relationships. SELECT COUNT(dper.id) FROM mdl_dp_plan_evidence_relation dper JOIN mdl_totara_evidence_item tei ON tei.id = dper.evidenceid JOIN mdl_dp_plan dp ON dp.id = dper.planid WHERE dp.userid != tei.user_id; Security issues: TL-33678 Fixed validation of CSRF token for report exports TL-33700 Fixed sending of sesskey as part of GET parameters when configuring the catalog TL-33889 Fixed a capability check for the Upload user tool A manager without the "moodle/user:delete" capability was able to delete users by using the upload user tool, this has now been fixed. Performance improvements: TL-34017 Searching for a user while sharing a resource now batches keyboard presses Improvements: TL-25962 Added the ability to remove a link from Weka while maintaining the link text TL-32716 Increased the width of the autocomplete dropdown for the evidence type on the evidence creation screen This allows the full placeholder to be seen when a user is adding an evidence item to their evidence bank TL-32999 Improved help text about delete setting in user import when it is set to 'Suspend internal user' Before, the implications of having the 'Delete' setting set to 'Suspend internal user' for the user element in HR import were not well explained. Now, we have provided help text information in the UI about it so it's clear what to expect. TL-33566 Added list columns to the My Bookings report Three new columns have been added to the 'My Bookings' report to display the facilitators, rooms and assets linked to a specific session as lists instead of adding duplicate rows for a single session that have multiple facilitators, rooms or assets. TL-33679 Changed form action to 'GET' for manage dashboard single button TL-33970 Added appropriate CSS class to topics format General section when header colour is enabled TL-33975 Increased the top and bottom margin of the 'Load more' button in the Adder.vue component TL-34102 The totara_mobile_certification query now returns a 'viewable' flag for all courses in certifications TL-34114 Updated the OriginalSpaceCard TUI component to focus the action button when closing modals on the "Find workspaces" page Bug fixes: TL-31410 Fixed the height of the completion lozenge on the competency details page TL-32778 Fixed installation alerts missing border colours on IE11 TL-33387 Fixed the re-validation of competency achievement paths for multi-level hierarchies When child and/or other competency achievement criteria is used in multi-level competency hierarchies with 3 or more levels, the validity of competency achievement paths on all levels are now correctly re-evaluated when changes are made on the lower levels. TL-33396 Fixed error in catalogue hook watcher when courses are disabled in the catalogue When courses were disabled in the catalogue content setting and a course was edited it triggered an error in the hook watcher for the catalogue. TL-33511 Restored the competency migration task for sites that upgraded through Totara 13 without running it Previously, if a site got upgraded to Totara 13 and then immediately upgraded again to a newer version without running cron, the competency migration ad-hoc task would not be executed as the code was removed in Totara 14. This could lead to competencies not being fully migrated. This has been fixed by restoring the necessary code. The cron will now trigger the migration, even on Totara 14 or above. TL-33525 Fixed date format for custom fields during user upload TL-33640 Fixed records not being deleted from totara_contentmarketplace_course_module_source when deleting a course module A previously missing \core\event\course_module_deleted() event is now being triggered when deleting course modules during course deletion. TL-33648 Fixed error when trying to add already assigned courses to learning plan TL-33659 Fixed multichoice answer text being truncated in analysis view of feedback module TL-33698 Fixed not being able to create tenant users with duplicate emails if allowed on the site When creating a new user in a tenant the email validation now respects the setting 'allowaccountssameemail', which allows user accounts to have duplicate emails. TL-33753 Fixed Course completion editor referencing admin user when changes are made using HR import tool TL-33819 Fixed the flow on effects when a seminar activity name is updated Updating the name of a seminar activity now also correctly updates the name in the calendar event, and 'Upcoming events' block TL-33894 Fixed not being able to delete view-only participants from an activity in the participant management report TL-33914 Removed option to collapse from top course section TL-33945 Added a way to reset the course 'General' section heading back to its default state of hidden TL-33969 Fixed sorting of attendees lists on seminar events When adding or removing attendees to a seminar event, the lists of current attendees, potential attendees and removed attendees are now all sorted alphabetically. TL-33974 Fixed new playlist not appearing when returning directly to library TL-33980 Fixed issue with Safari cropping text on Button.vue and ToggleSwitch.vue components TL-33996 Fixed errors in GraphQL queries when id is 0 Fixed the errors for following mod_perform GraphQL * manually_delete_subject_instance when subject_instance_id is 0 * manually_delete_participant_instance when participant_instance_id is 0 * manually_change_participant_section when participant_section_id is 0 TL-33998 Added form validation for performance activity repeating settings Prior to this patch, entering out of range values for repeating trigger offset and repeating limit resulted in a generic failure message generated by the back end. This patch adds front end form validation with specific error messages. TL-34009 Updated section administration in performance activities to not show the "Move element to another section" button if there is no section to move the element to Also fixed a bug where the current section wasn't being filtered out of the list of other sections. TL-34018 Fixed error in get_config GraphQL query when item_type is null TL-34028 Fixed scrolling to the wrong position when switching views on the competency profile page TL-34030 Fixed a regression which allowed keyboard navigation to accidentally lose focus from the modal component TL-34040 Fixed totara_topic_find_topics query called twice TL-34045 Added a space before date filters in report builder reports TL-34060 Fixed missing link to user profile on workspace members list TL-34064 Fixed a text overflow issue in IE11 with workspace names on the find workspaces page TL-34087 Stopped the "edit link" Weka modal closing via backdrop click Previously if you clicked anywhere outside the bounds of the edit box while editing a link in Weka, the pop-up would close and your current changes would be lost. This behaviour has been changed such that clicking outside the box will not do anything, and to close the modal you will need to use the "done", "cancel", or the top-right "X" buttons. TL-34091 Fixed that creating and immediately deleting a workspace discussion causes cron error message TL-34108 Fixed the recipient classes for earlier program notifications In 15.0 program notifications were moved to the modern system using recipient classes in the totara_program namespace. As we moved more notifications in other areas it became apparent that 2 program recipients, subject and manager, were quite generic. As such in 15.3 TL-33094 these recipient classes were moved to the totara_notification namespace, leaving the old class there to allow for backwards compatibility. However any custom notifications created between those versions using the default resolvers would have the incorrect recipient saved in the database and would not send after upgrading to 15.3 or higher. This patch adds an upgrade path to fix any of these broken recipient classes. TL-34111 Fixed certification window open date notification sometimes being sent twice TL-34132 Fixed unnecessary refetch of container_workspace_search_users query after transfer-of-ownership mutation Technical changes: TL-34000 Changed name field format to 'PLAIN' for 'totara_oauth2_client_provider' type TL-34168 Updated the minimum supported versions for MariaDB and MySQL The readme has been updated with explicit minimum versions for both MariaDB and MySQL. MariaDB we have set the minimum to the first stable release of each line. Alpha and beta release versions are not supported. MySQL 8.0.1 is the minimum. MySQL 8.0 does not include the required encoding Totara needs. In all cases, we recommend using the latest version in each database release line. Tui front end framework: TL-33687 Changed HTTP method from POST to GET when loading the data for a Totara dialogs TL-33920 Fixed an issue where importing Vue in ext_ Tui components would end up with a separate copy of Vue instead of referencing the one in the core bundle TL-33921 Implemented triggering an error to prevent the compilation of large SCSS files containing non-ASCII characters on PHP < 7.4 to hang Due to PHP bug 72685, versions of PHP before 7.4 cannot efficiently run Unicode regexes over large strings. We work around this by removing non-ASCII characters from comments to avoid hitting the Unicode path where possible, and by erroring instead of hanging on large files in order to communicate the source of the problem. This behavior can be disabled through the "Allow unperformant CSS" option in the Tui frontend framework settings.
Release 14.11 (26th April 2022):
Important: TL-34110 Fixed the migration of evidence to learning plan relationships when upgrading to TXP Evidence was redesigned in Totara 13, and an entirely new data structure was adopted to benefit the evidence feature set. During the upgrade to Totara 13 (that all sites must go through during the upgrade process) Evidence data is migrated from the pre-13 structure to the new structure. The migration moves data item per item, sequentially. Due to a bug in the migration process, links between an evidence item and a user’s learning plan may be broken, with evidence items being incorrectly related to the incorrect learning plan. This mis-mapping can cause evidence items belonging to one user to end up being linked to the learning plan of another user. This affects historic data only, as all future relations are formed correctly post upgrade. The migration has now been fixed to ensure the relationship between an evidence item and a learning plan is correctly maintained. For sites who have already upgraded the following SQL query can be used to determine if your site was affected. If a number greater than 0 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 relationships. SELECT COUNT(dper.id) FROM mdl_dp_plan_evidence_relation dper JOIN mdl_totara_evidence_item tei ON tei.id = dper.evidenceid JOIN mdl_dp_plan dp ON dp.id = dper.planid WHERE dp.userid != tei.user_id; Security issues: TL-33678 Fixed validation of CSRF token for report exports TL-33700 Fixed sending of sesskey as part of GET parameters when configuring the catalog TL-33889 Fixed a capability check for the Upload user tool A manager without the "moodle/user:delete" capability was able to delete users by using the upload user tool, this has now been fixed. Performance improvements: TL-34017 Searching for a user while sharing a resource now batches keyboard presses Improvements: TL-32999 Improved help text about delete setting in user import when it is set to 'Suspend internal user' Before, the implications of having the 'Delete' setting set to 'Suspend internal user' for the user element in HR import were not well explained. Now, we have provided help text information in the UI about it so it's clear what to expect. TL-33566 Added list columns to the My Bookings report Three new columns have been added to the 'My Bookings' report to display the facilitators, rooms and assets linked to a specific session as lists instead of adding duplicate rows for a single session that have multiple facilitators, rooms or assets. TL-33679 Changed form action to 'GET' for manage dashboard single button TL-33970 Added appropriate CSS class to topics format General section when header colour is enabled TL-33975 Increased the top and bottom margin of the 'Load more' button in the Adder.vue component TL-34114 Updated the OriginalSpaceCard TUI component to focus the action button when closing modals on the "Find workspaces" page Bug fixes: TL-33396 Fixed error in catalogue hook watcher when courses are disabled in the catalogue When courses were disabled in the catalogue content setting and a course was edited it triggered an error in the hook watcher for the catalogue. TL-33511 Restored the competency migration task for sites that upgraded through Totara 13 without running it Previously, if a site got upgraded to Totara 13 and then immediately upgraded again to a newer version without running cron, the competency migration ad-hoc task would not be executed as the code was removed in Totara 14. This could lead to competencies not being fully migrated. This has been fixed by restoring the necessary code. The cron will now trigger the migration, even on Totara 14 or above. TL-33525 Fixed date format for custom fields during user upload TL-33648 Fixed error when trying to add already assigned courses to learning plan TL-33894 Fixed not being able to delete view-only participants from an activity in the participant management report TL-33914 Removed option to collapse from top course section TL-33945 Added a way to reset the course 'General' section heading back to its default state of hidden TL-33974 Fixed new playlist not appearing when returning directly to library TL-33980 Fixed issue with Safari cropping text on Button.vue and ToggleSwitch.vue components TL-33996 Fixed errors in GraphQL queries when id is 0 Fixed the errors for following mod_perform GraphQL * manually_delete_subject_instance when subject_instance_id is 0 * manually_delete_participant_instance when participant_instance_id is 0 * manually_change_participant_section when participant_section_id is 0 TL-33998 Added form validation for performance activity repeating settings Prior to this patch, entering out of range values for repeating trigger offset and repeating limit resulted in a generic failure message generated by the back end. This patch adds front end form validation with specific error messages. TL-34009 Updated section administration in performance activities to not show the "Move element to another section" button if there is no section to move the element to Also fixed a bug where the current section wasn't being filtered out of the list of other sections. TL-34018 Fixed error in get_config GraphQL query when item_type is null TL-34028 Fixed scrolling to the wrong position when switching views on the competency profile page TL-34030 Fixed a regression which allowed keyboard navigation to accidentally lose focus from the modal component TL-34040 Fixed totara_topic_find_topics query called twice TL-34045 Added a space before date filters in report builder reports TL-34060 Fixed missing link to user profile on workspace members list TL-34064 Fixed a text overflow issue in IE11 with workspace names on the find workspaces page TL-34087 Stopped the "edit link" Weka modal closing via backdrop click Previously if you clicked anywhere outside the bounds of the edit box while editing a link in Weka, the pop-up would close and your current changes would be lost. This behaviour has been changed such that clicking outside the box will not do anything, and to close the modal you will need to use the "done", "cancel", or the top-right "X" buttons. TL-34091 Fixed that creating and immediately deleting a workspace discussion causes cron error message TL-34111 Fixed certification window open date notification sometimes being sent twice TL-34132 Fixed unnecessary refetch of container_workspace_search_users query after transfer-of-ownership mutation Technical changes: TL-34168 Updated the minimum supported versions for MariaDB and MySQL The readme has been updated with explicit minimum versions for both MariaDB and MySQL. MariaDB we have set the minimum to the first stable release of each line. Alpha and beta release versions are not supported. MySQL 8.0.1 is the minimum. MySQL 8.0 does not include the required encoding Totara needs. In all cases, we recommend using the latest version in each database release line. Tui front end framework: TL-33687 Changed HTTP method from POST to GET when loading the data for a Totara dialogs TL-33920 Fixed an issue where importing Vue in ext_ Tui components would end up with a separate copy of Vue instead of referencing the one in the core bundle TL-33921 Implemented triggering an error to prevent the compilation of large SCSS files containing non-ASCII characters on PHP < 7.4 to hang Due to PHP bug 72685, versions of PHP before 7.4 cannot efficiently run Unicode regexes over large strings. We work around this by removing non-ASCII characters from comments to avoid hitting the Unicode path where possible, and by erroring instead of hanging on large files in order to communicate the source of the problem. This behavior can be disabled through the "Allow unperformant CSS" option in the Tui frontend framework settings.
Release 13.19 (26th April 2022):
Important: TL-34110 Fixed the migration of evidence to learning plan relationships when upgrading to TXP Evidence was redesigned in Totara 13, and an entirely new data structure was adopted to benefit the evidence feature set. During the upgrade to Totara 13 (that all sites must go through during the upgrade process) Evidence data is migrated from the pre-13 structure to the new structure. The migration moves data item per item, sequentially. Due to a bug in the migration process, links between an evidence item and a user’s learning plan may be broken, with evidence items being incorrectly related to the incorrect learning plan. This mis-mapping can cause evidence items belonging to one user to end up being linked to the learning plan of another user. This affects historic data only, as all future relations are formed correctly post upgrade. The migration has now been fixed to ensure the relationship between an evidence item and a learning plan is correctly maintained. For sites who have already upgraded the following SQL query can be used to determine if your site was affected. If a number greater than 0 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 relationships. SELECT COUNT(dper.id) FROM mdl_dp_plan_evidence_relation dper JOIN mdl_totara_evidence_item tei ON tei.id = dper.evidenceid JOIN mdl_dp_plan dp ON dp.id = dper.planid WHERE dp.userid != tei.user_id; Security issues: TL-33678 Fixed validation of CSRF token for report exports TL-33889 Fixed a capability check for the Upload user tool A manager without the "moodle/user:delete" capability was able to delete users by using the upload user tool, this has now been fixed. Performance improvements: TL-34017 Searching for a user while sharing a resource now batches keyboard presses Improvements: TL-32999 Improved help text about delete setting in user import when it is set to 'Suspend internal user' Before, the implications of having the 'Delete' setting set to 'Suspend internal user' for the user element in HR import were not well explained. Now, we have provided help text information in the UI about it so it's clear what to expect. TL-33679 Changed form action to 'GET' for manage dashboard single button TL-33970 Added appropriate CSS class to topics format General section when header colour is enabled TL-33975 Increased the top and bottom margin of the 'Load more' button in the Adder.vue component TL-34114 Updated the OriginalSpaceCard TUI component to focus the action button when closing modals on the "Find workspaces" page Bug fixes: TL-33525 Fixed date format for custom fields during user upload TL-33648 Fixed error when trying to add already assigned courses to learning plan TL-33894 Fixed not being able to delete view-only participants from an activity in the participant management report TL-33942 Fixed error when showing menu item sortorder event in the logs TL-33945 Added a way to reset the course 'General' section heading back to its default state of hidden TL-33974 Fixed new playlist not appearing when returning directly to library TL-33996 Fixed errors in GraphQL queries when id is 0 Fixed the errors for following mod_perform GraphQL * manually_delete_subject_instance when subject_instance_id is 0 * manually_delete_participant_instance when participant_instance_id is 0 * manually_change_participant_section when participant_section_id is 0 TL-33998 Added form validation for performance activity repeating settings Prior to this patch, entering out of range values for repeating trigger offset and repeating limit resulted in a generic failure message generated by the back end. This patch adds front end form validation with specific error messages. TL-34009 Updated section administration in performance activities to not show the "Move element to another section" button if there is no section to move the element to Also fixed a bug where the current section wasn't being filtered out of the list of other sections. TL-34018 Fixed error in get_config GraphQL query when item_type is null TL-34028 Fixed scrolling to the wrong position when switching views on the competency profile page TL-34040 Fixed totara_topic_find_topics query called twice TL-34045 Added a space before date filters in report builder reports TL-34060 Fixed missing link to user profile on workspace members list TL-34087 Stopped the "edit link" Weka modal closing via backdrop click Previously if you clicked anywhere outside the bounds of the edit box while editing a link in Weka, the pop-up would close and your current changes would be lost. This behaviour has been changed such that clicking outside the box will not do anything, and to close the modal you will need to use the "done", "cancel", or the top-right "X" buttons. TL-34091 Fixed that creating and immediately deleting a workspace discussion causes cron error message TL-34132 Fixed unnecessary refetch of container_workspace_search_users query after transfer-of-ownership mutation Technical changes: TL-34168 Updated the minimum supported versions for MariaDB and MySQL The readme has been updated with explicit minimum versions for both MariaDB and MySQL. MariaDB we have set the minimum to the first stable release of each line. Alpha and beta release versions are not supported. MySQL 8.0.1 is the minimum. MySQL 8.0 does not include the required encoding Totara needs. In all cases, we recommend using the latest version in each database release line. Tui front end framework: TL-33687 Changed HTTP method from POST to GET when loading the data for a Totara dialogs TL-33920 Fixed an issue where importing Vue in ext_ Tui components would end up with a separate copy of Vue instead of referencing the one in the core bundle TL-33921 Implemented triggering an error to prevent the compilation of large SCSS files containing non-ASCII characters on PHP < 7.4 to hang Due to PHP bug 72685, versions of PHP before 7.4 cannot efficiently run Unicode regexes over large strings. We work around this by removing non-ASCII characters from comments to avoid hitting the Unicode path where possible, and by erroring instead of hanging on large files in order to communicate the source of the problem. This behavior can be disabled through the "Allow unperformant CSS" option in the Tui frontend framework settings.
Release 12.42 (26th April 2022):
Security issues: TL-33678 Fixed validation of CSRF token for report exports TL-33889 Fixed a capability check for the Upload user tool A manager without the "moodle/user:delete" capability was able to delete users by using the upload user tool, this has now been fixed. Improvements: TL-32999 Improved help text about delete setting in user import when it is set to 'Suspend internal user' Before, the implications of having the 'Delete' setting set to 'Suspend internal user' for the user element in HR import were not well explained. Now, we have provided help text information in the UI about it so it's clear what to expect. TL-33679 Changed form action to 'GET' for manage dashboard single button Bug fixes: TL-33648 Fixed error when trying to add already assigned courses to learning plan TL-33942 Fixed error when showing menu item sortorder event in the logs Tui front end framework: TL-33687 Changed HTTP method from POST to GET when loading the data for a Totara dialogs
Release 11.51 (26th April 2022):
Improvements: TL-32999 Improved help text about delete setting in user import when it is set to 'Suspend internal user' Before, the implications of having the 'Delete' setting set to 'Suspend internal user' for the user element in HR import were not well explained. Now, we have provided help text information in the UI about it so it's clear what to expect.
Release 10.55 (26th April 2022):
Improvements: TL-32999 Improved help text about delete setting in user import when it is set to 'Suspend internal user' Before, the implications of having the 'Delete' setting set to 'Suspend internal user' for the user element in HR import were not well explained. Now, we have provided help text information in the UI about it so it's clear what to expect.