Moodle 3.3 release notes: Difference between revisions
Line 123: | Line 123: | ||
==== Upgrading plugins ==== | ==== Upgrading plugins ==== | ||
'''1. Check for changes in core APIs''' | |||
Read lib/upgrade.txt to check for the deprecations and core API changes, make sure you applied them to your plugin. Note that entries there are not sorted by priority but rather by integration time. It is very possible that more important information for you is somewhere in the bottom of the list. Below is the list of upgrade.txt that contain information when upgrading from Moodle 3.2 to Moodle 3.3 (note that if you upgrade from earlier versions there may be more files): | |||
* [https://raw.githubusercontent.com/moodle/moodle/master/lib/upgrade.txt lib/upgrade.txt] changes to various core APIs, deprecations, functions removal | * [https://raw.githubusercontent.com/moodle/moodle/master/lib/upgrade.txt lib/upgrade.txt] changes to various core APIs, deprecations, functions removal | ||
* [https://raw.githubusercontent.com/moodle/moodle/master/admin/upgrade.txt admin/upgrade.txt] changes to administration-related functions | * [https://raw.githubusercontent.com/moodle/moodle/master/admin/upgrade.txt admin/upgrade.txt] changes to administration-related functions | ||
Line 140: | Line 133: | ||
* [https://raw.githubusercontent.com/moodle/moodle/master/course/upgrade.txt course/upgrade.txt] changes to course-related functions | * [https://raw.githubusercontent.com/moodle/moodle/master/course/upgrade.txt course/upgrade.txt] changes to course-related functions | ||
''' | '''2. Check for changes in the API of your plugin type''' | ||
Below is the list of plugin types that had API changes between Moodle 3.2 and 3.3: | |||
* [https://raw.githubusercontent.com/moodle/moodle/master/auth/upgrade.txt auth/upgrade.txt] Authentication plugins | * [https://raw.githubusercontent.com/moodle/moodle/master/auth/upgrade.txt auth/upgrade.txt] Authentication plugins | ||
* [https://raw.githubusercontent.com/moodle/moodle/master/blocks/upgrade.txt blocks/upgrade.txt] Block plugins | * [https://raw.githubusercontent.com/moodle/moodle/master/blocks/upgrade.txt blocks/upgrade.txt] Block plugins | ||
Line 150: | Line 145: | ||
* [https://raw.githubusercontent.com/moodle/moodle/master/theme/upgrade.txt theme/upgrade.txt] Themes | * [https://raw.githubusercontent.com/moodle/moodle/master/theme/upgrade.txt theme/upgrade.txt] Themes | ||
''' | '''3. Check for changes in the depended plugins''' | ||
If your plugin depends on another plugin or calls methods from another plugin, read upgrade.txt in this plugin directory (if it exists). Below is the list of standard plugins that had changes between Moodle 3.2 and 3.3: | |||
Due to changes in Authentication plugins settings all standard auth plugins were updated: [https://raw.githubusercontent.com/moodle/moodle/master/auth/cas/upgrade.txt auth_cas], [https://raw.githubusercontent.com/moodle/moodle/master/auth/db/upgrade.txt auth_db], [https://raw.githubusercontent.com/moodle/moodle/master/auth/email/upgrade.txt auth_email], [https://raw.githubusercontent.com/moodle/moodle/master/auth/fc/upgrade.txt auth_fc], [https://raw.githubusercontent.com/moodle/moodle/master/auth/imap/upgrade.txt auth_imap], [https://raw.githubusercontent.com/moodle/moodle/master/auth/ldap/upgrade.txt auth_ldap], [https://raw.githubusercontent.com/moodle/moodle/master/auth/manual/upgrade.txt auth_manual], [https://raw.githubusercontent.com/moodle/moodle/master/auth/mnet/upgrade.txt auth_mnet], [https://raw.githubusercontent.com/moodle/moodle/master/auth/nntp/upgrade.txt auth_nntp], [https://raw.githubusercontent.com/moodle/moodle/master/auth/none/upgrade.txt auth_none], [https://raw.githubusercontent.com/moodle/moodle/master/auth/pam/upgrade.txt auth_pam], [https://raw.githubusercontent.com/moodle/moodle/master/auth/pop3/upgrade.txt auth_pop3], [https://raw.githubusercontent.com/moodle/moodle/master/auth/shibboleth/upgrade.txt auth_shibboleth] | Due to changes in Authentication plugins settings all standard auth plugins were updated: [https://raw.githubusercontent.com/moodle/moodle/master/auth/cas/upgrade.txt auth_cas], [https://raw.githubusercontent.com/moodle/moodle/master/auth/db/upgrade.txt auth_db], [https://raw.githubusercontent.com/moodle/moodle/master/auth/email/upgrade.txt auth_email], [https://raw.githubusercontent.com/moodle/moodle/master/auth/fc/upgrade.txt auth_fc], [https://raw.githubusercontent.com/moodle/moodle/master/auth/imap/upgrade.txt auth_imap], [https://raw.githubusercontent.com/moodle/moodle/master/auth/ldap/upgrade.txt auth_ldap], [https://raw.githubusercontent.com/moodle/moodle/master/auth/manual/upgrade.txt auth_manual], [https://raw.githubusercontent.com/moodle/moodle/master/auth/mnet/upgrade.txt auth_mnet], [https://raw.githubusercontent.com/moodle/moodle/master/auth/nntp/upgrade.txt auth_nntp], [https://raw.githubusercontent.com/moodle/moodle/master/auth/none/upgrade.txt auth_none], [https://raw.githubusercontent.com/moodle/moodle/master/auth/pam/upgrade.txt auth_pam], [https://raw.githubusercontent.com/moodle/moodle/master/auth/pop3/upgrade.txt auth_pop3], [https://raw.githubusercontent.com/moodle/moodle/master/auth/shibboleth/upgrade.txt auth_shibboleth] | ||
Other standard plugins that were updated in 3.3: [https://raw.githubusercontent.com/moodle/moodle/master/admin/tool/lp/upgrade.txt tool_lp], [https://raw.githubusercontent.com/moodle/moodle/master/admin/tool/mobile/upgrade.txt tool_mobile], [https://raw.githubusercontent.com/moodle/moodle/master/enrol/ldap/upgrade.txt enrol_ldap], [https://raw.githubusercontent.com/moodle/moodle/master/mod/assign/upgrade.txt mod_assign], [https://raw.githubusercontent.com/moodle/moodle/master/mod/data/upgrade.txt mod_data], [https://raw.githubusercontent.com/moodle/moodle/master/mod/feedback/upgrade.txt mod_feedback], [https://raw.githubusercontent.com/moodle/moodle/master/mod/forum/upgrade.txt mod_forum], [https://raw.githubusercontent.com/moodle/moodle/master/mod/lesson/upgrade.txt mod_lesson] | Other standard plugins that were updated in 3.3: [https://raw.githubusercontent.com/moodle/moodle/master/admin/tool/lp/upgrade.txt tool_lp], [https://raw.githubusercontent.com/moodle/moodle/master/admin/tool/mobile/upgrade.txt tool_mobile], [https://raw.githubusercontent.com/moodle/moodle/master/enrol/ldap/upgrade.txt enrol_ldap], [https://raw.githubusercontent.com/moodle/moodle/master/mod/assign/upgrade.txt mod_assign], [https://raw.githubusercontent.com/moodle/moodle/master/mod/data/upgrade.txt mod_data], [https://raw.githubusercontent.com/moodle/moodle/master/mod/feedback/upgrade.txt mod_feedback], [https://raw.githubusercontent.com/moodle/moodle/master/mod/forum/upgrade.txt mod_forum], [https://raw.githubusercontent.com/moodle/moodle/master/mod/lesson/upgrade.txt mod_lesson] | ||
'''4. Do a smoke test of your plugin with developer debugging mode''' | |||
'''5. Run all behat and phpunit tests''' | |||
==See also== | ==See also== |
Revision as of 05:47, 9 May 2017
Releases > Moodle 3.3 release notes
Release date: 15 May 2017 (Not yet released)
Here is the full list of fixed issues in 3.3.
See our New Features page for a more user-friendly introduction to Moodle 3.3 with screenshots.
If you are upgrading from previous version, make sure you read the Upgrading documentation.
Server requirements
These are just the minimum supported versions. We recommend keeping all of your software up-to-date.
- Moodle upgrade: Moodle 2.7 or later (if upgrading from earlier versions, you must upgrade to 2.7.14 as a first step)
- PHP version: minimum PHP 5.6.5. Note: minimum PHP version has increased since Moodle 3.1. PHP 7.0.x and 7.1.x are supported but have some engine limitations.
- PHP extensions openssl and fileinfo are now required in Moodle 3.3 (they were recommended in 3.2)
- If you use PostgreSQL the minimum supported version is now 9.3 (was 9.1 in Moodle 3.2)
- If you use MySQL or MariaDB make sure your database supports full UTF-8 . CLI script may be used to convert. See MySQL full unicode support for details.
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.3 | Latest |
MySQL | 5.5.31 | Latest |
MariaDB | 5.5.31 | Latest |
Microsoft SQL Server | 2008 | Latest |
Oracle Database | 10.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.3:
- Internet Explorer 10 and below
- Safari 7 and below
Major features
Highlights
- ...
Functional changes
- ...
API changes
- ...
Fixes and improvements
- ...
For administrators
Please read carefully: Possible issues that may affect you in Moodle 3.3
- ...
Plugins removal and deprecation
If you are using any of the following you need to download and install the plugins or otherwise they will be removed following 3.3 upgrade.
- Repository Skydive is deprecated, please migrate to the newer onedrive repository
- Dashboard block Course overview is replaced with new block Course overview which is a different plugin. If you want to use the old block, you need to download and install it from [here]
For developers
- MDL-55528 - New plugin type 'fileconverter' for file conversions, unoconv is now a plugin that can be replaced with scalable commercial solutions (see File Converters)
- MDL-40759 - Font Awesome icon font is used for all icons in Moodle (see Moodle icons)
- MDL-46375 - Support for storing files not on the local drive is implemented by allowing to override functionality of file_storage and stored_file classes (see File System API)
- MDL-12689 - Convert all authentication plugins to use settings.php (see upgrade.txt)
- MDL-53978 - Add extra plugin callbacks for every major stage of page render (see commit)
- MDL-58138 - Course modules may provide additional callbacks to participate in bulk editing of activities completion rules in a course
- MDL-58220 - Better office integration
- MDL-45584 - Multiple caches can be instantiated with the same definition but with different identifiers
- MDL-57769 - Course formats: Attribute 'numsections' was removed from topics and weeks, other course formats may want to implement similar changes
- MDL-55956 - Priority field for the calendar events allowing to specify the priority of overrides
- MDL-58566 - New methods for retrieving calendar events
- MDL-55941 - New element to select first name of first/last names is implemented in tablelib or can be used by developers elsewhere (template)
- MDL-56519 - Lint behat .feature files
- MDL-57273 - New classes (core\persistent, core\form\persistent, core\external\exporter, \core\external\persistent_exporter) used to represent a data-model and export that data in a standard format for webservices (previously was used in competencies) (see Persistent form, Persistent, Exporter)
- MDL-57490 - Removed several legacy JS functions from javascript-static.js
Upgrading plugins
1. Check for changes in core APIs
Read lib/upgrade.txt to check for the deprecations and core API changes, make sure you applied them to your plugin. Note that entries there are not sorted by priority but rather by integration time. It is very possible that more important information for you is somewhere in the bottom of the list. Below is the list of upgrade.txt that contain information when upgrading from Moodle 3.2 to Moodle 3.3 (note that if you upgrade from earlier versions there may be more files):
- lib/upgrade.txt changes to various core APIs, deprecations, functions removal
- admin/upgrade.txt changes to administration-related functions
- cache/upgrade.txt changes to Cache API
- calendar/upgrade.txt changes to Calendar API
- competency/upgrade.txt changes to Competency API
- course/upgrade.txt changes to course-related functions
2. Check for changes in the API of your plugin type
Below is the list of plugin types that had API changes between Moodle 3.2 and 3.3:
- auth/upgrade.txt Authentication plugins
- blocks/upgrade.txt Block plugins
- course/format/upgrade.txt Course format plugins
- enrol/upgrade.txt Enrolment method plugins
- media/upgrade.txt Media player plugins
- mod/upgrade.txt Activity module plugins
- repository/upgrade.txt Repository plugins
- theme/upgrade.txt Themes
3. Check for changes in the depended plugins
If your plugin depends on another plugin or calls methods from another plugin, read upgrade.txt in this plugin directory (if it exists). Below is the list of standard plugins that had changes between Moodle 3.2 and 3.3:
Due to changes in Authentication plugins settings all standard auth plugins were updated: auth_cas, auth_db, auth_email, auth_fc, auth_imap, auth_ldap, auth_manual, auth_mnet, auth_nntp, auth_none, auth_pam, auth_pop3, auth_shibboleth
Other standard plugins that were updated in 3.3: tool_lp, tool_mobile, enrol_ldap, mod_assign, mod_data, mod_feedback, mod_forum, mod_lesson
4. Do a smoke test of your plugin with developer debugging mode
5. Run all behat and phpunit tests