Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

Moodle 3.6 release notes: Difference between revisions

From MoodleDocs
(Add reference to $CFG->keepmessagingallusersenabled = true;)
(18 intermediate revisions by 9 users not shown)
Line 1: Line 1:
{{Note|This page will continue to be updated until Moodle 3.6 is released.}}
[[Releases]] > {{FULLPAGENAME}}
[[Releases]] > {{FULLPAGENAME}}


Release date: Not yet released - scheduled for 03 December 2018
Release date: 3 December 2018


Here is [https://tracker.moodle.org/secure/IssueNavigator!executeAdvanced.jspa?jqlQuery=project+%3D+mdl+AND+resolution+%3D+fixed+AND+fixVersion+in+%28%223.6%22%29+ORDER+BY+priority+DESC&runQuery=true&clear=true the full list of fixed issues in 3.6].
Here is [https://tracker.moodle.org/secure/IssueNavigator!executeAdvanced.jspa?jqlQuery=project+%3D+mdl+AND+resolution+%3D+fixed+AND+fixVersion+in+%28%223.6%22%29+ORDER+BY+priority+DESC&runQuery=true&clear=true the full list of fixed issues in 3.6].
See our [https://docs.moodle.org/36/en/New_features New features page] in the user documentation for an introduction to Moodle 3.6 with screenshots.


If you are upgrading from a previous version, please see [[:en:Upgrading|Upgrading]] in the user docs. ''In particular, for sites using a custom theme or login form, from 3.6 onwards, the login form must include a new login token field. See [[Login token]] for details.''
If you are upgrading from a previous version, please see [[:en:Upgrading|Upgrading]] in the user docs. ''In particular, for sites using a custom theme or login form, from 3.6 onwards, the login form must include a new login token field. See [[Login token]] for details.''
{{Note|You are recommended to use [[Moodle 3.6.1 release notes|Moodle 3.6.1]], as it includes a messaging regression fix.}}


==Server requirements==
==Server requirements==
Line 72: Line 75:
==Major features==
==Major features==


===Dashboard and Course Overview===
===Dashboard and Course overview===
* MDL-63044 and MDL-63337 - New Course overview and Timeline blocks
* MDL-63044 and MDL-63337 - New [https://docs.moodle.org/36/en/Course_overview Course overview] and [https://docs.moodle.org/36/en/Timeline_block Timeline block]
* MDL-63040 - Removed the dashboard page header
* MDL-63062 - New [https://docs.moodle.org/36/en/Recently_accessed_courses_block Recently accessed courses block]
* MDL-63062 - New 'Recently accessed courses' block
* MDL-63063 - New [https://docs.moodle.org/36/en/Recently_accessed_items_block Recently accessed items block]
* MDL-63063 - New 'Recently accessed items' block
* MDL-63457 - Option to hide courses in the course overview block
* MDL-63058 - Option to star/unstar courses
* MDL-63058 - Option to star/unstar courses in the course overview block
* MDL-63064 - New 'Starred Courses' Block
* MDL-63064 - New [https://docs.moodle.org/36/en/Starred_courses_block Starred courses block]
* MDL-63457 - Courses can be hidden from the course overview page
* MDL-63352 - Dashboard retains user preferences for view options
* MDL-63352 - Dashboard retains user preferences for view options
* MDL-63793 - Course overview block retains user preferences for the number of courses to show
* MDL-63793 - Course overview block retains user preferences for the number of courses to show
* MDL-61161 - Grace period when displaying "In progress" courses in course overview block
* MDL-61161 - Grace period when displaying "In progress" courses in course overview block
* MDL-63040 - Removal of Dashboard page header


===GDPR and Privacy===
===GDPR and Privacy===
Note that some of these GDPR improvements have also been backported to Moodle 3.5.3,  3.4.6 and 3.3.9.
Note that some of these GDPR improvements have also been backported to Moodle 3.5.3,  3.4.6 and 3.3.9.
* MDL-63897 - Preprocessing stage removed from GDPR operations
 
* MDL-63116 - Data requests bulk actions
* MDL-62309 - Option to make site policies required or optional
* MDL-61652 - Capabilities for controlling who can download SAR data
* MDL-62563 - Data deletion of existing deleted users
* MDL-62563 - Data deletion of existing deleted users
* MDL-62558 - Provide a data registry configuration summary (read-only)
* MDL-63897 - Pre-processing stage removed from data requests process
* MDL-62558 - Data retention summary (read-only)
* MDL-63726 - Option to remove the "Data retention summary" link in the footer
* MDL-63726 - Option to remove the "Data retention summary" link in the footer
* MDL-62491 - HTML data request export format
* MDL-62491 - HTML data request export format
Line 95: Line 102:
* MDL-62560 - Different data retention strategies for different roles in a purpose
* MDL-62560 - Different data retention strategies for different roles in a purpose
* MDL-62554 - Ability to configure data registry to use module type defaults
* MDL-62554 - Ability to configure data registry to use module type defaults
* MDL-63116 - Data requests bulk actions
* MDL-63009 - Site mentioned in email notifications of data requests
* MDL-63009 - Site mentioned in email notifications of data requests
* MDL-61652 - Capabilities for controlling who can download SAR data
* MDL-62309 - Option to make site policies required or optional
* MDL-6074 - Option to hide your name in the [https://docs.moodle.org/36/en/Online_users_block online users block]
* MDL-6074 - Option to hide your name in the [https://docs.moodle.org/36/en/Online_users_block online users block]


===Messaging===
===Messaging===
* MDL-57272 and MDL-63280 - Group messaging
* '''MDL-57272 and MDL-63280 - Group messaging'''
* MDL-63279 - Option to disable site-wide messaging
* MDL-63303 - New messaging UI with [https://docs.moodle.org/36/en/Messaging messaging drawer]
* MDL-63213 - Ability to set favourite conversations
* MDL-63279 - Option to [https://docs.moodle.org/36/en/Messaging_settings disable site-wide messaging]
* MDL-63303 - Introduced base version of new user interface
* MDL-63283 - Disable message outputs for group conversations
* MDL-63214 - Privacy setting for restricting who can message you
* MDL-63214 - Privacy setting for restricting who can message you
* MDL-63281 - Synchronise course group members with conversations members, for those groups having linked conversations
** The new 'Allow site-wide messaging' setting is disabled by default for new installs but enabled for upgraded sites if ''$CFG->keepmessagingallusersenabled = true;'' is defined in config.php
* MDL-63213 - Option to star messaging conversations
* MDL-63283 - Notifications not sent for group conversations
* MDL-63281 - Group members synchronised with messaging conversations members


===Assignment===
===Assignment===
* MDL-27520 - Assignment feedback can include media or other files
* MDL-27520 - Assignment feedback can include media or other files


===NextCloud===
===Quiz===
* MDL-62610 - Improved quiz statistics report usability for randomized questions
* MDL-62708 - Option to add ID numbers to questions and question categories
* MDL-63738 - Single questions can be exported from the question bank
 
===Workshop===
* MDL-60820 - Teachers can specify workshop submission types
 
===Repositories===
* MDL-58943 - Nextcloud integration, with a [https://docs.moodle.org/36/en/Nextcloud_repository Nextcloud repository] and [https://docs.moodle.org/36/en/OAuth_2_Nextcloud_service OAuth 2 Nextcloud service]
* MDL-58943 - Nextcloud integration, with a [https://docs.moodle.org/36/en/Nextcloud_repository Nextcloud repository] and [https://docs.moodle.org/36/en/OAuth_2_Nextcloud_service OAuth 2 Nextcloud service]


===OpenBadges===
===Open Badges===
* MDL-58454 - Support for Open Badges v2.0
* MDL-58454 - Support for Open Badges v2.0


Line 123: Line 136:
* MDL-47962 - Glossary auto-linking filter performance improvements
* MDL-47962 - Glossary auto-linking filter performance improvements


===Usability Improvements===
===Usability improvements===
* MDL-51177 - atto_htmlplus implemented to improve Atto editor HTML indenting
* MDL-51177 - atto_htmlplus implemented to improve Atto editor HTML indenting
* MDL-45170 - Copy and paste of images from one wsyiwyg window to another
* MDL-45170 - Copy and paste of images from one WYSIWYG window to another
* MDL-61388 - Accessibility: Forum actions announced by screen reader when completed
* MDL-61388 - Forum actions announced by screen reader when completed
* MDL-62899 - Global search displays a relevant icon next to link in results
* MDL-62899 - Global search displays a relevant icon next to link in results
* MDL-62610 - Improved quiz statistics report usability for randomized questions
* MDL-46415 - SVG/high resolution emoticons
* MDL-46415 - SVG/High resolution emoticons
* MDL-58000 - Larger badge images are used
* MDL-58000 - Larger badge images available


===Experimental===
===Experimental===
* MDL-53566 - Freezing / enabling read-only access only for categories, courses, activities and their content
* MDL-53566 - [https://docs.moodle.org/36/en/Context_freezing Context freezing] - setting read-only access for categories, courses, activities and their content


==Other highlights==
==Other highlights==


* MDL-63658 - Favourites subsystem
===Functional changes===
* MDL-17943 - 'Resend confirmation email' button on login page
* MDL-14274 - IF conditions in grade calculations
* MDL-14274 - IF conditions in grade calculations
* MDL-37624 - Calendar entries location support
* MDL-37624 - Calendar entries location support
* MDL-45170 - Copy and paste of images from one wsyiwyg window to another
* MDL-54035 - Performance improvements with a lot of data in mdl_cache_flags
* MDL-36754 - Images are displayed in forum notification emails
* MDL-36754 - Images are displayed in forum notification emails
* MDL-59259 - Course format options may be specified in upload courses CSV file
* MDL-59259 - Course format options may be specified in upload courses CSV file
* MDL-62708 - Option to add ID numbers to questions and question categories
* MDL-41265 - Page resource option to show/hide "Last modified"
* MDL-61378 - Forum post HTML structure improvements
* MDL-59454 - Option to download the list of course participants
* MDL-59454 - Option to download the list of course participants
* MDL-46415 - SVG / high resolution emoticons
* MDL-60520 - Analytics models can use different machine learning backends
* MDL-47962 - Glossary auto-linking filter performance improvements
* MDL-62334 - 'Add a new course' link in Site administration
* MDL-63253 - Admin search results provide location of the found matching page
* MDL-51803 - Reusable element for drag and drop sortable table or list
* MDL-50812 - core_useragent::get_browser_version_classes distinguishes between different browsers
* MDL-63329 - memcache session handler removal
* MDL-63040 - Page header removal
* MDL-61573 - User menu: customusermenuitems map Font Awesome icons for non pix/t folders
* MDL-61573 - User menu: customusermenuitems map Font Awesome icons for non pix/t folders
* MDL-62320 - JSON added to the default mime types list
* MDL-62320 - JSON added to the default MIME types list
* MDL-63603 - Indian Rupee added to PayPal enrolment currencies
* MDL-63431 - Atto media plugin title global attribute support
* MDL-63431 - Atto media plugin title global attribute support
* MDL-62960 - Drag and drop of course events respects the course start date
* MDL-62651 - adhoc task runner
* MDL-17943 - 'Resend confirmation email' button on login page
* MDL-60435 - Shibboleth authentication identity providers
* MDL-60435 - Shibboleth authentication identity providers
* MDL-59169 - Grader report saves after edit with multiple tabs
* MDL-59169 - Grader report saves after edit with multiple tabs
* MDL-52953 - Legacy log store deprecation
* MDL-62960 - Drag and drop of course events respects the course start date
* MDL-55188 - Old Events API final deprecation
* MDL-54741 - Phase 2 of deprecation of functions in lib/deprecatedlib.php


===Security issues===
===Security issues===
* [https://moodle.org/mod/forum/discuss.php?d=378731 MSA-18-0020] Login CSRF vulnerability in login form. Note that this fix has previously been disclosed, after the release of Moodle 3.5.3, 3.4.6, 3.3.9 and 3.1.15.
* [https://moodle.org/mod/forum/discuss.php?d=378731 MSA-18-0020] Login CSRF vulnerability in login form. Note that this fix has previously been disclosed following the release of Moodle 3.5.3, 3.4.6, 3.3.9 and 3.1.15.
 
===For administrators===
* MDL-62334 - 'Add a new course' link in Site administration
* MDL-63253 - Admin search results provide location of the found matching page
* MDL-63772 - Capability to control use of Atto Record RTC
* MDL-63708 - New blocks supported by the mobile app can be disabled
* MDL-52953 - Legacy log store deprecation
* MDL-59429 - Log changes to site administrators
* MDL-62651 - adhoc task runner
* MDL-62777 - Site upgrades via CLI display new default settings
* MDL-63603 - Indian Rupee added to [https://docs.moodle.org/36/en/PayPal_enrolment PayPal enrolment] currencies
* MDL-60514 - Set Path to PHP CLI in order to display 'Run now' for [https://docs.moodle.org/36/en/Scheduled_tasks Scheduled tasks]
* MDL-61041 - Assignment upgrade helper tool removed from core.


==For developers==
==For developers==
* MDL-55188 - Old Events API final deprecation
* MDL-54741 - Phase 2 of deprecation of functions in lib/deprecatedlib.php
* MDL-51803 - Reusable element for drag and drop sortable table or list
* MDL-63329 - memcache session handler removal
* MDL-63658 - New Favourites subsystem
* MDL-63729 - Badges web services return new fields and data added by the Open Badges v2.0 specification
* MDL-50812 - core_useragent::get_browser_version_classes distinguishes between different browsers


===Privacy API update===
===Privacy API update===
Line 178: Line 197:
* [[Privacy API#Retrieving_the_users_in_a_context|get_users_in_context()]]
* [[Privacy API#Retrieving_the_users_in_a_context|get_users_in_context()]]
* [[Privacy API#Delete_personal_information_for_several_users_in_a_specific_context|delete_data_for_users()]]
* [[Privacy API#Delete_personal_information_for_several_users_in_a_specific_context|delete_data_for_users()]]
 
 
Note these changes are also required for latest Moodle 3.4.6, 3.5.3 versions.
However, the two above methods are not required for plugins that [[Privacy_API#Plugins_which_do_not_store_personal_data|implement the <tt>null_provider</tt>]] only (i.e. which do not store personal data).
 
Note that these changes are also required for latest Moodle 3.4.6 and 3.5.3 versions.


===Behat scenario files===
===Behat scenario files===


MDL-57281 - The behat step <code>I navigate to "ITEM" node in "MAINNODE > PATH"</code> has been deprecated and throws an exception with details on how to replace it. The recommended replacement steps work in all recent Moodle versions, the updated Behat will pass with Moodle 3.4, too.
* MDL-57281 - The behat step <code>I navigate to "ITEM" node in "MAINNODE > PATH"</code> has been deprecated and throws an exception with details on how to replace it. The recommended replacement steps work in all recent Moodle versions. The updated Behat will pass with Moodle 3.4 too.


===Login token===
===Login token===


If your plugin provides an alternative login form (e.g. it is a theme replacing the default login form template / renderer), the login form must include a new login token field. For details of required changes, see [[Login token]]. Note that this also affects latest stable branches, too.
If your plugin provides an alternative login form (e.g. it is a theme replacing the default login form template / renderer), the login form must include a new login token field. For details of required changes, see [[Login token]]. Note that this also affects latest stable branches too.
 
===New core functions===
 
* <tt>userdate_htmltime()</tt>
 
===New callback hooking points in page layouts===
 
* <tt>standard_after_main_region_html</tt> - A new general purpose callback hooking point in the page layout. Used for example by the new messaging drawer UI.


===Component APIs upgrades===
===Component APIs upgrades===


Please refer to the upgrade.txt files in the relevant component directory for changes in particular Moodle release.
Please refer to the upgrade.txt files in the relevant component directory for changes in this particular Moodle release.


* [https://git.in.moodle.com/moodle/moodle/blob/master/admin/tool/log/upgrade.txt admin/tool/log/upgrade.txt]
* [https://git.in.moodle.com/moodle/moodle/blob/master/admin/tool/log/upgrade.txt admin/tool/log/upgrade.txt]

Revision as of 09:44, 17 December 2018

Releases > Moodle 3.6 release notes

Release date: 3 December 2018

Here is the full list of fixed issues in 3.6.

See our New features page in the user documentation for an introduction to Moodle 3.6 with screenshots.

If you are upgrading from a previous version, please see Upgrading in the user docs. In particular, for sites using a custom theme or login form, from 3.6 onwards, the login form must include a new login token field. See Login token for details.

Note: You are recommended to use Moodle 3.6.1, as it includes a messaging regression fix.


Server requirements

These are just the minimum supported versions. We recommend keeping all of your software and operating systems up-to-date.

  • Moodle upgrade: Moodle 3.1 or later
  • PHP version: minimum PHP 7.0.0 Note: minimum PHP version has increased since Moodle 3.3. PHP 7.1.x and 7.2.x are supported too. PHP 7.3.x support is being implemented (@ MDL-63420) and not ready for production with this release.
  • PHP extension intl is required since Moodle 3.4 (it was recommended in 2.0 onwards)

Database requirements

Moodle supports the following database servers. Again, version numbers are just the minimum supported version. We recommend running the latest stable version of any software.

Database Minimum version Recommended
PostgreSQL 9.4 Latest
MySQL 5.6 Latest
MariaDB 5.5.31 Latest
Microsoft SQL Server 2008 Latest
Oracle Database 11.2 Latest

Client requirements

Browser support

Moodle is compatible with any standards compliant web browser. We regularly test Moodle with the following browsers:

Desktop:

  • Chrome
  • Firefox
  • Safari
  • Edge
  • Internet Explorer

Mobile:

  • MobileSafari
  • Google Chrome

For the best experience and optimum security, we recommend that you keep your browser up to date. https://whatbrowser.org

Note: Legacy browsers with known compatibility issues with Moodle 3.6:

  • Internet Explorer 10 and below
  • Safari 7 and below

 

Major features

Dashboard and Course overview

GDPR and Privacy

Note that some of these GDPR improvements have also been backported to Moodle 3.5.3, 3.4.6 and 3.3.9.

  • MDL-63116 - Data requests bulk actions
  • MDL-62309 - Option to make site policies required or optional
  • MDL-61652 - Capabilities for controlling who can download SAR data
  • MDL-62563 - Data deletion of existing deleted users
  • MDL-63897 - Pre-processing stage removed from data requests process
  • MDL-62558 - Data retention summary (read-only)
  • MDL-63726 - Option to remove the "Data retention summary" link in the footer
  • MDL-62491 - HTML data request export format
  • MDL-63401 - User expiry improvements
  • MDL-63619 - Data purpose and category inheritance improvements
  • MDL-62560 - Different data retention strategies for different roles in a purpose
  • MDL-62554 - Ability to configure data registry to use module type defaults
  • MDL-63009 - Site mentioned in email notifications of data requests
  • MDL-6074 - Option to hide your name in the online users block

Messaging

  • MDL-57272 and MDL-63280 - Group messaging
  • MDL-63303 - New messaging UI with messaging drawer
  • MDL-63279 - Option to disable site-wide messaging
  • MDL-63214 - Privacy setting for restricting who can message you
    • The new 'Allow site-wide messaging' setting is disabled by default for new installs but enabled for upgraded sites if $CFG->keepmessagingallusersenabled = true; is defined in config.php
  • MDL-63213 - Option to star messaging conversations
  • MDL-63283 - Notifications not sent for group conversations
  • MDL-63281 - Group members synchronised with messaging conversations members

Assignment

  • MDL-27520 - Assignment feedback can include media or other files

Quiz

  • MDL-62610 - Improved quiz statistics report usability for randomized questions
  • MDL-62708 - Option to add ID numbers to questions and question categories
  • MDL-63738 - Single questions can be exported from the question bank

Workshop

  • MDL-60820 - Teachers can specify workshop submission types

Repositories

Open Badges

Performance

  • MDL-54035 - Performance improvements to cache flags
  • MDL-47962 - Glossary auto-linking filter performance improvements

Usability improvements

  • MDL-51177 - atto_htmlplus implemented to improve Atto editor HTML indenting
  • MDL-45170 - Copy and paste of images from one WYSIWYG window to another
  • MDL-61388 - Forum actions announced by screen reader when completed
  • MDL-62899 - Global search displays a relevant icon next to link in results
  • MDL-46415 - SVG/high resolution emoticons
  • MDL-58000 - Larger badge images are used

Experimental

Other highlights

Functional changes

  • MDL-17943 - 'Resend confirmation email' button on login page
  • MDL-14274 - IF conditions in grade calculations
  • MDL-37624 - Calendar entries location support
  • MDL-36754 - Images are displayed in forum notification emails
  • MDL-59259 - Course format options may be specified in upload courses CSV file
  • MDL-41265 - Page resource option to show/hide "Last modified"
  • MDL-61378 - Forum post HTML structure improvements
  • MDL-59454 - Option to download the list of course participants
  • MDL-60520 - Analytics models can use different machine learning backends
  • MDL-61573 - User menu: customusermenuitems map Font Awesome icons for non pix/t folders
  • MDL-62320 - JSON added to the default MIME types list
  • MDL-63431 - Atto media plugin title global attribute support
  • MDL-60435 - Shibboleth authentication identity providers
  • MDL-59169 - Grader report saves after edit with multiple tabs
  • MDL-62960 - Drag and drop of course events respects the course start date

Security issues

  • MSA-18-0020 Login CSRF vulnerability in login form. Note that this fix has previously been disclosed following the release of Moodle 3.5.3, 3.4.6, 3.3.9 and 3.1.15.

For administrators

For developers

  • MDL-55188 - Old Events API final deprecation
  • MDL-54741 - Phase 2 of deprecation of functions in lib/deprecatedlib.php
  • MDL-51803 - Reusable element for drag and drop sortable table or list
  • MDL-63329 - memcache session handler removal
  • MDL-63658 - New Favourites subsystem
  • MDL-63729 - Badges web services return new fields and data added by the Open Badges v2.0 specification
  • MDL-50812 - core_useragent::get_browser_version_classes distinguishes between different browsers

Privacy API update

In addition to existing requirements, any plugin which implements the plugin provider interface must also implement the \core_privacy\local\request\core_userlist_provider interface. Two new methods need to be implemented:

However, the two above methods are not required for plugins that implement the null_provider only (i.e. which do not store personal data).

Note that these changes are also required for latest Moodle 3.4.6 and 3.5.3 versions.

Behat scenario files

  • MDL-57281 - The behat step I navigate to "ITEM" node in "MAINNODE > PATH" has been deprecated and throws an exception with details on how to replace it. The recommended replacement steps work in all recent Moodle versions. The updated Behat will pass with Moodle 3.4 too.

Login token

If your plugin provides an alternative login form (e.g. it is a theme replacing the default login form template / renderer), the login form must include a new login token field. For details of required changes, see Login token. Note that this also affects latest stable branches too.

New core functions

  • userdate_htmltime()

New callback hooking points in page layouts

  • standard_after_main_region_html - A new general purpose callback hooking point in the page layout. Used for example by the new messaging drawer UI.

Component APIs upgrades

Please refer to the upgrade.txt files in the relevant component directory for changes in this particular Moodle release.

See also